LLDB mainline
|
#include <OptionValueProperties.h>
Static Public Member Functions | |
static lldb::OptionValuePropertiesSP | CreateLocalCopy (const Properties &global_properties) |
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 Member Functions | |
Property * | ProtectedGetPropertyAtIndex (size_t idx) |
const Property * | ProtectedGetPropertyAtIndex (size_t idx) const |
Protected Attributes | |
std::string | m_name |
std::vector< Property > | m_properties |
llvm::StringMap< size_t > | m_name_to_index |
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) } |
Protected Types inherited from lldb_private::OptionValue | |
using | TopmostBase = OptionValue |
Definition at line 22 of file OptionValueProperties.h.
|
default |
Referenced by Apropos(), DeepCopy(), GetPropertyAtPath(), and GetSubProperty().
OptionValueProperties::OptionValueProperties | ( | llvm::StringRef | name | ) |
Definition at line 23 of file OptionValueProperties.cpp.
References m_name.
|
overridedefault |
void OptionValueProperties::AppendProperty | ( | llvm::StringRef | name, |
llvm::StringRef | desc, | ||
bool | is_global, | ||
const lldb::OptionValueSP & | value_sp ) |
Definition at line 43 of file OptionValueProperties.cpp.
References m_name_to_index, and m_properties.
void OptionValueProperties::Apropos | ( | llvm::StringRef | keyword, |
std::vector< const Property * > & | matching_properties ) const |
Definition at line 451 of file OptionValueProperties.cpp.
References Apropos(), m_properties, OptionValueProperties(), and ProtectedGetPropertyAtIndex().
Referenced by Apropos().
|
overridevirtual |
Implements lldb_private::OptionValue.
Definition at line 290 of file OptionValueProperties.cpp.
References m_properties.
Referenced by SetValueFromString().
|
static |
Definition at line 378 of file OptionValueProperties.cpp.
References lldb_private::Properties::GetValueProperties(), and lldbassert.
Referenced by lldb_private::ProcessProperties::ProcessProperties(), lldb_private::TargetProperties::TargetProperties(), and lldb_private::ThreadProperties::ThreadProperties().
|
overridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 387 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::DeepCopy(), lldbassert, and OptionValueProperties().
|
virtual |
Definition at line 435 of file OptionValueProperties.cpp.
References m_properties, and ProtectedGetPropertyAtIndex().
Referenced by lldb_private::Property::DumpDescription().
|
virtual |
Definition at line 353 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::eDumpOptionName, error(), GetSubValue(), lldb_private::Stream::Printf(), lldb_private::Stream::PutChar(), and lldb_private::Stream::PutCString().
|
overridevirtual |
Implements lldb_private::OptionValue.
Definition at line 321 of file OptionValueProperties.cpp.
References lldb_private::Stream::EOL(), GetPropertyAtIndex(), m_properties, and lldb_private::OptionValue::ValueIsTransparent().
|
inlineoverridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 51 of file OptionValueProperties.h.
References m_name.
|
virtual |
Definition at line 149 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and m_name_to_index.
Referenced by GetPropertyAtPath().
|
inlinevirtual |
Reimplemented in ProcessOptionValueProperties, TargetOptionValueProperties, and ThreadOptionValueProperties.
Definition at line 80 of file OptionValueProperties.h.
References ProtectedGetPropertyAtIndex().
Referenced by DumpValue(), GetProperty(), GetPropertyAtIndexAs(), GetPropertyAtIndexAsArgs(), GetPropertyAtIndexAsOptionValueDictionary(), GetPropertyAtIndexAsOptionValueFileSpec(), GetPropertyAtIndexAsOptionValueSInt64(), GetPropertyAtIndexAsOptionValueUInt64(), GetPropertyValueAtIndex(), GetValueForKey(), SetPropertyAtIndex(), SetPropertyAtIndexFromArgs(), and ToJSON().
|
inline |
Definition at line 142 of file OptionValueProperties.h.
References GetPropertyAtIndex().
Referenced by lldb_private::TargetProperties::GetExperimentalPropertyValue(), lldb_private::ProcessProperties::GetOSPluginReportsAllThreads(), and lldb_private::TargetProperties::GetUseDIL().
bool OptionValueProperties::GetPropertyAtIndexAsArgs | ( | size_t | idx, |
Args & | args, | ||
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 183 of file OptionValueProperties.cpp.
References lldb_private::OptionValueArgs::GetArgs(), lldb_private::OptionValueArray::GetArgs(), lldb_private::OptionValueDictionary::GetArgs(), lldb_private::OptionValue::GetAsArgs(), lldb_private::OptionValue::GetAsArray(), lldb_private::OptionValue::GetAsDictionary(), and GetPropertyAtIndex().
OptionValueDictionary * OptionValueProperties::GetPropertyAtIndexAsOptionValueDictionary | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 240 of file OptionValueProperties.cpp.
References GetPropertyAtIndex().
OptionValueFileSpec * OptionValueProperties::GetPropertyAtIndexAsOptionValueFileSpec | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 249 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsFileSpec(), and GetPropertyAtIndex().
OptionValueFileSpecList * OptionValueProperties::GetPropertyAtIndexAsOptionValueFileSpecList | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 175 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
OptionValuePathMappings * OptionValueProperties::GetPropertyAtIndexAsOptionValuePathMappings | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 166 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
OptionValueSInt64 * OptionValueProperties::GetPropertyAtIndexAsOptionValueSInt64 | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 260 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsSInt64(), and GetPropertyAtIndex().
OptionValueString * OptionValueProperties::GetPropertyAtIndexAsOptionValueString | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 282 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
OptionValueUInt64 * OptionValueProperties::GetPropertyAtIndexAsOptionValueUInt64 | ( | size_t | idx, |
const ExecutionContext * | exe_ctx = nullptr ) const |
Definition at line 271 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsUInt64(), and GetPropertyAtIndex().
|
virtual |
Definition at line 406 of file OptionValueProperties.cpp.
References GetProperty(), GetPropertyAtPath(), and OptionValueProperties().
Referenced by GetPropertyAtPath().
|
virtual |
Definition at line 141 of file OptionValueProperties.cpp.
References m_name_to_index.
|
virtual |
Definition at line 157 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::Property::GetValue().
Referenced by GetPropertyAtIndexAsOptionValueFileSpecList(), GetPropertyAtIndexAsOptionValuePathMappings(), and GetPropertyAtIndexAsOptionValueString().
lldb::OptionValuePropertiesSP OptionValueProperties::GetSubProperty | ( | const ExecutionContext * | exe_ctx, |
llvm::StringRef | name ) |
Definition at line 482 of file OptionValueProperties.cpp.
References GetValueForKey(), and OptionValueProperties().
|
overridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 65 of file OptionValueProperties.cpp.
References error(), lldb_private::Properties::GetExperimentalSettingsName(), GetValueForKey(), and lldb_private::Properties::IsSettingExperimental().
Referenced by DumpPropertyValue(), and SetSubValue().
|
inlineoverridevirtual |
Implements lldb_private::OptionValue.
Definition at line 32 of file OptionValueProperties.h.
References lldb_private::OptionValue::eTypeProperties.
|
virtual |
Definition at line 53 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), lldb_private::Property::GetValue(), m_name_to_index, and m_properties.
Referenced by GetSubProperty(), and GetSubValue().
void OptionValueProperties::Initialize | ( | const PropertyDefinitions & | setting_definitions | ) |
Definition at line 26 of file OptionValueProperties.cpp.
References lldb_private::Property::IsValid(), m_name_to_index, and m_properties.
|
inlineprotected |
Definition at line 167 of file OptionValueProperties.h.
References m_properties.
Referenced by Apropos(), DumpAllDescriptions(), GetPropertyAtIndex(), ProcessOptionValueProperties::GetPropertyAtIndex(), TargetOptionValueProperties::GetPropertyAtIndex(), ThreadOptionValueProperties::GetPropertyAtIndex(), and SetValueChangedCallback().
|
inlineprotected |
Definition at line 172 of file OptionValueProperties.h.
References m_properties.
|
inline |
Definition at line 155 of file OptionValueProperties.h.
References GetPropertyAtIndex().
Referenced by lldb_private::ProcessProperties::SetOSPluginReportsAllThreads(), and lldb_private::TargetProperties::SetUseDIL().
bool OptionValueProperties::SetPropertyAtIndexFromArgs | ( | size_t | idx, |
const Args & | args, | ||
const ExecutionContext * | exe_ctx = nullptr ) |
Definition at line 214 of file OptionValueProperties.cpp.
References lldb_private::eVarSetOperationAssign, lldb_private::OptionValue::GetAsArgs(), lldb_private::OptionValue::GetAsArray(), lldb_private::OptionValue::GetAsDictionary(), GetPropertyAtIndex(), lldb_private::OptionValueArray::SetArgs(), lldb_private::OptionValueDictionary::SetArgs(), and lldb_private::Status::Success().
|
overridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 115 of file OptionValueProperties.cpp.
References error(), lldb_private::Status::FromErrorStringWithFormat(), GetSubValue(), and lldb_private::Properties::IsSettingExperimental().
void OptionValueProperties::SetValueChangedCallback | ( | size_t | property_idx, |
std::function< void()> | callback ) |
Definition at line 36 of file OptionValueProperties.cpp.
References ProtectedGetPropertyAtIndex().
|
overridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 296 of file OptionValueProperties.cpp.
References Clear(), error(), lldb_private::eVarSetOperationAppend, lldb_private::eVarSetOperationAssign, lldb_private::eVarSetOperationClear, lldb_private::eVarSetOperationInsertAfter, lldb_private::eVarSetOperationInsertBefore, lldb_private::eVarSetOperationInvalid, lldb_private::eVarSetOperationRemove, lldb_private::eVarSetOperationReplace, and lldb_private::OptionValue::SetValueFromString().
|
overridevirtual |
Implements lldb_private::OptionValue.
Definition at line 338 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), m_properties, and lldb_private::OptionValue::ToJSON().
|
protected |
Definition at line 177 of file OptionValueProperties.h.
Referenced by GetName(), and OptionValueProperties().
|
protected |
Definition at line 179 of file OptionValueProperties.h.
Referenced by AppendProperty(), GetProperty(), GetPropertyIndex(), GetValueForKey(), and Initialize().
|
protected |
Definition at line 178 of file OptionValueProperties.h.
Referenced by AppendProperty(), Apropos(), Clear(), DumpAllDescriptions(), DumpValue(), GetValueForKey(), Initialize(), ProtectedGetPropertyAtIndex(), ProtectedGetPropertyAtIndex(), and ToJSON().