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

#include <OptionValueEnumeration.h>

Inheritance diagram for lldb_private::OptionValueEnumeration:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::OptionValueEnumeration:
Collaboration graph
[legend]

Classes

struct  EnumeratorInfo
 

Public Types

typedef int64_t enum_type
 
typedef UniqueCStringMap< EnumeratorInfoEnumerationMap
 
typedef EnumerationMap::Entry EnumerationMapEntry
 
- 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)
}
 

Public Member Functions

 OptionValueEnumeration (const OptionEnumValues &enumerators, enum_type value)
 
 ~OptionValueEnumeration () override=default
 
OptionValue::Type GetType () const override
 
void DumpValue (const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask) override
 
Status SetValueFromString (llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign) override
 
void Clear () override
 
void AutoComplete (CommandInterpreter &interpreter, CompletionRequest &request) override
 
enum_type operator= (enum_type value)
 
enum_type GetCurrentValue () const
 
enum_type GetDefaultValue () const
 
void SetCurrentValue (enum_type value)
 
void SetDefaultValue (enum_type value)
 
- Public Member Functions inherited from lldb_private::Cloneable< OptionValueEnumeration, OptionValue >
std::shared_ptr< typename Base::TopmostBase > Clone () const override
 
- Public Member Functions inherited from lldb_private::OptionValue
 OptionValue ()=default
 
virtual ~OptionValue ()=default
 
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, bool will_modify, Status &error) const
 
virtual Status SetSubValue (const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef name, llvm::StringRef value)
 
virtual bool IsAggregateValue () const
 
virtual ConstString GetName () const
 
virtual bool DumpQualifiedName (Stream &strm) const
 
uint32_t GetTypeAsMask ()
 
uint64_t GetUInt64Value (uint64_t fail_value, bool *success_ptr)
 
OptionValueArchGetAsArch ()
 
const OptionValueArchGetAsArch () const
 
OptionValueArrayGetAsArray ()
 
const OptionValueArrayGetAsArray () const
 
OptionValueArgsGetAsArgs ()
 
const OptionValueArgsGetAsArgs () const
 
OptionValueBooleanGetAsBoolean ()
 
OptionValueCharGetAsChar ()
 
const OptionValueBooleanGetAsBoolean () const
 
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 GetBooleanValue (bool fail_value=false) const
 
bool SetBooleanValue (bool new_value)
 
char GetCharValue (char fail_value) const
 
char SetCharValue (char new_value)
 
int64_t GetEnumerationValue (int64_t fail_value=-1) const
 
bool SetEnumerationValue (int64_t value)
 
FileSpec GetFileSpecValue () const
 
bool SetFileSpecValue (const FileSpec &file_spec)
 
FileSpecList GetFileSpecListValue () const
 
lldb::Format GetFormatValue (lldb::Format fail_value=lldb::eFormatDefault) const
 
bool SetFormatValue (lldb::Format new_value)
 
lldb::LanguageType GetLanguageValue (lldb::LanguageType fail_value=lldb::eLanguageTypeUnknown) const
 
bool SetLanguageValue (lldb::LanguageType new_language)
 
const FormatEntity::EntryGetFormatEntity () const
 
const RegularExpressionGetRegexValue () const
 
int64_t GetSInt64Value (int64_t fail_value=0) const
 
bool SetSInt64Value (int64_t new_value)
 
llvm::StringRef GetStringValue (llvm::StringRef fail_value) const
 
llvm::StringRef GetStringValue () const
 
bool SetStringValue (llvm::StringRef new_value)
 
uint64_t GetUInt64Value (uint64_t fail_value=0) const
 
bool SetUInt64Value (uint64_t new_value)
 
UUID GetUUIDValue () const
 
bool SetUUIDValue (const UUID &uuid)
 
bool OptionWasSet () const
 
void SetOptionWasSet ()
 
void SetParent (const lldb::OptionValueSP &parent_sp)
 
lldb::OptionValueSP GetParent () const
 
void SetValueChangedCallback (std::function< void()> callback)
 
void NotifyValueChanged ()
 

Protected Member Functions

void SetEnumerations (const OptionEnumValues &enumerators)
 
virtual lldb::OptionValueSP Clone () const =0
 

Protected Attributes

enum_type m_current_value
 
enum_type m_default_value
 
EnumerationMap m_enumerations
 
- 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

- 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 22 of file OptionValueEnumeration.h.

Member Typedef Documentation

◆ enum_type

Definition at line 25 of file OptionValueEnumeration.h.

◆ EnumerationMap

Definition at line 30 of file OptionValueEnumeration.h.

◆ EnumerationMapEntry

Definition at line 31 of file OptionValueEnumeration.h.

Constructor & Destructor Documentation

◆ OptionValueEnumeration()

OptionValueEnumeration::OptionValueEnumeration ( const OptionEnumValues &  enumerators,
enum_type  value 
)

Definition at line 16 of file OptionValueEnumeration.cpp.

References SetEnumerations().

◆ ~OptionValueEnumeration()

lldb_private::OptionValueEnumeration::~OptionValueEnumeration ( )
overridedefault

Member Function Documentation

◆ AutoComplete()

void OptionValueEnumeration::AutoComplete ( CommandInterpreter interpreter,
CompletionRequest request 
)
overridevirtual

◆ Clear()

void lldb_private::OptionValueEnumeration::Clear ( )
inlineoverridevirtual

◆ DumpValue()

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

◆ GetCurrentValue()

enum_type lldb_private::OptionValueEnumeration::GetCurrentValue ( ) const
inline

◆ GetDefaultValue()

enum_type lldb_private::OptionValueEnumeration::GetDefaultValue ( ) const
inline

Definition at line 65 of file OptionValueEnumeration.h.

References m_default_value.

◆ GetType()

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

◆ operator=()

enum_type lldb_private::OptionValueEnumeration::operator= ( enum_type  value)
inline

Definition at line 58 of file OptionValueEnumeration.h.

References m_current_value.

◆ SetCurrentValue()

void lldb_private::OptionValueEnumeration::SetCurrentValue ( enum_type  value)
inline

Definition at line 67 of file OptionValueEnumeration.h.

References m_current_value.

Referenced by lldb_private::OptionValue::SetEnumerationValue().

◆ SetDefaultValue()

void lldb_private::OptionValueEnumeration::SetDefaultValue ( enum_type  value)
inline

Definition at line 69 of file OptionValueEnumeration.h.

References m_default_value.

Referenced by lldb_private::Property::Property().

◆ SetEnumerations()

void OptionValueEnumeration::SetEnumerations ( const OptionEnumValues &  enumerators)
protected

◆ SetValueFromString()

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

Member Data Documentation

◆ m_current_value

enum_type lldb_private::OptionValueEnumeration::m_current_value
protected

◆ m_default_value

enum_type lldb_private::OptionValueEnumeration::m_default_value
protected

Definition at line 75 of file OptionValueEnumeration.h.

Referenced by Clear(), GetDefaultValue(), and SetDefaultValue().

◆ m_enumerations

EnumerationMap lldb_private::OptionValueEnumeration::m_enumerations
protected

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