LLDB mainline
lldb_private::Options Class Referenceabstract

A command line option parsing protocol class. More...

#include "lldb/Interpreter/Options.h"

Inherited by CommandObjectBreakpointClear::CommandOptions, CommandObjectBreakpointCommandDelete::CommandOptions, CommandObjectBreakpointDelete::CommandOptions, CommandObjectBreakpointList::CommandOptions, CommandObjectBreakpointRead::CommandOptions, CommandObjectBreakpointWrite::CommandOptions, CommandObjectCommandsAddRegex::CommandOptions, CommandObjectCommandsContainerAdd::CommandOptions, CommandObjectCommandsScriptAdd::CommandOptions, CommandObjectCommandsScriptImport::CommandOptions, CommandObjectCommandsSource::CommandOptions, CommandObjectDiagnosticsDump::CommandOptions, CommandObjectFrameDiagnose::CommandOptions, CommandObjectFrameRecognizerAdd::CommandOptions, CommandObjectFrameSelect::CommandOptions, CommandObjectLogDump::CommandOptions, CommandObjectLogEnable::CommandOptions, CommandObjectObjC_ClassTable_Dump::CommandOptions, CommandObjectPlatformFRead::CommandOptions, CommandObjectPlatformFWrite::CommandOptions, CommandObjectPlatformProcessList::CommandOptions, CommandObjectPlatformShell::CommandOptions, CommandObjectProcessConnect::CommandOptions, CommandObjectProcessContinue::CommandOptions, CommandObjectProcessDetach::CommandOptions, CommandObjectProcessHandle::CommandOptions, CommandObjectProcessLoad::CommandOptions, CommandObjectProcessSaveCore::CommandOptions, CommandObjectProcessStatus::CommandOptions, CommandObjectScriptingExtensionList::CommandOptions, CommandObjectScriptingObjectParsed::CommandOptions, CommandObjectScriptingRun::CommandOptions, CommandObjectSessionHistory::CommandOptions, CommandObjectSettingsClear::CommandOptions, CommandObjectSettingsRead::CommandOptions, CommandObjectSettingsSet::CommandOptions, CommandObjectSettingsShow::CommandOptions, CommandObjectSettingsWrite::CommandOptions, CommandObjectSourceInfo::CommandOptions, CommandObjectSourceList::CommandOptions, CommandObjectStatsDump::CommandOptions, CommandObjectTargetModulesDumpLineTable::CommandOptions, CommandObjectTargetModulesDumpSeparateDebugInfoFiles::CommandOptions, CommandObjectTargetModulesDumpSymtab::CommandOptions, CommandObjectTargetModulesList::CommandOptions, CommandObjectTargetModulesLookup::CommandOptions, CommandObjectTargetModulesShowUnwind::CommandOptions, CommandObjectThreadBacktrace::CommandOptions, CommandObjectThreadInfo::CommandOptions, CommandObjectThreadJump::CommandOptions, CommandObjectThreadPlanList::CommandOptions, CommandObjectThreadReturn::CommandOptions, CommandObjectThreadUntil::CommandOptions, CommandObjectTraceDump::CommandOptions, CommandObjectTraceDumpFunctionCalls::CommandOptions, CommandObjectTraceDumpInfo::CommandOptions, CommandObjectTraceDumpInstructions::CommandOptions, CommandObjectTraceLoad::CommandOptions, CommandObjectTraceSave::CommandOptions, CommandObjectTraceSchema::CommandOptions, CommandObjectTypeCategoryDefine::CommandOptions, CommandObjectTypeCategoryDisable::CommandOptions, CommandObjectTypeCategoryEnable::CommandOptions, CommandObjectTypeFilterAdd::CommandOptions, CommandObjectTypeFormatterClear::CommandOptions, CommandObjectTypeFormatterDelete::CommandOptions, CommandObjectTypeFormatterList< FormatterType >::CommandOptions, CommandObjectTypeSummaryAdd::CommandOptions, CommandObjectTypeSynthAdd::CommandOptions, CommandObjectWatchpointCommandAdd::CommandOptions, CommandObjectWatchpointDelete::CommandOptions, CommandObjectWatchpointIgnore::CommandOptions, CommandObjectWatchpointList::CommandOptions, CommandObjectWatchpointModify::CommandOptions, lldb_private::CommandObjectDisassemble::CommandOptions, lldb_private::CommandObjectHelp::CommandOptions, lldb_private::OptionGroupOptions, lldb_private::ctf::CommandObjectThreadTraceExportCTF::CommandOptions, lldb_private::trace_intel_pt::CommandObjectProcessTraceStartIntelPT::CommandOptions, lldb_private::trace_intel_pt::CommandObjectThreadTraceStartIntelPT::CommandOptions, and sddarwinlog_private::EnableOptions.

Public Member Functions

 Options ()
virtual ~Options ()
void BuildGetoptTable ()
void BuildValidOptionSets ()
uint32_t NumCommandOptions ()
OptionGetLongOptions ()
 Get the option definitions to use when parsing Args options.
void OptionSeen (int short_option)
llvm::Error VerifyOptions ()
llvm::Error VerifyPartialOptions ()
void OutputFormattedUsageText (Stream &strm, const OptionDefinition &option_def, uint32_t output_max_columns, bool use_color)
void GenerateOptionUsage (Stream &strm, CommandObject &cmd, uint32_t screen_width, bool use_color)
bool SupportsLongOption (const char *long_option)
virtual llvm::ArrayRef< OptionDefinitionGetDefinitions ()
void NotifyOptionParsingStarting (ExecutionContext *execution_context)
llvm::Expected< ArgsParse (const Args &args, ExecutionContext *execution_context, lldb::PlatformSP platform_sp, bool require_validation)
 Parse the provided arguments.
llvm::Expected< ArgsParseAlias (const Args &args, OptionArgVector *option_arg_vector, std::string &input_line)
OptionElementVector ParseForCompletion (const Args &args, uint32_t cursor_index)
Status NotifyOptionParsingFinished (ExecutionContext *execution_context)
virtual Status SetOptionValue (uint32_t option_idx, llvm::StringRef option_arg, ExecutionContext *execution_context)=0
 Set the value of an option.
bool HandleOptionCompletion (lldb_private::CompletionRequest &request, OptionElementVector &option_map, CommandInterpreter &interpreter)
 Handles the generic bits of figuring out whether we are in an option, and if so completing it.
virtual void HandleOptionArgumentCompletion (lldb_private::CompletionRequest &request, OptionElementVector &opt_element_vector, int opt_element_index, CommandInterpreter &interpreter)
 Handles the generic bits of figuring out whether we are in an option, and if so completing it.

Protected Types

typedef std::set< int > OptionSet
typedef std::vector< OptionSetOptionSetVector

Protected Member Functions

OptionSetVectorGetRequiredOptions ()
OptionSetVectorGetOptionalOptions ()
bool IsASubset (const OptionSet &set_a, const OptionSet &set_b)
size_t OptionsSetDiff (const OptionSet &set_a, const OptionSet &set_b, OptionSet &diffs)
void OptionsSetUnion (const OptionSet &set_a, const OptionSet &set_b, OptionSet &union_set)
virtual void OptionParsingStarting (ExecutionContext *execution_context)=0
virtual Status OptionParsingFinished (ExecutionContext *execution_context)

Protected Attributes

std::vector< Optionm_getopt_table
OptionSet m_seen_options
OptionSetVector m_required_options
OptionSetVector m_optional_options

Detailed Description

A command line option parsing protocol class.

Options is designed to be subclassed to contain all needed options for a given command. The options can be parsed by calling the Parse function.

The options are specified using the format defined for the libc options parsing function getopt_long_only:

#include <getopt.h>
int getopt_long_only(int argc, char * const *argv, const char
*optstring, const struct option *longopts, int *longindex);

Definition at line 58 of file Options.h.

Member Typedef Documentation

◆ OptionSet

typedef std::set<int> lldb_private::Options::OptionSet
protected

Definition at line 195 of file Options.h.

◆ OptionSetVector

typedef std::vector<OptionSet> lldb_private::Options::OptionSetVector
protected

Definition at line 196 of file Options.h.

Constructor & Destructor Documentation

◆ Options()

◆ ~Options()

Options::~Options ( )
virtualdefault

Member Function Documentation

◆ BuildGetoptTable()

void lldb_private::Options::BuildGetoptTable ( )

◆ BuildValidOptionSets()

void Options::BuildValidOptionSets ( )

◆ GenerateOptionUsage()

◆ GetDefinitions()

virtual llvm::ArrayRef< OptionDefinition > lldb_private::Options::GetDefinitions ( )
inlinevirtual

Reimplemented in CommandObjectBreakpointClear::CommandOptions, CommandObjectBreakpointCommandDelete::CommandOptions, CommandObjectBreakpointDelete::CommandOptions, CommandObjectBreakpointList::CommandOptions, CommandObjectBreakpointRead::CommandOptions, CommandObjectBreakpointWrite::CommandOptions, CommandObjectCommandsAddRegex::CommandOptions, CommandObjectCommandsContainerAdd::CommandOptions, CommandObjectCommandsScriptAdd::CommandOptions, CommandObjectCommandsScriptImport::CommandOptions, CommandObjectCommandsSource::CommandOptions, CommandObjectDiagnosticsDump::CommandOptions, CommandObjectFrameDiagnose::CommandOptions, CommandObjectFrameRecognizerAdd::CommandOptions, CommandObjectFrameSelect::CommandOptions, CommandObjectLogDump::CommandOptions, CommandObjectLogEnable::CommandOptions, CommandObjectObjC_ClassTable_Dump::CommandOptions, CommandObjectPlatformFRead::CommandOptions, CommandObjectPlatformFWrite::CommandOptions, CommandObjectPlatformProcessList::CommandOptions, CommandObjectPlatformShell::CommandOptions, CommandObjectProcessConnect::CommandOptions, CommandObjectProcessContinue::CommandOptions, CommandObjectProcessDetach::CommandOptions, CommandObjectProcessHandle::CommandOptions, CommandObjectProcessLoad::CommandOptions, CommandObjectProcessSaveCore::CommandOptions, CommandObjectProcessStatus::CommandOptions, CommandObjectScriptingExtensionList::CommandOptions, CommandObjectScriptingObjectParsed::CommandOptions, CommandObjectScriptingRun::CommandOptions, CommandObjectSessionHistory::CommandOptions, CommandObjectSettingsClear::CommandOptions, CommandObjectSettingsRead::CommandOptions, CommandObjectSettingsSet::CommandOptions, CommandObjectSettingsShow::CommandOptions, CommandObjectSettingsWrite::CommandOptions, CommandObjectSourceInfo::CommandOptions, CommandObjectSourceList::CommandOptions, CommandObjectStatsDump::CommandOptions, CommandObjectTargetModulesDumpLineTable::CommandOptions, CommandObjectTargetModulesDumpSeparateDebugInfoFiles::CommandOptions, CommandObjectTargetModulesDumpSymtab::CommandOptions, CommandObjectTargetModulesList::CommandOptions, CommandObjectTargetModulesLookup::CommandOptions, CommandObjectTargetModulesShowUnwind::CommandOptions, CommandObjectThreadBacktrace::CommandOptions, CommandObjectThreadInfo::CommandOptions, CommandObjectThreadJump::CommandOptions, CommandObjectThreadPlanList::CommandOptions, CommandObjectThreadReturn::CommandOptions, CommandObjectThreadUntil::CommandOptions, CommandObjectTraceDump::CommandOptions, CommandObjectTraceDumpFunctionCalls::CommandOptions, CommandObjectTraceDumpInfo::CommandOptions, CommandObjectTraceDumpInstructions::CommandOptions, CommandObjectTraceLoad::CommandOptions, CommandObjectTraceSave::CommandOptions, CommandObjectTraceSchema::CommandOptions, CommandObjectTypeCategoryDefine::CommandOptions, CommandObjectTypeCategoryDisable::CommandOptions, CommandObjectTypeCategoryEnable::CommandOptions, CommandObjectTypeFilterAdd::CommandOptions, CommandObjectTypeFormatterClear::CommandOptions, CommandObjectTypeFormatterDelete::CommandOptions, CommandObjectTypeFormatterList< FormatterType >::CommandOptions, CommandObjectTypeSummaryAdd::CommandOptions, CommandObjectTypeSynthAdd::CommandOptions, CommandObjectWatchpointCommandAdd::CommandOptions, CommandObjectWatchpointDelete::CommandOptions, CommandObjectWatchpointIgnore::CommandOptions, CommandObjectWatchpointList::CommandOptions, CommandObjectWatchpointModify::CommandOptions, lldb_private::CommandObjectDisassemble::CommandOptions, lldb_private::CommandObjectHelp::CommandOptions, lldb_private::ctf::CommandObjectThreadTraceExportCTF::CommandOptions, lldb_private::OptionGroupOptions, lldb_private::trace_intel_pt::CommandObjectProcessTraceStartIntelPT::CommandOptions, lldb_private::trace_intel_pt::CommandObjectThreadTraceStartIntelPT::CommandOptions, and sddarwinlog_private::EnableOptions.

Definition at line 98 of file Options.h.

Referenced by BuildValidOptionSets(), GenerateOptionUsage(), GetLongOptions(), CommandObjectScriptingObjectParsed::HandleArgumentCompletion(), HandleOptionArgumentCompletion(), HandleOptionCompletion(), NumCommandOptions(), ParseForCompletion(), and SupportsLongOption().

◆ GetLongOptions()

Option * Options::GetLongOptions ( )

Get the option definitions to use when parsing Args options.

See also
Args::ParseOptions (Options&)
man getopt_long_only

Definition at line 198 of file Options.cpp.

References GetDefinitions(), m_getopt_table, and lldb_private::Debugger::ReportError().

Referenced by Parse(), ParseAlias(), and ParseForCompletion().

◆ GetOptionalOptions()

OptionSetVector & lldb_private::Options::GetOptionalOptions ( )
inlineprotected

Definition at line 208 of file Options.h.

References BuildValidOptionSets(), and m_optional_options.

Referenced by VerifyOptions(), and VerifyPartialOptions().

◆ GetRequiredOptions()

OptionSetVector & lldb_private::Options::GetRequiredOptions ( )
inlineprotected

Definition at line 203 of file Options.h.

References BuildValidOptionSets(), and m_required_options.

Referenced by GenerateOptionUsage(), VerifyOptions(), and VerifyPartialOptions().

◆ HandleOptionArgumentCompletion()

◆ HandleOptionCompletion()

bool Options::HandleOptionCompletion ( lldb_private::CompletionRequest & request,
OptionElementVector & option_map,
CommandInterpreter & interpreter )

Handles the generic bits of figuring out whether we are in an option, and if so completing it.

Parameters
[in,out]requestThe completion request that we need to act upon.
[in]interpreterThe interpreter that's doing the completing.

FIXME: This is the wrong return value, since we also need to make a distinction between total number of matches, and the window the user wants returned.

Returns
true if we were in an option, false otherwise.

Definition at line 625 of file Options.cpp.

References lldb_private::CompletionRequest::AddCompletion(), lldb_private::OptionArgElement::eBareDash, lldb_private::OptionArgElement::eBareDoubleDash, lldb_private::OptionArgElement::eUnrecognizedArg, lldb_private::ansi::FormatAnsiTerminalCodes(), lldb_private::CompletionRequest::GetCursorArgumentPrefix(), lldb_private::CompletionRequest::GetCursorIndex(), lldb_private::CommandInterpreter::GetDebugger(), GetDefinitions(), lldb_private::Debugger::GetUseColor(), HandleOptionArgumentCompletion(), lldb_private::OptionDefinition::long_option, and lldb_private::OptionDefinition::usage_text.

Referenced by lldb_private::CommandObject::HandleCompletion().

◆ IsASubset()

bool Options::IsASubset ( const OptionSet & set_a,
const OptionSet & set_b )
protected

Definition at line 84 of file Options.cpp.

Referenced by VerifyOptions(), and VerifyPartialOptions().

◆ NotifyOptionParsingFinished()

Status Options::NotifyOptionParsingFinished ( ExecutionContext * execution_context)

◆ NotifyOptionParsingStarting()

void Options::NotifyOptionParsingStarting ( ExecutionContext * execution_context)

◆ NumCommandOptions()

uint32_t Options::NumCommandOptions ( )

◆ OptionParsingFinished()

virtual Status lldb_private::Options::OptionParsingFinished ( ExecutionContext * execution_context)
inlineprotectedvirtual

◆ OptionParsingStarting()

virtual void lldb_private::Options::OptionParsingStarting ( ExecutionContext * execution_context)
protectedpure virtual

Implemented in CommandObjectBreakpointClear::CommandOptions, CommandObjectBreakpointCommandDelete::CommandOptions, CommandObjectBreakpointDelete::CommandOptions, CommandObjectBreakpointList::CommandOptions, CommandObjectBreakpointRead::CommandOptions, CommandObjectBreakpointWrite::CommandOptions, CommandObjectCommandsAddRegex::CommandOptions, CommandObjectCommandsContainerAdd::CommandOptions, CommandObjectCommandsScriptAdd::CommandOptions, CommandObjectCommandsScriptImport::CommandOptions, CommandObjectCommandsSource::CommandOptions, CommandObjectDiagnosticsDump::CommandOptions, CommandObjectFrameDiagnose::CommandOptions, CommandObjectFrameRecognizerAdd::CommandOptions, CommandObjectFrameSelect::CommandOptions, CommandObjectLogDump::CommandOptions, CommandObjectLogEnable::CommandOptions, CommandObjectObjC_ClassTable_Dump::CommandOptions, CommandObjectPlatformFRead::CommandOptions, CommandObjectPlatformFWrite::CommandOptions, CommandObjectPlatformProcessList::CommandOptions, CommandObjectPlatformShell::CommandOptions, CommandObjectProcessConnect::CommandOptions, CommandObjectProcessContinue::CommandOptions, CommandObjectProcessDetach::CommandOptions, CommandObjectProcessHandle::CommandOptions, CommandObjectProcessLoad::CommandOptions, CommandObjectProcessSaveCore::CommandOptions, CommandObjectProcessStatus::CommandOptions, CommandObjectScriptingExtensionList::CommandOptions, CommandObjectScriptingObjectParsed::CommandOptions, CommandObjectScriptingRun::CommandOptions, CommandObjectSessionHistory::CommandOptions, CommandObjectSettingsClear::CommandOptions, CommandObjectSettingsRead::CommandOptions, CommandObjectSettingsSet::CommandOptions, CommandObjectSettingsShow::CommandOptions, CommandObjectSettingsWrite::CommandOptions, CommandObjectSourceInfo::CommandOptions, CommandObjectSourceList::CommandOptions, CommandObjectStatsDump::CommandOptions, CommandObjectTargetModulesDumpLineTable::CommandOptions, CommandObjectTargetModulesDumpSeparateDebugInfoFiles::CommandOptions, CommandObjectTargetModulesDumpSymtab::CommandOptions, CommandObjectTargetModulesList::CommandOptions, CommandObjectTargetModulesLookup::CommandOptions, CommandObjectTargetModulesShowUnwind::CommandOptions, CommandObjectThreadBacktrace::CommandOptions, CommandObjectThreadInfo::CommandOptions, CommandObjectThreadJump::CommandOptions, CommandObjectThreadPlanList::CommandOptions, CommandObjectThreadReturn::CommandOptions, CommandObjectThreadUntil::CommandOptions, CommandObjectTraceDump::CommandOptions, CommandObjectTraceDumpFunctionCalls::CommandOptions, CommandObjectTraceDumpInfo::CommandOptions, CommandObjectTraceDumpInstructions::CommandOptions, CommandObjectTraceLoad::CommandOptions, CommandObjectTraceSave::CommandOptions, CommandObjectTraceSchema::CommandOptions, CommandObjectTypeCategoryDefine::CommandOptions, CommandObjectTypeCategoryDisable::CommandOptions, CommandObjectTypeCategoryEnable::CommandOptions, CommandObjectTypeFilterAdd::CommandOptions, CommandObjectTypeFormatterClear::CommandOptions, CommandObjectTypeFormatterDelete::CommandOptions, CommandObjectTypeFormatterList< FormatterType >::CommandOptions, CommandObjectTypeSummaryAdd::CommandOptions, CommandObjectTypeSynthAdd::CommandOptions, CommandObjectWatchpointCommandAdd::CommandOptions, CommandObjectWatchpointDelete::CommandOptions, CommandObjectWatchpointIgnore::CommandOptions, CommandObjectWatchpointList::CommandOptions, CommandObjectWatchpointModify::CommandOptions, lldb_private::CommandObjectDisassemble::CommandOptions, lldb_private::CommandObjectHelp::CommandOptions, lldb_private::ctf::CommandObjectThreadTraceExportCTF::CommandOptions, lldb_private::OptionGroupOptions, lldb_private::trace_intel_pt::CommandObjectProcessTraceStartIntelPT::CommandOptions, lldb_private::trace_intel_pt::CommandObjectThreadTraceStartIntelPT::CommandOptions, and sddarwinlog_private::EnableOptions.

Referenced by NotifyOptionParsingStarting().

◆ OptionSeen()

void Options::OptionSeen ( int short_option)

Definition at line 80 of file Options.cpp.

References m_seen_options.

Referenced by Parse(), ParseAlias(), and ParseForCompletion().

◆ OptionsSetDiff()

size_t Options::OptionsSetDiff ( const OptionSet & set_a,
const OptionSet & set_b,
OptionSet & diffs )
protected

Definition at line 104 of file Options.cpp.

Referenced by VerifyOptions().

◆ OptionsSetUnion()

void Options::OptionsSetUnion ( const OptionSet & set_a,
const OptionSet & set_b,
OptionSet & union_set )
protected

Definition at line 124 of file Options.cpp.

Referenced by VerifyPartialOptions().

◆ OutputFormattedUsageText()

◆ Parse()

llvm::Expected< Args > Options::Parse ( const Args & args,
ExecutionContext * execution_context,
lldb::PlatformSP platform_sp,
bool require_validation )

Parse the provided arguments.

The parsed options are set via calls to SetOptionValue. In case of a successful parse, the function returns a copy of the input arguments with the parsed options removed. Otherwise, it returns an error.

param[in] platform_sp The platform used for option validation. This is necessary because an empty execution_context is not enough to get us to a reasonable platform. If the platform isn't given, we'll try to get it from the execution context. If we can't get it from the execution context, we'll skip validation.

param[in] require_validation When true, it will fail option parsing if validation could not occur due to not having a platform.

Definition at line 1290 of file Options.cpp.

References BuildShortOptions(), lldb_private::Option::definition, lldb_private::OptionParser::eNoArgument, error(), lldb_private::Option::flag, lldb_private::Status::FromError(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::Args::GetArgumentCount(), GetArgvForParsing(), GetLongOptions(), lldb_private::OptionParser::GetOptionArgument(), lldb_private::OptionParser::GetOptionIndex(), lldb_private::ExecutionContext::GetTargetSP(), lldb_private::OptionDefinition::long_option, lldb_private::OptionValidator::LongConditionString(), lldb_private::OptionDefinition::option_has_arg, OptionSeen(), lldb_private::OptionParser::Parse(), lldb_private::OptionParser::Prepare(), ReconstituteArgsAfterParsing(), SetOptionValue(), lldb_private::Status, lldb_private::Option::val, lldb_private::OptionDefinition::validator, and lldb_private::validator.

Referenced by lldb_private::CommandObject::ParseOptions().

◆ ParseAlias()

◆ ParseForCompletion()

◆ SetOptionValue()

virtual Status lldb_private::Options::SetOptionValue ( uint32_t option_idx,
llvm::StringRef option_arg,
ExecutionContext * execution_context )
pure virtual

Set the value of an option.

Parameters
[in]option_idxThe index into the "struct option" array that was returned by Options::GetLongOptions().
[in]option_argThe argument value for the option that the user entered, or nullptr if there is no argument for the current option.
[in]execution_contextThe execution context to use for evaluating the option. May be nullptr if the option is to be evaluated outside any particular context.
See also
Args::ParseOptions (Options&)
man getopt_long_only

Implemented in CommandObjectBreakpointClear::CommandOptions, CommandObjectBreakpointCommandDelete::CommandOptions, CommandObjectBreakpointDelete::CommandOptions, CommandObjectBreakpointList::CommandOptions, CommandObjectBreakpointRead::CommandOptions, CommandObjectBreakpointWrite::CommandOptions, CommandObjectCommandsAddRegex::CommandOptions, CommandObjectCommandsContainerAdd::CommandOptions, CommandObjectCommandsScriptAdd::CommandOptions, CommandObjectCommandsScriptImport::CommandOptions, CommandObjectCommandsSource::CommandOptions, CommandObjectDiagnosticsDump::CommandOptions, CommandObjectFrameDiagnose::CommandOptions, CommandObjectFrameRecognizerAdd::CommandOptions, CommandObjectFrameSelect::CommandOptions, CommandObjectLogDump::CommandOptions, CommandObjectLogEnable::CommandOptions, CommandObjectObjC_ClassTable_Dump::CommandOptions, CommandObjectPlatformFRead::CommandOptions, CommandObjectPlatformFWrite::CommandOptions, CommandObjectPlatformProcessList::CommandOptions, CommandObjectPlatformShell::CommandOptions, CommandObjectProcessConnect::CommandOptions, CommandObjectProcessContinue::CommandOptions, CommandObjectProcessDetach::CommandOptions, CommandObjectProcessHandle::CommandOptions, CommandObjectProcessLoad::CommandOptions, CommandObjectProcessSaveCore::CommandOptions, CommandObjectProcessStatus::CommandOptions, CommandObjectScriptingExtensionList::CommandOptions, CommandObjectScriptingObjectParsed::CommandOptions, CommandObjectScriptingRun::CommandOptions, CommandObjectSessionHistory::CommandOptions, CommandObjectSettingsClear::CommandOptions, CommandObjectSettingsRead::CommandOptions, CommandObjectSettingsSet::CommandOptions, CommandObjectSettingsShow::CommandOptions, CommandObjectSettingsWrite::CommandOptions, CommandObjectSourceInfo::CommandOptions, CommandObjectSourceList::CommandOptions, CommandObjectStatsDump::CommandOptions, CommandObjectTargetModulesDumpLineTable::CommandOptions, CommandObjectTargetModulesDumpSeparateDebugInfoFiles::CommandOptions, CommandObjectTargetModulesDumpSymtab::CommandOptions, CommandObjectTargetModulesList::CommandOptions, CommandObjectTargetModulesLookup::CommandOptions, CommandObjectTargetModulesShowUnwind::CommandOptions, CommandObjectThreadBacktrace::CommandOptions, CommandObjectThreadInfo::CommandOptions, CommandObjectThreadJump::CommandOptions, CommandObjectThreadPlanList::CommandOptions, CommandObjectThreadReturn::CommandOptions, CommandObjectThreadUntil::CommandOptions, CommandObjectTraceDump::CommandOptions, CommandObjectTraceDumpFunctionCalls::CommandOptions, CommandObjectTraceDumpInfo::CommandOptions, CommandObjectTraceDumpInstructions::CommandOptions, CommandObjectTraceSave::CommandOptions, CommandObjectTraceSchema::CommandOptions, CommandObjectTypeCategoryDefine::CommandOptions, CommandObjectTypeCategoryDisable::CommandOptions, CommandObjectTypeCategoryEnable::CommandOptions, CommandObjectTypeFilterAdd::CommandOptions, CommandObjectTypeFormatterClear::CommandOptions, CommandObjectTypeFormatterDelete::CommandOptions, CommandObjectTypeFormatterList< FormatterType >::CommandOptions, CommandObjectTypeSummaryAdd::CommandOptions, CommandObjectTypeSynthAdd::CommandOptions, CommandObjectWatchpointCommandAdd::CommandOptions, CommandObjectWatchpointDelete::CommandOptions, CommandObjectWatchpointIgnore::CommandOptions, CommandObjectWatchpointList::CommandOptions, CommandObjectWatchpointModify::CommandOptions, lldb_private::CommandObjectDisassemble::CommandOptions, lldb_private::CommandObjectHelp::CommandOptions, lldb_private::ctf::CommandObjectThreadTraceExportCTF::CommandOptions, lldb_private::OptionGroupOptions, lldb_private::trace_intel_pt::CommandObjectProcessTraceStartIntelPT::CommandOptions, lldb_private::trace_intel_pt::CommandObjectThreadTraceStartIntelPT::CommandOptions, and sddarwinlog_private::EnableOptions.

Referenced by Parse().

◆ SupportsLongOption()

bool Options::SupportsLongOption ( const char * long_option)

Definition at line 327 of file Options.cpp.

References GetDefinitions().

Referenced by lldb_private::CommandInterpreter::ResolveCommandImpl().

◆ VerifyOptions()

llvm::Error Options::VerifyOptions ( )

◆ VerifyPartialOptions()

llvm::Error Options::VerifyPartialOptions ( )

Member Data Documentation

◆ m_getopt_table

std::vector<Option> lldb_private::Options::m_getopt_table
protected

Definition at line 198 of file Options.h.

Referenced by CommandObjectWatchpointCommandAdd::DoExecute(), GetLongOptions(), CommandObjectBreakpointClear::CommandOptions::SetOptionValue(), CommandObjectBreakpointCommandDelete::CommandOptions::SetOptionValue(), CommandObjectBreakpointDelete::CommandOptions::SetOptionValue(), CommandObjectBreakpointList::CommandOptions::SetOptionValue(), CommandObjectBreakpointRead::CommandOptions::SetOptionValue(), CommandObjectBreakpointWrite::CommandOptions::SetOptionValue(), CommandObjectCommandsContainerAdd::CommandOptions::SetOptionValue(), CommandObjectCommandsScriptAdd::CommandOptions::SetOptionValue(), CommandObjectCommandsScriptImport::CommandOptions::SetOptionValue(), CommandObjectCommandsSource::CommandOptions::SetOptionValue(), CommandObjectDiagnosticsDump::CommandOptions::SetOptionValue(), CommandObjectFrameDiagnose::CommandOptions::SetOptionValue(), CommandObjectFrameRecognizerAdd::CommandOptions::SetOptionValue(), CommandObjectFrameSelect::CommandOptions::SetOptionValue(), CommandObjectLogDump::CommandOptions::SetOptionValue(), CommandObjectLogEnable::CommandOptions::SetOptionValue(), CommandObjectObjC_ClassTable_Dump::CommandOptions::SetOptionValue(), CommandObjectPlatformFRead::CommandOptions::SetOptionValue(), CommandObjectPlatformFWrite::CommandOptions::SetOptionValue(), CommandObjectPlatformProcessList::CommandOptions::SetOptionValue(), CommandObjectProcessConnect::CommandOptions::SetOptionValue(), CommandObjectProcessContinue::CommandOptions::SetOptionValue(), CommandObjectProcessDetach::CommandOptions::SetOptionValue(), CommandObjectProcessHandle::CommandOptions::SetOptionValue(), CommandObjectProcessLoad::CommandOptions::SetOptionValue(), CommandObjectProcessSaveCore::CommandOptions::SetOptionValue(), CommandObjectProcessStatus::CommandOptions::SetOptionValue(), CommandObjectScriptingExtensionList::CommandOptions::SetOptionValue(), CommandObjectScriptingRun::CommandOptions::SetOptionValue(), CommandObjectSessionHistory::CommandOptions::SetOptionValue(), CommandObjectSettingsClear::CommandOptions::SetOptionValue(), CommandObjectSettingsRead::CommandOptions::SetOptionValue(), CommandObjectSettingsShow::CommandOptions::SetOptionValue(), CommandObjectSettingsWrite::CommandOptions::SetOptionValue(), CommandObjectStatsDump::CommandOptions::SetOptionValue(), CommandObjectTargetModulesDumpSeparateDebugInfoFiles::CommandOptions::SetOptionValue(), CommandObjectTargetModulesDumpSymtab::CommandOptions::SetOptionValue(), CommandObjectTargetModulesList::CommandOptions::SetOptionValue(), CommandObjectTargetModulesLookup::CommandOptions::SetOptionValue(), CommandObjectTargetModulesShowUnwind::CommandOptions::SetOptionValue(), CommandObjectThreadBacktrace::CommandOptions::SetOptionValue(), CommandObjectThreadInfo::CommandOptions::SetOptionValue(), CommandObjectThreadJump::CommandOptions::SetOptionValue(), CommandObjectThreadPlanList::CommandOptions::SetOptionValue(), CommandObjectThreadReturn::CommandOptions::SetOptionValue(), CommandObjectThreadUntil::CommandOptions::SetOptionValue(), CommandObjectTraceDump::CommandOptions::SetOptionValue(), CommandObjectTraceDumpFunctionCalls::CommandOptions::SetOptionValue(), CommandObjectTraceDumpInfo::CommandOptions::SetOptionValue(), CommandObjectTraceDumpInstructions::CommandOptions::SetOptionValue(), CommandObjectTraceLoad::CommandOptions::SetOptionValue(), CommandObjectTraceSave::CommandOptions::SetOptionValue(), CommandObjectTraceSchema::CommandOptions::SetOptionValue(), CommandObjectTypeFormatterClear::CommandOptions::SetOptionValue(), CommandObjectTypeFormatterDelete::CommandOptions::SetOptionValue(), CommandObjectTypeFormatterList< FormatterType >::CommandOptions::SetOptionValue(), CommandObjectTypeSummaryAdd::CommandOptions::SetOptionValue(), CommandObjectTypeSynthAdd::CommandOptions::SetOptionValue(), CommandObjectWatchpointDelete::CommandOptions::SetOptionValue(), CommandObjectWatchpointIgnore::CommandOptions::SetOptionValue(), CommandObjectWatchpointList::CommandOptions::SetOptionValue(), CommandObjectWatchpointModify::CommandOptions::SetOptionValue(), lldb_private::CommandObjectDisassemble::CommandOptions::SetOptionValue(), lldb_private::CommandObjectHelp::CommandOptions::SetOptionValue(), lldb_private::ctf::CommandObjectThreadTraceExportCTF::CommandOptions::SetOptionValue(), lldb_private::trace_intel_pt::CommandObjectProcessTraceStartIntelPT::CommandOptions::SetOptionValue(), lldb_private::trace_intel_pt::CommandObjectThreadTraceStartIntelPT::CommandOptions::SetOptionValue(), and sddarwinlog_private::EnableOptions::SetOptionValue().

◆ m_optional_options

OptionSetVector lldb_private::Options::m_optional_options
protected

Definition at line 201 of file Options.h.

Referenced by BuildValidOptionSets(), and GetOptionalOptions().

◆ m_required_options

OptionSetVector lldb_private::Options::m_required_options
protected

Definition at line 200 of file Options.h.

Referenced by BuildValidOptionSets(), and GetRequiredOptions().

◆ m_seen_options

OptionSet lldb_private::Options::m_seen_options
protected

The documentation for this class was generated from the following files: