Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:42:41

0001 //===-- SBBreakpointName.h --------------------------------------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 
0009 #ifndef LLDB_API_SBBREAKPOINTNAME_H
0010 #define LLDB_API_SBBREAKPOINTNAME_H
0011 
0012 #include "lldb/API/SBDefines.h"
0013 
0014 class SBBreakpointNameImpl;
0015 
0016 namespace lldb {
0017 
0018 class LLDB_API SBBreakpointName {
0019 public:
0020   SBBreakpointName();
0021   
0022   SBBreakpointName(SBTarget &target, const char *name);
0023   
0024   SBBreakpointName(SBBreakpoint &bkpt, const char *name);
0025 
0026   SBBreakpointName(const lldb::SBBreakpointName &rhs);
0027 
0028   ~SBBreakpointName();
0029 
0030   const lldb::SBBreakpointName &operator=(const lldb::SBBreakpointName &rhs);
0031 
0032   // Tests to see if the opaque breakpoint object in this object matches the
0033   // opaque breakpoint object in "rhs".
0034   bool operator==(const lldb::SBBreakpointName &rhs);
0035 
0036   bool operator!=(const lldb::SBBreakpointName &rhs);
0037 
0038   explicit operator bool() const;
0039 
0040   bool IsValid() const;
0041   
0042   const char *GetName() const;
0043 
0044   void SetEnabled(bool enable);
0045 
0046   bool IsEnabled();
0047 
0048   void SetOneShot(bool one_shot);
0049 
0050   bool IsOneShot() const;
0051 
0052   void SetIgnoreCount(uint32_t count);
0053 
0054   uint32_t GetIgnoreCount() const;
0055 
0056   void SetCondition(const char *condition);
0057 
0058   const char *GetCondition();
0059 
0060   void SetAutoContinue(bool auto_continue);
0061 
0062   bool GetAutoContinue();
0063 
0064   void SetThreadID(lldb::tid_t sb_thread_id);
0065 
0066   lldb::tid_t GetThreadID();
0067 
0068   void SetThreadIndex(uint32_t index);
0069 
0070   uint32_t GetThreadIndex() const;
0071 
0072   void SetThreadName(const char *thread_name);
0073 
0074   const char *GetThreadName() const;
0075 
0076   void SetQueueName(const char *queue_name);
0077 
0078   const char *GetQueueName() const;
0079 
0080 #ifndef SWIG
0081   void SetCallback(SBBreakpointHitCallback callback, void *baton);
0082 #endif
0083 
0084   void SetScriptCallbackFunction(const char *callback_function_name);
0085 
0086   SBError SetScriptCallbackFunction(const char *callback_function_name,
0087                                     SBStructuredData &extra_args);
0088 
0089   void SetCommandLineCommands(lldb::SBStringList &commands);
0090 
0091   bool GetCommandLineCommands(lldb::SBStringList &commands);
0092 
0093   SBError SetScriptCallbackBody(const char *script_body_text);
0094   
0095   const char *GetHelpString() const;
0096   void SetHelpString(const char *help_string);
0097   
0098   bool GetAllowList() const;
0099   void SetAllowList(bool value);
0100     
0101   bool GetAllowDelete();
0102   void SetAllowDelete(bool value);
0103     
0104   bool GetAllowDisable();
0105   void SetAllowDisable(bool value);
0106 
0107   bool GetDescription(lldb::SBStream &description);
0108 
0109 private:
0110   friend class SBTarget;
0111   
0112   lldb_private::BreakpointName *GetBreakpointName() const;
0113   void UpdateName(lldb_private::BreakpointName &bp_name);
0114 
0115   std::unique_ptr<SBBreakpointNameImpl> m_impl_up;
0116 };
0117 
0118 } // namespace lldb
0119 
0120 #endif // LLDB_API_SBBREAKPOINTNAME_H