LLDB mainline
SBBreakpointLocation.h
Go to the documentation of this file.
1//===-- SBBreakpointLocation.h ----------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_API_SBBREAKPOINTLOCATION_H
10#define LLDB_API_SBBREAKPOINTLOCATION_H
11
13#include "lldb/API/SBDefines.h"
14
15namespace lldb_private {
16namespace python {
17class SWIGBridge;
18}
19namespace lua {
20class SWIGBridge;
21}
22} // namespace lldb_private
23
24namespace lldb {
25
28
29public:
31
33
35
38
40
41 explicit operator bool() const;
42
43 bool IsValid() const;
44
46
48
49 void SetEnabled(bool enabled);
50
51 bool IsEnabled();
52
53 uint32_t GetHitCount();
54
55 uint32_t GetIgnoreCount();
56
57 void SetIgnoreCount(uint32_t n);
58
59 void SetCondition(const char *condition);
60
61 const char *GetCondition();
62
63 void SetAutoContinue(bool auto_continue);
64
65 bool GetAutoContinue();
66
67#ifndef SWIG
68 void SetCallback(SBBreakpointHitCallback callback, void *baton);
69#endif
70
71 void SetScriptCallbackFunction(const char *callback_function_name);
72
73 SBError SetScriptCallbackFunction(const char *callback_function_name,
74 lldb::SBStructuredData &extra_args);
75
76 SBError SetScriptCallbackBody(const char *script_body_text);
77
79
81
82 void SetThreadID(lldb::tid_t sb_thread_id);
83
85
86 void SetThreadIndex(uint32_t index);
87
88 uint32_t GetThreadIndex() const;
89
90 void SetThreadName(const char *thread_name);
91
92 const char *GetThreadName() const;
93
94 void SetQueueName(const char *queue_name);
95
96 const char *GetQueueName() const;
97
98 bool IsResolved();
99
100 bool GetDescription(lldb::SBStream &description, DescriptionLevel level);
101
103
104protected:
105 friend class lldb_private::python::SWIGBridge;
108
109private:
110 friend class SBBreakpoint;
112
113 void SetLocation(const lldb::BreakpointLocationSP &break_loc_sp);
115
117};
118
119} // namespace lldb
120
121#endif // LLDB_API_SBBREAKPOINTLOCATION_H
#define LLDB_API
Definition SBDefines.h:28
void SetCondition(const char *condition)
void SetCallback(SBBreakpointHitCallback callback, void *baton)
void SetQueueName(const char *queue_name)
bool GetCommandLineCommands(lldb::SBStringList &commands)
void SetLocation(const lldb::BreakpointLocationSP &break_loc_sp)
void SetScriptCallbackFunction(const char *callback_function_name)
lldb::BreakpointLocationWP m_opaque_wp
void SetCommandLineCommands(lldb::SBStringList &commands)
SBError SetScriptCallbackBody(const char *script_body_text)
bool GetDescription(lldb::SBStream &description, DescriptionLevel level)
const lldb::SBBreakpointLocation & operator=(const lldb::SBBreakpointLocation &rhs)
void SetThreadID(lldb::tid_t sb_thread_id)
void SetAutoContinue(bool auto_continue)
BreakpointLocationSP GetSP() const
void SetThreadName(const char *thread_name)
A class that represents a running process on the host machine.
std::weak_ptr< lldb_private::BreakpointLocation > BreakpointLocationWP
std::shared_ptr< lldb_private::BreakpointLocation > BreakpointLocationSP
DescriptionLevel
Description levels for "void GetDescription(Stream *, DescriptionLevel)" calls.
int32_t break_id_t
Definition lldb-types.h:86
bool(* SBBreakpointHitCallback)(void *baton, lldb::SBProcess &process, lldb::SBThread &thread, lldb::SBBreakpointLocation &location)
Definition SBDefines.h:141
uint64_t addr_t
Definition lldb-types.h:80
uint64_t tid_t
Definition lldb-types.h:84