File indexing completed on 2026-05-10 08:42:41
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLDB_API_SBBREAKPOINTLOCATION_H
0010 #define LLDB_API_SBBREAKPOINTLOCATION_H
0011
0012 #include "lldb/API/SBBreakpoint.h"
0013 #include "lldb/API/SBDefines.h"
0014
0015 namespace lldb_private {
0016 namespace python {
0017 class SWIGBridge;
0018 }
0019 namespace lua {
0020 class SWIGBridge;
0021 }
0022 }
0023
0024 namespace lldb {
0025
0026 class LLDB_API SBBreakpointLocation {
0027 public:
0028 SBBreakpointLocation();
0029
0030 SBBreakpointLocation(const lldb::SBBreakpointLocation &rhs);
0031
0032 ~SBBreakpointLocation();
0033
0034 const lldb::SBBreakpointLocation &
0035 operator=(const lldb::SBBreakpointLocation &rhs);
0036
0037 break_id_t GetID();
0038
0039 explicit operator bool() const;
0040
0041 bool IsValid() const;
0042
0043 lldb::SBAddress GetAddress();
0044
0045 lldb::addr_t GetLoadAddress();
0046
0047 void SetEnabled(bool enabled);
0048
0049 bool IsEnabled();
0050
0051 uint32_t GetHitCount();
0052
0053 uint32_t GetIgnoreCount();
0054
0055 void SetIgnoreCount(uint32_t n);
0056
0057 void SetCondition(const char *condition);
0058
0059 const char *GetCondition();
0060
0061 void SetAutoContinue(bool auto_continue);
0062
0063 bool GetAutoContinue();
0064
0065 #ifndef SWIG
0066 void SetCallback(SBBreakpointHitCallback callback, void *baton);
0067 #endif
0068
0069 void SetScriptCallbackFunction(const char *callback_function_name);
0070
0071 SBError SetScriptCallbackFunction(const char *callback_function_name,
0072 lldb::SBStructuredData &extra_args);
0073
0074 SBError SetScriptCallbackBody(const char *script_body_text);
0075
0076 void SetCommandLineCommands(lldb::SBStringList &commands);
0077
0078 bool GetCommandLineCommands(lldb::SBStringList &commands);
0079
0080 void SetThreadID(lldb::tid_t sb_thread_id);
0081
0082 lldb::tid_t GetThreadID();
0083
0084 void SetThreadIndex(uint32_t index);
0085
0086 uint32_t GetThreadIndex() const;
0087
0088 void SetThreadName(const char *thread_name);
0089
0090 const char *GetThreadName() const;
0091
0092 void SetQueueName(const char *queue_name);
0093
0094 const char *GetQueueName() const;
0095
0096 bool IsResolved();
0097
0098 bool GetDescription(lldb::SBStream &description, DescriptionLevel level);
0099
0100 SBBreakpoint GetBreakpoint();
0101
0102 protected:
0103 friend class lldb_private::python::SWIGBridge;
0104 friend class lldb_private::lua::SWIGBridge;
0105 SBBreakpointLocation(const lldb::BreakpointLocationSP &break_loc_sp);
0106
0107 private:
0108 friend class SBBreakpoint;
0109 friend class SBBreakpointCallbackBaton;
0110
0111 void SetLocation(const lldb::BreakpointLocationSP &break_loc_sp);
0112 BreakpointLocationSP GetSP() const;
0113
0114 lldb::BreakpointLocationWP m_opaque_wp;
0115 };
0116
0117 }
0118
0119 #endif