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 |