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 216 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 641 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 501 of file OptionValueProperties.cpp.
References m_properties.
Referenced by SetValueFromString().
|
static |
Definition at line 569 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 578 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::DeepCopy(), and lldbassert.
|
virtual |
Definition at line 625 of file OptionValueProperties.cpp.
References m_properties, and ProtectedGetPropertyAtIndex().
Referenced by lldb_private::Property::DumpDescription().
|
virtual |
Definition at line 548 of file OptionValueProperties.cpp.
References lldb_private::OptionValue::eDumpOptionName, error(), GetSubValue(), lldb_private::Stream::PutChar(), and lldb_private::Stream::PutCString().
|
overridevirtual |
Implements lldb_private::OptionValue.
Definition at line 532 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 50 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 TargetOptionValueProperties, ProcessOptionValueProperties, 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(), and SetPropertyAtIndexFromArgs().
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::OptionValueDictionary::GetArgs(), lldb_private::OptionValueArray::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 290 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 323 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 369 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 346 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 315 of file OptionValueProperties.cpp.
References GetPropertyAtIndex().
OptionValueFileSpec * OptionValueProperties::GetPropertyAtIndexAsOptionValueFileSpec | ( | const ExecutionContext * | exe_ctx, |
bool | will_modify, | ||
uint32_t | idx | ||
) | const |
Definition at line 358 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 393 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 404 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 471 of file OptionValueProperties.cpp.
References GetPropertyValueAtIndex().
OptionValueUInt64 * OptionValueProperties::GetPropertyAtIndexAsOptionValueUInt64 | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx | ||
) | const |
Definition at line 415 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 426 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 448 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 479 of file OptionValueProperties.cpp.
References GetPropertyAtIndex(), and lldb_private::OptionValue::GetUInt64Value().
|
virtual |
Definition at line 596 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 672 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 208 of file OptionValueProperties.h.
References m_properties.
Referenced by Apropos(), DumpAllDescriptions(), ThreadOptionValueProperties::GetPropertyAtIndex(), GetPropertyAtIndex(), ProcessOptionValueProperties::GetPropertyAtIndex(), TargetOptionValueProperties::GetPropertyAtIndex(), and SetValueChangedCallback().
|
inlineprotected |
Definition at line 212 of file OptionValueProperties.h.
References m_properties.
bool OptionValueProperties::SetPropertyAtIndexAsBoolean | ( | const ExecutionContext * | exe_ctx, |
uint32_t | idx, | ||
bool | new_value | ||
) |
Definition at line 301 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 334 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 380 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 437 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 460 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 490 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 265 of file OptionValueProperties.cpp.
References lldb_private::eVarSetOperationAssign, lldb_private::OptionValue::GetAsArgs(), lldb_private::OptionValue::GetAsArray(), lldb_private::OptionValue::GetAsDictionary(), GetPropertyAtIndex(), lldb_private::OptionValueDictionary::SetArgs(), lldb_private::OptionValueArray::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 507 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().
|
protected |
Definition at line 218 of file OptionValueProperties.h.
Referenced by GetName().
|
protected |
Definition at line 220 of file OptionValueProperties.h.
Referenced by AppendProperty(), GetProperty(), GetPropertyIndex(), GetValueForKey(), and Initialize().
|
protected |
Definition at line 219 of file OptionValueProperties.h.
Referenced by AppendProperty(), Apropos(), Clear(), DumpAllDescriptions(), DumpValue(), GetNumProperties(), GetValueForKey(), Initialize(), and ProtectedGetPropertyAtIndex().