File indexing completed on 2026-05-10 08:42:50
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLDB_INTERPRETER_OPTIONGROUPSTRING_H
0010 #define LLDB_INTERPRETER_OPTIONGROUPSTRING_H
0011
0012 #include "lldb/Interpreter/OptionValueString.h"
0013 #include "lldb/Interpreter/Options.h"
0014
0015 namespace lldb_private {
0016
0017
0018 class OptionGroupString : public OptionGroup {
0019 public:
0020 OptionGroupString(uint32_t usage_mask, bool required, const char *long_option,
0021 int short_option, uint32_t completion_type,
0022 lldb::CommandArgumentType argument_type,
0023 const char *usage_text, const char *default_value);
0024
0025 ~OptionGroupString() override = default;
0026
0027 llvm::ArrayRef<OptionDefinition> GetDefinitions() override {
0028 return llvm::ArrayRef<OptionDefinition>(&m_option_definition, 1);
0029 }
0030
0031 Status SetOptionValue(uint32_t option_idx, llvm::StringRef option_value,
0032 ExecutionContext *execution_context) override;
0033
0034 void OptionParsingStarting(ExecutionContext *execution_context) override;
0035
0036 OptionValueString &GetOptionValue() { return m_value; }
0037
0038 const OptionValueString &GetOptionValue() const { return m_value; }
0039
0040 protected:
0041 OptionValueString m_value;
0042 OptionDefinition m_option_definition;
0043 };
0044
0045 }
0046
0047 #endif