LLDB mainline
|
#include <StructuredData.h>
Public Member Functions | |
Object (lldb::StructuredDataType t=lldb::eStructuredDataTypeInvalid) | |
virtual | ~Object ()=default |
virtual bool | IsValid () const |
virtual void | Clear () |
lldb::StructuredDataType | GetType () const |
void | SetType (lldb::StructuredDataType t) |
Array * | GetAsArray () |
Dictionary * | GetAsDictionary () |
UnsignedInteger * | GetAsUnsignedInteger () |
SignedInteger * | GetAsSignedInteger () |
uint64_t | GetUnsignedIntegerValue (uint64_t fail_value=0) |
int64_t | GetSignedIntegerValue (int64_t fail_value=0) |
Float * | GetAsFloat () |
double | GetFloatValue (double fail_value=0.0) |
Boolean * | GetAsBoolean () |
bool | GetBooleanValue (bool fail_value=false) |
String * | GetAsString () |
llvm::StringRef | GetStringValue (const char *fail_value=nullptr) |
Generic * | GetAsGeneric () |
ObjectSP | GetObjectForDotSeparatedPath (llvm::StringRef path) |
void | DumpToStdout (bool pretty_print=true) const |
virtual void | Serialize (llvm::json::OStream &s) const =0 |
void | Dump (lldb_private::Stream &s, bool pretty_print=true) const |
virtual void | GetDescription (lldb_private::Stream &s) const |
Private Attributes | |
lldb::StructuredDataType | m_type |
Definition at line 78 of file StructuredData.h.
|
inline |
Definition at line 80 of file StructuredData.h.
|
virtualdefault |
|
inlinevirtual |
Definition at line 87 of file StructuredData.h.
References lldb::eStructuredDataTypeInvalid, and m_type.
|
inline |
Definition at line 178 of file StructuredData.h.
References lldb_private::Stream::AsRawOstream(), and Serialize().
Referenced by CommandObjectTargetModulesDumpSeparateDebugInfoFiles::DoExecute(), ObjectFileMachO::GetCorefileThreadExtraInfos(), GetDescription(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerPlatform::Handle_jSignalsInfo(), and lldb_private::Target::SerializeBreakpointsToFile().
void StructuredData::Object::DumpToStdout | ( | bool | pretty_print = true | ) | const |
Definition at line 138 of file StructuredData.cpp.
Referenced by lldb_private::DynamicRegisterInfo::SetRegisterInfo().
|
inline |
Definition at line 93 of file StructuredData.h.
References lldb::eStructuredDataTypeArray, and m_type.
Referenced by CommandObjectScriptingObjectParsed::CommandObjectScriptingObjectParsed(), lldb_private::Target::CreateBreakpointsFromFile(), lldb_private::PlatformDarwin::ExtractAppSpecificInfo(), lldb_private::Thread::GetDescription(), SystemRuntimeMacOSX::GetExtendedBacktraceThread(), lldb_private::InstrumentationRuntimeTSan::GetFirstNonInternalFramePc(), lldb::SBStructuredData::GetKeys(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModulesInfo(), GetObjectForDotSeparatedPath(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetThreadStopInfoFromJSON(), lldb_private::StructuredData::Dictionary::GetValueForKeyAsArray(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_jModulesInfo(), CommandObjectBreakpointRead::CommandOptions::HandleOptionArgumentCompletion(), CommandObjectScriptingObjectParsed::CommandOptions::ParseUsageMaskFromArray(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::QueryGDBServer(), lldb_private::Target::SerializeBreakpointsToFile(), CommandObjectScriptingObjectParsed::CommandOptions::SetOptionsFromArray(), and lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo().
|
inline |
Definition at line 141 of file StructuredData.h.
References lldb::eStructuredDataTypeBoolean, and m_type.
Referenced by GetBooleanValue(), lldb_private::StructuredData::Dictionary::GetValueForKeyAsBoolean(), and CommandObjectScriptingObjectParsed::CommandOptions::SetOptionsFromArray().
|
inline |
Definition at line 99 of file StructuredData.h.
References lldb::eStructuredDataTypeDictionary, and m_type.
Referenced by SystemRuntimeMacOSX::AddThreadExtendedInfoPacketHints(), CommandObjectScriptingObjectParsed::CommandObjectScriptingObjectParsed(), lldb_private::Target::CreateBreakpointsFromFile(), lldb_private::Breakpoint::CreateFromStructuredData(), SymbolVendorMacOSX::CreateInstance(), lldb_private::StructuredData::Dictionary::Dictionary(), CommandObjectTargetModulesDumpSeparateDebugInfoFiles::DoExecute(), DumpDwoFilesTable(), DumpOsoFilesTable(), GenerateThreadName(), ObjectFileMachO::GetCorefileThreadExtraInfos(), lldb_private::StructuredDataDarwinLog::GetDescription(), lldb_private::Thread::GetDescription(), SystemRuntimeMacOSX::GetExtendedBacktraceThread(), lldb::SBStructuredData::GetKeys(), lldb_private::ScriptedProcess::GetLoadedDynamicLibrariesInfos(), GetObjectForDotSeparatedPath(), lldb_private::platform_gdb_server::PlatformRemoteGDBServer::GetRemoteUnixSignals(), lldb_private::AppleObjCRuntimeV2::GetSharedCacheBaseAddress(), DynamicLoaderMacOS::GetSharedCacheInformation(), lldb_private::Target::StopHookScripted::GetSubclassDescription(), lldb_private::StructuredData::Dictionary::GetValueForKeyAsDictionary(), CommandObjectBreakpointRead::CommandOptions::HandleOptionArgumentCompletion(), lldb_private::DynamicLoaderDarwin::JSONImageInformationIntoImageInfo(), lldb_private::Process::RouteAsyncStructuredData(), lldb_private::Breakpoint::SerializedBreakpointMatchesNames(), CommandObjectScriptingObjectParsed::CommandOptions::SetOptionsFromArray(), lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo(), lldb_private::trace_intel_pt::TraceIntelPT::Start(), and lldb_private::process_gdb_remote::ProcessGDBRemote::UpdateThreadIDList().
|
inline |
Definition at line 130 of file StructuredData.h.
References lldb::eStructuredDataTypeFloat, and m_type.
Referenced by GetFloatValue().
|
inline |
Definition at line 166 of file StructuredData.h.
References lldb::eStructuredDataTypeGeneric, and m_type.
|
inline |
Definition at line 114 of file StructuredData.h.
References lldb::eStructuredDataTypeSignedInteger, and m_type.
Referenced by GetSignedIntegerValue().
|
inline |
Definition at line 152 of file StructuredData.h.
References lldb::eStructuredDataTypeString, and m_type.
Referenced by SymbolVendorMacOSX::CreateInstance(), and GetStringValue().
|
inline |
Definition at line 105 of file StructuredData.h.
References lldb::eStructuredDataTypeInteger, lldb::eStructuredDataTypeUnsignedInteger, and m_type.
Referenced by CommandObjectScriptingObjectParsed::CommandObjectScriptingObjectParsed(), GetUnsignedIntegerValue(), CommandObjectScriptingObjectParsed::CommandOptions::ParseUsageMaskFromArray(), and CommandObjectScriptingObjectParsed::CommandOptions::SetOptionsFromArray().
|
inline |
Definition at line 147 of file StructuredData.h.
References GetAsBoolean(), and lldb_private::StructuredData::Boolean::GetValue().
|
inlinevirtual |
Reimplemented in lldb_private::StructuredData::Array, lldb_private::StructuredData::Integer< N >, lldb_private::StructuredData::Float, lldb_private::StructuredData::Boolean, lldb_private::StructuredData::String, lldb_private::StructuredData::Dictionary, lldb_private::StructuredData::Null, and lldb_private::StructuredData::Generic.
Definition at line 183 of file StructuredData.h.
References Dump(), lldb_private::Stream::IndentLess(), and lldb_private::Stream::IndentMore().
|
inline |
Definition at line 136 of file StructuredData.h.
References GetAsFloat(), and lldb_private::StructuredData::Float::GetValue().
StructuredData::ObjectSP StructuredData::Object::GetObjectForDotSeparatedPath | ( | llvm::StringRef | path | ) |
Definition at line 107 of file StructuredData.cpp.
References lldb::eStructuredDataTypeArray, lldb::eStructuredDataTypeDictionary, GetAsArray(), GetAsDictionary(), lldb_private::StructuredData::Array::GetItemAtIndex(), GetType(), and lldb_private::StructuredData::Dictionary::GetValueForKey().
Referenced by AddThreadsForPath(), GenerateThreadName(), lldb_private::InstrumentationRuntimeTSan::GetMainRacyAddress(), and lldb_private::InstrumentationRuntimeTSan::NotifyBreakpointHit().
|
inline |
Definition at line 125 of file StructuredData.h.
References GetAsSignedInteger(), and integer.
|
inline |
Definition at line 158 of file StructuredData.h.
References GetAsString(), and lldb_private::StructuredData::String::GetValue().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo().
|
inline |
Definition at line 89 of file StructuredData.h.
References m_type.
Referenced by GetObjectForDotSeparatedPath().
|
inline |
Definition at line 120 of file StructuredData.h.
References GetAsUnsignedInteger(), and integer.
Referenced by lldb_private::InstrumentationRuntimeMainThreadChecker::GetBacktracesFromExtendedStopInfo(), lldb_private::InstrumentationRuntimeUBSan::GetBacktracesFromExtendedStopInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::QueryGDBServer(), and lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo().
|
inlinevirtual |
Reimplemented in lldb_private::StructuredData::Null, and lldb_private::StructuredData::Generic.
Definition at line 85 of file StructuredData.h.
Referenced by lldb_private::SearchFilter::CreateFromStructuredData(), lldb_private::BreakpointResolver::CreateFromStructuredData(), lldb_private::Breakpoint::CreateFromStructuredData(), lldb_private::platform_gdb_server::PlatformRemoteGDBServer::GetRemoteUnixSignals(), and lldb_private::Target::StopHookScripted::GetSubclassDescription().
|
pure virtual |
Implemented in lldb_private::StructuredData::Array, lldb_private::StructuredData::Integer< N >, lldb_private::StructuredData::Float, lldb_private::StructuredData::Boolean, lldb_private::StructuredData::String, lldb_private::StructuredData::Dictionary, lldb_private::StructuredData::Null, and lldb_private::StructuredData::Generic.
Referenced by Dump().
|
inline |
Definition at line 91 of file StructuredData.h.
References m_type.
Referenced by lldb_private::StructuredData::Dictionary::Dictionary().
|
private |
Definition at line 190 of file StructuredData.h.
Referenced by Clear(), GetAsArray(), GetAsBoolean(), GetAsDictionary(), GetAsFloat(), GetAsGeneric(), GetAsSignedInteger(), GetAsString(), GetAsUnsignedInteger(), GetType(), and SetType().