LLDB mainline
|
#include <CommandAlias.h>
Public Types | |
typedef std::unique_ptr< CommandAlias > | UniquePointer |
![]() | |
typedef llvm::StringRef() | ArgumentHelpCallbackFunction() |
typedef std::vector< CommandArgumentData > | CommandArgumentEntry |
typedef std::map< std::string, lldb::CommandObjectSP > | CommandMap |
Public Member Functions | |
CommandAlias (CommandInterpreter &interpreter, lldb::CommandObjectSP cmd_sp, llvm::StringRef options_args, llvm::StringRef name, llvm::StringRef help=llvm::StringRef(), llvm::StringRef syntax=llvm::StringRef(), uint32_t flags=0) | |
void | GetAliasExpansion (StreamString &help_string) const |
bool | IsValid () const |
operator bool () const | |
bool | WantsRawCommandString () override |
bool | WantsCompletion () override |
void | HandleCompletion (CompletionRequest &request) override |
This default version handles calling option argument completions and then calls HandleArgumentCompletion if the cursor is on an argument, not an option. | |
void | HandleArgumentCompletion (CompletionRequest &request, OptionElementVector &opt_element_vector) override |
The input array contains a parsed version of the line. | |
Options * | GetOptions () override |
bool | IsAlias () override |
bool | IsDashDashCommand () override |
llvm::StringRef | GetHelp () override |
llvm::StringRef | GetHelpLong () override |
void | SetHelp (llvm::StringRef str) override |
void | SetHelpLong (llvm::StringRef str) override |
bool | Execute (const char *args_string, CommandReturnObject &result) override |
lldb::CommandObjectSP | GetUnderlyingCommand () |
OptionArgVectorSP | GetOptionArguments () const |
const char * | GetOptionString () |
std::pair< lldb::CommandObjectSP, OptionArgVectorSP > | Desugar () |
![]() | |
CommandObject (CommandInterpreter &interpreter, llvm::StringRef name, llvm::StringRef help="", llvm::StringRef syntax="", uint32_t flags=0) | |
virtual | ~CommandObject ()=default |
CommandInterpreter & | GetCommandInterpreter () |
Debugger & | GetDebugger () |
virtual llvm::StringRef | GetHelp () |
virtual llvm::StringRef | GetHelpLong () |
virtual llvm::StringRef | GetSyntax () |
llvm::StringRef | GetCommandName () const |
virtual void | SetHelp (llvm::StringRef str) |
virtual void | SetHelpLong (llvm::StringRef str) |
void | SetSyntax (llvm::StringRef str) |
virtual bool | IsRemovable () const |
virtual bool | IsMultiwordObject () |
bool | IsUserCommand () |
void | SetIsUserCommand (bool is_user) |
virtual CommandObjectMultiword * | GetAsMultiwordCommand () |
virtual bool | IsAlias () |
virtual bool | IsDashDashCommand () |
virtual lldb::CommandObjectSP | GetSubcommandSP (llvm::StringRef sub_cmd, StringList *matches=nullptr) |
virtual lldb::CommandObjectSP | GetSubcommandSPExact (llvm::StringRef sub_cmd) |
virtual CommandObject * | GetSubcommandObject (llvm::StringRef sub_cmd, StringList *matches=nullptr) |
void | FormatLongHelpText (Stream &output_strm, llvm::StringRef long_help) |
void | GenerateHelpText (CommandReturnObject &result) |
virtual void | GenerateHelpText (Stream &result) |
virtual bool | LoadSubCommand (llvm::StringRef cmd_name, const lldb::CommandObjectSP &command_obj) |
virtual llvm::Error | LoadUserSubcommand (llvm::StringRef cmd_name, const lldb::CommandObjectSP &command_obj, bool can_replace) |
virtual bool | WantsRawCommandString ()=0 |
virtual bool | WantsCompletion () |
virtual Options * | GetOptions () |
int | GetNumArgumentEntries () |
CommandArgumentEntry * | GetArgumentEntryAtIndex (int idx) |
void | GetFormattedCommandArguments (Stream &str, uint32_t opt_set_mask=LLDB_OPT_SET_ALL) |
bool | IsPairType (ArgumentRepetitionType arg_repeat_type) |
bool | ParseOptions (Args &args, CommandReturnObject &result) |
void | SetCommandName (llvm::StringRef name) |
virtual void | HandleCompletion (CompletionRequest &request) |
This default version handles calling option argument completions and then calls HandleArgumentCompletion if the cursor is on an argument, not an option. | |
virtual void | HandleArgumentCompletion (CompletionRequest &request, OptionElementVector &opt_element_vector) |
The input array contains a parsed version of the line. | |
bool | HelpTextContainsWord (llvm::StringRef search_word, bool search_short_help=true, bool search_long_help=true, bool search_syntax=true, bool search_options=true) |
Flags & | GetFlags () |
The flags accessor. | |
const Flags & | GetFlags () const |
The flags const accessor. | |
virtual std::optional< std::string > | GetRepeatCommand (Args ¤t_command_args, uint32_t index) |
Get the command that appropriate for a "repeat" of the current command. | |
bool | HasOverrideCallback () const |
void | SetOverrideCallback (lldb::CommandOverrideCallback callback, void *baton) |
void | SetOverrideCallback (lldb::CommandOverrideCallbackWithResult callback, void *baton) |
bool | InvokeOverrideCallback (const char **argv, CommandReturnObject &result) |
virtual bool | Execute (const char *args_string, CommandReturnObject &result)=0 |
Protected Member Functions | |
bool | IsNestedAlias () |
![]() | |
bool | ParseOptionsAndNotify (Args &args, CommandReturnObject &result, OptionGroupOptions &group_options, ExecutionContext &exe_ctx) |
virtual const char * | GetInvalidTargetDescription () |
virtual const char * | GetInvalidProcessDescription () |
virtual const char * | GetInvalidThreadDescription () |
virtual const char * | GetInvalidFrameDescription () |
virtual const char * | GetInvalidRegContextDescription () |
Target & | GetSelectedOrDummyTarget (bool prefer_dummy=false) |
Target & | GetSelectedTarget () |
Target & | GetDummyTarget () |
Thread * | GetDefaultThread () |
bool | CheckRequirements (CommandReturnObject &result) |
Check the command to make sure anything required by this command is available. | |
void | Cleanup () |
Private Attributes | |
lldb::CommandObjectSP | m_underlying_command_sp |
std::string | m_option_string |
OptionArgVectorSP | m_option_args_sp |
LazyBool | m_is_dashdash_alias |
bool | m_did_set_help: 1 |
bool | m_did_set_help_long: 1 |
Definition at line 20 of file CommandAlias.h.
typedef std::unique_ptr<CommandAlias> lldb_private::CommandAlias::UniquePointer |
Definition at line 22 of file CommandAlias.h.
CommandAlias::CommandAlias | ( | CommandInterpreter & | interpreter, |
lldb::CommandObjectSP | cmd_sp, | ||
llvm::StringRef | options_args, | ||
llvm::StringRef | name, | ||
llvm::StringRef | help = llvm::StringRef() , |
||
llvm::StringRef | syntax = llvm::StringRef() , |
||
uint32_t | flags = 0 |
||
) |
Definition at line 77 of file CommandAlias.cpp.
References GetAliasExpansion(), lldb_private::StreamString::GetData(), GetHelp(), lldb_private::StreamString::GetString(), GetUnderlyingCommand(), lldb_private::CommandObject::m_arguments, m_option_args_sp, m_underlying_command_sp, lldb_private::Stream::Printf(), ProcessAliasOptionsArgs(), and SetHelp().
std::pair< lldb::CommandObjectSP, OptionArgVectorSP > CommandAlias::Desugar | ( | ) |
Definition at line 205 of file CommandAlias.cpp.
References Desugar(), GetOptionArguments(), and GetUnderlyingCommand().
Referenced by Desugar().
|
overridevirtual |
Implements lldb_private::CommandObject.
Definition at line 137 of file CommandAlias.cpp.
void CommandAlias::GetAliasExpansion | ( | StreamString & | help_string | ) | const |
Definition at line 142 of file CommandAlias.cpp.
References lldb_private::CommandInterpreter::g_argument, lldb_private::CommandInterpreter::g_need_argument, lldb_private::CommandInterpreter::g_no_argument, m_option_args_sp, m_underlying_command_sp, and lldb_private::Stream::Printf().
Referenced by CommandAlias(), and lldb_private::CommandObjectHelp::DoExecute().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 235 of file CommandAlias.cpp.
References IsValid(), lldb_private::CommandObject::m_cmd_help_short, m_did_set_help, and m_underlying_command_sp.
Referenced by CommandAlias().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 243 of file CommandAlias.cpp.
References IsValid(), lldb_private::CommandObject::m_cmd_help_long, m_did_set_help_long, and m_underlying_command_sp.
|
inline |
Definition at line 64 of file CommandAlias.h.
References m_option_args_sp.
Referenced by lldb_private::CommandInterpreter::BuildAliasCommandArgs(), Desugar(), and IsDashDashCommand().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 131 of file CommandAlias.cpp.
References IsValid(), and m_underlying_command_sp.
|
inline |
Definition at line 65 of file CommandAlias.h.
References m_option_string.
|
inline |
Definition at line 61 of file CommandAlias.h.
References m_underlying_command_sp.
Referenced by CommandAlias(), Desugar(), IsDashDashCommand(), and IsNestedAlias().
|
overridevirtual |
The input array contains a parsed version of the line.
We've constructed the map of options and their arguments as well if that is helpful for the completion.
[in,out] | request | The completion request that needs to be answered. |
Reimplemented from lldb_private::CommandObject.
Definition at line 124 of file CommandAlias.cpp.
References IsValid(), and m_underlying_command_sp.
|
overridevirtual |
This default version handles calling option argument completions and then calls HandleArgumentCompletion if the cursor is on an argument, not an option.
Don't override this method, override HandleArgumentCompletion instead unless you have special reasons.
[in,out] | request | The completion request that needs to be answered. |
Reimplemented from lldb_private::CommandObject.
Definition at line 119 of file CommandAlias.cpp.
References IsValid(), and m_underlying_command_sp.
|
inlineoverridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 47 of file CommandAlias.h.
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 171 of file CommandAlias.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::CommandInterpreter::g_argument, GetOptionArguments(), GetUnderlyingCommand(), IsNestedAlias(), IsValid(), and m_is_dashdash_alias.
|
protected |
Definition at line 199 of file CommandAlias.cpp.
References GetUnderlyingCommand().
Referenced by IsDashDashCommand().
|
inline |
Definition at line 31 of file CommandAlias.h.
References m_option_args_sp, and m_underlying_command_sp.
Referenced by GetHelp(), GetHelpLong(), GetOptions(), HandleArgumentCompletion(), HandleCompletion(), IsDashDashCommand(), operator bool(), WantsCompletion(), and WantsRawCommandString().
|
inlineexplicit |
Definition at line 33 of file CommandAlias.h.
References IsValid().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 225 of file CommandAlias.cpp.
References m_did_set_help, and lldb_private::CommandObject::SetHelp().
Referenced by CommandAlias(), and lldb_private::CommandInterpreter::Initialize().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 230 of file CommandAlias.cpp.
References m_did_set_help_long, and lldb_private::CommandObject::SetHelpLong().
Referenced by lldb_private::CommandInterpreter::Initialize().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 113 of file CommandAlias.cpp.
References IsValid(), and m_underlying_command_sp.
|
overridevirtual |
Implements lldb_private::CommandObject.
Definition at line 107 of file CommandAlias.cpp.
References IsValid(), and m_underlying_command_sp.
|
private |
Definition at line 79 of file CommandAlias.h.
|
private |
Definition at line 80 of file CommandAlias.h.
Referenced by GetHelpLong(), and SetHelpLong().
|
private |
Definition at line 78 of file CommandAlias.h.
Referenced by IsDashDashCommand().
|
private |
Definition at line 77 of file CommandAlias.h.
Referenced by CommandAlias(), GetAliasExpansion(), GetOptionArguments(), and IsValid().
|
private |
Definition at line 76 of file CommandAlias.h.
Referenced by GetOptionString().
|
private |
Definition at line 75 of file CommandAlias.h.
Referenced by CommandAlias(), GetAliasExpansion(), GetHelp(), GetHelpLong(), GetOptions(), GetUnderlyingCommand(), HandleArgumentCompletion(), HandleCompletion(), IsValid(), WantsCompletion(), and WantsRawCommandString().