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

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

Issue 8383029: Implement external strings. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: pre-review clean-up Created 9 years, 1 month 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
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 #include "vm/object_store.h" 5 #include "vm/object_store.h"
6 6
7 #include "vm/isolate.h" 7 #include "vm/isolate.h"
8 #include "vm/object.h" 8 #include "vm/object.h"
9 #include "vm/raw_object.h" 9 #include "vm/raw_object.h"
10 #include "vm/visitor.h" 10 #include "vm/visitor.h"
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 RawClass* ObjectStore::GetClass(int index) { 66 RawClass* ObjectStore::GetClass(int index) {
67 switch (index) { 67 switch (index) {
68 case kObjectClass: return object_class_; 68 case kObjectClass: return object_class_;
69 case kSmiClass: return smi_class_; 69 case kSmiClass: return smi_class_;
70 case kMintClass: return mint_class_; 70 case kMintClass: return mint_class_;
71 case kBigintClass: return bigint_class_; 71 case kBigintClass: return bigint_class_;
72 case kDoubleClass: return double_class_; 72 case kDoubleClass: return double_class_;
73 case kOneByteStringClass: return one_byte_string_class_; 73 case kOneByteStringClass: return one_byte_string_class_;
74 case kTwoByteStringClass: return two_byte_string_class_; 74 case kTwoByteStringClass: return two_byte_string_class_;
75 case kFourByteStringClass: return four_byte_string_class_; 75 case kFourByteStringClass: return four_byte_string_class_;
76 case kExternalOneByteStringClass: return external_one_byte_string_class_;
77 case kExternalTwoByteStringClass: return external_two_byte_string_class_;
78 case kExternalFourByteStringClass: return external_four_byte_string_class_;
76 case kBoolClass: return bool_class_; 79 case kBoolClass: return bool_class_;
77 case kArrayClass: return array_class_; 80 case kArrayClass: return array_class_;
78 case kImmutableArrayClass: return immutable_array_class_; 81 case kImmutableArrayClass: return immutable_array_class_;
79 case kUnhandledExceptionClass: return unhandled_exception_class_; 82 case kUnhandledExceptionClass: return unhandled_exception_class_;
80 case kStacktraceClass: return stacktrace_class_; 83 case kStacktraceClass: return stacktrace_class_;
81 case kJSRegExpClass: return jsregexp_class_; 84 case kJSRegExpClass: return jsregexp_class_;
82 default: break; 85 default: break;
83 } 86 }
84 UNREACHABLE(); 87 UNREACHABLE();
85 return Class::null(); 88 return Class::null();
(...skipping 11 matching lines...) Expand all
97 } else if (raw_class == bigint_class_) { 100 } else if (raw_class == bigint_class_) {
98 return kBigintClass; 101 return kBigintClass;
99 } else if (raw_class == double_class_) { 102 } else if (raw_class == double_class_) {
100 return kDoubleClass; 103 return kDoubleClass;
101 } else if (raw_class == one_byte_string_class_) { 104 } else if (raw_class == one_byte_string_class_) {
102 return kOneByteStringClass; 105 return kOneByteStringClass;
103 } else if (raw_class == two_byte_string_class_) { 106 } else if (raw_class == two_byte_string_class_) {
104 return kTwoByteStringClass; 107 return kTwoByteStringClass;
105 } else if (raw_class == four_byte_string_class_) { 108 } else if (raw_class == four_byte_string_class_) {
106 return kFourByteStringClass; 109 return kFourByteStringClass;
110 } else if (raw_class == external_one_byte_string_class_) {
111 return kExternalOneByteStringClass;
112 } else if (raw_class == external_two_byte_string_class_) {
113 return kExternalTwoByteStringClass;
114 } else if (raw_class == external_four_byte_string_class_) {
115 return kExternalFourByteStringClass;
107 } else if (raw_class == bool_class_) { 116 } else if (raw_class == bool_class_) {
108 return kBoolClass; 117 return kBoolClass;
109 } else if (raw_class == array_class_) { 118 } else if (raw_class == array_class_) {
110 return kArrayClass; 119 return kArrayClass;
111 } else if (raw_class == immutable_array_class_) { 120 } else if (raw_class == immutable_array_class_) {
112 return kImmutableArrayClass; 121 return kImmutableArrayClass;
113 } else if (raw_class == unhandled_exception_class_) { 122 } else if (raw_class == unhandled_exception_class_) {
114 return kUnhandledExceptionClass; 123 return kUnhandledExceptionClass;
115 } else if (raw_class == stacktrace_class_) { 124 } else if (raw_class == stacktrace_class_) {
116 return kStacktraceClass; 125 return kStacktraceClass;
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 return kIntInterface; 169 return kIntInterface;
161 } else if (raw_type == bool_interface()) { 170 } else if (raw_type == bool_interface()) {
162 return kBoolInterface; 171 return kBoolInterface;
163 } else if (raw_type == string_interface()) { 172 } else if (raw_type == string_interface()) {
164 return kStringInterface; 173 return kStringInterface;
165 } 174 }
166 return kInvalidIndex; 175 return kInvalidIndex;
167 } 176 }
168 177
169 } // namespace dart 178 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698