Index: runtime/vm/object.cc |
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc |
index d95d307668ba37b42e9980ae11f4ba5dfb406bae..a8d64c89febd285cd1cec996e88256aa96a89645 100644 |
--- a/runtime/vm/object.cc |
+++ b/runtime/vm/object.cc |
@@ -3301,9 +3301,15 @@ RawString* Class::GenerateUserVisibleName() const { |
case kTypedDataUint64ArrayCid: |
case kExternalTypedDataUint64ArrayCid: |
return Symbols::Uint64List().raw(); |
+ case kTypedDataInt32x4ArrayCid: |
+ case kExternalTypedDataInt32x4ArrayCid: |
+ return Symbols::Int32x4List().raw(); |
case kTypedDataFloat32x4ArrayCid: |
case kExternalTypedDataFloat32x4ArrayCid: |
return Symbols::Float32x4List().raw(); |
+ case kTypedDataFloat64x2ArrayCid: |
+ case kExternalTypedDataFloat64x2ArrayCid: |
+ return Symbols::Float64x2List().raw(); |
case kTypedDataFloat32ArrayCid: |
case kExternalTypedDataFloat32ArrayCid: |
return Symbols::Float32List().raw(); |
@@ -20108,7 +20114,23 @@ const char* TypedData::ToCString() const { |
void TypedData::PrintJSONImpl(JSONStream* stream, bool ref) const { |
- Instance::PrintJSONImpl(stream, ref); |
+ JSONObject jsobj(stream); |
+ PrintSharedInstanceJSON(&jsobj, ref); |
+ const Class& cls = Class::Handle(clazz()); |
+ const String& kind = String::Handle(cls.UserVisibleName()); |
+ jsobj.AddProperty("kind", kind.ToCString()); |
+ jsobj.AddServiceId(*this); |
+ jsobj.AddProperty("length", Length()); |
+ if (ref) { |
+ return; |
+ } |
+ |
+ { |
+ NoSafepointScope no_safepoint; |
+ jsobj.AddPropertyBase64("bytes", |
+ reinterpret_cast<const uint8_t*>(DataAddr(0)), |
+ LengthInBytes()); |
+ } |
} |
@@ -20143,7 +20165,23 @@ const char* ExternalTypedData::ToCString() const { |
void ExternalTypedData::PrintJSONImpl(JSONStream* stream, |
bool ref) const { |
- Instance::PrintJSONImpl(stream, ref); |
+ JSONObject jsobj(stream); |
+ PrintSharedInstanceJSON(&jsobj, ref); |
+ const Class& cls = Class::Handle(clazz()); |
+ const String& kind = String::Handle(cls.UserVisibleName()); |
+ jsobj.AddProperty("kind", kind.ToCString()); |
+ jsobj.AddServiceId(*this); |
+ jsobj.AddProperty("length", Length()); |
+ if (ref) { |
+ return; |
+ } |
+ |
+ { |
+ NoSafepointScope no_safepoint; |
+ jsobj.AddPropertyBase64("bytes", |
+ reinterpret_cast<const uint8_t*>(DataAddr(0)), |
+ LengthInBytes()); |
+ } |
} |