Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Side by Side Diff: runtime/vm/object_store.h

Issue 103913005: Introduce class TypeRef in the VM to fully support recursive types. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/vm/object.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_STORE_H_ 5 #ifndef VM_OBJECT_STORE_H_
6 #define VM_OBJECT_STORE_H_ 6 #define VM_OBJECT_STORE_H_
7 7
8 #include "vm/object.h" 8 #include "vm/object.h"
9 9
10 namespace dart { 10 namespace dart {
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 } 65 }
66 66
67 RawType* function_impl_type() const { return function_impl_type_; } 67 RawType* function_impl_type() const { return function_impl_type_; }
68 void set_function_impl_type(const Type& value) { 68 void set_function_impl_type(const Type& value) {
69 function_impl_type_ = value.raw(); 69 function_impl_type_ = value.raw();
70 } 70 }
71 71
72 RawClass* type_class() const { return type_class_; } 72 RawClass* type_class() const { return type_class_; }
73 void set_type_class(const Class& value) { type_class_ = value.raw(); } 73 void set_type_class(const Class& value) { type_class_ = value.raw(); }
74 74
75 RawClass* type_ref_class() const { return type_ref_class_; }
76 void set_type_ref_class(const Class& value) { type_ref_class_ = value.raw(); }
77
75 RawClass* type_parameter_class() const { return type_parameter_class_; } 78 RawClass* type_parameter_class() const { return type_parameter_class_; }
76 void set_type_parameter_class(const Class& value) { 79 void set_type_parameter_class(const Class& value) {
77 type_parameter_class_ = value.raw(); 80 type_parameter_class_ = value.raw();
78 } 81 }
79 82
80 RawClass* bounded_type_class() const { return bounded_type_class_; } 83 RawClass* bounded_type_class() const { return bounded_type_class_; }
81 void set_bounded_type_class(const Class& value) { 84 void set_bounded_type_class(const Class& value) {
82 bounded_type_class_ = value.raw(); 85 bounded_type_class_ = value.raw();
83 } 86 }
84 87
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after
414 ObjectStore(); 417 ObjectStore();
415 418
416 RawObject** from() { return reinterpret_cast<RawObject**>(&object_class_); } 419 RawObject** from() { return reinterpret_cast<RawObject**>(&object_class_); }
417 RawClass* object_class_; 420 RawClass* object_class_;
418 RawType* object_type_; 421 RawType* object_type_;
419 RawClass* null_class_; 422 RawClass* null_class_;
420 RawType* null_type_; 423 RawType* null_type_;
421 RawType* function_type_; 424 RawType* function_type_;
422 RawType* function_impl_type_; 425 RawType* function_impl_type_;
423 RawClass* type_class_; 426 RawClass* type_class_;
427 RawClass* type_ref_class_;
424 RawClass* type_parameter_class_; 428 RawClass* type_parameter_class_;
425 RawClass* bounded_type_class_; 429 RawClass* bounded_type_class_;
426 RawClass* mixin_app_type_class_; 430 RawClass* mixin_app_type_class_;
427 RawType* number_type_; 431 RawType* number_type_;
428 RawType* int_type_; 432 RawType* int_type_;
429 RawClass* integer_implementation_class_; 433 RawClass* integer_implementation_class_;
430 RawClass* smi_class_; 434 RawClass* smi_class_;
431 RawType* smi_type_; 435 RawType* smi_type_;
432 RawClass* mint_class_; 436 RawClass* mint_class_;
433 RawType* mint_type_; 437 RawType* mint_type_;
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
486 } 490 }
487 491
488 friend class SnapshotReader; 492 friend class SnapshotReader;
489 493
490 DISALLOW_COPY_AND_ASSIGN(ObjectStore); 494 DISALLOW_COPY_AND_ASSIGN(ObjectStore);
491 }; 495 };
492 496
493 } // namespace dart 497 } // namespace dart
494 498
495 #endif // VM_OBJECT_STORE_H_ 499 #endif // VM_OBJECT_STORE_H_
OLDNEW
« no previous file with comments | « runtime/vm/object.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698