| 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_RAW_OBJECT_H_ | 5 #ifndef VM_RAW_OBJECT_H_ |
| 6 #define VM_RAW_OBJECT_H_ | 6 #define VM_RAW_OBJECT_H_ |
| 7 | 7 |
| 8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
| 9 #include "vm/atomic.h" | 9 #include "vm/atomic.h" |
| 10 #include "vm/globals.h" | 10 #include "vm/globals.h" |
| (...skipping 708 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 719 kAsync = kAsyncBit, | 719 kAsync = kAsyncBit, |
| 720 kSyncGen = kGeneratorBit, | 720 kSyncGen = kGeneratorBit, |
| 721 kAsyncGen = kAsyncBit | kGeneratorBit, | 721 kAsyncGen = kAsyncBit | kGeneratorBit, |
| 722 }; | 722 }; |
| 723 | 723 |
| 724 private: | 724 private: |
| 725 // So that the MarkingVisitor::DetachCode can null out the code fields. | 725 // So that the MarkingVisitor::DetachCode can null out the code fields. |
| 726 friend class MarkingVisitor; | 726 friend class MarkingVisitor; |
| 727 friend class Class; | 727 friend class Class; |
| 728 RAW_HEAP_OBJECT_IMPLEMENTATION(Function); | 728 RAW_HEAP_OBJECT_IMPLEMENTATION(Function); |
| 729 static bool SkipCode(RawFunction* raw_fun); | 729 static bool SkipCode(RawFunction* raw_fun, bool visit_current_code); |
| 730 | 730 |
| 731 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->name_); } | 731 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->name_); } |
| 732 RawString* name_; | 732 RawString* name_; |
| 733 RawObject* owner_; // Class or patch class or mixin class | 733 RawObject* owner_; // Class or patch class or mixin class |
| 734 // where this function is defined. | 734 // where this function is defined. |
| 735 RawAbstractType* result_type_; | 735 RawAbstractType* result_type_; |
| 736 RawArray* parameter_types_; | 736 RawArray* parameter_types_; |
| 737 RawArray* parameter_names_; | 737 RawArray* parameter_names_; |
| 738 RawObject* data_; // Additional data specific to the function kind. | 738 RawObject* data_; // Additional data specific to the function kind. |
| 739 RawObject** to_snapshot() { | 739 RawObject** to_snapshot() { |
| (...skipping 1436 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2176 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == | 2176 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == |
| 2177 kTypedDataInt8ArrayViewCid + 15); | 2177 kTypedDataInt8ArrayViewCid + 15); |
| 2178 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); | 2178 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); |
| 2179 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); | 2179 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); |
| 2180 return (kNullCid - kTypedDataInt8ArrayCid); | 2180 return (kNullCid - kTypedDataInt8ArrayCid); |
| 2181 } | 2181 } |
| 2182 | 2182 |
| 2183 } // namespace dart | 2183 } // namespace dart |
| 2184 | 2184 |
| 2185 #endif // VM_RAW_OBJECT_H_ | 2185 #endif // VM_RAW_OBJECT_H_ |
| OLD | NEW |