1//===-- SWIG interface for SBBreakpointName.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
9namespace lldb {
10%feature("docstring",
11"Represents a breakpoint name registered in a given SBTarget.
12
13Breakpoint names provide a way to act on groups of breakpoints.  When you add a
14name to a group of breakpoints, you can then use the name in all the command
15line lldb commands for that name.  You can also configure the SBBreakpointName
16options and those options will be propagated to any SBBreakpoints currently
17using that name.  Adding a name to a breakpoint will also apply any of the
18set options to that breakpoint.
19
20You can also set permissions on a breakpoint name to disable listing, deleting
21and disabling breakpoints.  That will disallow the given operation for breakpoints
22except when the breakpoint is mentioned by ID.  So for instance deleting all the
23breakpoints won't delete breakpoints so marked."
24) SBBreakpointName;
25class LLDB_API SBBreakpointName {
26public:
27  SBBreakpointName();
28
29  SBBreakpointName(SBTarget &target, const char *name);
30
31  SBBreakpointName(SBBreakpoint &bkpt, const char *name);
32
33  SBBreakpointName(const lldb::SBBreakpointName &rhs);
34
35  ~SBBreakpointName();
36
37  // Tests to see if the opaque breakpoint object in this object matches the
38  // opaque breakpoint object in "rhs".
39  bool operator==(const lldb::SBBreakpointName &rhs);
40
41  bool operator!=(const lldb::SBBreakpointName &rhs);
42
43  explicit operator bool() const;
44
45  bool IsValid() const;
46
47  const char *GetName() const;
48
49  void SetEnabled(bool enable);
50
51  bool IsEnabled();
52
53  void SetOneShot(bool one_shot);
54
55  bool IsOneShot() const;
56
57  void SetIgnoreCount(uint32_t count);
58
59  uint32_t GetIgnoreCount() const;
60
61  void SetCondition(const char *condition);
62
63  const char *GetCondition();
64
65  void SetAutoContinue(bool auto_continue);
66
67  bool GetAutoContinue();
68
69  void SetThreadID(lldb::tid_t sb_thread_id);
70
71  lldb::tid_t GetThreadID();
72
73  void SetThreadIndex(uint32_t index);
74
75  uint32_t GetThreadIndex() const;
76
77  void SetThreadName(const char *thread_name);
78
79  const char *GetThreadName() const;
80
81  void SetQueueName(const char *queue_name);
82
83  const char *GetQueueName() const;
84
85  void SetScriptCallbackFunction(const char *callback_function_name);
86
87  SBError
88  SetScriptCallbackFunction (const char *callback_function_name,
89                             SBStructuredData &extra_args);
90
91  void SetCommandLineCommands(SBStringList &commands);
92
93  bool GetCommandLineCommands(SBStringList &commands);
94
95  SBError SetScriptCallbackBody(const char *script_body_text);
96
97  const char *GetHelpString() const;
98  void SetHelpString(const char *help_string);
99
100  bool GetAllowList() const;
101  void SetAllowList(bool value);
102
103  bool GetAllowDelete();
104  void SetAllowDelete(bool value);
105
106  bool GetAllowDisable();
107  void SetAllowDisable(bool value);
108
109  bool GetDescription(lldb::SBStream &description);
110
111  STRING_EXTENSION(SBBreakpointName)
112};
113
114} // namespace lldb
115
116