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

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

Issue 1723733002: Simplify various name flavors in VM. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: address comments Created 4 years, 9 months 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
« no previous file with comments | « runtime/vm/object.cc ('k') | runtime/vm/object_test.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) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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/debugger.h" 5 #include "vm/debugger.h"
6 #include "vm/disassembler.h" 6 #include "vm/disassembler.h"
7 #include "vm/object.h" 7 #include "vm/object.h"
8 #include "vm/object_store.h" 8 #include "vm/object_store.h"
9 #include "vm/stub_code.h" 9 #include "vm/stub_code.h"
10 #include "vm/symbols.h" 10 #include "vm/symbols.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 void Class::PrintJSONImpl(JSONStream* stream, bool ref) const { 77 void Class::PrintJSONImpl(JSONStream* stream, bool ref) const {
78 Isolate* isolate = Isolate::Current(); 78 Isolate* isolate = Isolate::Current();
79 JSONObject jsobj(stream); 79 JSONObject jsobj(stream);
80 if ((raw() == Class::null()) || (id() == kFreeListElement)) { 80 if ((raw() == Class::null()) || (id() == kFreeListElement)) {
81 // TODO(turnidge): This is weird and needs to be changed. 81 // TODO(turnidge): This is weird and needs to be changed.
82 jsobj.AddProperty("type", "null"); 82 jsobj.AddProperty("type", "null");
83 return; 83 return;
84 } 84 }
85 AddCommonObjectProperties(&jsobj, "Class", ref); 85 AddCommonObjectProperties(&jsobj, "Class", ref);
86 jsobj.AddFixedServiceId("classes/%" Pd "", id()); 86 jsobj.AddFixedServiceId("classes/%" Pd "", id());
87 const String& user_name = String::Handle(PrettyName()); 87 const String& scrubbed_name = String::Handle(ScrubbedName());
88 const String& vm_name = String::Handle(Name()); 88 const String& vm_name = String::Handle(Name());
89 AddNameProperties(&jsobj, user_name, vm_name); 89 AddNameProperties(&jsobj, scrubbed_name, vm_name);
90 if (ref) { 90 if (ref) {
91 return; 91 return;
92 } 92 }
93 93
94 const Error& err = Error::Handle(EnsureIsFinalized(Thread::Current())); 94 const Error& err = Error::Handle(EnsureIsFinalized(Thread::Current()));
95 if (!err.IsNull()) { 95 if (!err.IsNull()) {
96 jsobj.AddProperty("error", err); 96 jsobj.AddProperty("error", err);
97 } 97 }
98 jsobj.AddProperty("abstract", is_abstract()); 98 jsobj.AddProperty("abstract", is_abstract());
99 jsobj.AddProperty("const", is_const()); 99 jsobj.AddProperty("const", is_const());
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 JSONObject jsobj(stream); 177 JSONObject jsobj(stream);
178 // The index in the canonical_type_arguments table cannot be used as part of 178 // The index in the canonical_type_arguments table cannot be used as part of
179 // the object id (as in typearguments/id), because the indices are not 179 // the object id (as in typearguments/id), because the indices are not
180 // preserved when the table grows and the entries get rehashed. Use the ring. 180 // preserved when the table grows and the entries get rehashed. Use the ring.
181 Isolate* isolate = Isolate::Current(); 181 Isolate* isolate = Isolate::Current();
182 ObjectStore* object_store = isolate->object_store(); 182 ObjectStore* object_store = isolate->object_store();
183 const Array& table = Array::Handle(object_store->canonical_type_arguments()); 183 const Array& table = Array::Handle(object_store->canonical_type_arguments());
184 ASSERT(table.Length() > 0); 184 ASSERT(table.Length() > 0);
185 AddCommonObjectProperties(&jsobj, "TypeArguments", ref); 185 AddCommonObjectProperties(&jsobj, "TypeArguments", ref);
186 jsobj.AddServiceId(*this); 186 jsobj.AddServiceId(*this);
187 const String& user_name = String::Handle(PrettyName()); 187 const String& user_name = String::Handle(UserVisibleName());
188 const String& vm_name = String::Handle(Name()); 188 const String& vm_name = String::Handle(Name());
189 AddNameProperties(&jsobj, user_name, vm_name); 189 AddNameProperties(&jsobj, user_name, vm_name);
190 if (ref) { 190 if (ref) {
191 return; 191 return;
192 } 192 }
193 { 193 {
194 JSONArray jsarr(&jsobj, "types"); 194 JSONArray jsarr(&jsobj, "types");
195 AbstractType& type_arg = AbstractType::Handle(); 195 AbstractType& type_arg = AbstractType::Handle();
196 for (intptr_t i = 0; i < Length(); i++) { 196 for (intptr_t i = 0; i < Length(); i++) {
197 type_arg = TypeAt(i); 197 type_arg = TypeAt(i);
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 263
264 void Function::PrintJSONImpl(JSONStream* stream, bool ref) const { 264 void Function::PrintJSONImpl(JSONStream* stream, bool ref) const {
265 Class& cls = Class::Handle(Owner()); 265 Class& cls = Class::Handle(Owner());
266 ASSERT(!cls.IsNull()); 266 ASSERT(!cls.IsNull());
267 Error& err = Error::Handle(); 267 Error& err = Error::Handle();
268 err ^= cls.EnsureIsFinalized(Thread::Current()); 268 err ^= cls.EnsureIsFinalized(Thread::Current());
269 ASSERT(err.IsNull()); 269 ASSERT(err.IsNull());
270 JSONObject jsobj(stream); 270 JSONObject jsobj(stream);
271 AddCommonObjectProperties(&jsobj, "Function", ref); 271 AddCommonObjectProperties(&jsobj, "Function", ref);
272 AddFunctionServiceId(jsobj, *this, cls); 272 AddFunctionServiceId(jsobj, *this, cls);
273 const String& user_name = String::Handle(PrettyName()); 273 const String& user_name = String::Handle(UserVisibleName());
274 const String& vm_name = String::Handle(name()); 274 const String& vm_name = String::Handle(name());
275 AddNameProperties(&jsobj, user_name, vm_name); 275 AddNameProperties(&jsobj, user_name, vm_name);
276 const Function& parent = Function::Handle(parent_function()); 276 const Function& parent = Function::Handle(parent_function());
277 if (!parent.IsNull()) { 277 if (!parent.IsNull()) {
278 jsobj.AddProperty("owner", parent); 278 jsobj.AddProperty("owner", parent);
279 } else if (cls.IsTopLevel()) { 279 } else if (cls.IsTopLevel()) {
280 const Library& library = Library::Handle(cls.library()); 280 const Library& library = Library::Handle(cls.library());
281 jsobj.AddProperty("owner", library); 281 jsobj.AddProperty("owner", library);
282 } else { 282 } else {
283 jsobj.AddProperty("owner", cls); 283 jsobj.AddProperty("owner", cls);
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 334
335 void Field::PrintJSONImpl(JSONStream* stream, bool ref) const { 335 void Field::PrintJSONImpl(JSONStream* stream, bool ref) const {
336 JSONObject jsobj(stream); 336 JSONObject jsobj(stream);
337 Class& cls = Class::Handle(owner()); 337 Class& cls = Class::Handle(owner());
338 String& field_name = String::Handle(name()); 338 String& field_name = String::Handle(name());
339 field_name = String::EncodeIRI(field_name); 339 field_name = String::EncodeIRI(field_name);
340 AddCommonObjectProperties(&jsobj, "Field", ref); 340 AddCommonObjectProperties(&jsobj, "Field", ref);
341 jsobj.AddFixedServiceId("classes/%" Pd "/fields/%s", 341 jsobj.AddFixedServiceId("classes/%" Pd "/fields/%s",
342 cls.id(), field_name.ToCString()); 342 cls.id(), field_name.ToCString());
343 343
344 const String& user_name = String::Handle(PrettyName()); 344 const String& user_name = String::Handle(UserVisibleName());
345 const String& vm_name = String::Handle(name()); 345 const String& vm_name = String::Handle(name());
346 AddNameProperties(&jsobj, user_name, vm_name); 346 AddNameProperties(&jsobj, user_name, vm_name);
347 if (cls.IsTopLevel()) { 347 if (cls.IsTopLevel()) {
348 const Library& library = Library::Handle(cls.library()); 348 const Library& library = Library::Handle(cls.library());
349 jsobj.AddProperty("owner", library); 349 jsobj.AddProperty("owner", library);
350 } else { 350 } else {
351 jsobj.AddProperty("owner", cls); 351 jsobj.AddProperty("owner", cls);
352 } 352 }
353 353
354 AbstractType& declared_type = AbstractType::Handle(type()); 354 AbstractType& declared_type = AbstractType::Handle(type());
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
474 } 474 }
475 475
476 476
477 void Library::PrintJSONImpl(JSONStream* stream, bool ref) const { 477 void Library::PrintJSONImpl(JSONStream* stream, bool ref) const {
478 intptr_t id = index(); 478 intptr_t id = index();
479 ASSERT(id >= 0); 479 ASSERT(id >= 0);
480 JSONObject jsobj(stream); 480 JSONObject jsobj(stream);
481 AddCommonObjectProperties(&jsobj, "Library", ref); 481 AddCommonObjectProperties(&jsobj, "Library", ref);
482 jsobj.AddFixedServiceId("libraries/%" Pd "", id); 482 jsobj.AddFixedServiceId("libraries/%" Pd "", id);
483 const String& vm_name = String::Handle(name()); 483 const String& vm_name = String::Handle(name());
484 const String& user_name = 484 const String& scrubbed_name = String::Handle(String::ScrubName(vm_name));
485 String::Handle(String::IdentifierPrettyName(vm_name)); 485 AddNameProperties(&jsobj, scrubbed_name, vm_name);
486 AddNameProperties(&jsobj, user_name, vm_name);
487 const String& library_url = String::Handle(url()); 486 const String& library_url = String::Handle(url());
488 jsobj.AddPropertyStr("uri", library_url); 487 jsobj.AddPropertyStr("uri", library_url);
489 if (ref) { 488 if (ref) {
490 return; 489 return;
491 } 490 }
492 jsobj.AddProperty("debuggable", IsDebuggable()); 491 jsobj.AddProperty("debuggable", IsDebuggable());
493 { 492 {
494 JSONArray jsarr(&jsobj, "classes"); 493 JSONArray jsarr(&jsobj, "classes");
495 ClassDictionaryIterator class_iter(*this); 494 ClassDictionaryIterator class_iter(*this);
496 Class& klass = Class::Handle(); 495 Class& klass = Class::Handle();
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
812 } 811 }
813 } 812 }
814 813
815 814
816 void Code::PrintJSONImpl(JSONStream* stream, bool ref) const { 815 void Code::PrintJSONImpl(JSONStream* stream, bool ref) const {
817 JSONObject jsobj(stream); 816 JSONObject jsobj(stream);
818 AddCommonObjectProperties(&jsobj, "Code", ref); 817 AddCommonObjectProperties(&jsobj, "Code", ref);
819 jsobj.AddFixedServiceId("code/%" Px64"-%" Px "", 818 jsobj.AddFixedServiceId("code/%" Px64"-%" Px "",
820 compile_timestamp(), 819 compile_timestamp(),
821 EntryPoint()); 820 EntryPoint());
822 const String& user_name = String::Handle(PrettyName()); 821 const String& qualified_name = String::Handle(QualifiedName());
823 const String& vm_name = String::Handle(Name()); 822 const String& vm_name = String::Handle(Name());
824 AddNameProperties(&jsobj, user_name, vm_name); 823 AddNameProperties(&jsobj, qualified_name, vm_name);
825 const bool is_stub = IsStubCode() || IsAllocationStubCode(); 824 const bool is_stub = IsStubCode() || IsAllocationStubCode();
826 if (is_stub) { 825 if (is_stub) {
827 jsobj.AddProperty("kind", "Stub"); 826 jsobj.AddProperty("kind", "Stub");
828 } else { 827 } else {
829 jsobj.AddProperty("kind", "Dart"); 828 jsobj.AddProperty("kind", "Dart");
830 } 829 }
831 jsobj.AddProperty("_optimized", is_optimized()); 830 jsobj.AddProperty("_optimized", is_optimized());
832 const Object& obj = Object::Handle(owner()); 831 const Object& obj = Object::Handle(owner());
833 if (obj.IsFunction()) { 832 if (obj.IsFunction()) {
834 const Function& func = Function::Cast(obj); 833 const Function& func = Function::Cast(obj);
835 jsobj.AddProperty("_intrinsic", func.is_intrinsic()); 834 jsobj.AddProperty("_intrinsic", func.is_intrinsic());
836 jsobj.AddProperty("_native", func.is_native()); 835 jsobj.AddProperty("_native", func.is_native());
837 } else { 836 } else {
838 jsobj.AddProperty("_intrinsic", false); 837 jsobj.AddProperty("_intrinsic", false);
839 jsobj.AddProperty("_native", false); 838 jsobj.AddProperty("_native", false);
840 } 839 }
841 if (ref) { 840 if (ref) {
842 return; 841 return;
843 } 842 }
844 if (obj.IsFunction()) { 843 if (obj.IsFunction()) {
845 jsobj.AddProperty("function", obj); 844 jsobj.AddProperty("function", obj);
846 } else { 845 } else {
847 // Generate a fake function reference. 846 // Generate a fake function reference.
848 JSONObject func(&jsobj, "function"); 847 JSONObject func(&jsobj, "function");
849 func.AddProperty("type", "@Function"); 848 func.AddProperty("type", "@Function");
850 func.AddProperty("_kind", "Stub"); 849 func.AddProperty("_kind", "Stub");
851 func.AddProperty("name", user_name.ToCString()); 850 ASSERT(qualified_name.Equals(vm_name));
852 AddNameProperties(&func, user_name, vm_name); 851 func.AddProperty("name", vm_name.ToCString());
852 AddNameProperties(&func, vm_name, vm_name);
853 } 853 }
854 jsobj.AddPropertyF("_startAddress", "%" Px "", EntryPoint()); 854 jsobj.AddPropertyF("_startAddress", "%" Px "", EntryPoint());
855 jsobj.AddPropertyF("_endAddress", "%" Px "", EntryPoint() + Size()); 855 jsobj.AddPropertyF("_endAddress", "%" Px "", EntryPoint() + Size());
856 jsobj.AddProperty("_alive", is_alive()); 856 jsobj.AddProperty("_alive", is_alive());
857 const ObjectPool& object_pool = ObjectPool::Handle(GetObjectPool()); 857 const ObjectPool& object_pool = ObjectPool::Handle(GetObjectPool());
858 jsobj.AddProperty("_objectPool", object_pool); 858 jsobj.AddProperty("_objectPool", object_pool);
859 { 859 {
860 JSONArray jsarr(&jsobj, "_disassembly"); 860 JSONArray jsarr(&jsobj, "_disassembly");
861 if (is_alive()) { 861 if (is_alive()) {
862 // Only disassemble alive code objects. 862 // Only disassemble alive code objects.
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
1115 if (IsCanonical()) { 1115 if (IsCanonical()) {
1116 const Class& type_cls = Class::Handle(type_class()); 1116 const Class& type_cls = Class::Handle(type_class());
1117 intptr_t id = type_cls.FindCanonicalTypeIndex(*this); 1117 intptr_t id = type_cls.FindCanonicalTypeIndex(*this);
1118 ASSERT(id >= 0); 1118 ASSERT(id >= 0);
1119 intptr_t cid = type_cls.id(); 1119 intptr_t cid = type_cls.id();
1120 jsobj.AddFixedServiceId("classes/%" Pd "/types/%" Pd "", cid, id); 1120 jsobj.AddFixedServiceId("classes/%" Pd "/types/%" Pd "", cid, id);
1121 jsobj.AddProperty("typeClass", type_cls); 1121 jsobj.AddProperty("typeClass", type_cls);
1122 } else { 1122 } else {
1123 jsobj.AddServiceId(*this); 1123 jsobj.AddServiceId(*this);
1124 } 1124 }
1125 const String& user_name = String::Handle(PrettyName()); 1125 const String& user_name = String::Handle(UserVisibleName());
1126 const String& vm_name = String::Handle(Name()); 1126 const String& vm_name = String::Handle(Name());
1127 AddNameProperties(&jsobj, user_name, vm_name); 1127 AddNameProperties(&jsobj, user_name, vm_name);
1128 if (ref) { 1128 if (ref) {
1129 return; 1129 return;
1130 } 1130 }
1131 const TypeArguments& typeArgs = TypeArguments::Handle(arguments()); 1131 const TypeArguments& typeArgs = TypeArguments::Handle(arguments());
1132 if (!typeArgs.IsNull()) { 1132 if (!typeArgs.IsNull()) {
1133 jsobj.AddProperty("typeArguments", typeArgs); 1133 jsobj.AddProperty("typeArguments", typeArgs);
1134 } 1134 }
1135 } 1135 }
1136 1136
1137 1137
1138 void FunctionType::PrintJSONImpl(JSONStream* stream, bool ref) const { 1138 void FunctionType::PrintJSONImpl(JSONStream* stream, bool ref) const {
1139 JSONObject jsobj(stream); 1139 JSONObject jsobj(stream);
1140 PrintSharedInstanceJSON(&jsobj, ref); 1140 PrintSharedInstanceJSON(&jsobj, ref);
1141 jsobj.AddProperty("kind", "FunctionType"); 1141 jsobj.AddProperty("kind", "FunctionType");
1142 if (IsCanonical()) { 1142 if (IsCanonical()) {
1143 const Class& scope_cls = Class::Handle(scope_class()); 1143 const Class& scope_cls = Class::Handle(scope_class());
1144 intptr_t id = scope_cls.FindCanonicalTypeIndex(*this); 1144 intptr_t id = scope_cls.FindCanonicalTypeIndex(*this);
1145 ASSERT(id >= 0); 1145 ASSERT(id >= 0);
1146 intptr_t cid = scope_cls.id(); 1146 intptr_t cid = scope_cls.id();
1147 jsobj.AddFixedServiceId("classes/%" Pd "/types/%" Pd "", cid, id); 1147 jsobj.AddFixedServiceId("classes/%" Pd "/types/%" Pd "", cid, id);
1148 jsobj.AddProperty("scopeClass", scope_cls); 1148 jsobj.AddProperty("scopeClass", scope_cls);
1149 } else { 1149 } else {
1150 jsobj.AddServiceId(*this); 1150 jsobj.AddServiceId(*this);
1151 } 1151 }
1152 const String& user_name = String::Handle(PrettyName()); 1152 const String& user_name = String::Handle(UserVisibleName());
1153 const String& vm_name = String::Handle(Name()); 1153 const String& vm_name = String::Handle(Name());
1154 AddNameProperties(&jsobj, user_name, vm_name); 1154 AddNameProperties(&jsobj, user_name, vm_name);
1155 if (ref) { 1155 if (ref) {
1156 return; 1156 return;
1157 } 1157 }
1158 const TypeArguments& typeArgs = TypeArguments::Handle(arguments()); 1158 const TypeArguments& typeArgs = TypeArguments::Handle(arguments());
1159 if (!typeArgs.IsNull()) { 1159 if (!typeArgs.IsNull()) {
1160 jsobj.AddProperty("typeArguments", typeArgs); 1160 jsobj.AddProperty("typeArguments", typeArgs);
1161 } 1161 }
1162 } 1162 }
1163 1163
1164 1164
1165 void TypeRef::PrintJSONImpl(JSONStream* stream, bool ref) const { 1165 void TypeRef::PrintJSONImpl(JSONStream* stream, bool ref) const {
1166 JSONObject jsobj(stream); 1166 JSONObject jsobj(stream);
1167 PrintSharedInstanceJSON(&jsobj, ref); 1167 PrintSharedInstanceJSON(&jsobj, ref);
1168 jsobj.AddProperty("kind", "TypeRef"); 1168 jsobj.AddProperty("kind", "TypeRef");
1169 jsobj.AddServiceId(*this); 1169 jsobj.AddServiceId(*this);
1170 const String& user_name = String::Handle(PrettyName()); 1170 const String& user_name = String::Handle(UserVisibleName());
1171 const String& vm_name = String::Handle(Name()); 1171 const String& vm_name = String::Handle(Name());
1172 AddNameProperties(&jsobj, user_name, vm_name); 1172 AddNameProperties(&jsobj, user_name, vm_name);
1173 if (ref) { 1173 if (ref) {
1174 return; 1174 return;
1175 } 1175 }
1176 jsobj.AddProperty("targetType", AbstractType::Handle(type())); 1176 jsobj.AddProperty("targetType", AbstractType::Handle(type()));
1177 } 1177 }
1178 1178
1179 1179
1180 void TypeParameter::PrintJSONImpl(JSONStream* stream, bool ref) const { 1180 void TypeParameter::PrintJSONImpl(JSONStream* stream, bool ref) const {
1181 JSONObject jsobj(stream); 1181 JSONObject jsobj(stream);
1182 PrintSharedInstanceJSON(&jsobj, ref); 1182 PrintSharedInstanceJSON(&jsobj, ref);
1183 jsobj.AddProperty("kind", "TypeParameter"); 1183 jsobj.AddProperty("kind", "TypeParameter");
1184 jsobj.AddServiceId(*this); 1184 jsobj.AddServiceId(*this);
1185 const String& user_name = String::Handle(PrettyName()); 1185 const String& user_name = String::Handle(UserVisibleName());
1186 const String& vm_name = String::Handle(Name()); 1186 const String& vm_name = String::Handle(Name());
1187 AddNameProperties(&jsobj, user_name, vm_name); 1187 AddNameProperties(&jsobj, user_name, vm_name);
1188 const Class& param_cls = Class::Handle(parameterized_class()); 1188 const Class& param_cls = Class::Handle(parameterized_class());
1189 jsobj.AddProperty("parameterizedClass", param_cls); 1189 jsobj.AddProperty("parameterizedClass", param_cls);
1190 if (ref) { 1190 if (ref) {
1191 return; 1191 return;
1192 } 1192 }
1193 jsobj.AddProperty("parameterIndex", index()); 1193 jsobj.AddProperty("parameterIndex", index());
1194 const AbstractType& upper_bound = AbstractType::Handle(bound()); 1194 const AbstractType& upper_bound = AbstractType::Handle(bound());
1195 jsobj.AddProperty("bound", upper_bound); 1195 jsobj.AddProperty("bound", upper_bound);
1196 } 1196 }
1197 1197
1198 1198
1199 void BoundedType::PrintJSONImpl(JSONStream* stream, bool ref) const { 1199 void BoundedType::PrintJSONImpl(JSONStream* stream, bool ref) const {
1200 JSONObject jsobj(stream); 1200 JSONObject jsobj(stream);
1201 PrintSharedInstanceJSON(&jsobj, ref); 1201 PrintSharedInstanceJSON(&jsobj, ref);
1202 jsobj.AddProperty("kind", "BoundedType"); 1202 jsobj.AddProperty("kind", "BoundedType");
1203 jsobj.AddServiceId(*this); 1203 jsobj.AddServiceId(*this);
1204 const String& user_name = String::Handle(PrettyName()); 1204 const String& user_name = String::Handle(UserVisibleName());
1205 const String& vm_name = String::Handle(Name()); 1205 const String& vm_name = String::Handle(Name());
1206 AddNameProperties(&jsobj, user_name, vm_name); 1206 AddNameProperties(&jsobj, user_name, vm_name);
1207 if (ref) { 1207 if (ref) {
1208 return; 1208 return;
1209 } 1209 }
1210 jsobj.AddProperty("targetType", AbstractType::Handle(type())); 1210 jsobj.AddProperty("targetType", AbstractType::Handle(type()));
1211 jsobj.AddProperty("bound", AbstractType::Handle(bound())); 1211 jsobj.AddProperty("bound", AbstractType::Handle(bound()));
1212 } 1212 }
1213 1213
1214 1214
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
1593 jsobj.AddProperty("mirrorReferent", referent_handle); 1593 jsobj.AddProperty("mirrorReferent", referent_handle);
1594 } 1594 }
1595 1595
1596 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const { 1596 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const {
1597 Instance::PrintJSONImpl(stream, ref); 1597 Instance::PrintJSONImpl(stream, ref);
1598 } 1598 }
1599 1599
1600 #endif 1600 #endif
1601 1601
1602 } // namespace dart 1602 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/vm/object.cc ('k') | runtime/vm/object_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698