| 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 522 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 533 RawTypeParameter* LookupTypeParameter(const String& type_name, | 533 RawTypeParameter* LookupTypeParameter(const String& type_name, |
| 534 intptr_t token_pos) const; | 534 intptr_t token_pos) const; |
| 535 | 535 |
| 536 // The type argument vector is flattened and includes the type arguments of | 536 // The type argument vector is flattened and includes the type arguments of |
| 537 // the super class. | 537 // the super class. |
| 538 bool HasTypeArguments() const; | 538 bool HasTypeArguments() const; |
| 539 intptr_t NumTypeArguments() const; | 539 intptr_t NumTypeArguments() const; |
| 540 | 540 |
| 541 // If this class is parameterized, each instance has a type_arguments field. | 541 // If this class is parameterized, each instance has a type_arguments field. |
| 542 static const intptr_t kNoTypeArguments = -1; | 542 static const intptr_t kNoTypeArguments = -1; |
| 543 intptr_t type_arguments_instance_field_offset() const { | 543 intptr_t type_arguments_field_offset() const { |
| 544 ASSERT(is_finalized() || is_prefinalized()); | 544 ASSERT(is_finalized() || is_prefinalized()); |
| 545 return raw_ptr()->type_arguments_instance_field_offset_; | 545 return raw_ptr()->type_arguments_field_offset_; |
| 546 } | 546 } |
| 547 void set_type_arguments_instance_field_offset(intptr_t value) const { | 547 void set_type_arguments_field_offset(intptr_t value) const { |
| 548 raw_ptr()->type_arguments_instance_field_offset_ = value; | 548 raw_ptr()->type_arguments_field_offset_ = value; |
| 549 } | 549 } |
| 550 static intptr_t type_arguments_instance_field_offset_offset() { | 550 static intptr_t type_arguments_field_offset_offset() { |
| 551 return OFFSET_OF(RawClass, type_arguments_instance_field_offset_); | 551 return OFFSET_OF(RawClass, type_arguments_field_offset_); |
| 552 } | 552 } |
| 553 | 553 |
| 554 // The super type of this class, Object type if not explicitly specified. | 554 // The super type of this class, Object type if not explicitly specified. |
| 555 RawType* super_type() const { return raw_ptr()->super_type_; } | 555 RawType* super_type() const { return raw_ptr()->super_type_; } |
| 556 void set_super_type(const Type& value) const; | 556 void set_super_type(const Type& value) const; |
| 557 static intptr_t super_type_offset() { | 557 static intptr_t super_type_offset() { |
| 558 return OFFSET_OF(RawClass, super_type_); | 558 return OFFSET_OF(RawClass, super_type_); |
| 559 } | 559 } |
| 560 | 560 |
| 561 // Asserts that the class of the super type has been resolved. | 561 // Asserts that the class of the super type has been resolved. |
| (...skipping 5412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5974 if (this->CharAt(i) != str.CharAt(begin_index + i)) { | 5974 if (this->CharAt(i) != str.CharAt(begin_index + i)) { |
| 5975 return false; | 5975 return false; |
| 5976 } | 5976 } |
| 5977 } | 5977 } |
| 5978 return true; | 5978 return true; |
| 5979 } | 5979 } |
| 5980 | 5980 |
| 5981 } // namespace dart | 5981 } // namespace dart |
| 5982 | 5982 |
| 5983 #endif // VM_OBJECT_H_ | 5983 #endif // VM_OBJECT_H_ |
| OLD | NEW |