LLDB mainline
Public Member Functions | Protected Types | Protected Attributes | List of all members
lldb_private::OptionValueArray Class Reference

#include <OptionValueArray.h>

Inheritance diagram for lldb_private::OptionValueArray:
Inheritance graph
[legend]

Public Member Functions

 OptionValueArray (uint32_t type_mask=UINT32_MAX, bool raw_value_dump=false)
 
 ~OptionValueArray () 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) 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
 
lldb::OptionValueSP GetSubValue (const ExecutionContext *exe_ctx, llvm::StringRef name, Status &error) const override
 
size_t GetSize () const
 
lldb::OptionValueSP operator[] (size_t idx) const
 
lldb::OptionValueSP GetValueAtIndex (size_t idx) const
 
bool AppendValue (const lldb::OptionValueSP &value_sp)
 
bool InsertValue (size_t idx, const lldb::OptionValueSP &value_sp)
 
bool ReplaceValue (size_t idx, const lldb::OptionValueSP &value_sp)
 
bool DeleteValue (size_t idx)
 
size_t GetArgs (Args &args) const
 
Status SetArgs (const Args &args, VarSetOperationType op)
 
- Public Member Functions inherited from lldb_private::Cloneable< OptionValueArray, OptionValue >
std::shared_ptr< typename Base::TopmostBase > Clone () const override
 
- Public Member Functions inherited from lldb_private::OptionValue
 OptionValue ()=default
 
virtual ~OptionValue ()=default
 
 OptionValue (const OptionValue &other)
 
OptionValueoperator= (const OptionValue &other)
 
virtual Type GetType () const =0
 
virtual bool ValueIsTransparent () const
 
virtual const char * GetTypeAsCString () const
 
virtual void DumpValue (const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask)=0
 
virtual llvm::json::Value ToJSON (const ExecutionContext *exe_ctx)
 
virtual Status SetValueFromString (llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign)
 
virtual void Clear ()=0
 
virtual lldb::OptionValueSP DeepCopy (const lldb::OptionValueSP &new_parent) const
 
virtual void AutoComplete (CommandInterpreter &interpreter, CompletionRequest &request)
 
virtual lldb::OptionValueSP GetSubValue (const ExecutionContext *exe_ctx, llvm::StringRef name, Status &error) const
 
virtual Status SetSubValue (const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef name, llvm::StringRef value)
 
virtual bool IsAggregateValue () const
 
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)
 
template<typename T , std::enable_if_t< std::is_enum_v< T >, bool > = true>
bool SetValueAs (T t)
 

Protected Types

typedef std::vector< lldb::OptionValueSPcollection
 
- Protected Types inherited from lldb_private::OptionValue
using TopmostBase = OptionValue
 

Protected Attributes

uint32_t m_type_mask
 
collection m_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) , 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)
 
virtual lldb::OptionValueSP Clone () const =0
 

Detailed Description

Definition at line 18 of file OptionValueArray.h.

Member Typedef Documentation

◆ collection

Definition at line 118 of file OptionValueArray.h.

Constructor & Destructor Documentation

◆ OptionValueArray()

lldb_private::OptionValueArray::OptionValueArray ( uint32_t  type_mask = UINT32_MAX,
bool  raw_value_dump = false 
)
inline

Definition at line 20 of file OptionValueArray.h.

◆ ~OptionValueArray()

lldb_private::OptionValueArray::~OptionValueArray ( )
overridedefault

Member Function Documentation

◆ AppendValue()

bool lldb_private::OptionValueArray::AppendValue ( const lldb::OptionValueSP value_sp)
inline

Definition at line 70 of file OptionValueArray.h.

References m_type_mask, and m_values.

Referenced by SetArgs(), and CommandObjectRegisterRead::CommandOptions::SetOptionValue().

◆ Clear()

void lldb_private::OptionValueArray::Clear ( )
inlineoverridevirtual

◆ DeepCopy()

OptionValueSP OptionValueArray::DeepCopy ( const lldb::OptionValueSP new_parent) const
overridevirtual

Reimplemented from lldb_private::OptionValue.

Definition at line 309 of file OptionValueArray.cpp.

References lldb_private::OptionValue::DeepCopy(), and lldbassert.

◆ DeleteValue()

bool lldb_private::OptionValueArray::DeleteValue ( size_t  idx)
inline

Definition at line 105 of file OptionValueArray.h.

References m_values.

◆ DumpValue()

void OptionValueArray::DumpValue ( const ExecutionContext exe_ctx,
Stream strm,
uint32_t  dump_mask 
)
overridevirtual

◆ GetArgs()

size_t OptionValueArray::GetArgs ( Args args) const

◆ GetSize()

size_t lldb_private::OptionValueArray::GetSize ( ) const
inline

◆ GetSubValue()

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

◆ GetType()

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

Implements lldb_private::OptionValue.

Definition at line 27 of file OptionValueArray.h.

References lldb_private::OptionValue::eTypeArray.

Referenced by DumpValue().

◆ GetValueAtIndex()

lldb::OptionValueSP lldb_private::OptionValueArray::GetValueAtIndex ( size_t  idx) const
inline

Definition at line 63 of file OptionValueArray.h.

References m_values.

Referenced by EmulationStateARM::LoadStateFromDictionary().

◆ InsertValue()

bool lldb_private::OptionValueArray::InsertValue ( size_t  idx,
const lldb::OptionValueSP value_sp 
)
inline

Definition at line 80 of file OptionValueArray.h.

References m_type_mask, and m_values.

◆ IsAggregateValue()

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

Reimplemented from lldb_private::OptionValue.

Definition at line 46 of file OptionValueArray.h.

◆ operator[]()

lldb::OptionValueSP lldb_private::OptionValueArray::operator[] ( size_t  idx) const
inline

Definition at line 56 of file OptionValueArray.h.

References m_values.

◆ ReplaceValue()

bool lldb_private::OptionValueArray::ReplaceValue ( size_t  idx,
const lldb::OptionValueSP value_sp 
)
inline

Definition at line 93 of file OptionValueArray.h.

References m_type_mask, and m_values.

◆ SetArgs()

Status OptionValueArray::SetArgs ( const Args args,
VarSetOperationType  op 
)

◆ SetValueFromString()

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

◆ ToJSON()

llvm::json::Value OptionValueArray::ToJSON ( const ExecutionContext exe_ctx)
overridevirtual

Reimplemented from lldb_private::OptionValue.

Definition at line 78 of file OptionValueArray.cpp.

References m_values.

Member Data Documentation

◆ m_raw_value_dump

bool lldb_private::OptionValueArray::m_raw_value_dump
protected

Definition at line 122 of file OptionValueArray.h.

Referenced by DumpValue().

◆ m_type_mask

uint32_t lldb_private::OptionValueArray::m_type_mask
protected

Definition at line 120 of file OptionValueArray.h.

Referenced by AppendValue(), DumpValue(), InsertValue(), ReplaceValue(), and SetArgs().

◆ m_values

collection lldb_private::OptionValueArray::m_values
protected

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