OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 class _Closure implements Function { | 5 class _Closure implements Function { |
6 | 6 |
7 bool operator ==(other) native "Closure_equals"; | 7 bool operator ==(other) native "Closure_equals"; |
8 | 8 |
9 int get hashCode native "Closure_hashCode"; | 9 int get hashCode native "Closure_hashCode"; |
10 | 10 |
11 _Closure get call => this; | 11 _Closure get call => this; |
12 | 12 |
13 _Closure _clone() native "Closure_clone"; | 13 _Closure _clone() native "Closure_clone"; |
14 | 14 |
15 // The type_arguments_, function_, and context_ fields are not declared here. | 15 // No instance fields should be declared before the following 3 fields whose |
| 16 // offsets must be identical in Dart and C++. |
| 17 |
| 18 // The following 3 fields are declared both in raw_object.h (for direct access |
| 19 // from C++ code) and also here so that the offset-to-field map used by |
| 20 // deferred objects is properly initialized. |
| 21 // Caution: These fields are not Dart instances, but VM objects. |
| 22 var instantiator_; |
| 23 var function_; |
| 24 var context_; |
16 } | 25 } |
OLD | NEW |