diff options
Diffstat (limited to 'lldb/tools/lldb-mi/MICmdCmdExec.h')
-rw-r--r-- | lldb/tools/lldb-mi/MICmdCmdExec.h | 493 |
1 files changed, 251 insertions, 242 deletions
diff --git a/lldb/tools/lldb-mi/MICmdCmdExec.h b/lldb/tools/lldb-mi/MICmdCmdExec.h index c131132..46e7783 100644 --- a/lldb/tools/lldb-mi/MICmdCmdExec.h +++ b/lldb/tools/lldb-mi/MICmdCmdExec.h @@ -18,13 +18,16 @@ // CMICmdCmdExecArguments interface. // CMICmdCmdExecAbort interface. // -// To implement new MI commands derive a new command class from the command base -// class. To enable the new command for interpretation add the new command class +// To implement new MI commands derive a new command class from the +// command base +// class. To enable the new command for interpretation add the new +// command class // to the command factory. The files of relevance are: // MICmdCommands.cpp // MICmdBase.h / .cpp // MICmdCmd.h / .cpp -// For an introduction to adding a new command see CMICmdCmdSupportInfoMiCmdQuery +// For an introduction to adding a new command see +// CMICmdCmdSupportInfoMiCmdQuery // command class as an example. #pragma once @@ -35,293 +38,299 @@ // In-house headers: #include "MICmdBase.h" -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-run". //-- -class CMICmdCmdExecRun : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecRun(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecRun() override; - - // Attributes: - private: - const CMIUtilString m_constStrArgStart; // StopAtEntry - run to first instruction or main() if specified - lldb::SBCommandReturnObject m_lldbResult; +class CMICmdCmdExecRun : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecRun(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecRun() override; + + // Attributes: +private: + const CMIUtilString m_constStrArgStart; // StopAtEntry - run to first + // instruction or main() if specified + lldb::SBCommandReturnObject m_lldbResult; }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-continue". //-- -class CMICmdCmdExecContinue : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecContinue(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecContinue() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; +class CMICmdCmdExecContinue : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecContinue(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecContinue() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-next". //-- -class CMICmdCmdExecNext : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecNext(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecNext() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; - const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option +class CMICmdCmdExecNext : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecNext(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecNext() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; + const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but + // Eclipse gives this option }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-step". //-- -class CMICmdCmdExecStep : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecStep(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecStep() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; - const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option +class CMICmdCmdExecStep : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecStep(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecStep() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; + const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but + // Eclipse gives this option }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-next-instruction". //-- -class CMICmdCmdExecNextInstruction : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecNextInstruction(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecNextInstruction() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; - const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option +class CMICmdCmdExecNextInstruction : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecNextInstruction(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecNextInstruction() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; + const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but + // Eclipse gives this option }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-step-instruction". //-- -class CMICmdCmdExecStepInstruction : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecStepInstruction(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecStepInstruction() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; - const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option +class CMICmdCmdExecStepInstruction : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecStepInstruction(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecStepInstruction() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; + const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but + // Eclipse gives this option }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-finish". //-- -class CMICmdCmdExecFinish : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecFinish(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecFinish() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; +class CMICmdCmdExecFinish : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecFinish(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecFinish() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; }; // CODETAG_DEBUG_SESSION_RUNNING_PROG_RECEIVED_SIGINT_PAUSE_PROGRAM -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-interrupt". -// Gotchas: Using Eclipse this command is injected into the command system when a +// Gotchas: Using Eclipse this command is injected into the command system when +// a // SIGINT signal is received while running an inferior program. //-- -class CMICmdCmdExecInterrupt : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecInterrupt(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecInterrupt() override; - - // Attributes: - private: - lldb::SBCommandReturnObject m_lldbResult; +class CMICmdCmdExecInterrupt : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecInterrupt(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecInterrupt() override; + + // Attributes: +private: + lldb::SBCommandReturnObject m_lldbResult; }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-arguments". //-- -class CMICmdCmdExecArguments : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecArguments(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - bool ParseArgs() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecArguments() override; - - // Attributes: - private: - const CMIUtilString m_constStrArgArguments; +class CMICmdCmdExecArguments : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecArguments(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + bool ParseArgs() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecArguments() override; + + // Attributes: +private: + const CMIUtilString m_constStrArgArguments; }; -//++ ============================================================================ +//++ +//============================================================================ // Details: MI command class. MI commands derived from the command base class. // *this class implements MI command "exec-abort". //-- -class CMICmdCmdExecAbort : public CMICmdBase -{ - // Statics: - public: - // Required by the CMICmdFactory when registering *this command - static CMICmdBase *CreateSelf(); - - // Methods: - public: - /* ctor */ CMICmdCmdExecAbort(); - - // Overridden: - public: - // From CMICmdInvoker::ICmd - bool Execute() override; - bool Acknowledge() override; - // From CMICmnBase - /* dtor */ ~CMICmdCmdExecAbort() override; +class CMICmdCmdExecAbort : public CMICmdBase { + // Statics: +public: + // Required by the CMICmdFactory when registering *this command + static CMICmdBase *CreateSelf(); + + // Methods: +public: + /* ctor */ CMICmdCmdExecAbort(); + + // Overridden: +public: + // From CMICmdInvoker::ICmd + bool Execute() override; + bool Acknowledge() override; + // From CMICmnBase + /* dtor */ ~CMICmdCmdExecAbort() override; }; |