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

Unified Diff: runtime/vm/object.cc

Issue 18472009: JSONStream Print Dart Objects (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/object.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/object.cc
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index 765748070de34a5561d6d8377753898ef18a8596..7679eb3e328429b0d1ed6ca68069cbc9324fc406 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -2691,6 +2691,12 @@ const char* Class::ToCString() const {
}
+void Class::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void Class::InsertCanonicalConstant(intptr_t index,
const Instance& constant) const {
// The constant needs to be added to the list. Grow the list if it is full.
@@ -2770,6 +2776,12 @@ const char* UnresolvedClass::ToCString() const {
}
+void UnresolvedClass::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
intptr_t AbstractTypeArguments::Length() const {
// AbstractTypeArguments is an abstract class.
UNREACHABLE();
@@ -3002,6 +3014,13 @@ const char* AbstractTypeArguments::ToCString() const {
}
+void AbstractTypeArguments::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
intptr_t TypeArguments::Length() const {
ASSERT(!IsNull());
return Smi::Value(raw_ptr()->length_);
@@ -3337,6 +3356,12 @@ const char* TypeArguments::ToCString() const {
}
+void TypeArguments::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
intptr_t InstantiatedTypeArguments::Length() const {
return AbstractTypeArguments::Handle(
uninstantiated_type_arguments()).Length();
@@ -3419,6 +3444,13 @@ const char* InstantiatedTypeArguments::ToCString() const {
}
+void InstantiatedTypeArguments::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const char* PatchClass::ToCString() const {
const char* kFormat = "PatchClass for %s";
const Class& cls = Class::Handle(patched_class());
@@ -3430,6 +3462,12 @@ const char* PatchClass::ToCString() const {
}
+void PatchClass::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawPatchClass* PatchClass::New(const Class& patched_class,
const Class& source_class) {
const PatchClass& result = PatchClass::Handle(PatchClass::New());
@@ -4743,6 +4781,12 @@ const char* Function::ToCString() const {
}
+void Function::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void ClosureData::set_context_scope(const ContextScope& value) const {
StorePointer(&raw_ptr()->context_scope_, value.raw());
}
@@ -4786,6 +4830,12 @@ const char* ClosureData::ToCString() const {
}
+void ClosureData::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void RedirectionData::set_type(const Type& value) const {
ASSERT(!value.IsNull());
StorePointer(&raw_ptr()->type_, value.raw());
@@ -4816,6 +4866,12 @@ const char* RedirectionData::ToCString() const {
}
+void RedirectionData::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawString* Field::GetterName(const String& field_name) {
return String::Concat(Symbols::GetterPrefix(), field_name);
}
@@ -4979,6 +5035,12 @@ const char* Field::ToCString() const {
}
+void Field::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawArray* Field::dependent_code() const {
return raw_ptr()->dependent_code_;
}
@@ -5154,6 +5216,12 @@ const char* LiteralToken::ToCString() const {
}
+void LiteralToken::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawArray* TokenStream::TokenObjects() const {
return raw_ptr()->token_objects_;
}
@@ -5564,6 +5632,12 @@ const char* TokenStream::ToCString() const {
}
+void TokenStream::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
TokenStream::Iterator::Iterator(const TokenStream& tokens, intptr_t token_pos)
: tokens_(TokenStream::Handle(tokens.raw())),
data_(ExternalTypedData::Handle(tokens.GetStream())),
@@ -5910,6 +5984,12 @@ const char* Script::ToCString() const {
}
+void Script::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
DictionaryIterator::DictionaryIterator(const Library& library)
: array_(Array::Handle(library.dictionary())),
// Last element in array is a Smi.
@@ -6900,6 +6980,12 @@ const char* Library::ToCString() const {
}
+void Library::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawLibrary* LibraryPrefix::GetLibrary(int index) const {
if ((index >= 0) || (index < num_imports())) {
const Array& imports = Array::Handle(this->imports());
@@ -7009,6 +7095,12 @@ const char* LibraryPrefix::ToCString() const {
}
+void LibraryPrefix::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const char* Namespace::ToCString() const {
const char* kFormat = "Namespace for library '%s'";
const Library& lib = Library::Handle(library());
@@ -7019,6 +7111,12 @@ const char* Namespace::ToCString() const {
}
+void Namespace::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
bool Namespace::HidesName(const String& name) const {
// Check whether the name is in the list of explicitly hidden names.
if (hide_names() != Array::null()) {
@@ -7228,6 +7326,12 @@ const char* Instructions::ToCString() const {
}
+void Instructions::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
intptr_t PcDescriptors::Length() const {
return Smi::Value(raw_ptr()->length_);
}
@@ -7377,6 +7481,12 @@ const char* PcDescriptors::ToCString() const {
}
+void PcDescriptors::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
// Verify assumptions (in debug mode only).
// - No two deopt descriptors have the same deoptimization id.
// - No two ic-call descriptors have the same deoptimization id (type feedback).
@@ -7528,6 +7638,12 @@ const char* Stackmap::ToCString() const {
}
+void Stackmap::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawString* LocalVarDescriptors::GetName(intptr_t var_index) const {
ASSERT(var_index < Length());
const Array& names = Array::Handle(raw_ptr()->names_);
@@ -7592,6 +7708,13 @@ const char* LocalVarDescriptors::ToCString() const {
}
+void LocalVarDescriptors::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawLocalVarDescriptors* LocalVarDescriptors::New(intptr_t num_variables) {
ASSERT(Object::var_descriptors_class() != Class::null());
if (num_variables < 0 || num_variables > kMaxElements) {
@@ -7755,6 +7878,13 @@ const char* ExceptionHandlers::ToCString() const {
}
+void ExceptionHandlers::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
intptr_t DeoptInfo::Length() const {
return Smi::Value(raw_ptr()->length_);
}
@@ -7848,6 +7978,12 @@ const char* DeoptInfo::ToCString() const {
}
+void DeoptInfo::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawDeoptInfo* DeoptInfo::New(intptr_t num_commands) {
ASSERT(Object::deopt_info_class() != Class::null());
DeoptInfo& result = DeoptInfo::Handle();
@@ -8211,6 +8347,12 @@ const char* Code::ToCString() const {
}
+void Code::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
uword Code::GetPatchCodePc() const {
const PcDescriptors& descriptors = PcDescriptors::Handle(pc_descriptors());
return descriptors.GetPcForKind(PcDescriptors::kPatchCode);
@@ -8337,6 +8479,12 @@ const char* Context::ToCString() const {
}
+void Context::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawContextScope* ContextScope::New(intptr_t num_variables) {
ASSERT(Object::context_scope_class() != Class::null());
if (num_variables < 0 || num_variables > kMaxElements) {
@@ -8451,6 +8599,12 @@ const char* ContextScope::ToCString() const {
}
+void ContextScope::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const char* ICData::ToCString() const {
const char* kFormat = "ICData target:'%s' num-checks: %"Pd"";
const String& name = String::Handle(target_name());
@@ -8864,6 +9018,12 @@ RawICData* ICData::New(const Function& function,
}
+void ICData::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawArray* MegamorphicCache::buckets() const {
return raw_ptr()->buckets_;
}
@@ -8975,6 +9135,12 @@ const char* MegamorphicCache::ToCString() const {
}
+void MegamorphicCache::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawSubtypeTestCache* SubtypeTestCache::New() {
ASSERT(Object::subtypetestcache_class() != Class::null());
SubtypeTestCache& result = SubtypeTestCache::Handle();
@@ -9046,6 +9212,12 @@ const char* SubtypeTestCache::ToCString() const {
}
+void SubtypeTestCache::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const char* Error::ToErrorCString() const {
UNREACHABLE();
return "Internal Error";
@@ -9059,6 +9231,12 @@ const char* Error::ToCString() const {
}
+void Error::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawApiError* ApiError::New() {
ASSERT(Object::api_error_class() != Class::null());
RawObject* raw = Object::Allocate(ApiError::kClassId,
@@ -9099,6 +9277,12 @@ const char* ApiError::ToCString() const {
}
+void ApiError::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawLanguageError* LanguageError::New() {
ASSERT(Object::language_error_class() != Class::null());
RawObject* raw = Object::Allocate(LanguageError::kClassId,
@@ -9139,6 +9323,12 @@ const char* LanguageError::ToCString() const {
}
+void LanguageError::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawUnhandledException* UnhandledException::New(const Instance& exception,
const Instance& stacktrace,
Heap::Space space) {
@@ -9207,6 +9397,13 @@ const char* UnhandledException::ToCString() const {
}
+void UnhandledException::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawUnwindError* UnwindError::New(const String& message, Heap::Space space) {
ASSERT(Object::unwind_error_class() != Class::null());
UnwindError& result = UnwindError::Handle();
@@ -9238,6 +9435,12 @@ const char* UnwindError::ToCString() const {
}
+void UnwindError::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
bool Instance::Equals(const Instance& other) const {
if (this->raw() == other.raw()) {
return true; // "===".
@@ -9558,6 +9761,12 @@ const char* Instance::ToCString() const {
}
+void Instance::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
bool AbstractType::IsResolved() const {
// AbstractType is an abstract class.
UNREACHABLE();
@@ -9897,6 +10106,12 @@ const char* AbstractType::ToCString() const {
}
+void AbstractType::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawType* Type::NullType() {
return Isolate::Current()->object_store()->null_type();
}
@@ -10288,6 +10503,12 @@ const char* Type::ToCString() const {
}
+void Type::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void TypeParameter::set_is_finalized() const {
ASSERT(!IsFinalized());
set_type_state(RawTypeParameter::kFinalizedUninstantiated);
@@ -10466,6 +10687,12 @@ const char* TypeParameter::ToCString() const {
}
+void TypeParameter::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
bool BoundedType::IsMalformed() const {
return FLAG_enable_type_checks && AbstractType::Handle(bound()).IsMalformed();
}
@@ -10614,6 +10841,11 @@ const char* BoundedType::ToCString() const {
}
+void BoundedType::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
RawString* MixinAppType::Name() const {
return String::New("MixinApplication");
@@ -10625,6 +10857,12 @@ const char* MixinAppType::ToCString() const {
}
+void MixinAppType::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void MixinAppType::set_super_type(const AbstractType& value) const {
StorePointer(&raw_ptr()->super_type_, value.raw());
}
@@ -10663,6 +10901,12 @@ const char* Number::ToCString() const {
}
+void Number::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const char* Integer::ToCString() const {
// Integer is an interface. No instances of Integer should exist.
UNREACHABLE();
@@ -10670,6 +10914,12 @@ const char* Integer::ToCString() const {
}
+void Integer::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
// Throw FiftyThreeBitOverflow exception.
static void ThrowFiftyThreeBitOverflow(const Integer& i) {
const Array& exc_args = Array::Handle(Array::New(1));
@@ -11070,6 +11320,12 @@ const char* Smi::ToCString() const {
}
+void Smi::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawClass* Smi::Class() {
return Isolate::Current()->object_store()->smi_class();
}
@@ -11184,6 +11440,12 @@ const char* Mint::ToCString() const {
}
+void Mint::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void Double::set_value(double value) const {
raw_ptr()->value_ = value;
}
@@ -11285,6 +11547,12 @@ const char* Double::ToCString() const {
}
+void Double::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawBigint* Integer::AsBigint() const {
ASSERT(!IsNull());
if (IsSmi()) {
@@ -11451,6 +11719,12 @@ const char* Bigint::ToCString() const {
}
+void Bigint::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
// Synchronize with implementation in compiler (intrinsifier).
class StringHasher : ValueObject {
public:
@@ -12049,6 +12323,12 @@ const char* String::ToCString() const {
}
+void String::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
void String::ToUTF8(uint8_t* utf8_array, intptr_t array_len) const {
ASSERT(array_len >= Utf8::Length(*this));
Utf8::Encode(*this, reinterpret_cast<char*>(utf8_array), array_len);
@@ -12729,6 +13009,12 @@ const char* Bool::ToCString() const {
}
+void Bool::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
bool Array::Equals(const Instance& other) const {
if (this->raw() == other.raw()) {
// Both handles point to the same raw instance.
@@ -12807,6 +13093,12 @@ const char* Array::ToCString() const {
}
+void Array::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawArray* Array::Grow(const Array& source, int new_length, Heap::Space space) {
const Array& result = Array::Handle(Array::New(new_length, space));
intptr_t len = 0;
@@ -13012,6 +13304,13 @@ const char* GrowableObjectArray::ToCString() const {
}
+void GrowableObjectArray::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawFloat32x4* Float32x4::New(float v0, float v1, float v2, float v3,
Heap::Space space) {
ASSERT(Isolate::Current()->object_store()->float32x4_class() !=
@@ -13112,6 +13411,12 @@ const char* Float32x4::ToCString() const {
}
+void Float32x4::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawUint32x4* Uint32x4::New(uint32_t v0, uint32_t v1, uint32_t v2, uint32_t v3,
Heap::Space space) {
ASSERT(Isolate::Current()->object_store()->uint32x4_class() !=
@@ -13212,6 +13517,12 @@ const char* Uint32x4::ToCString() const {
}
+void Uint32x4::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const intptr_t TypedData::element_size[] = {
1, // kTypedDataInt8ArrayCid.
1, // kTypedDataUint8ArrayCid.
@@ -13258,6 +13569,12 @@ const char* TypedData::ToCString() const {
}
+void TypedData::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
FinalizablePersistentHandle* ExternalTypedData::AddFinalizer(
void* peer, Dart_WeakPersistentHandleFinalizer callback) const {
SetPeer(peer);
@@ -13288,6 +13605,14 @@ const char* ExternalTypedData::ToCString() const {
}
+void ExternalTypedData::PrintToJSONStream(JSONStream* stream,
+ bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
+
const char* Closure::ToCString(const Instance& closure) {
const Function& fun = Function::Handle(Closure::function(closure));
const bool is_implicit_closure = fun.IsImplicitClosureFunction();
@@ -13327,6 +13652,12 @@ const char* DartFunction::ToCString() const {
}
+void DartFunction::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
intptr_t Stacktrace::Length() const {
const Array& code_array = Array::Handle(raw_ptr()->code_array_);
return code_array.Length();
@@ -13493,6 +13824,12 @@ const char* Stacktrace::ToCString() const {
}
+void Stacktrace::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
const char* Stacktrace::ToCStringInternal(intptr_t frame_index) const {
Isolate* isolate = Isolate::Current();
Function& function = Function::Handle();
@@ -13659,6 +13996,12 @@ const char* JSRegExp::ToCString() const {
}
+void JSRegExp::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
RawWeakProperty* WeakProperty::New(Heap::Space space) {
ASSERT(Isolate::Current()->object_store()->weak_property_class()
!= Class::null());
@@ -13674,6 +14017,11 @@ const char* WeakProperty::ToCString() const {
}
+void WeakProperty::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
RawMirrorReference* MirrorReference::New(Heap::Space space) {
ASSERT(Isolate::Current()->object_store()->mirror_reference_class()
!= Class::null());
@@ -13689,4 +14037,10 @@ const char* MirrorReference::ToCString() const {
}
+void MirrorReference::PrintToJSONStream(JSONStream* stream, bool ref) const {
+ stream->OpenObject();
+ stream->CloseObject();
+}
+
+
} // namespace dart
« no previous file with comments | « runtime/vm/object.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698