LLDB mainline
Classes | Public Types | Static Public Member Functions | List of all members
lldb_private::StructuredData Class Reference

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< ObjectObjectSP
 
typedef std::shared_ptr< ArrayArraySP
 
typedef std::shared_ptr< UnsignedIntegerUnsignedIntegerSP
 
typedef std::shared_ptr< SignedIntegerSignedIntegerSP
 
typedef std::shared_ptr< FloatFloatSP
 
typedef std::shared_ptr< BooleanBooleanSP
 
typedef std::shared_ptr< StringStringSP
 
typedef std::shared_ptr< DictionaryDictionarySP
 
typedef std::shared_ptr< GenericGenericSP
 
typedef std::variant< UnsignedIntegerSP, SignedIntegerSPIntegerSP
 

Static Public Member Functions

static ObjectSP ParseJSON (llvm::StringRef json_text)
 
static ObjectSP ParseJSONFromFile (const FileSpec &file, Status &error)
 
static bool IsRecordType (const ObjectSP object_sp)
 

Detailed Description

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 52 of file StructuredData.h.

Member Typedef Documentation

◆ ArraySP

typedef std::shared_ptr<Array> lldb_private::StructuredData::ArraySP

Definition at line 67 of file StructuredData.h.

◆ BooleanSP

Definition at line 71 of file StructuredData.h.

◆ DictionarySP

Definition at line 73 of file StructuredData.h.

◆ FloatSP

typedef std::shared_ptr<Float> lldb_private::StructuredData::FloatSP

Definition at line 70 of file StructuredData.h.

◆ GenericSP

Definition at line 74 of file StructuredData.h.

◆ IntegerSP

Definition at line 76 of file StructuredData.h.

◆ ObjectSP

Definition at line 66 of file StructuredData.h.

◆ SignedInteger

Definition at line 59 of file StructuredData.h.

◆ SignedIntegerSP

Definition at line 69 of file StructuredData.h.

◆ StringSP

Definition at line 72 of file StructuredData.h.

◆ UnsignedInteger

Definition at line 58 of file StructuredData.h.

◆ UnsignedIntegerSP

Definition at line 68 of file StructuredData.h.

Member Function Documentation

◆ IsRecordType()

bool StructuredData::IsRecordType ( const ObjectSP  object_sp)
static

◆ ParseJSON()

StructuredData::ObjectSP StructuredData::ParseJSON ( llvm::StringRef  json_text)
static

◆ ParseJSONFromFile()

StructuredData::ObjectSP StructuredData::ParseJSONFromFile ( const FileSpec file,
Status error 
)
static

The documentation for this class was generated from the following files: