20 llvm::StringRef value) {
22 error.SetErrorString(
"SetSubValue is not supported");
256 return option_value->GetCurrentValue();
262 option_value->SetCurrentValue(new_value);
270 return option_value->GetCurrentValue();
276 option_value->SetCurrentValue(new_value);
284 return option_value->GetCurrentValue();
290 option_value->SetCurrentValue(value);
298 return option_value->GetCurrentValue();
304 option_value->SetCurrentValue(file_spec,
false);
312 option_value->AppendCurrentValue(file_spec);
320 return option_value->GetCurrentValue();
326 return option_value->GetCurrentValue();
332 option_value->SetCurrentValue(new_value);
340 return option_value->GetCurrentValue();
346 option_value->SetCurrentValue(new_language);
354 return &option_value->GetCurrentValue();
360 return option_value->GetCurrentValue();
366 return option_value->GetCurrentValue();
372 option_value->SetCurrentValue(new_value);
380 return option_value->GetCurrentValueAsRef();
386 option_value->SetCurrentValue(new_value);
394 return option_value->GetCurrentValue();
400 option_value->SetCurrentValue(new_value);
408 return option_value->GetCurrentValue();
414 option_value->SetCurrentValue(uuid);
422 return option_value->GetCurrentValue();
428 option_value->SetCurrentValue(arch_spec,
false);
453 return "file:line:column specifier";
461 return "format-string";
486 lldb::OptionValueSP value_sp;
489 value_sp = std::make_shared<OptionValueArch>();
492 value_sp = std::make_shared<OptionValueBoolean>(
false);
495 value_sp = std::make_shared<OptionValueChar>(
'\0');
498 value_sp = std::make_shared<OptionValueFileSpec>();
504 value_sp = std::make_shared<OptionValueFormatEntity>(
nullptr);
510 value_sp = std::make_shared<OptionValueSInt64>();
513 value_sp = std::make_shared<OptionValueString>();
516 value_sp = std::make_shared<OptionValueUInt64>();
519 value_sp = std::make_shared<OptionValueUUID>();
526 error.SetErrorString(
"unsupported type mask");
531 bool dumped_something =
false;
532 lldb::OptionValueSP m_parent_sp(
m_parent_wp.lock());
534 if (m_parent_sp->DumpQualifiedName(strm))
535 dumped_something =
true;
539 if (dumped_something)
542 dumped_something =
true;
545 return dumped_something;
550 clone->SetParent(new_parent);
562 error.SetErrorStringWithFormat(
563 "%s objects do not support the 'replace' operation",
567 error.SetErrorStringWithFormat(
568 "%s objects do not support the 'insert-before' operation",
572 error.SetErrorStringWithFormat(
573 "%s objects do not support the 'insert-after' operation",
577 error.SetErrorStringWithFormat(
581 error.SetErrorStringWithFormat(
585 error.SetErrorStringWithFormat(
589 error.SetErrorStringWithFormat(
593 error.SetErrorStringWithFormat(
"invalid operation performed on a %s object",
static llvm::raw_ostream & error(Stream &strm)
An architecture specification class.
"lldb/Utility/ArgCompletionRequest.h"
A uniqued constant string class.
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
virtual bool DumpQualifiedName(Stream &strm) const
std::optional< char > GetCharValue() const
std::optional< FileSpecList > GetFileSpecListValue() const
bool SetArchSpecValue(ArchSpec arch_spec)
std::optional< ArchSpec > GetArchSpecValue() const
OptionValueDictionary * GetAsDictionary()
virtual Status SetValueFromString(llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign)
OptionValueSInt64 * GetAsSInt64()
std::optional< FileSpec > GetFileSpecValue() const
static lldb::OptionValueSP CreateValueFromCStringForTypeMask(const char *value_cstr, uint32_t type_mask, Status &error)
std::optional< uint64_t > GetUInt64Value() const
bool SetFileSpecValue(FileSpec file_spec)
virtual lldb::OptionValueSP Clone() const =0
virtual Type GetType() const =0
lldb::OptionValueWP m_parent_wp
OptionValueFileSpecList * GetAsFileSpecList()
OptionValueRegex * GetAsRegex()
OptionValueUInt64 * GetAsUInt64()
OptionValueFormatEntity * GetAsFormatEntity()
bool SetCharValue(char new_value)
OptionValuePathMappings * GetAsPathMappings()
virtual void AutoComplete(CommandInterpreter &interpreter, CompletionRequest &request)
OptionValueProperties * GetAsProperties()
OptionValueEnumeration * GetAsEnumeration()
virtual lldb::OptionValueSP DeepCopy(const lldb::OptionValueSP &new_parent) const
static const char * GetBuiltinTypeAsCString(Type t)
OptionValueFormat * GetAsFormat()
OptionValueArgs * GetAsArgs()
virtual const char * GetTypeAsCString() const
OptionValueChar * GetAsChar()
bool AppendFileSpecValue(FileSpec file_spec)
OptionValueArray * GetAsArray()
std::optional< lldb::LanguageType > GetLanguageValue() const
bool SetStringValue(llvm::StringRef new_value)
std::optional< int64_t > GetSInt64Value() const
bool SetUUIDValue(const UUID &uuid)
std::optional< lldb::Format > GetFormatValue() const
std::optional< int64_t > GetEnumerationValue() const
std::optional< bool > GetBooleanValue() const
bool SetBooleanValue(bool new_value)
std::optional< llvm::StringRef > GetStringValue() const
OptionValueBoolean * GetAsBoolean()
OptionValueFileSpec * GetAsFileSpec()
const RegularExpression * GetRegexValue() const
const FormatEntity::Entry * GetFormatEntity() const
bool SetEnumerationValue(int64_t value)
OptionValueUUID * GetAsUUID()
bool SetUInt64Value(uint64_t new_value)
virtual llvm::StringRef GetName() const
OptionValueArch * GetAsArch()
bool SetFormatValue(lldb::Format new_value)
bool SetLanguageValue(lldb::LanguageType new_language)
OptionValueLanguage * GetAsLanguage()
std::optional< UUID > GetUUIDValue() const
bool SetSInt64Value(int64_t new_value)
virtual Status SetSubValue(const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef name, llvm::StringRef value)
OptionValueString * GetAsString()
A stream class that can stream formatted output to a file.
A class that represents a running process on the host machine.
std::unique_ptr< T > clone(const std::unique_ptr< T > &src)
VarSetOperationType
Settable state variable types.
@ eVarSetOperationReplace
@ eVarSetOperationInvalid
@ eVarSetOperationInsertBefore
@ eVarSetOperationInsertAfter
Format
Display format definitions.
LanguageType
Programming language type.
@ eLanguageTypeUnknown
Unknown or invalid language value.