diff --git a/vndk/tools/header-checker/header-abi-util/include/ir_representation_json.h b/vndk/tools/header-checker/header-abi-util/include/ir_representation_json.h index 160c93a30..d4b7dd0f8 100644 --- a/vndk/tools/header-checker/header-abi-util/include/ir_representation_json.h +++ b/vndk/tools/header-checker/header-abi-util/include/ir_representation_json.h @@ -22,169 +22,6 @@ // message format specific dumpers. namespace abi_util { -enum AccessSpecifier { - public_access = 1, - private_access = 2, - protected_access = 3, -}; - -enum RecordKind { - struct_kind = 1, - class_kind = 2, - union_kind = 3, -}; - -enum VTableComponentKind { - VCallOffset = 0, - VBaseOffset = 1, - OffsetToTop = 2, - RTTI = 3, - FunctionPointer = 4, - CompleteDtorPointer = 5, - DeletingDtorPointer = 6, - UnusedFunctionPointer = 7, -}; - -inline AccessSpecifier AccessIRToJson(AccessSpecifierIR access) { - switch (access) { - case AccessSpecifierIR::PublicAccess: - return AccessSpecifier::public_access; - - case AccessSpecifierIR::ProtectedAccess: - return AccessSpecifier::protected_access; - - case AccessSpecifierIR::PrivateAccess: - return AccessSpecifier::private_access; - - default: - return AccessSpecifier::public_access; - } - // Should not be reached - assert(false); -} - -inline AccessSpecifierIR AccessJsonToIR(AccessSpecifier access) { - switch (access) { - case AccessSpecifier::public_access: - return AccessSpecifierIR::PublicAccess; - - case AccessSpecifier::protected_access: - return AccessSpecifierIR::ProtectedAccess; - - case AccessSpecifier::private_access: - return AccessSpecifierIR::PrivateAccess; - - default: - return AccessSpecifierIR::PublicAccess; - } - // Should not be reached - assert(false); -} - -inline RecordKind RecordKindIRToJson(RecordTypeIR::RecordKind kind) { - switch (kind) { - case RecordTypeIR::RecordKind::struct_kind: - return RecordKind::struct_kind; - - case RecordTypeIR::RecordKind::class_kind: - return RecordKind::class_kind; - - case RecordTypeIR::RecordKind::union_kind: - return RecordKind::union_kind; - - default: - return RecordKind::struct_kind; - } - // Should not be reached - assert(false); -} - -inline RecordTypeIR::RecordKind RecordKindJsonToIR(RecordKind kind) { - switch (kind) { - case RecordKind::struct_kind: - return RecordTypeIR::struct_kind; - - case RecordKind::class_kind: - return RecordTypeIR::class_kind; - - case RecordKind::union_kind: - return RecordTypeIR::union_kind; - - default: - return RecordTypeIR::struct_kind; - } - // Should not be reached - assert(false); -} - -inline VTableComponentKind -VTableComponentKindIRToJson(VTableComponentIR::Kind kind) { - switch (kind) { - case VTableComponentIR::Kind::VCallOffset: - return VTableComponentKind::VCallOffset; - - case VTableComponentIR::Kind::VBaseOffset: - return VTableComponentKind::VBaseOffset; - - case VTableComponentIR::Kind::OffsetToTop: - return VTableComponentKind::OffsetToTop; - - case VTableComponentIR::Kind::RTTI: - return VTableComponentKind::RTTI; - - case VTableComponentIR::Kind::FunctionPointer: - return VTableComponentKind::FunctionPointer; - - case VTableComponentIR::Kind::CompleteDtorPointer: - return VTableComponentKind::CompleteDtorPointer; - - case VTableComponentIR::Kind::DeletingDtorPointer: - return VTableComponentKind::DeletingDtorPointer; - - case VTableComponentIR::Kind::UnusedFunctionPointer: - return VTableComponentKind::UnusedFunctionPointer; - - default: - return VTableComponentKind::UnusedFunctionPointer; - } - // Should not be reached - assert(false); -} - -inline VTableComponentIR::Kind -VTableComponentKindJsonToIR(VTableComponentKind kind) { - switch (kind) { - case VTableComponentKind::VCallOffset: - return VTableComponentIR::Kind::VCallOffset; - - case VTableComponentKind::VBaseOffset: - return VTableComponentIR::Kind::VBaseOffset; - - case VTableComponentKind::OffsetToTop: - return VTableComponentIR::Kind::OffsetToTop; - - case VTableComponentKind::RTTI: - return VTableComponentIR::Kind::RTTI; - - case VTableComponentKind::FunctionPointer: - return VTableComponentIR::Kind::FunctionPointer; - - case VTableComponentKind::CompleteDtorPointer: - return VTableComponentIR::Kind::CompleteDtorPointer; - - case VTableComponentKind::DeletingDtorPointer: - return VTableComponentIR::Kind::DeletingDtorPointer; - - case VTableComponentKind::UnusedFunctionPointer: - return VTableComponentIR::Kind::UnusedFunctionPointer; - - default: - return VTableComponentIR::Kind::UnusedFunctionPointer; - } - // Should not be reached - assert(false); -} - // Classes that wrap constructor of Json::Value. class JsonArray : public Json::Value { public: diff --git a/vndk/tools/header-checker/header-abi-util/src/ir_representation_json.cpp b/vndk/tools/header-checker/header-abi-util/src/ir_representation_json.cpp index 66910fe2d..c41a30a31 100644 --- a/vndk/tools/header-checker/header-abi-util/src/ir_representation_json.cpp +++ b/vndk/tools/header-checker/header-abi-util/src/ir_representation_json.cpp @@ -15,12 +15,70 @@ #include #include +#include +#include #include #include namespace abi_util { +// Conversion between IR enums and JSON strings. +static const std::map access_ir_to_json{ + {AccessSpecifierIR::PublicAccess, "public"}, + {AccessSpecifierIR::ProtectedAccess, "protected"}, + {AccessSpecifierIR::PrivateAccess, "private"}, +}; + +static const std::map + record_kind_ir_to_json{ + {RecordTypeIR::RecordKind::struct_kind, "struct"}, + {RecordTypeIR::RecordKind::class_kind, "class"}, + {RecordTypeIR::RecordKind::union_kind, "union"}, +}; + +static const std::map + vtable_component_kind_ir_to_json{ + {VTableComponentIR::Kind::VCallOffset, "vcall_offset"}, + {VTableComponentIR::Kind::VBaseOffset, "vbase_offset"}, + {VTableComponentIR::Kind::OffsetToTop, "offset_to_top"}, + {VTableComponentIR::Kind::RTTI, "rtti"}, + {VTableComponentIR::Kind::FunctionPointer, "function_pointer"}, + {VTableComponentIR::Kind::CompleteDtorPointer, "complete_dtor_pointer"}, + {VTableComponentIR::Kind::DeletingDtorPointer, "deleting_dtor_pointer"}, + {VTableComponentIR::Kind::UnusedFunctionPointer, "unused_function_pointer"}, +}; + +// If m contains k, this function returns the value. +// Otherwise, it prints error_msg and exits. +template +static inline const V &FindInMap(const std::map &m, const K &k, + const std::string &error_msg) { + auto it = m.find(k); + if (it == m.end()) { + llvm::errs() << error_msg << "\n"; + ::exit(1); + } + return it->second; +} + +static inline const std::string &AccessIRToJson(AccessSpecifierIR access) { + return FindInMap(access_ir_to_json, access, + "Failed to convert AccessSpecifierIR to JSON"); +} + +static inline const std::string & +RecordKindIRToJson(RecordTypeIR::RecordKind kind) { + return FindInMap(record_kind_ir_to_json, kind, + "Failed to convert RecordKind to JSON"); +} + +static inline const std::string & +VTableComponentKindIRToJson(VTableComponentIR::Kind kind) { + return FindInMap(vtable_component_kind_ir_to_json, kind, + "Failed to convert VTableComponentIR::Kind to JSON"); +} + void IRToJsonConverter::AddTemplateInfo( JsonObject &type_decl, const abi_util::TemplatedArtifactIR *template_ir) { Json::Value &elements = type_decl["template_info"]; diff --git a/vndk/tools/header-checker/tests/reference_dumps/arm/libgolden_cpp_json.so.lsdump b/vndk/tools/header-checker/tests/reference_dumps/arm/libgolden_cpp_json.so.lsdump index 10332de39..1b3bd289c 100644 --- a/vndk/tools/header-checker/tests/reference_dumps/arm/libgolden_cpp_json.so.lsdump +++ b/vndk/tools/header-checker/tests/reference_dumps/arm/libgolden_cpp_json.so.lsdump @@ -122,7 +122,7 @@ [ { - "access" : 2, + "access" : "private", "enum_fields" : [ @@ -168,7 +168,7 @@ [ { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLouder", "linker_set_key" : "_ZN12SuperSpeaker11SpeakLouderEv", "parameters" : @@ -186,7 +186,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::CreateSuperSpeaker", "linker_set_key" : "_ZN12SuperSpeaker18CreateSuperSpeakerEi", "parameters" : @@ -204,7 +204,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLoud", "linker_set_key" : "_ZN12SuperSpeaker9SpeakLoudEv", "parameters" : @@ -222,7 +222,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Speak", "linker_set_key" : "_ZN16LowVolumeSpeaker5SpeakEv", "parameters" : @@ -240,7 +240,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Listen", "linker_set_key" : "_ZN16LowVolumeSpeaker6ListenEv", "parameters" : @@ -258,7 +258,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::BadPractice", "linker_set_key" : "_ZN17HighVolumeSpeaker11BadPracticeEf", "parameters" : @@ -282,7 +282,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Speak", "linker_set_key" : "_ZN17HighVolumeSpeaker5SpeakEv", "parameters" : @@ -300,7 +300,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Listen", "linker_set_key" : "_ZN17HighVolumeSpeaker6ListenEv", "parameters" : @@ -379,20 +379,20 @@ [ { - "access" : 1, + "access" : "public", "base_specifiers" : [], "fields" : [ { - "access" : 2, + "access" : "private", "field_name" : "mSpeakderId", "field_offset" : 32, "referenced_type" : "type-2" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS12SuperSpeaker" @@ -416,42 +416,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI12SuperSpeaker" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD0Ev" } ] @@ -459,19 +459,19 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } ], "fields" : [], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS17HighVolumeSpeaker" @@ -495,42 +495,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI17HighVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD0Ev" } ] @@ -538,12 +538,12 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } @@ -552,21 +552,21 @@ [ { - "access" : 1, + "access" : "public", "field_name" : "speaker_uint_t", "field_offset" : 64, "referenced_type" : "type-6" }, { - "access" : 1, + "access" : "public", "field_name" : "speaker_float_star", "field_offset" : 96, "referenced_type" : "type-7" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS16LowVolumeSpeaker" @@ -590,42 +590,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI16LowVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD0Ev" } ] diff --git a/vndk/tools/header-checker/tests/reference_dumps/arm64/libgolden_cpp_json.so.lsdump b/vndk/tools/header-checker/tests/reference_dumps/arm64/libgolden_cpp_json.so.lsdump index 1350c0754..6f5250eb6 100644 --- a/vndk/tools/header-checker/tests/reference_dumps/arm64/libgolden_cpp_json.so.lsdump +++ b/vndk/tools/header-checker/tests/reference_dumps/arm64/libgolden_cpp_json.so.lsdump @@ -122,7 +122,7 @@ [ { - "access" : 2, + "access" : "private", "enum_fields" : [ @@ -168,7 +168,7 @@ [ { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLouder", "linker_set_key" : "_ZN12SuperSpeaker11SpeakLouderEv", "parameters" : @@ -186,7 +186,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::CreateSuperSpeaker", "linker_set_key" : "_ZN12SuperSpeaker18CreateSuperSpeakerEi", "parameters" : @@ -204,7 +204,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLoud", "linker_set_key" : "_ZN12SuperSpeaker9SpeakLoudEv", "parameters" : @@ -222,7 +222,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Speak", "linker_set_key" : "_ZN16LowVolumeSpeaker5SpeakEv", "parameters" : @@ -240,7 +240,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Listen", "linker_set_key" : "_ZN16LowVolumeSpeaker6ListenEv", "parameters" : @@ -258,7 +258,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::BadPractice", "linker_set_key" : "_ZN17HighVolumeSpeaker11BadPracticeEf", "parameters" : @@ -282,7 +282,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Speak", "linker_set_key" : "_ZN17HighVolumeSpeaker5SpeakEv", "parameters" : @@ -300,7 +300,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Listen", "linker_set_key" : "_ZN17HighVolumeSpeaker6ListenEv", "parameters" : @@ -379,20 +379,20 @@ [ { - "access" : 1, + "access" : "public", "base_specifiers" : [], "fields" : [ { - "access" : 2, + "access" : "private", "field_name" : "mSpeakderId", "field_offset" : 64, "referenced_type" : "type-2" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS12SuperSpeaker" @@ -416,42 +416,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI12SuperSpeaker" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD0Ev" } ] @@ -459,19 +459,19 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } ], "fields" : [], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS17HighVolumeSpeaker" @@ -495,42 +495,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI17HighVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD0Ev" } ] @@ -538,12 +538,12 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } @@ -552,21 +552,21 @@ [ { - "access" : 1, + "access" : "public", "field_name" : "speaker_uint_t", "field_offset" : 96, "referenced_type" : "type-6" }, { - "access" : 1, + "access" : "public", "field_name" : "speaker_float_star", "field_offset" : 128, "referenced_type" : "type-7" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS16LowVolumeSpeaker" @@ -590,42 +590,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI16LowVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD0Ev" } ] diff --git a/vndk/tools/header-checker/tests/reference_dumps/mips/libgolden_cpp_json.so.lsdump b/vndk/tools/header-checker/tests/reference_dumps/mips/libgolden_cpp_json.so.lsdump index 10332de39..1b3bd289c 100644 --- a/vndk/tools/header-checker/tests/reference_dumps/mips/libgolden_cpp_json.so.lsdump +++ b/vndk/tools/header-checker/tests/reference_dumps/mips/libgolden_cpp_json.so.lsdump @@ -122,7 +122,7 @@ [ { - "access" : 2, + "access" : "private", "enum_fields" : [ @@ -168,7 +168,7 @@ [ { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLouder", "linker_set_key" : "_ZN12SuperSpeaker11SpeakLouderEv", "parameters" : @@ -186,7 +186,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::CreateSuperSpeaker", "linker_set_key" : "_ZN12SuperSpeaker18CreateSuperSpeakerEi", "parameters" : @@ -204,7 +204,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLoud", "linker_set_key" : "_ZN12SuperSpeaker9SpeakLoudEv", "parameters" : @@ -222,7 +222,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Speak", "linker_set_key" : "_ZN16LowVolumeSpeaker5SpeakEv", "parameters" : @@ -240,7 +240,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Listen", "linker_set_key" : "_ZN16LowVolumeSpeaker6ListenEv", "parameters" : @@ -258,7 +258,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::BadPractice", "linker_set_key" : "_ZN17HighVolumeSpeaker11BadPracticeEf", "parameters" : @@ -282,7 +282,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Speak", "linker_set_key" : "_ZN17HighVolumeSpeaker5SpeakEv", "parameters" : @@ -300,7 +300,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Listen", "linker_set_key" : "_ZN17HighVolumeSpeaker6ListenEv", "parameters" : @@ -379,20 +379,20 @@ [ { - "access" : 1, + "access" : "public", "base_specifiers" : [], "fields" : [ { - "access" : 2, + "access" : "private", "field_name" : "mSpeakderId", "field_offset" : 32, "referenced_type" : "type-2" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS12SuperSpeaker" @@ -416,42 +416,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI12SuperSpeaker" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD0Ev" } ] @@ -459,19 +459,19 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } ], "fields" : [], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS17HighVolumeSpeaker" @@ -495,42 +495,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI17HighVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD0Ev" } ] @@ -538,12 +538,12 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } @@ -552,21 +552,21 @@ [ { - "access" : 1, + "access" : "public", "field_name" : "speaker_uint_t", "field_offset" : 64, "referenced_type" : "type-6" }, { - "access" : 1, + "access" : "public", "field_name" : "speaker_float_star", "field_offset" : 96, "referenced_type" : "type-7" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS16LowVolumeSpeaker" @@ -590,42 +590,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI16LowVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD0Ev" } ] diff --git a/vndk/tools/header-checker/tests/reference_dumps/mips64/libgolden_cpp_json.so.lsdump b/vndk/tools/header-checker/tests/reference_dumps/mips64/libgolden_cpp_json.so.lsdump index 1350c0754..6f5250eb6 100644 --- a/vndk/tools/header-checker/tests/reference_dumps/mips64/libgolden_cpp_json.so.lsdump +++ b/vndk/tools/header-checker/tests/reference_dumps/mips64/libgolden_cpp_json.so.lsdump @@ -122,7 +122,7 @@ [ { - "access" : 2, + "access" : "private", "enum_fields" : [ @@ -168,7 +168,7 @@ [ { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLouder", "linker_set_key" : "_ZN12SuperSpeaker11SpeakLouderEv", "parameters" : @@ -186,7 +186,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::CreateSuperSpeaker", "linker_set_key" : "_ZN12SuperSpeaker18CreateSuperSpeakerEi", "parameters" : @@ -204,7 +204,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLoud", "linker_set_key" : "_ZN12SuperSpeaker9SpeakLoudEv", "parameters" : @@ -222,7 +222,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Speak", "linker_set_key" : "_ZN16LowVolumeSpeaker5SpeakEv", "parameters" : @@ -240,7 +240,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Listen", "linker_set_key" : "_ZN16LowVolumeSpeaker6ListenEv", "parameters" : @@ -258,7 +258,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::BadPractice", "linker_set_key" : "_ZN17HighVolumeSpeaker11BadPracticeEf", "parameters" : @@ -282,7 +282,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Speak", "linker_set_key" : "_ZN17HighVolumeSpeaker5SpeakEv", "parameters" : @@ -300,7 +300,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Listen", "linker_set_key" : "_ZN17HighVolumeSpeaker6ListenEv", "parameters" : @@ -379,20 +379,20 @@ [ { - "access" : 1, + "access" : "public", "base_specifiers" : [], "fields" : [ { - "access" : 2, + "access" : "private", "field_name" : "mSpeakderId", "field_offset" : 64, "referenced_type" : "type-2" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS12SuperSpeaker" @@ -416,42 +416,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI12SuperSpeaker" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD0Ev" } ] @@ -459,19 +459,19 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } ], "fields" : [], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS17HighVolumeSpeaker" @@ -495,42 +495,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI17HighVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD0Ev" } ] @@ -538,12 +538,12 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } @@ -552,21 +552,21 @@ [ { - "access" : 1, + "access" : "public", "field_name" : "speaker_uint_t", "field_offset" : 96, "referenced_type" : "type-6" }, { - "access" : 1, + "access" : "public", "field_name" : "speaker_float_star", "field_offset" : 128, "referenced_type" : "type-7" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS16LowVolumeSpeaker" @@ -590,42 +590,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI16LowVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD0Ev" } ] diff --git a/vndk/tools/header-checker/tests/reference_dumps/x86/libgolden_cpp_json.so.lsdump b/vndk/tools/header-checker/tests/reference_dumps/x86/libgolden_cpp_json.so.lsdump index 10332de39..1b3bd289c 100644 --- a/vndk/tools/header-checker/tests/reference_dumps/x86/libgolden_cpp_json.so.lsdump +++ b/vndk/tools/header-checker/tests/reference_dumps/x86/libgolden_cpp_json.so.lsdump @@ -122,7 +122,7 @@ [ { - "access" : 2, + "access" : "private", "enum_fields" : [ @@ -168,7 +168,7 @@ [ { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLouder", "linker_set_key" : "_ZN12SuperSpeaker11SpeakLouderEv", "parameters" : @@ -186,7 +186,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::CreateSuperSpeaker", "linker_set_key" : "_ZN12SuperSpeaker18CreateSuperSpeakerEi", "parameters" : @@ -204,7 +204,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLoud", "linker_set_key" : "_ZN12SuperSpeaker9SpeakLoudEv", "parameters" : @@ -222,7 +222,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Speak", "linker_set_key" : "_ZN16LowVolumeSpeaker5SpeakEv", "parameters" : @@ -240,7 +240,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Listen", "linker_set_key" : "_ZN16LowVolumeSpeaker6ListenEv", "parameters" : @@ -258,7 +258,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::BadPractice", "linker_set_key" : "_ZN17HighVolumeSpeaker11BadPracticeEf", "parameters" : @@ -282,7 +282,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Speak", "linker_set_key" : "_ZN17HighVolumeSpeaker5SpeakEv", "parameters" : @@ -300,7 +300,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Listen", "linker_set_key" : "_ZN17HighVolumeSpeaker6ListenEv", "parameters" : @@ -379,20 +379,20 @@ [ { - "access" : 1, + "access" : "public", "base_specifiers" : [], "fields" : [ { - "access" : 2, + "access" : "private", "field_name" : "mSpeakderId", "field_offset" : 32, "referenced_type" : "type-2" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS12SuperSpeaker" @@ -416,42 +416,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI12SuperSpeaker" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD0Ev" } ] @@ -459,19 +459,19 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } ], "fields" : [], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS17HighVolumeSpeaker" @@ -495,42 +495,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI17HighVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD0Ev" } ] @@ -538,12 +538,12 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } @@ -552,21 +552,21 @@ [ { - "access" : 1, + "access" : "public", "field_name" : "speaker_uint_t", "field_offset" : 64, "referenced_type" : "type-6" }, { - "access" : 1, + "access" : "public", "field_name" : "speaker_float_star", "field_offset" : 96, "referenced_type" : "type-7" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS16LowVolumeSpeaker" @@ -590,42 +590,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI16LowVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD0Ev" } ] diff --git a/vndk/tools/header-checker/tests/reference_dumps/x86_64/libgolden_cpp_json.so.lsdump b/vndk/tools/header-checker/tests/reference_dumps/x86_64/libgolden_cpp_json.so.lsdump index 1350c0754..6f5250eb6 100644 --- a/vndk/tools/header-checker/tests/reference_dumps/x86_64/libgolden_cpp_json.so.lsdump +++ b/vndk/tools/header-checker/tests/reference_dumps/x86_64/libgolden_cpp_json.so.lsdump @@ -122,7 +122,7 @@ [ { - "access" : 2, + "access" : "private", "enum_fields" : [ @@ -168,7 +168,7 @@ [ { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLouder", "linker_set_key" : "_ZN12SuperSpeaker11SpeakLouderEv", "parameters" : @@ -186,7 +186,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::CreateSuperSpeaker", "linker_set_key" : "_ZN12SuperSpeaker18CreateSuperSpeakerEi", "parameters" : @@ -204,7 +204,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "SuperSpeaker::SpeakLoud", "linker_set_key" : "_ZN12SuperSpeaker9SpeakLoudEv", "parameters" : @@ -222,7 +222,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Speak", "linker_set_key" : "_ZN16LowVolumeSpeaker5SpeakEv", "parameters" : @@ -240,7 +240,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "LowVolumeSpeaker::Listen", "linker_set_key" : "_ZN16LowVolumeSpeaker6ListenEv", "parameters" : @@ -258,7 +258,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::BadPractice", "linker_set_key" : "_ZN17HighVolumeSpeaker11BadPracticeEf", "parameters" : @@ -282,7 +282,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Speak", "linker_set_key" : "_ZN17HighVolumeSpeaker5SpeakEv", "parameters" : @@ -300,7 +300,7 @@ }, { - "access" : 1, + "access" : "public", "function_name" : "HighVolumeSpeaker::Listen", "linker_set_key" : "_ZN17HighVolumeSpeaker6ListenEv", "parameters" : @@ -379,20 +379,20 @@ [ { - "access" : 1, + "access" : "public", "base_specifiers" : [], "fields" : [ { - "access" : 2, + "access" : "private", "field_name" : "mSpeakderId", "field_offset" : 64, "referenced_type" : "type-2" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS12SuperSpeaker" @@ -416,42 +416,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI12SuperSpeaker" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : true, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN12SuperSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN12SuperSpeakerD0Ev" } ] @@ -459,19 +459,19 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } ], "fields" : [], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS17HighVolumeSpeaker" @@ -495,42 +495,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI17HighVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN17HighVolumeSpeakerD0Ev" } ] @@ -538,12 +538,12 @@ }, { - "access" : 1, + "access" : "public", "base_specifiers" : [ { - "access" : 1, + "access" : "public", "is_virtual" : false, "referenced_type" : "type-1" } @@ -552,21 +552,21 @@ [ { - "access" : 1, + "access" : "public", "field_name" : "speaker_uint_t", "field_offset" : 96, "referenced_type" : "type-6" }, { - "access" : 1, + "access" : "public", "field_name" : "speaker_float_star", "field_offset" : 128, "referenced_type" : "type-7" } ], "is_anonymous" : false, - "record_kind" : 2, + "record_kind" : "class", "tag_info" : { "unique_id" : "_ZTS16LowVolumeSpeaker" @@ -590,42 +590,42 @@ { "component_value" : 0, "is_pure" : false, - "kind" : 2, + "kind" : "offset_to_top", "mangled_component_name" : "" }, { "component_value" : 0, "is_pure" : false, - "kind" : 3, + "kind" : "rtti", "mangled_component_name" : "_ZTI16LowVolumeSpeaker" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker5SpeakEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 4, + "kind" : "function_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeaker6ListenEv" }, { "component_value" : 0, "is_pure" : false, - "kind" : 5, + "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD1Ev" }, { "component_value" : 0, "is_pure" : false, - "kind" : 6, + "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN16LowVolumeSpeakerD0Ev" } ]