LLDB mainline
lldb_private::OptionValueDictionary Class Reference

#include <OptionValueDictionary.h>

Inheritance diagram for lldb_private::OptionValueDictionary:
[legend]

Public Member Functions

 OptionValueDictionary (uint32_t type_mask=UINT32_MAX, OptionEnumValues enum_values=OptionEnumValues(), bool raw_value_dump=true)
 ~OptionValueDictionary () override=default
OptionValue::Type GetType () const override
void DumpValue (const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask) override
llvm::json::Value ToJSON (const ExecutionContext *exe_ctx) const override
Status SetValueFromString (llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign) override
void Clear () override
lldb::OptionValueSP DeepCopy (const lldb::OptionValueSP &new_parent) const override
bool IsAggregateValue () const override
bool IsHomogenous () const
size_t GetNumValues () const
lldb::OptionValueSP GetValueForKey (llvm::StringRef key) const
lldb::OptionValueSP GetSubValue (const ExecutionContext *exe_ctx, llvm::StringRef name, Status &error) const override
Status SetSubValue (const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef name, llvm::StringRef value) override
bool SetValueForKey (llvm::StringRef key, const lldb::OptionValueSP &value_sp, bool can_replace=true)
bool DeleteValueForKey (llvm::StringRef key)
size_t GetArgs (Args &args) const
Status SetArgs (const Args &args, VarSetOperationType op)
Public Member Functions inherited from lldb_private::Cloneable< OptionValueDictionary, OptionValue >
std::shared_ptr< typename OptionValue::TopmostBaseClone () const override
Public Member Functions inherited from lldb_private::OptionValue
 OptionValue ()=default
virtual ~OptionValue ()=default
 OptionValue (const OptionValue &other)
OptionValueoperator= (const OptionValue &other)
virtual bool ValueIsTransparent () const
virtual const char * GetTypeAsCString () const
virtual void AutoComplete (CommandInterpreter &interpreter, CompletionRequest &request)
virtual llvm::StringRef GetName () const
virtual bool DumpQualifiedName (Stream &strm) const
uint32_t GetTypeAsMask ()
OptionValueArchGetAsArch ()
const OptionValueArchGetAsArch () const
OptionValueArrayGetAsArray ()
const OptionValueArrayGetAsArray () const
OptionValueArgsGetAsArgs ()
const OptionValueArgsGetAsArgs () const
OptionValueBooleanGetAsBoolean ()
const OptionValueBooleanGetAsBoolean () const
OptionValueCharGetAsChar ()
const OptionValueCharGetAsChar () const
OptionValueDictionaryGetAsDictionary ()
const OptionValueDictionaryGetAsDictionary () const
OptionValueEnumerationGetAsEnumeration ()
const OptionValueEnumerationGetAsEnumeration () const
OptionValueFileSpecGetAsFileSpec ()
const OptionValueFileSpecGetAsFileSpec () const
OptionValueFileSpecListGetAsFileSpecList ()
const OptionValueFileSpecListGetAsFileSpecList () const
OptionValueFormatGetAsFormat ()
const OptionValueFormatGetAsFormat () const
OptionValueLanguageGetAsLanguage ()
const OptionValueLanguageGetAsLanguage () const
OptionValuePathMappingsGetAsPathMappings ()
const OptionValuePathMappingsGetAsPathMappings () const
OptionValuePropertiesGetAsProperties ()
const OptionValuePropertiesGetAsProperties () const
OptionValueRegexGetAsRegex ()
const OptionValueRegexGetAsRegex () const
OptionValueSInt64GetAsSInt64 ()
const OptionValueSInt64GetAsSInt64 () const
OptionValueStringGetAsString ()
const OptionValueStringGetAsString () const
OptionValueUInt64GetAsUInt64 ()
const OptionValueUInt64GetAsUInt64 () const
OptionValueUUIDGetAsUUID ()
const OptionValueUUIDGetAsUUID () const
OptionValueFormatEntityGetAsFormatEntity ()
const OptionValueFormatEntityGetAsFormatEntity () const
bool AppendFileSpecValue (FileSpec file_spec)
bool OptionWasSet () const
void SetOptionWasSet ()
void SetParent (const lldb::OptionValueSP &parent_sp)
lldb::OptionValueSP GetParent () const
void SetValueChangedCallback (std::function< void()> callback)
void NotifyValueChanged ()
template<typename T, std::enable_if_t<!std::is_pointer_v< T >, bool > = true>
std::optional< T > GetValueAs () const
template<typename T, typename U = typename std::remove_const< typename std::remove_pointer<T>::type>::type, std::enable_if_t< std::is_pointer_v< T >, bool > = true>
GetValueAs () const
bool SetValueAs (bool v)
bool SetValueAs (char v)
bool SetValueAs (uint64_t v)
bool SetValueAs (int64_t v)
bool SetValueAs (UUID v)
bool SetValueAs (llvm::StringRef v)
bool SetValueAs (lldb::LanguageType v)
bool SetValueAs (lldb::Format v)
bool SetValueAs (FileSpec v)
bool SetValueAs (ArchSpec v)
bool SetValueAs (const FormatEntity::Entry &v)
template<typename T, std::enable_if_t< std::is_enum_v< T >, bool > = true>
bool SetValueAs (T t)

Protected Attributes

uint32_t m_type_mask
OptionEnumValues m_enum_values
llvm::StringMap< lldb::OptionValueSPm_values
bool m_raw_value_dump
Protected Attributes inherited from lldb_private::OptionValue
lldb::OptionValueWP m_parent_wp
std::function< void()> m_callback
bool m_value_was_set = false

Additional Inherited Members

Public Types inherited from lldb_private::OptionValue
enum  Type {
  eTypeInvalid = 0 , eTypeArch , eTypeArgs , eTypeArray ,
  eTypeBoolean , eTypeChar , eTypeDictionary , eTypeEnum ,
  eTypeFileLineColumn , eTypeFileSpec , eTypeFileSpecList , eTypeFormat ,
  eTypeLanguage , eTypePathMap , eTypeProperties , eTypeRegex ,
  eTypeSInt64 , eTypeString , eTypeUInt64 , eTypeUUID ,
  eTypeFormatEntity
}
enum  {
  eDumpOptionName = (1u << 0) , eDumpOptionType = (1u << 1) , eDumpOptionValue = (1u << 2) , eDumpOptionDescription = (1u << 3) ,
  eDumpOptionRaw = (1u << 4) , eDumpOptionCommand = (1u << 5) , eDumpOptionDefaultValue = (1u << 6) , eDumpGroupValue = (eDumpOptionName | eDumpOptionType | eDumpOptionValue) ,
  eDumpGroupHelp , eDumpGroupExport = (eDumpOptionCommand | eDumpOptionName | eDumpOptionValue)
}
Static Public Member Functions inherited from lldb_private::OptionValue
static const char * GetBuiltinTypeAsCString (Type t)
static uint32_t ConvertTypeToMask (OptionValue::Type type)
static OptionValue::Type ConvertTypeMaskToType (uint32_t type_mask)
static lldb::OptionValueSP CreateValueFromCStringForTypeMask (const char *value_cstr, uint32_t type_mask, Status &error)
Protected Types inherited from lldb_private::OptionValue
using TopmostBase = OptionValue

Detailed Description

Definition at line 19 of file OptionValueDictionary.h.

Constructor & Destructor Documentation

◆ OptionValueDictionary()

lldb_private::OptionValueDictionary::OptionValueDictionary ( uint32_t type_mask = UINT32_MAX,
OptionEnumValues enum_values = OptionEnumValues(),
bool raw_value_dump = true )
inline

Definition at line 22 of file OptionValueDictionary.h.

References m_enum_values, m_raw_value_dump, m_type_mask, and UINT32_MAX.

Referenced by DeepCopy().

◆ ~OptionValueDictionary()

lldb_private::OptionValueDictionary::~OptionValueDictionary ( )
overridedefault

Member Function Documentation

◆ Clear()

void lldb_private::OptionValueDictionary::Clear ( )
inlineoverridevirtual

Implements lldb_private::OptionValue.

Definition at line 43 of file OptionValueDictionary.h.

References lldb_private::OptionValue::m_value_was_set, and m_values.

Referenced by SetArgs().

◆ DeepCopy()

OptionValueSP OptionValueDictionary::DeepCopy ( const lldb::OptionValueSP & new_parent) const
overridevirtual

◆ DeleteValueForKey()

bool OptionValueDictionary::DeleteValueForKey ( llvm::StringRef key)

Definition at line 338 of file OptionValueDictionary.cpp.

References m_values.

Referenced by SetArgs().

◆ DumpValue()

void OptionValueDictionary::DumpValue ( const ExecutionContext * exe_ctx,
Stream & strm,
uint32_t dump_mask )
overridevirtual

◆ GetArgs()

◆ GetNumValues()

size_t lldb_private::OptionValueDictionary::GetNumValues ( ) const
inline

Definition at line 59 of file OptionValueDictionary.h.

References m_values.

◆ GetSubValue()

lldb::OptionValueSP OptionValueDictionary::GetSubValue ( const ExecutionContext * exe_ctx,
llvm::StringRef name,
Status & error ) const
overridevirtual

◆ GetType()

OptionValue::Type lldb_private::OptionValueDictionary::GetType ( ) const
inlineoverridevirtual

◆ GetValueForKey()

◆ IsAggregateValue()

bool lldb_private::OptionValueDictionary::IsAggregateValue ( ) const
inlineoverridevirtual

Reimplemented from lldb_private::OptionValue.

Definition at line 51 of file OptionValueDictionary.h.

◆ IsHomogenous()

bool lldb_private::OptionValueDictionary::IsHomogenous ( ) const
inline

◆ SetArgs()

◆ SetSubValue()

Status OptionValueDictionary::SetSubValue ( const ExecutionContext * exe_ctx,
VarSetOperationType op,
llvm::StringRef name,
llvm::StringRef value )
overridevirtual

◆ SetValueForKey()

bool OptionValueDictionary::SetValueForKey ( llvm::StringRef key,
const lldb::OptionValueSP & value_sp,
bool can_replace = true )

Definition at line 321 of file OptionValueDictionary.cpp.

References m_type_mask, and m_values.

Referenced by SetArgs().

◆ SetValueFromString()

Status OptionValueDictionary::SetValueFromString ( llvm::StringRef value,
VarSetOperationType op = eVarSetOperationAssign )
overridevirtual

◆ ToJSON()

llvm::json::Value OptionValueDictionary::ToJSON ( const ExecutionContext * exe_ctx) const
overridevirtual

Implements lldb_private::OptionValue.

Definition at line 97 of file OptionValueDictionary.cpp.

References m_values.

Member Data Documentation

◆ m_enum_values

OptionEnumValues lldb_private::OptionValueDictionary::m_enum_values
protected

Definition at line 81 of file OptionValueDictionary.h.

Referenced by OptionValueDictionary(), and SetArgs().

◆ m_raw_value_dump

bool lldb_private::OptionValueDictionary::m_raw_value_dump
protected

Definition at line 83 of file OptionValueDictionary.h.

Referenced by DumpValue(), and OptionValueDictionary().

◆ m_type_mask

uint32_t lldb_private::OptionValueDictionary::m_type_mask
protected

◆ m_values

llvm::StringMap<lldb::OptionValueSP> lldb_private::OptionValueDictionary::m_values
protected

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