aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
diff options
context:
space:
mode:
authorSiger Yang <sigeryeung@gmail.com>2021-07-04 19:38:12 -0300
committerPedro Tammela <pctammela@gmail.com>2021-07-07 14:51:02 -0300
commite81ba283131cf76ae62fa9b601a24d080578efaa (patch)
tree0939a8b3fcd96a847409c32bec8a59f8821e0c56 /lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
parent3ebfeb258698db82b7525cfaa1efd04db93d72ba (diff)
downloadllvm-e81ba283131cf76ae62fa9b601a24d080578efaa.zip
llvm-e81ba283131cf76ae62fa9b601a24d080578efaa.tar.gz
llvm-e81ba283131cf76ae62fa9b601a24d080578efaa.tar.bz2
[lldb/lua] Add scripted watchpoints for Lua
Add support for Lua scripted watchpoints, with basic tests. Differential Revision: https://reviews.llvm.org/D105034
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h')
-rw-r--r--lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h b/lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
index a6908d2..5eeac56 100644
--- a/lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
+++ b/lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
@@ -11,6 +11,7 @@
#include <vector>
+#include "lldb/Breakpoint/WatchpointOptions.h"
#include "lldb/Core/StructuredDataImpl.h"
#include "lldb/Interpreter/ScriptInterpreter.h"
#include "lldb/Utility/Status.h"
@@ -63,6 +64,10 @@ public:
lldb::user_id_t break_id,
lldb::user_id_t break_loc_id);
+ static bool WatchpointCallbackFunction(void *baton,
+ StoppointCallbackContext *context,
+ lldb::user_id_t watch_id);
+
// PluginInterface protocol
lldb_private::ConstString GetPluginName() override;
@@ -77,9 +82,16 @@ public:
std::vector<std::reference_wrapper<BreakpointOptions>> &bp_options_vec,
CommandReturnObject &result) override;
+ void
+ CollectDataForWatchpointCommandCallback(WatchpointOptions *wp_options,
+ CommandReturnObject &result) override;
+
Status SetBreakpointCommandCallback(BreakpointOptions &bp_options,
const char *command_body_text) override;
+ void SetWatchpointCommandCallback(WatchpointOptions *wp_options,
+ const char *command_body_text) override;
+
Status SetBreakpointCommandCallbackFunction(
BreakpointOptions &bp_options, const char *function_name,
StructuredData::ObjectSP extra_args_sp) override;
@@ -91,6 +103,10 @@ private:
Status RegisterBreakpointCallback(BreakpointOptions &bp_options,
const char *command_body_text,
StructuredData::ObjectSP extra_args_sp);
+
+ Status RegisterWatchpointCallback(WatchpointOptions *wp_options,
+ const char *command_body_text,
+ StructuredData::ObjectSP extra_args_sp);
};
} // namespace lldb_private