| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 #ifndef VM_OBJECT_H_ | 5 #ifndef VM_OBJECT_H_ |
| 6 #define VM_OBJECT_H_ | 6 #define VM_OBJECT_H_ |
| 7 | 7 |
| 8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
| 9 #include "platform/assert.h" | 9 #include "platform/assert.h" |
| 10 #include "platform/utils.h" | 10 #include "platform/utils.h" |
| (...skipping 2179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2190 | 2190 |
| 2191 // Returns true iff an implicit closure function has been created | 2191 // Returns true iff an implicit closure function has been created |
| 2192 // for this function. | 2192 // for this function. |
| 2193 bool HasImplicitClosureFunction() const { | 2193 bool HasImplicitClosureFunction() const { |
| 2194 return implicit_closure_function() != null(); | 2194 return implicit_closure_function() != null(); |
| 2195 } | 2195 } |
| 2196 | 2196 |
| 2197 // Return the closure function implicitly created for this function. | 2197 // Return the closure function implicitly created for this function. |
| 2198 // If none exists yet, create one and remember it. | 2198 // If none exists yet, create one and remember it. |
| 2199 RawFunction* ImplicitClosureFunction() const; | 2199 RawFunction* ImplicitClosureFunction() const; |
| 2200 void DropUncompiledImplicitClosureFunction() const; |
| 2200 | 2201 |
| 2201 // Return the closure implicitly created for this function. | 2202 // Return the closure implicitly created for this function. |
| 2202 // If none exists yet, create one and remember it. | 2203 // If none exists yet, create one and remember it. |
| 2203 RawInstance* ImplicitStaticClosure() const; | 2204 RawInstance* ImplicitStaticClosure() const; |
| 2204 | 2205 |
| 2205 RawInstance* ImplicitInstanceClosure(const Instance& receiver) const; | 2206 RawInstance* ImplicitInstanceClosure(const Instance& receiver) const; |
| 2206 | 2207 |
| 2207 // Redirection information for a redirecting factory. | 2208 // Redirection information for a redirecting factory. |
| 2208 bool IsRedirectingFactory() const; | 2209 bool IsRedirectingFactory() const; |
| 2209 RawType* RedirectionType() const; | 2210 RawType* RedirectionType() const; |
| (...skipping 5938 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8148 | 8149 |
| 8149 | 8150 |
| 8150 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, | 8151 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, |
| 8151 intptr_t index) { | 8152 intptr_t index) { |
| 8152 return array.At((index * kEntryLength) + kTargetFunctionIndex); | 8153 return array.At((index * kEntryLength) + kTargetFunctionIndex); |
| 8153 } | 8154 } |
| 8154 | 8155 |
| 8155 } // namespace dart | 8156 } // namespace dart |
| 8156 | 8157 |
| 8157 #endif // VM_OBJECT_H_ | 8158 #endif // VM_OBJECT_H_ |
| OLD | NEW |