LLDB API Documentation

- Main Page
- Namespaces
- Classes
- Files

- File List

SBTypeCategory.h
Go to the documentation of this file.
1 //===-- SBTypeCategory.h --------------------------------------------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #ifndef LLDB_SBTypeCategory_h_
11 #define LLDB_SBTypeCategory_h_
12
13 #include "lldb/API/SBDefines.h"
14
15 namespace lldb {
16
17 class SBTypeCategory
18 {
19 public:
20
21 SBTypeCategory();
22
23 SBTypeCategory (const lldb::SBTypeCategory &rhs);
24
25 ~SBTypeCategory ();
26
27 bool
28 IsValid() const;
29
30 bool
31 GetEnabled ();
32
33 void
34 SetEnabled (bool);
35
36 const char*
37 GetName();
38
39 bool
40 GetDescription (lldb::SBStream &description,
41 lldb::DescriptionLevel description_level);
42
43 uint32_t
44 GetNumFormats ();
45
46 uint32_t
47 GetNumSummaries ();
48
49 uint32_t
50 GetNumFilters ();
51
52 #ifndef LLDB_DISABLE_PYTHON
53 uint32_t
54 GetNumSynthetics ();
55 #endif
56
57 SBTypeNameSpecifier
58 GetTypeNameSpecifierForFilterAtIndex (uint32_t);
59
60 SBTypeNameSpecifier
61 GetTypeNameSpecifierForFormatAtIndex (uint32_t);
62
63 SBTypeNameSpecifier
64 GetTypeNameSpecifierForSummaryAtIndex (uint32_t);
65
66 #ifndef LLDB_DISABLE_PYTHON
67 SBTypeNameSpecifier
68 GetTypeNameSpecifierForSyntheticAtIndex (uint32_t);
69 #endif
70
71 SBTypeFilter
72 GetFilterForType (SBTypeNameSpecifier);
73
74 SBTypeFormat
75 GetFormatForType (SBTypeNameSpecifier);
76
77 #ifndef LLDB_DISABLE_PYTHON
78 SBTypeSummary
79 GetSummaryForType (SBTypeNameSpecifier);
80 #endif
81
82 #ifndef LLDB_DISABLE_PYTHON
83 SBTypeSynthetic
84 GetSyntheticForType (SBTypeNameSpecifier);
85 #endif
86
87 #ifndef LLDB_DISABLE_PYTHON
88 SBTypeFilter
89 GetFilterAtIndex (uint32_t);
90 #endif
91
92 SBTypeFormat
93 GetFormatAtIndex (uint32_t);
94
95 #ifndef LLDB_DISABLE_PYTHON
96 SBTypeSummary
97 GetSummaryAtIndex (uint32_t);
98 #endif
99
100 #ifndef LLDB_DISABLE_PYTHON
101 SBTypeSynthetic
102 GetSyntheticAtIndex (uint32_t);
103 #endif
104
105 bool
106 AddTypeFormat (SBTypeNameSpecifier,
107 SBTypeFormat);
108
109 bool
110 DeleteTypeFormat (SBTypeNameSpecifier);
111
112 #ifndef LLDB_DISABLE_PYTHON
113 bool
114 AddTypeSummary (SBTypeNameSpecifier,
115 SBTypeSummary);
116 #endif
117
118 bool
119 DeleteTypeSummary (SBTypeNameSpecifier);
120
121 bool
122 AddTypeFilter (SBTypeNameSpecifier,
123 SBTypeFilter);
124
125 bool
126 DeleteTypeFilter (SBTypeNameSpecifier);
127
128 #ifndef LLDB_DISABLE_PYTHON
129 bool
130 AddTypeSynthetic (SBTypeNameSpecifier,
131 SBTypeSynthetic);
132
133 bool
134 DeleteTypeSynthetic (SBTypeNameSpecifier);
135 #endif
136
137 lldb::SBTypeCategory &
138 operator = (const lldb::SBTypeCategory &rhs);
139
140 bool
141 operator == (lldb::SBTypeCategory &rhs);
142
143 bool
144 operator != (lldb::SBTypeCategory &rhs);
145
146 protected:
147 friend class SBDebugger;
148
149 lldb::TypeCategoryImplSP
150 GetSP ();
151
152 void
153 SetSP (const lldb::TypeCategoryImplSP &typecategory_impl_sp);
154
155 TypeCategoryImplSP m_opaque_sp;
156
157 SBTypeCategory (const lldb::TypeCategoryImplSP &);
158
159 SBTypeCategory (const char*);
160
161 bool
162 IsDefaultCategory();
163
164 };
165
166 } // namespace lldb
167
168 #endif // LLDB_SBTypeCategory_h_