|
LLDB mainline
|
A class which can hold structured data. More...
#include "lldb/Utility/StructuredData.h"
Classes | |
| class | Array |
| class | Boolean |
| class | Dictionary |
| class | Float |
| class | Generic |
| class | Integer |
| class | Null |
| class | Object |
| class | String |
Public Types | |
| using | UnsignedInteger = Integer<uint64_t> |
| using | SignedInteger = Integer<int64_t> |
| typedef std::shared_ptr< Object > | ObjectSP |
| typedef std::shared_ptr< Array > | ArraySP |
| typedef std::shared_ptr< UnsignedInteger > | UnsignedIntegerSP |
| typedef std::shared_ptr< SignedInteger > | SignedIntegerSP |
| typedef std::shared_ptr< Float > | FloatSP |
| typedef std::shared_ptr< Boolean > | BooleanSP |
| typedef std::shared_ptr< String > | StringSP |
| typedef std::shared_ptr< Dictionary > | DictionarySP |
| typedef std::shared_ptr< Generic > | GenericSP |
| typedef std::variant< UnsignedIntegerSP, SignedIntegerSP > | IntegerSP |
Static Public Member Functions | |
| template<typename T> | |
| static ObjectSP | FromInteger (T value) |
| static StructuredData::ObjectSP | FromFloat (double value) |
| static StructuredData::ObjectSP | FromBoolean (bool value) |
| static StructuredData::ObjectSP | FromString (llvm::StringRef value) |
| static StructuredData::ObjectSP | FromGeneric (void *value) |
| static StructuredData::ObjectSP | FromKeyValue (llvm::StringRef key, const StructuredData::ObjectSP &value_sp) |
| static ObjectSP | ParseJSON (llvm::StringRef json_text) |
| static ObjectSP | ParseJSONFromFile (const FileSpec &file, Status &error) |
| static bool | IsRecordType (const ObjectSP object_sp) |
A class which can hold structured data.
The StructuredData class is designed to hold the data from a JSON or plist style file – a serialized data structure with dictionaries (maps, hashes), arrays, and concrete values like integers, floating point numbers, strings, booleans.
StructuredData does not presuppose any knowledge of the schema for the data it is holding; it can parse JSON data, for instance, and other parts of lldb can iterate through the parsed data set to find keys and values that may be present.
Definition at line 54 of file StructuredData.h.
| typedef std::shared_ptr<Array> lldb_private::StructuredData::ArraySP |
Definition at line 69 of file StructuredData.h.
| typedef std::shared_ptr<Boolean> lldb_private::StructuredData::BooleanSP |
Definition at line 73 of file StructuredData.h.
| typedef std::shared_ptr<Dictionary> lldb_private::StructuredData::DictionarySP |
Definition at line 75 of file StructuredData.h.
| typedef std::shared_ptr<Float> lldb_private::StructuredData::FloatSP |
Definition at line 72 of file StructuredData.h.
| typedef std::shared_ptr<Generic> lldb_private::StructuredData::GenericSP |
Definition at line 76 of file StructuredData.h.
| typedef std::variant<UnsignedIntegerSP, SignedIntegerSP> lldb_private::StructuredData::IntegerSP |
Definition at line 78 of file StructuredData.h.
| typedef std::shared_ptr<Object> lldb_private::StructuredData::ObjectSP |
Definition at line 68 of file StructuredData.h.
| using lldb_private::StructuredData::SignedInteger = Integer<int64_t> |
Definition at line 61 of file StructuredData.h.
| typedef std::shared_ptr<SignedInteger> lldb_private::StructuredData::SignedIntegerSP |
Definition at line 71 of file StructuredData.h.
| typedef std::shared_ptr<String> lldb_private::StructuredData::StringSP |
Definition at line 74 of file StructuredData.h.
| using lldb_private::StructuredData::UnsignedInteger = Integer<uint64_t> |
Definition at line 60 of file StructuredData.h.
| typedef std::shared_ptr<UnsignedInteger> lldb_private::StructuredData::UnsignedIntegerSP |
Definition at line 70 of file StructuredData.h.
|
inlinestatic |
Definition at line 601 of file StructuredData.h.
Referenced by lldb_private::StructuredDataImpl::SetBooleanValue().
|
inlinestatic |
Definition at line 598 of file StructuredData.h.
Referenced by lldb_private::StructuredDataImpl::SetFloatValue().
|
inlinestatic |
Definition at line 607 of file StructuredData.h.
Referenced by lldb_private::StructuredDataImpl::SetGenericValue().
|
inlinestatic |
Definition at line 594 of file StructuredData.h.
Referenced by lldb_private::StructuredDataImpl::SetSignedIntegerValue(), and lldb_private::StructuredDataImpl::SetUnsignedIntegerValue().
|
inlinestatic |
Definition at line 612 of file StructuredData.h.
Referenced by lldb_private::StructuredDataImpl::SetValueForKey().
|
inlinestatic |
Definition at line 604 of file StructuredData.h.
Referenced by lldb_private::StructuredDataImpl::SetStringValue().
Definition at line 53 of file StructuredData.cpp.
References lldb::eStructuredDataTypeArray, and lldb::eStructuredDataTypeDictionary.
Referenced by lldb_private::StructuredData::Array::GetDescription(), and lldb_private::StructuredData::Dictionary::GetDescription().
|
static |
Definition at line 25 of file StructuredData.cpp.
References ParseJSON(), and ParseJSONValue().
Referenced by ObjectFileMachO::GetCorefileProcessMetadata(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetDynamicLoaderProcessState(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetExtendedInfoForThread(), lldb_private::ScriptInterpreterPython::GetExtensionSchema(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetLoadedDynamicLibrariesInfos_sender(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModulesInfo(), lldb_private::platform_gdb_server::PlatformRemoteGDBServer::GetRemoteUnixSignals(), lldb::SBDebugger::GetSetting(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetSharedCacheInfo(), lldb::SBCommandInterpreter::GetStatistics(), lldb::SBTarget::GetStatistics(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetSupportedStructuredDataPlugins(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadsInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_jModulesInfo(), ParseJSON(), ParseMultiBreakpointResponse(), ParseStructuredDataPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::QueryGDBServer(), lldb::SBStructuredData::SetFromJSON(), lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo(), and lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo().
|
static |
Definition at line 35 of file StructuredData.cpp.
References error(), lldb_private::Status::FromError(), lldb_private::Status::FromErrorStringWithFormatv(), lldb_private::FileSpec::GetPath(), and ParseJSONValue().
Referenced by lldb_private::Target::CreateBreakpointsFromFile(), CommandObjectBreakpointRead::CommandOptions::HandleOptionArgumentCompletion(), and lldb_private::Target::SerializeBreakpointsToFile().