1 //===-- BreakpointID.h ------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_BreakpointID_h_
11 #define liblldb_BreakpointID_h_
15 // Other libraries and framework includes
18 #include "lldb/lldb-private.h"
20 namespace lldb_private {
22 //----------------------------------------------------------------------
24 //----------------------------------------------------------------------
30 BreakpointID (lldb::break_id_t bp_id = LLDB_INVALID_BREAK_ID,
31 lldb::break_id_t loc_id = LLDB_INVALID_BREAK_ID);
49 SetID (lldb::break_id_t bp_id, lldb::break_id_t loc_id)
52 m_location_id = loc_id;
56 SetBreakpointID (lldb::break_id_t bp_id)
62 SetBreakpointLocationID (lldb::break_id_t loc_id)
64 m_location_id = loc_id;
68 GetDescription (Stream *s, lldb::DescriptionLevel level);
71 IsRangeIdentifier (const char *str);
74 IsValidIDExpression (const char *str);
76 static const char *g_range_specifiers[];
78 //------------------------------------------------------------------
79 /// Takes an input string containing the description of a breakpoint or breakpoint and location
80 /// and returns the breakpoint ID and the breakpoint location id.
83 /// A string containing JUST the breakpoint description.
84 /// @param[out] break_id
85 /// This is the break id.
86 /// @param[out] break_loc_id
87 /// This is breakpoint location id, or LLDB_INVALID_BREAK_ID is no location was specified.
89 /// \b true if the call was able to extract a breakpoint location from the string. \b false otherwise.
90 //------------------------------------------------------------------
92 ParseCanonicalReference (const char *input, lldb::break_id_t *break_id, lldb::break_id_t *break_loc_id);
95 //------------------------------------------------------------------
96 /// Takes a breakpoint ID and the breakpoint location id and returns
97 /// a string containing the canonical description for the breakpoint
98 /// or breakpoint location.
100 /// @param[out] break_id
101 /// This is the break id.
103 /// @param[out] break_loc_id
104 /// This is breakpoint location id, or LLDB_INVALID_BREAK_ID is no
105 /// location is to be specified.
106 //------------------------------------------------------------------
108 GetCanonicalReference (Stream *s, lldb::break_id_t break_id, lldb::break_id_t break_loc_id);
111 lldb::break_id_t m_break_id;
112 lldb::break_id_t m_location_id;
115 } // namespace lldb_private
117 #endif // liblldb_BreakpointID_h_