summaryrefslogtreecommitdiffstats
path: root/lldb/source/Commands/CommandObjectWatchpoint.h
diff options
context:
space:
mode:
authorJohnny Chen <johnny.chen@apple.com>2011-09-22 18:04:58 +0000
committerJohnny Chen <johnny.chen@apple.com>2011-09-22 18:04:58 +0000
commitf04ee930a039e5710ca44997f14ddfb96a0ba7e0 (patch)
treed5fe7a4b782bbc837f122cdf579caa1914414c9e /lldb/source/Commands/CommandObjectWatchpoint.h
parent0542df51982242e98a0f320e8277cad13e201251 (diff)
downloadbcm5719-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.h145
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_
OpenPOWER on IntegriCloud