diff options
| author | Johnny Chen <johnny.chen@apple.com> | 2011-09-22 18:04:58 +0000 |
|---|---|---|
| committer | Johnny Chen <johnny.chen@apple.com> | 2011-09-22 18:04:58 +0000 |
| commit | f04ee930a039e5710ca44997f14ddfb96a0ba7e0 (patch) | |
| tree | d5fe7a4b782bbc837f122cdf579caa1914414c9e /lldb/source/Commands/CommandObjectWatchpoint.h | |
| parent | 0542df51982242e98a0f320e8277cad13e201251 (diff) | |
| download | bcm5719-llvm-f04ee930a039e5710ca44997f14ddfb96a0ba7e0.tar.gz bcm5719-llvm-f04ee930a039e5710ca44997f14ddfb96a0ba7e0.zip | |
Add initial implementation of watchpoint commands for list, enable, disable, and delete.
Test cases to be added later.
llvm-svn: 140322
Diffstat (limited to 'lldb/source/Commands/CommandObjectWatchpoint.h')
| -rw-r--r-- | lldb/source/Commands/CommandObjectWatchpoint.h | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/lldb/source/Commands/CommandObjectWatchpoint.h b/lldb/source/Commands/CommandObjectWatchpoint.h new file mode 100644 index 00000000000..fd5beedd5e0 --- /dev/null +++ b/lldb/source/Commands/CommandObjectWatchpoint.h @@ -0,0 +1,145 @@ +//===-- CommandObjectWatchpoint.h -------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#ifndef liblldb_CommandObjectWatchpoint_h_ +#define liblldb_CommandObjectWatchpoint_h_ + +// C Includes +// C++ Includes + +// Other libraries and framework includes +// Project includes +#include "lldb/Interpreter/CommandObjectMultiword.h" +#include "lldb/Interpreter/Options.h" + +namespace lldb_private { + +//------------------------------------------------------------------------- +// CommandObjectMultiwordWatchpoint +//------------------------------------------------------------------------- + +class CommandObjectMultiwordWatchpoint : public CommandObjectMultiword +{ +public: + CommandObjectMultiwordWatchpoint (CommandInterpreter &interpreter); + + virtual + ~CommandObjectMultiwordWatchpoint (); +}; + +//------------------------------------------------------------------------- +// CommandObjectWatchpointList +//------------------------------------------------------------------------- + +class CommandObjectWatchpointList : public CommandObject +{ +public: + CommandObjectWatchpointList (CommandInterpreter &interpreter); + + virtual + ~CommandObjectWatchpointList (); + + virtual bool + Execute (Args& command, + CommandReturnObject &result); + + virtual Options * + GetOptions (); + + class CommandOptions : public Options + { + public: + + CommandOptions (CommandInterpreter &interpreter); + + virtual + ~CommandOptions (); + + virtual Error + SetOptionValue (uint32_t option_idx, const char *option_arg); + + void + OptionParsingStarting (); + + const OptionDefinition * + GetDefinitions (); + + // Options table: Required for subclasses of Options. + + static OptionDefinition g_option_table[]; + + // Instance variables to hold the values for command options. + + lldb::DescriptionLevel m_level; + }; + +private: + CommandOptions m_options; +}; + +//------------------------------------------------------------------------- +// CommandObjectWatchpointEnable +//------------------------------------------------------------------------- + +class CommandObjectWatchpointEnable : public CommandObject +{ +public: + CommandObjectWatchpointEnable (CommandInterpreter &interpreter); + + virtual + ~CommandObjectWatchpointEnable (); + + virtual bool + Execute (Args& command, + CommandReturnObject &result); + +private: +}; + +//------------------------------------------------------------------------- +// CommandObjectWatchpointDisable +//------------------------------------------------------------------------- + +class CommandObjectWatchpointDisable : public CommandObject +{ +public: + CommandObjectWatchpointDisable (CommandInterpreter &interpreter); + + virtual + ~CommandObjectWatchpointDisable (); + + virtual bool + Execute (Args& command, + CommandReturnObject &result); + +private: +}; + +//------------------------------------------------------------------------- +// CommandObjectWatchpointDelete +//------------------------------------------------------------------------- + +class CommandObjectWatchpointDelete : public CommandObject +{ +public: + CommandObjectWatchpointDelete (CommandInterpreter &interpreter); + + virtual + ~CommandObjectWatchpointDelete (); + + virtual bool + Execute (Args& command, + CommandReturnObject &result); + +private: +}; + +} // namespace lldb_private + +#endif // liblldb_CommandObjectWatchpoint_h_ |

