LLDB  mainline
Public Types | Public Member Functions | Protected Member Functions | List of all members
lldb_private::CommandAlias Class Reference

#include <CommandAlias.h>

Inheritance diagram for lldb_private::CommandAlias:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::CommandAlias:
Collaboration graph
[legend]

Public Types

typedef std::unique_ptr< CommandAliasUniquePointer
 
- Public Types inherited from lldb_private::CommandObject
typedef llvm::StringRef() ArgumentHelpCallbackFunction()
 
typedef std::vector< CommandArgumentDataCommandArgumentEntry
 
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
 
int 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. More...
 
int HandleArgumentCompletion (CompletionRequest &request, OptionElementVector &opt_element_vector) override
 The input array contains a parsed version of the line. More...
 
OptionsGetOptions () 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, OptionArgVectorSPDesugar ()
 
- Public Member Functions inherited from lldb_private::CommandObject
 CommandObject (CommandInterpreter &interpreter, llvm::StringRef name, llvm::StringRef help="", llvm::StringRef syntax="", uint32_t flags=0)
 
virtual ~CommandObject ()
 
CommandInterpreterGetCommandInterpreter ()
 
DebuggerGetDebugger ()
 
virtual llvm::StringRef GetSyntax ()
 
llvm::StringRef GetCommandName () const
 
void SetSyntax (llvm::StringRef str)
 
virtual bool IsRemovable () const
 
virtual bool IsMultiwordObject ()
 
virtual CommandObjectMultiwordGetAsMultiwordCommand ()
 
virtual lldb::CommandObjectSP GetSubcommandSP (llvm::StringRef sub_cmd, StringList *matches=nullptr)
 
virtual CommandObjectGetSubcommandObject (llvm::StringRef sub_cmd, StringList *matches=nullptr)
 
virtual void AproposAllSubCommands (llvm::StringRef prefix, llvm::StringRef search_word, StringList &commands_found, StringList &commands_help)
 
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)
 
int GetNumArgumentEntries ()
 
CommandArgumentEntryGetArgumentEntryAtIndex (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)
 
bool HelpTextContainsWord (llvm::StringRef search_word, bool search_short_help=true, bool search_long_help=true, bool search_syntax=true, bool search_options=true)
 
FlagsGetFlags ()
 The flags accessor. More...
 
const FlagsGetFlags () const
 The flags const accessor. More...
 
virtual const char * GetRepeatCommand (Args &current_command_args, uint32_t index)
 Get the command that appropriate for a "repeat" of the current command. More...
 
bool HasOverrideCallback () const
 
void SetOverrideCallback (lldb::CommandOverrideCallback callback, void *baton)
 
void SetOverrideCallback (lldb::CommandOverrideCallbackWithResult callback, void *baton)
 
bool InvokeOverrideCallback (const char **argv, CommandReturnObject &result)
 

Protected Member Functions

bool IsNestedAlias ()
 
- Protected Member Functions inherited from lldb_private::CommandObject
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 ()
 
TargetGetSelectedOrDummyTarget (bool prefer_dummy=false)
 
TargetGetDummyTarget ()
 
ThreadGetDefaultThread ()
 
bool CheckRequirements (CommandReturnObject &result)
 Check the command to make sure anything required by this command is available. More...
 
void Cleanup ()
 

Additional Inherited Members

- Static Public Member Functions inherited from lldb_private::CommandObject
static const char * GetArgumentTypeAsCString (const lldb::CommandArgumentType arg_type)
 
static const char * GetArgumentDescriptionAsCString (const lldb::CommandArgumentType arg_type)
 
static const ArgumentTableEntryGetArgumentTable ()
 
static lldb::CommandArgumentType LookupArgumentName (llvm::StringRef arg_name)
 
static const ArgumentTableEntryFindArgumentDataByType (lldb::CommandArgumentType arg_type)
 
static void GetArgumentHelp (Stream &str, lldb::CommandArgumentType arg_type, CommandInterpreter &interpreter)
 
static const char * GetArgumentName (lldb::CommandArgumentType arg_type)
 
- Static Public Attributes inherited from lldb_private::CommandObject
static ArgumentTableEntry g_arguments_data [lldb::eArgTypeLastArg]
 
- Static Protected Member Functions inherited from lldb_private::CommandObject
static void AddIDsArgumentData (CommandArgumentEntry &arg, lldb::CommandArgumentType ID, lldb::CommandArgumentType IDRange)
 
- Protected Attributes inherited from lldb_private::CommandObject
CommandInterpreterm_interpreter
 
ExecutionContext m_exe_ctx
 
std::unique_lock< std::recursive_mutex > m_api_locker
 
std::string m_cmd_name
 
std::string m_cmd_help_short
 
std::string m_cmd_help_long
 
std::string m_cmd_syntax
 
Flags m_flags
 
std::vector< CommandArgumentEntrym_arguments
 
lldb::CommandOverrideCallback m_deprecated_command_override_callback
 
lldb::CommandOverrideCallbackWithResult m_command_override_callback
 
void * m_command_override_baton
 

Detailed Description

Definition at line 20 of file CommandAlias.h.

Member Typedef Documentation

◆ UniquePointer

Definition at line 22 of file CommandAlias.h.

Constructor & Destructor Documentation

◆ CommandAlias()

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 
)

Member Function Documentation

◆ Desugar()

std::pair< lldb::CommandObjectSP, OptionArgVectorSP > CommandAlias::Desugar ( )

Definition at line 203 of file CommandAlias.cpp.

References GetOptionArguments(), and GetUnderlyingCommand().

Referenced by GetOptionString().

◆ Execute()

bool CommandAlias::Execute ( const char *  args_string,
CommandReturnObject result 
)
overridevirtual

Implements lldb_private::CommandObject.

Definition at line 136 of file CommandAlias.cpp.

Referenced by IsAlias().

◆ GetAliasExpansion()

void CommandAlias::GetAliasExpansion ( StreamString help_string) const

◆ GetHelp()

llvm::StringRef CommandAlias::GetHelp ( )
overridevirtual

Reimplemented from lldb_private::CommandObject.

Definition at line 231 of file CommandAlias.cpp.

References IsValid(), and lldb_private::CommandObject::m_cmd_help_short.

Referenced by IsAlias().

◆ GetHelpLong()

llvm::StringRef CommandAlias::GetHelpLong ( )
overridevirtual

Reimplemented from lldb_private::CommandObject.

Definition at line 239 of file CommandAlias.cpp.

References IsValid(), and lldb_private::CommandObject::m_cmd_help_long.

Referenced by IsAlias().

◆ GetOptionArguments()

OptionArgVectorSP lldb_private::CommandAlias::GetOptionArguments ( ) const
inline

◆ GetOptions()

Options * CommandAlias::GetOptions ( )
overridevirtual

Reimplemented from lldb_private::CommandObject.

Definition at line 130 of file CommandAlias.cpp.

References IsValid().

Referenced by operator bool().

◆ GetOptionString()

const char* lldb_private::CommandAlias::GetOptionString ( )
inline

Definition at line 65 of file CommandAlias.h.

References Desugar(), and IsNestedAlias().

◆ GetUnderlyingCommand()

lldb::CommandObjectSP lldb_private::CommandAlias::GetUnderlyingCommand ( )
inline

Definition at line 61 of file CommandAlias.h.

Referenced by CommandAlias(), Desugar(), IsDashDashCommand(), and IsNestedAlias().

◆ HandleArgumentCompletion()

int CommandAlias::HandleArgumentCompletion ( CompletionRequest request,
OptionElementVector opt_element_vector 
)
overridevirtual

The input array contains a parsed version of the line.

The insertion point is given by cursor_index (the index in input of the word containing the cursor) and cursor_char_position (the position of the cursor in that word.) We've constructed the map of options and their arguments as well if that is helpful for the completion.

Parameters

Reimplemented from lldb_private::CommandObject.

Definition at line 122 of file CommandAlias.cpp.

References IsValid().

Referenced by operator bool().

◆ HandleCompletion()

int CommandAlias::HandleCompletion ( CompletionRequest request)
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.

Parameters

Reimplemented from lldb_private::CommandObject.

Definition at line 116 of file CommandAlias.cpp.

References IsValid().

Referenced by operator bool().

◆ IsAlias()

bool lldb_private::CommandAlias::IsAlias ( )
inlineoverridevirtual

Reimplemented from lldb_private::CommandObject.

Definition at line 47 of file CommandAlias.h.

References Execute(), GetHelp(), GetHelpLong(), IsDashDashCommand(), SetHelp(), and SetHelpLong().

◆ IsDashDashCommand()

bool CommandAlias::IsDashDashCommand ( )
overridevirtual

◆ IsNestedAlias()

bool CommandAlias::IsNestedAlias ( )
protected

Definition at line 197 of file CommandAlias.cpp.

References GetUnderlyingCommand().

Referenced by GetOptionString(), and IsDashDashCommand().

◆ IsValid()

bool lldb_private::CommandAlias::IsValid ( ) const
inline

◆ operator bool()

lldb_private::CommandAlias::operator bool ( ) const
inlineexplicit

◆ SetHelp()

void CommandAlias::SetHelp ( llvm::StringRef  str)
overridevirtual

◆ SetHelpLong()

void CommandAlias::SetHelpLong ( llvm::StringRef  str)
overridevirtual

◆ WantsCompletion()

bool CommandAlias::WantsCompletion ( )
overridevirtual

Reimplemented from lldb_private::CommandObject.

Definition at line 110 of file CommandAlias.cpp.

References IsValid().

Referenced by operator bool().

◆ WantsRawCommandString()

bool CommandAlias::WantsRawCommandString ( )
overridevirtual

Implements lldb_private::CommandObject.

Definition at line 104 of file CommandAlias.cpp.

References IsValid().

Referenced by operator bool().


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