LLDB mainline
|
#include <OptionValueProperties.h>
Static Public Member Functions | |
static lldb::OptionValuePropertiesSP | CreateLocalCopy (const Properties &global_properties) |
![]() | |
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 | |
typedef UniqueCStringMap< size_t > | NameToIndex |
![]() | |
using | TopmostBase = OptionValue |
Protected Member Functions | |
Property * | ProtectedGetPropertyAtIndex (uint32_t idx) |
const Property * | ProtectedGetPropertyAtIndex (uint32_t idx) const |
virtual lldb::OptionValueSP | Clone () const =0 |
Protected Attributes | |
ConstString | m_name |
std::vector< Property > | m_properties |
NameToIndex | m_name_to_index |
![]() | |
lldb::OptionValueWP | m_parent_wp |
std::function< void()> | m_callback |
bool | m_value_was_set = false |
Additional Inherited Members | |
![]() | |
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) } |
Definition at line 23 of file OptionValueProperties.h.
|
protected |
Definition at line 218 of file OptionValueProperties.h.
|
default |
OptionValueProperties::OptionValueProperties | ( | ConstString | name | ) |
Definition at line 23 of file OptionValueProperties.cpp.
|
overridedefault |
void OptionValueProperties::AppendProperty | ( | ConstString | name, |
ConstString | desc, | ||
bool | is_global, | ||
const lldb::OptionValueSP & | value_sp | ||
) |
Definition at line 47 of file OptionValueProperties.cpp.
References lldb_private::UniqueCStringMap< T >::Append(), lldb_private::ConstString::GetStringRef(), m_name_to_index, m_properties, and lldb_private::UniqueCStringMap< T >::Sort().
void OptionValueProperties::Apropos | ( | llvm::StringRef | keyword, |
std::vector< const Property * > & | matching_properties | ||
) | const |
Definition at line 666 of file OptionValueProperties.cpp.
References Apropos(), lldb_private::OptionValue::GetAsProperties(), m_properties, and ProtectedGetPropertyAtIndex().
Referenced by Apropos().
|
overridevirtual |
Implements lldb_private::OptionValue.
Definition at line 507 of file OptionValueProperties.cpp.
References m_properties.
Referenced by SetValueFromString().
|
static |
Definition at line 594 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 603 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::DeepCopy(), and lldbassert.
|
virtual |
Definition at line 650 of file OptionValueProperties.cpp.
References m_properties, and ProtectedGetPropertyAtIndex().
Referenced by lldb_private::Property::DumpDescription().
|
virtual |
Definition at line 570 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 538 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 52 of file OptionValueProperties.h.
References m_name.
|
virtual |
Definition at line 25 of file OptionValueProperties.cpp.
References m_properties.
|
virtual |
Definition at line 173 of file OptionValueProperties.cpp.
References lldb_private::UniqueCStringMap< T >::Find(), GetPropertyAtIndex(), and m_name_to_index.
Referenced by GetPropertyAtPath().
|
virtual |
Reimplemented in ProcessOptionValueProperties, TargetOptionValueProperties, and ThreadOptionValueProperties.
Definition at line 181 of file OptionValueProperties.cpp.
References ProtectedGetPropertyAtIndex().
Referenced by DumpValue(), GetProperty(), GetPropertyAtIndexAsArgs(), GetPropertyAtIndexAsBoolean(), GetPropertyAtIndexAsEnumeration(), GetPropertyAtIndexAsFileSpec(), GetPropertyAtIndexAsFormatEntity(), GetPropertyAtIndexAsOptionValueArch(), GetPropertyAtIndexAsOptionValueDictionary(), GetPropertyAtIndexAsOptionValueFileSpec(), GetPropertyAtIndexAsOptionValueLanguage(), GetPropertyAtIndexAsOptionValueRegex(), GetPropertyAtIndexAsOptionValueSInt64(), GetPropertyAtIndexAsOptionValueUInt64(), GetPropertyAtIndexAsSInt64(), GetPropertyAtIndexAsString(), GetPropertyAtIndexAsUInt64(), GetPropertyValueAtIndex(), GetValueForKey(), SetPropertyAtIndexAsBoolean(), SetPropertyAtIndexAsEnumeration(), SetPropertyAtIndexAsFileSpec(), SetPropertyAtIndexAsLanguage(), SetPropertyAtIndexAsSInt64(), SetPropertyAtIndexAsString(), SetPropertyAtIndexAsUInt64(), SetPropertyAtIndexFromArgs(), and ToJSON().
bool OptionValueProperties::GetPropertyAtIndexAsArgs | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
Args & | args | ||
) | const |
Definition at line 240 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().
bool OptionValueProperties::GetPropertyAtIndexAsBoolean | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
bool | fail_value | ||
) | const |
Definition at line 296 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetBooleanValue(), and GetPropertyAtIndex().
Referenced by lldb_private::TargetProperties::GetInjectLocalVariables(), and lldb_private::ProcessProperties::GetOSPluginReportsAllThreads().
int64_t OptionValueProperties::GetPropertyAtIndexAsEnumeration | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
int64_t | fail_value | ||
) | const |
Definition at line 329 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetEnumerationValue(), and GetPropertyAtIndex().
FileSpec OptionValueProperties::GetPropertyAtIndexAsFileSpec | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 375 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetFileSpecValue(), and GetPropertyAtIndex().
const FormatEntity::Entry * OptionValueProperties::GetPropertyAtIndexAsFormatEntity | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) |
Definition at line 352 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetFormatEntity(), and GetPropertyAtIndex().
OptionValueArch * OptionValueProperties::GetPropertyAtIndexAsOptionValueArch | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 212 of file OptionValueProperties.cpp.
References GetPropertyAtIndex().
OptionValueDictionary * OptionValueProperties::GetPropertyAtIndexAsOptionValueDictionary | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 321 of file OptionValueProperties.cpp.
References GetPropertyAtIndex().
OptionValueFileSpec * OptionValueProperties::GetPropertyAtIndexAsOptionValueFileSpec | ( | const ExecutionContext * | exe_ctx, |
bool | will_modify, | ||
uint32_t | idx | ||
) | const |
Definition at line 364 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsFileSpec(), and GetPropertyAtIndex().
OptionValueFileSpecList * OptionValueProperties::GetPropertyAtIndexAsOptionValueFileSpecList | ( | const ExecutionContext * | exe_ctx, |
bool | will_modify, | ||
uint32_t | idx | ||
) | const |
Definition at line 204 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
OptionValueLanguage * OptionValueProperties::GetPropertyAtIndexAsOptionValueLanguage | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 221 of file OptionValueProperties.cpp.
References GetPropertyAtIndex().
OptionValuePathMappings * OptionValueProperties::GetPropertyAtIndexAsOptionValuePathMappings | ( | const ExecutionContext * | exe_ctx, |
bool | will_modify, | ||
uint32_t | idx | ||
) | const |
Definition at line 195 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
const RegularExpression * OptionValueProperties::GetPropertyAtIndexAsOptionValueRegex | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 399 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::GetRegexValue().
OptionValueSInt64 * OptionValueProperties::GetPropertyAtIndexAsOptionValueSInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 410 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsSInt64(), and GetPropertyAtIndex().
OptionValueString * OptionValueProperties::GetPropertyAtIndexAsOptionValueString | ( | const ExecutionContext * | exe_ctx, |
bool | will_modify, | ||
uint32_t | idx | ||
) | const |
Definition at line 477 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
OptionValueUInt64 * OptionValueProperties::GetPropertyAtIndexAsOptionValueUInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 421 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsUInt64(), and GetPropertyAtIndex().
int64_t OptionValueProperties::GetPropertyAtIndexAsSInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
int64_t | fail_value | ||
) | const |
Definition at line 432 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::GetSInt64Value().
llvm::StringRef OptionValueProperties::GetPropertyAtIndexAsString | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
llvm::StringRef | fail_value | ||
) | const |
Definition at line 454 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::GetStringValue().
uint64_t OptionValueProperties::GetPropertyAtIndexAsUInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
uint64_t | fail_value | ||
) | const |
Definition at line 485 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::GetUInt64Value().
|
virtual |
Definition at line 621 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsProperties(), GetProperty(), GetPropertyAtPath(), and lldb_private::ConstString::SetString().
Referenced by GetPropertyAtPath().
|
virtual |
Definition at line 168 of file OptionValueProperties.cpp.
References lldb_private::UniqueCStringMap< T >::Find(), and m_name_to_index.
|
virtual |
Definition at line 186 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, |
ConstString | name | ||
) |
Definition at line 697 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::GetAsProperties(), and GetValueForKey().
|
overridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 90 of file OptionValueProperties.cpp.
References error(), lldb_private::Properties::GetExperimentalSettingsName(), GetValueForKey(), lldb_private::Properties::IsSettingExperimental(), and lldb_private::ConstString::SetString().
Referenced by DumpPropertyValue(), and SetSubValue().
|
inlineoverridevirtual |
Implements lldb_private::OptionValue.
Definition at line 33 of file OptionValueProperties.h.
References lldb_private::OptionValue::eTypeProperties.
|
virtual |
Definition at line 79 of file OptionValueProperties.cpp.
References lldb_private::UniqueCStringMap< T >::Find(), 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 29 of file OptionValueProperties.cpp.
References lldb_private::UniqueCStringMap< T >::Append(), lldb_private::Property::GetName(), lldb_private::Property::IsValid(), m_name_to_index, m_properties, and lldb_private::UniqueCStringMap< T >::Sort().
|
inlineprotected |
Definition at line 210 of file OptionValueProperties.h.
References m_properties.
Referenced by Apropos(), DumpAllDescriptions(), GetPropertyAtIndex(), ProcessOptionValueProperties::GetPropertyAtIndex(), TargetOptionValueProperties::GetPropertyAtIndex(), ThreadOptionValueProperties::GetPropertyAtIndex(), and SetValueChangedCallback().
|
inlineprotected |
Definition at line 214 of file OptionValueProperties.h.
References m_properties.
bool OptionValueProperties::SetPropertyAtIndexAsBoolean | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
bool | new_value | ||
) |
Definition at line 307 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetBooleanValue().
Referenced by lldb_private::TargetProperties::SetInjectLocalVariables(), and lldb_private::ProcessProperties::SetOSPluginReportsAllThreads().
bool OptionValueProperties::SetPropertyAtIndexAsEnumeration | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
int64_t | new_value | ||
) |
Definition at line 340 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetEnumerationValue().
bool OptionValueProperties::SetPropertyAtIndexAsFileSpec | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
const FileSpec & | file_spec | ||
) |
Definition at line 386 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetFileSpecValue().
bool OptionValueProperties::SetPropertyAtIndexAsLanguage | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
lldb::LanguageType | lang | ||
) |
Definition at line 229 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetLanguageValue().
bool OptionValueProperties::SetPropertyAtIndexAsSInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
int64_t | new_value | ||
) |
Definition at line 443 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetSInt64Value().
bool OptionValueProperties::SetPropertyAtIndexAsString | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
llvm::StringRef | new_value | ||
) |
Definition at line 466 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetStringValue().
bool OptionValueProperties::SetPropertyAtIndexAsUInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
uint64_t | new_value | ||
) |
Definition at line 496 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::SetUInt64Value().
bool OptionValueProperties::SetPropertyAtIndexFromArgs | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
const Args & | args | ||
) |
Definition at line 271 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 141 of file OptionValueProperties.cpp.
References error(), GetSubValue(), and lldb_private::Properties::IsSettingExperimental().
void OptionValueProperties::SetValueChangedCallback | ( | uint32_t | property_idx, |
std::function< void()> | callback | ||
) |
Definition at line 40 of file OptionValueProperties.cpp.
References ProtectedGetPropertyAtIndex().
|
overridevirtual |
Reimplemented from lldb_private::OptionValue.
Definition at line 513 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 |
Reimplemented from lldb_private::OptionValue.
Definition at line 555 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), m_properties, and lldb_private::OptionValue::ToJSON().
|
protected |
Definition at line 220 of file OptionValueProperties.h.
Referenced by GetName().
|
protected |
Definition at line 222 of file OptionValueProperties.h.
Referenced by AppendProperty(), GetProperty(), GetPropertyIndex(), GetValueForKey(), and Initialize().
|
protected |
Definition at line 221 of file OptionValueProperties.h.
Referenced by AppendProperty(), Apropos(), Clear(), DumpAllDescriptions(), DumpValue(), GetNumProperties(), GetValueForKey(), Initialize(), ProtectedGetPropertyAtIndex(), and ToJSON().