[Lldb-commits] [lldb] [lldb-dap] Refactoring lldb-dap to support running in a server mode, allowing multiple connections. (PR #114881)

John Harrison via lldb-commits lldb-commits at lists.llvm.org
Tue Nov 5 17:02:55 PST 2024


================
@@ -9,21 +9,28 @@
 #ifndef LLDB_TOOLS_LLDB_DAP_BREAKPOINTBASE_H
 #define LLDB_TOOLS_LLDB_DAP_BREAKPOINTBASE_H
 
-#include "llvm/Support/JSON.h"
 #include <string>
 
+#include "llvm/Support/JSON.h"
+
+#include "DAPForward.h"
+
 namespace lldb_dap {
 
 struct BreakpointBase {
+  // Associated DAP session.
+  DAP *dap;
 
   // An optional expression for conditional breakpoints.
   std::string condition;
   // An optional expression that controls how many hits of the breakpoint are
   // ignored. The backend is expected to interpret the expression as needed
   std::string hitCondition;
 
+  BreakpointBase(DAP *d) : dap(d) {}
+  BreakpointBase(DAP *d, const llvm::json::Object &obj);
----------------
ashgti wrote:

I initially used `DAP&` but I couldn't copy the a Breakpoint as a result. I switched from the pointer to a reference and corrected usage of the breakpoint types to make sure we either construct entries in place or move them correctly.

https://github.com/llvm/llvm-project/pull/114881


More information about the lldb-commits mailing list