LLDB  mainline
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::CommandObjectTraceProxy Class Referenceabstract

This class works by delegating the logic to the actual trace plug-in that can support the current process. More...

#include <CommandObjectTrace.h>

Inheritance diagram for lldb_private::CommandObjectTraceProxy:
Inheritance graph
Collaboration diagram for lldb_private::CommandObjectTraceProxy:
Collaboration graph

Public Member Functions

 CommandObjectTraceProxy (bool live_debug_session_only, CommandInterpreter &interpreter, const char *name, const char *help=nullptr, const char *syntax=nullptr, uint32_t flags=0)
- Public Member Functions inherited from lldb_private::CommandObjectProxy
 CommandObjectProxy (CommandInterpreter &interpreter, const char *name, const char *help=nullptr, const char *syntax=nullptr, uint32_t flags=0)
 ~CommandObjectProxy () override
llvm::StringRef GetSyntax () override
llvm::StringRef GetHelp () override
llvm::StringRef GetHelpLong () override
bool IsRemovable () const override
bool IsMultiwordObject () override
CommandObjectMultiwordGetAsMultiwordCommand () override
void GenerateHelpText (Stream &result) override
lldb::CommandObjectSP GetSubcommandSP (llvm::StringRef sub_cmd, StringList *matches=nullptr) override
CommandObjectGetSubcommandObject (llvm::StringRef sub_cmd, StringList *matches=nullptr) override
bool LoadSubCommand (llvm::StringRef cmd_name, const lldb::CommandObjectSP &command_obj) override
bool WantsRawCommandString () override
bool WantsCompletion () override
OptionsGetOptions () 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. More...
void HandleArgumentCompletion (CompletionRequest &request, OptionElementVector &opt_element_vector) override
 The input array contains a parsed version of the line. More...
llvm::Optional< std::stringGetRepeatCommand (Args &current_command_args, uint32_t index) override
 Get the command that appropriate for a "repeat" of the current command. More...
bool Execute (const char *args_string, CommandReturnObject &result) override
- 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 ()=default
CommandInterpreterGetCommandInterpreter ()
DebuggerGetDebugger ()
llvm::StringRef GetCommandName () const
virtual void SetHelp (llvm::StringRef str)
virtual void SetHelpLong (llvm::StringRef str)
void SetSyntax (llvm::StringRef str)
bool IsUserCommand ()
void SetIsUserCommand (bool is_user)
virtual bool IsAlias ()
virtual bool IsDashDashCommand ()
virtual lldb::CommandObjectSP GetSubcommandSPExact (llvm::StringRef sub_cmd)
void FormatLongHelpText (Stream &output_strm, llvm::StringRef long_help)
void GenerateHelpText (CommandReturnObject &result)
virtual llvm::Error LoadUserSubcommand (llvm::StringRef cmd_name, const lldb::CommandObjectSP &command_obj, bool can_replace)
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...
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

virtual lldb::CommandObjectSP GetDelegateCommand (Trace &trace)=0
llvm::Expected< lldb::CommandObjectSP > DoGetProxyCommandObject ()
CommandObjectGetProxyCommandObject () override
- 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)
TargetGetSelectedTarget ()
TargetGetDummyTarget ()
ThreadGetDefaultThread ()
bool CheckRequirements (CommandReturnObject &result)
 Check the command to make sure anything required by this command is available. More...
void Cleanup ()

Private Member Functions

llvm::StringRef GetUnsupportedError () override

Private Attributes

bool m_live_debug_session_only
lldb::CommandObjectSP m_delegate_sp
std::string m_delegate_error

Additional Inherited Members

- Public Types inherited from lldb_private::CommandObject
typedef llvm::StringRef() ArgumentHelpCallbackFunction()
typedef std::vector< CommandArgumentDataCommandArgumentEntry
typedef std::map< std::string, lldb::CommandObjectSP > CommandMap
- 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 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 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
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
bool m_is_user_command = false

Detailed Description

This class works by delegating the logic to the actual trace plug-in that can support the current process.

Definition at line 25 of file CommandObjectTrace.h.

Constructor & Destructor Documentation

◆ CommandObjectTraceProxy()

lldb_private::CommandObjectTraceProxy::CommandObjectTraceProxy ( bool  live_debug_session_only,
CommandInterpreter interpreter,
const char *  name,
const char *  help = nullptr,
const char *  syntax = nullptr,
uint32_t  flags = 0 

Definition at line 27 of file CommandObjectTrace.h.

Member Function Documentation

◆ DoGetProxyCommandObject()

Expected< CommandObjectSP > CommandObjectTraceProxy::DoGetProxyCommandObject ( )

◆ GetDelegateCommand()

virtual lldb::CommandObjectSP lldb_private::CommandObjectTraceProxy::GetDelegateCommand ( Trace trace)
protectedpure virtual

◆ GetProxyCommandObject()

CommandObject * CommandObjectTraceProxy::GetProxyCommandObject ( )

◆ GetUnsupportedError()

llvm::StringRef lldb_private::CommandObjectTraceProxy::GetUnsupportedError ( )
An error message to be displayed when the command is executed (i.e. Execute is called) and GetProxyCommandObject returned null.

Reimplemented from lldb_private::CommandObjectProxy.

Definition at line 42 of file CommandObjectTrace.h.

References m_delegate_error.

Member Data Documentation

◆ m_delegate_error

std::string lldb_private::CommandObjectTraceProxy::m_delegate_error

Definition at line 46 of file CommandObjectTrace.h.

Referenced by GetProxyCommandObject(), and GetUnsupportedError().

◆ m_delegate_sp

lldb::CommandObjectSP lldb_private::CommandObjectTraceProxy::m_delegate_sp

Definition at line 45 of file CommandObjectTrace.h.

Referenced by GetProxyCommandObject().

◆ m_live_debug_session_only

bool lldb_private::CommandObjectTraceProxy::m_live_debug_session_only

Definition at line 44 of file CommandObjectTrace.h.

Referenced by DoGetProxyCommandObject().

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