1 //===-- SBReproducer.cpp ----------------------------------------*- 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 #include "SBReproducerPrivate.h"
10 
11 #include "SBReproducerPrivate.h"
12 #include "lldb/API/LLDB.h"
13 #include "lldb/API/SBAddress.h"
14 #include "lldb/API/SBAttachInfo.h"
15 #include "lldb/API/SBBlock.h"
16 #include "lldb/API/SBBreakpoint.h"
17 #include "lldb/API/SBCommandInterpreter.h"
18 #include "lldb/API/SBData.h"
19 #include "lldb/API/SBDebugger.h"
20 #include "lldb/API/SBDeclaration.h"
21 #include "lldb/API/SBError.h"
22 #include "lldb/API/SBFileSpec.h"
23 #include "lldb/API/SBHostOS.h"
24 #include "lldb/API/SBReproducer.h"
25 
26 #include "lldb/Host/FileSystem.h"
27 
28 using namespace lldb;
29 using namespace lldb_private;
30 using namespace lldb_private::repro;
31 
32 static void SetFileHandleRedirect(SBDebugger *, FILE *, bool) {
33   // Do nothing.
34 }
35 
36 static bool GetDefaultArchitectureRedirect(char *arch_name,
37                                            size_t arch_name_len) {
38   // The function is writing to its argument. Without the redirect it would
39   // write into the replay buffer.
40   char buffer[1024];
41   return SBDebugger::GetDefaultArchitecture(buffer, arch_name_len);
42 }
43 
44 SBRegistry::SBRegistry() {
45 
46   // Custom implementation.
47   Register(&invoke<void (SBDebugger::*)(
48                FILE *, bool)>::method<&SBDebugger::SetErrorFileHandle>::doit,
49            &SetFileHandleRedirect);
50   Register(&invoke<void (SBDebugger::*)(
51                FILE *, bool)>::method<&SBDebugger::SetOutputFileHandle>::doit,
52            &SetFileHandleRedirect);
53   Register<bool(char *, size_t)>(static_cast<bool (*)(char *, size_t)>(
54                                      &SBDebugger::GetDefaultArchitecture),
55                                  &GetDefaultArchitectureRedirect);
56 
57   {
58     LLDB_REGISTER_CONSTRUCTOR(SBAddress, ());
59     LLDB_REGISTER_CONSTRUCTOR(SBAddress, (const lldb::SBAddress &));
60     LLDB_REGISTER_CONSTRUCTOR(SBAddress, (lldb::SBSection, lldb::addr_t));
61     LLDB_REGISTER_CONSTRUCTOR(SBAddress, (lldb::addr_t, lldb::SBTarget &));
62     LLDB_REGISTER_METHOD(const lldb::SBAddress &,
63                          SBAddress, operator=,(const lldb::SBAddress &));
64     LLDB_REGISTER_METHOD_CONST(bool, SBAddress, IsValid, ());
65     LLDB_REGISTER_METHOD_CONST(bool, SBAddress, operator bool, ());
66     LLDB_REGISTER_METHOD(void, SBAddress, Clear, ());
67     LLDB_REGISTER_METHOD(void, SBAddress, SetAddress,
68                          (lldb::SBSection, lldb::addr_t));
69     LLDB_REGISTER_METHOD_CONST(lldb::addr_t, SBAddress, GetFileAddress, ());
70     LLDB_REGISTER_METHOD_CONST(lldb::addr_t, SBAddress, GetLoadAddress,
71                                (const lldb::SBTarget &));
72     LLDB_REGISTER_METHOD(void, SBAddress, SetLoadAddress,
73                          (lldb::addr_t, lldb::SBTarget &));
74     LLDB_REGISTER_METHOD(bool, SBAddress, OffsetAddress, (lldb::addr_t));
75     LLDB_REGISTER_METHOD(lldb::SBSection, SBAddress, GetSection, ());
76     LLDB_REGISTER_METHOD(lldb::addr_t, SBAddress, GetOffset, ());
77     LLDB_REGISTER_METHOD(bool, SBAddress, GetDescription, (lldb::SBStream &));
78     LLDB_REGISTER_METHOD(lldb::SBModule, SBAddress, GetModule, ());
79     LLDB_REGISTER_METHOD(lldb::SBSymbolContext, SBAddress, GetSymbolContext,
80                          (uint32_t));
81     LLDB_REGISTER_METHOD(lldb::SBCompileUnit, SBAddress, GetCompileUnit, ());
82     LLDB_REGISTER_METHOD(lldb::SBFunction, SBAddress, GetFunction, ());
83     LLDB_REGISTER_METHOD(lldb::SBBlock, SBAddress, GetBlock, ());
84     LLDB_REGISTER_METHOD(lldb::SBSymbol, SBAddress, GetSymbol, ());
85     LLDB_REGISTER_METHOD(lldb::SBLineEntry, SBAddress, GetLineEntry, ());
86   }
87   {
88     LLDB_REGISTER_CONSTRUCTOR(SBAttachInfo, ());
89     LLDB_REGISTER_CONSTRUCTOR(SBAttachInfo, (lldb::pid_t));
90     LLDB_REGISTER_CONSTRUCTOR(SBAttachInfo, (const char *, bool));
91     LLDB_REGISTER_CONSTRUCTOR(SBAttachInfo, (const char *, bool, bool));
92     LLDB_REGISTER_CONSTRUCTOR(SBAttachInfo, (const lldb::SBAttachInfo &));
93     LLDB_REGISTER_METHOD(lldb::SBAttachInfo &,
94                          SBAttachInfo, operator=,(const lldb::SBAttachInfo &));
95     LLDB_REGISTER_METHOD(lldb::pid_t, SBAttachInfo, GetProcessID, ());
96     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetProcessID, (lldb::pid_t));
97     LLDB_REGISTER_METHOD(uint32_t, SBAttachInfo, GetResumeCount, ());
98     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetResumeCount, (uint32_t));
99     LLDB_REGISTER_METHOD(const char *, SBAttachInfo, GetProcessPluginName, ());
100     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetProcessPluginName,
101                          (const char *));
102     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetExecutable, (const char *));
103     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetExecutable, (lldb::SBFileSpec));
104     LLDB_REGISTER_METHOD(bool, SBAttachInfo, GetWaitForLaunch, ());
105     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetWaitForLaunch, (bool));
106     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetWaitForLaunch, (bool, bool));
107     LLDB_REGISTER_METHOD(bool, SBAttachInfo, GetIgnoreExisting, ());
108     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetIgnoreExisting, (bool));
109     LLDB_REGISTER_METHOD(uint32_t, SBAttachInfo, GetUserID, ());
110     LLDB_REGISTER_METHOD(uint32_t, SBAttachInfo, GetGroupID, ());
111     LLDB_REGISTER_METHOD(bool, SBAttachInfo, UserIDIsValid, ());
112     LLDB_REGISTER_METHOD(bool, SBAttachInfo, GroupIDIsValid, ());
113     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetUserID, (uint32_t));
114     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetGroupID, (uint32_t));
115     LLDB_REGISTER_METHOD(uint32_t, SBAttachInfo, GetEffectiveUserID, ());
116     LLDB_REGISTER_METHOD(uint32_t, SBAttachInfo, GetEffectiveGroupID, ());
117     LLDB_REGISTER_METHOD(bool, SBAttachInfo, EffectiveUserIDIsValid, ());
118     LLDB_REGISTER_METHOD(bool, SBAttachInfo, EffectiveGroupIDIsValid, ());
119     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetEffectiveUserID, (uint32_t));
120     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetEffectiveGroupID, (uint32_t));
121     LLDB_REGISTER_METHOD(lldb::pid_t, SBAttachInfo, GetParentProcessID, ());
122     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetParentProcessID, (lldb::pid_t));
123     LLDB_REGISTER_METHOD(bool, SBAttachInfo, ParentProcessIDIsValid, ());
124     LLDB_REGISTER_METHOD(lldb::SBListener, SBAttachInfo, GetListener, ());
125     LLDB_REGISTER_METHOD(void, SBAttachInfo, SetListener, (lldb::SBListener &));
126   }
127   {
128     LLDB_REGISTER_CONSTRUCTOR(SBBlock, ());
129     LLDB_REGISTER_CONSTRUCTOR(SBBlock, (const lldb::SBBlock &));
130     LLDB_REGISTER_METHOD(const lldb::SBBlock &,
131                          SBBlock, operator=,(const lldb::SBBlock &));
132     LLDB_REGISTER_METHOD_CONST(bool, SBBlock, IsValid, ());
133     LLDB_REGISTER_METHOD_CONST(bool, SBBlock, operator bool, ());
134     LLDB_REGISTER_METHOD_CONST(bool, SBBlock, IsInlined, ());
135     LLDB_REGISTER_METHOD_CONST(const char *, SBBlock, GetInlinedName, ());
136     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBBlock,
137                                GetInlinedCallSiteFile, ());
138     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBlock, GetInlinedCallSiteLine, ());
139     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBlock, GetInlinedCallSiteColumn, ());
140     LLDB_REGISTER_METHOD(lldb::SBBlock, SBBlock, GetParent, ());
141     LLDB_REGISTER_METHOD(lldb::SBBlock, SBBlock, GetContainingInlinedBlock, ());
142     LLDB_REGISTER_METHOD(lldb::SBBlock, SBBlock, GetSibling, ());
143     LLDB_REGISTER_METHOD(lldb::SBBlock, SBBlock, GetFirstChild, ());
144     LLDB_REGISTER_METHOD(bool, SBBlock, GetDescription, (lldb::SBStream &));
145     LLDB_REGISTER_METHOD(uint32_t, SBBlock, GetNumRanges, ());
146     LLDB_REGISTER_METHOD(lldb::SBAddress, SBBlock, GetRangeStartAddress,
147                          (uint32_t));
148     LLDB_REGISTER_METHOD(lldb::SBAddress, SBBlock, GetRangeEndAddress,
149                          (uint32_t));
150     LLDB_REGISTER_METHOD(uint32_t, SBBlock, GetRangeIndexForBlockAddress,
151                          (lldb::SBAddress));
152     LLDB_REGISTER_METHOD(
153         lldb::SBValueList, SBBlock, GetVariables,
154         (lldb::SBFrame &, bool, bool, bool, lldb::DynamicValueType));
155     LLDB_REGISTER_METHOD(lldb::SBValueList, SBBlock, GetVariables,
156                          (lldb::SBTarget &, bool, bool, bool));
157   }
158   {
159     LLDB_REGISTER_CONSTRUCTOR(SBBreakpoint, ());
160     LLDB_REGISTER_CONSTRUCTOR(SBBreakpoint, (const lldb::SBBreakpoint &));
161     LLDB_REGISTER_CONSTRUCTOR(SBBreakpoint, (const lldb::BreakpointSP &));
162     LLDB_REGISTER_METHOD(const lldb::SBBreakpoint &,
163                          SBBreakpoint, operator=,(const lldb::SBBreakpoint &));
164     LLDB_REGISTER_METHOD(bool,
165                          SBBreakpoint, operator==,(const lldb::SBBreakpoint &));
166     LLDB_REGISTER_METHOD(bool,
167                          SBBreakpoint, operator!=,(const lldb::SBBreakpoint &));
168     LLDB_REGISTER_METHOD_CONST(lldb::break_id_t, SBBreakpoint, GetID, ());
169     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpoint, IsValid, ());
170     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpoint, operator bool, ());
171     LLDB_REGISTER_METHOD(void, SBBreakpoint, ClearAllBreakpointSites, ());
172     LLDB_REGISTER_METHOD(lldb::SBBreakpointLocation, SBBreakpoint,
173                          FindLocationByAddress, (lldb::addr_t));
174     LLDB_REGISTER_METHOD(lldb::break_id_t, SBBreakpoint,
175                          FindLocationIDByAddress, (lldb::addr_t));
176     LLDB_REGISTER_METHOD(lldb::SBBreakpointLocation, SBBreakpoint,
177                          FindLocationByID, (lldb::break_id_t));
178     LLDB_REGISTER_METHOD(lldb::SBBreakpointLocation, SBBreakpoint,
179                          GetLocationAtIndex, (uint32_t));
180     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetEnabled, (bool));
181     LLDB_REGISTER_METHOD(bool, SBBreakpoint, IsEnabled, ());
182     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetOneShot, (bool));
183     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpoint, IsOneShot, ());
184     LLDB_REGISTER_METHOD(bool, SBBreakpoint, IsInternal, ());
185     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetIgnoreCount, (uint32_t));
186     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetCondition, (const char *));
187     LLDB_REGISTER_METHOD(const char *, SBBreakpoint, GetCondition, ());
188     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetAutoContinue, (bool));
189     LLDB_REGISTER_METHOD(bool, SBBreakpoint, GetAutoContinue, ());
190     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBreakpoint, GetHitCount, ());
191     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBreakpoint, GetIgnoreCount, ());
192     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetThreadID, (lldb::tid_t));
193     LLDB_REGISTER_METHOD(lldb::tid_t, SBBreakpoint, GetThreadID, ());
194     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetThreadIndex, (uint32_t));
195     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBreakpoint, GetThreadIndex, ());
196     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetThreadName, (const char *));
197     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpoint, GetThreadName, ());
198     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetQueueName, (const char *));
199     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpoint, GetQueueName, ());
200     LLDB_REGISTER_METHOD_CONST(size_t, SBBreakpoint, GetNumResolvedLocations,
201                                ());
202     LLDB_REGISTER_METHOD_CONST(size_t, SBBreakpoint, GetNumLocations, ());
203     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetCommandLineCommands,
204                          (lldb::SBStringList &));
205     LLDB_REGISTER_METHOD(bool, SBBreakpoint, GetCommandLineCommands,
206                          (lldb::SBStringList &));
207     LLDB_REGISTER_METHOD(bool, SBBreakpoint, GetDescription,
208                          (lldb::SBStream &));
209     LLDB_REGISTER_METHOD(bool, SBBreakpoint, GetDescription,
210                          (lldb::SBStream &, bool));
211     LLDB_REGISTER_METHOD(lldb::SBError, SBBreakpoint, AddLocation,
212                          (lldb::SBAddress &));
213     LLDB_REGISTER_METHOD(void, SBBreakpoint, SetScriptCallbackFunction,
214                          (const char *));
215     LLDB_REGISTER_METHOD(lldb::SBError, SBBreakpoint, SetScriptCallbackBody,
216                          (const char *));
217     LLDB_REGISTER_METHOD(bool, SBBreakpoint, AddName, (const char *));
218     LLDB_REGISTER_METHOD(void, SBBreakpoint, RemoveName, (const char *));
219     LLDB_REGISTER_METHOD(bool, SBBreakpoint, MatchesName, (const char *));
220     LLDB_REGISTER_METHOD(void, SBBreakpoint, GetNames, (lldb::SBStringList &));
221     LLDB_REGISTER_STATIC_METHOD(bool, SBBreakpoint, EventIsBreakpointEvent,
222                                 (const lldb::SBEvent &));
223     LLDB_REGISTER_STATIC_METHOD(lldb::BreakpointEventType, SBBreakpoint,
224                                 GetBreakpointEventTypeFromEvent,
225                                 (const lldb::SBEvent &));
226     LLDB_REGISTER_STATIC_METHOD(lldb::SBBreakpoint, SBBreakpoint,
227                                 GetBreakpointFromEvent,
228                                 (const lldb::SBEvent &));
229     LLDB_REGISTER_STATIC_METHOD(lldb::SBBreakpointLocation, SBBreakpoint,
230                                 GetBreakpointLocationAtIndexFromEvent,
231                                 (const lldb::SBEvent &, uint32_t));
232     LLDB_REGISTER_STATIC_METHOD(uint32_t, SBBreakpoint,
233                                 GetNumBreakpointLocationsFromEvent,
234                                 (const lldb::SBEvent &));
235     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpoint, IsHardware, ());
236     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointList, (lldb::SBTarget &));
237     LLDB_REGISTER_METHOD_CONST(size_t, SBBreakpointList, GetSize, ());
238     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBBreakpointList,
239                          GetBreakpointAtIndex, (size_t));
240     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBBreakpointList,
241                          FindBreakpointByID, (lldb::break_id_t));
242     LLDB_REGISTER_METHOD(void, SBBreakpointList, Append,
243                          (const lldb::SBBreakpoint &));
244     LLDB_REGISTER_METHOD(void, SBBreakpointList, AppendByID,
245                          (lldb::break_id_t));
246     LLDB_REGISTER_METHOD(bool, SBBreakpointList, AppendIfUnique,
247                          (const lldb::SBBreakpoint &));
248     LLDB_REGISTER_METHOD(void, SBBreakpointList, Clear, ());
249   }
250   {
251     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointLocation, ());
252     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointLocation,
253                               (const lldb::BreakpointLocationSP &));
254     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointLocation,
255                               (const lldb::SBBreakpointLocation &));
256     LLDB_REGISTER_METHOD(
257         const lldb::SBBreakpointLocation &,
258         SBBreakpointLocation, operator=,(const lldb::SBBreakpointLocation &));
259     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointLocation, IsValid, ());
260     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointLocation, operator bool, ());
261     LLDB_REGISTER_METHOD(lldb::SBAddress, SBBreakpointLocation, GetAddress, ());
262     LLDB_REGISTER_METHOD(lldb::addr_t, SBBreakpointLocation, GetLoadAddress,
263                          ());
264     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetEnabled, (bool));
265     LLDB_REGISTER_METHOD(bool, SBBreakpointLocation, IsEnabled, ());
266     LLDB_REGISTER_METHOD(uint32_t, SBBreakpointLocation, GetHitCount, ());
267     LLDB_REGISTER_METHOD(uint32_t, SBBreakpointLocation, GetIgnoreCount, ());
268     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetIgnoreCount,
269                          (uint32_t));
270     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetCondition,
271                          (const char *));
272     LLDB_REGISTER_METHOD(const char *, SBBreakpointLocation, GetCondition, ());
273     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetAutoContinue, (bool));
274     LLDB_REGISTER_METHOD(bool, SBBreakpointLocation, GetAutoContinue, ());
275     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetScriptCallbackFunction,
276                          (const char *));
277     LLDB_REGISTER_METHOD(lldb::SBError, SBBreakpointLocation,
278                          SetScriptCallbackBody, (const char *));
279     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetCommandLineCommands,
280                          (lldb::SBStringList &));
281     LLDB_REGISTER_METHOD(bool, SBBreakpointLocation, GetCommandLineCommands,
282                          (lldb::SBStringList &));
283     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetThreadID,
284                          (lldb::tid_t));
285     LLDB_REGISTER_METHOD(lldb::tid_t, SBBreakpointLocation, GetThreadID, ());
286     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetThreadIndex,
287                          (uint32_t));
288     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBreakpointLocation, GetThreadIndex,
289                                ());
290     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetThreadName,
291                          (const char *));
292     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointLocation,
293                                GetThreadName, ());
294     LLDB_REGISTER_METHOD(void, SBBreakpointLocation, SetQueueName,
295                          (const char *));
296     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointLocation, GetQueueName,
297                                ());
298     LLDB_REGISTER_METHOD(bool, SBBreakpointLocation, IsResolved, ());
299     LLDB_REGISTER_METHOD(bool, SBBreakpointLocation, GetDescription,
300                          (lldb::SBStream &, lldb::DescriptionLevel));
301     LLDB_REGISTER_METHOD(lldb::break_id_t, SBBreakpointLocation, GetID, ());
302     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBBreakpointLocation,
303                          GetBreakpoint, ());
304   }
305   {
306     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointName, ());
307     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointName,
308                               (lldb::SBTarget &, const char *));
309     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointName,
310                               (lldb::SBBreakpoint &, const char *));
311     LLDB_REGISTER_CONSTRUCTOR(SBBreakpointName,
312                               (const lldb::SBBreakpointName &));
313     LLDB_REGISTER_METHOD(
314         const lldb::SBBreakpointName &,
315         SBBreakpointName, operator=,(const lldb::SBBreakpointName &));
316     LLDB_REGISTER_METHOD(
317         bool, SBBreakpointName, operator==,(const lldb::SBBreakpointName &));
318     LLDB_REGISTER_METHOD(
319         bool, SBBreakpointName, operator!=,(const lldb::SBBreakpointName &));
320     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointName, IsValid, ());
321     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointName, operator bool, ());
322     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointName, GetName, ());
323     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetEnabled, (bool));
324     LLDB_REGISTER_METHOD(bool, SBBreakpointName, IsEnabled, ());
325     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetOneShot, (bool));
326     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointName, IsOneShot, ());
327     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetIgnoreCount, (uint32_t));
328     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBreakpointName, GetIgnoreCount, ());
329     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetCondition, (const char *));
330     LLDB_REGISTER_METHOD(const char *, SBBreakpointName, GetCondition, ());
331     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetAutoContinue, (bool));
332     LLDB_REGISTER_METHOD(bool, SBBreakpointName, GetAutoContinue, ());
333     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetThreadID, (lldb::tid_t));
334     LLDB_REGISTER_METHOD(lldb::tid_t, SBBreakpointName, GetThreadID, ());
335     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetThreadIndex, (uint32_t));
336     LLDB_REGISTER_METHOD_CONST(uint32_t, SBBreakpointName, GetThreadIndex, ());
337     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetThreadName, (const char *));
338     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointName, GetThreadName,
339                                ());
340     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetQueueName, (const char *));
341     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointName, GetQueueName,
342                                ());
343     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetCommandLineCommands,
344                          (lldb::SBStringList &));
345     LLDB_REGISTER_METHOD(bool, SBBreakpointName, GetCommandLineCommands,
346                          (lldb::SBStringList &));
347     LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointName, GetHelpString,
348                                ());
349     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetHelpString, (const char *));
350     LLDB_REGISTER_METHOD(bool, SBBreakpointName, GetDescription,
351                          (lldb::SBStream &));
352     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetScriptCallbackFunction,
353                          (const char *));
354     LLDB_REGISTER_METHOD(lldb::SBError, SBBreakpointName, SetScriptCallbackBody,
355                          (const char *));
356     LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointName, GetAllowList, ());
357     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetAllowList, (bool));
358     LLDB_REGISTER_METHOD(bool, SBBreakpointName, GetAllowDelete, ());
359     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetAllowDelete, (bool));
360     LLDB_REGISTER_METHOD(bool, SBBreakpointName, GetAllowDisable, ());
361     LLDB_REGISTER_METHOD(void, SBBreakpointName, SetAllowDisable, (bool));
362   }
363   {} {
364     LLDB_REGISTER_CONSTRUCTOR(SBBroadcaster, ());
365     LLDB_REGISTER_CONSTRUCTOR(SBBroadcaster, (const char *));
366     LLDB_REGISTER_CONSTRUCTOR(SBBroadcaster, (const lldb::SBBroadcaster &));
367     LLDB_REGISTER_METHOD(
368         const lldb::SBBroadcaster &,
369         SBBroadcaster, operator=,(const lldb::SBBroadcaster &));
370     LLDB_REGISTER_METHOD(void, SBBroadcaster, BroadcastEventByType,
371                          (uint32_t, bool));
372     LLDB_REGISTER_METHOD(void, SBBroadcaster, BroadcastEvent,
373                          (const lldb::SBEvent &, bool));
374     LLDB_REGISTER_METHOD(void, SBBroadcaster, AddInitialEventsToListener,
375                          (const lldb::SBListener &, uint32_t));
376     LLDB_REGISTER_METHOD(uint32_t, SBBroadcaster, AddListener,
377                          (const lldb::SBListener &, uint32_t));
378     LLDB_REGISTER_METHOD_CONST(const char *, SBBroadcaster, GetName, ());
379     LLDB_REGISTER_METHOD(bool, SBBroadcaster, EventTypeHasListeners,
380                          (uint32_t));
381     LLDB_REGISTER_METHOD(bool, SBBroadcaster, RemoveListener,
382                          (const lldb::SBListener &, uint32_t));
383     LLDB_REGISTER_METHOD_CONST(bool, SBBroadcaster, IsValid, ());
384     LLDB_REGISTER_METHOD_CONST(bool, SBBroadcaster, operator bool, ());
385     LLDB_REGISTER_METHOD(void, SBBroadcaster, Clear, ());
386     LLDB_REGISTER_METHOD_CONST(
387         bool, SBBroadcaster, operator==,(const lldb::SBBroadcaster &));
388     LLDB_REGISTER_METHOD_CONST(
389         bool, SBBroadcaster, operator!=,(const lldb::SBBroadcaster &));
390     LLDB_REGISTER_METHOD_CONST(
391         bool, SBBroadcaster, operator<,(const lldb::SBBroadcaster &));
392   }
393   {
394     LLDB_REGISTER_CONSTRUCTOR(SBCommandInterpreterRunOptions, ());
395     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
396                                GetStopOnContinue, ());
397     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions,
398                          SetStopOnContinue, (bool));
399     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
400                                GetStopOnError, ());
401     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetStopOnError,
402                          (bool));
403     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
404                                GetStopOnCrash, ());
405     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetStopOnCrash,
406                          (bool));
407     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
408                                GetEchoCommands, ());
409     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetEchoCommands,
410                          (bool));
411     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
412                                GetEchoCommentCommands, ());
413     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions,
414                          SetEchoCommentCommands, (bool));
415     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
416                                GetPrintResults, ());
417     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetPrintResults,
418                          (bool));
419     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreterRunOptions,
420                                GetAddToHistory, ());
421     LLDB_REGISTER_METHOD(void, SBCommandInterpreterRunOptions, SetAddToHistory,
422                          (bool));
423     LLDB_REGISTER_CONSTRUCTOR(SBCommandInterpreter,
424                               (lldb_private::CommandInterpreter *));
425     LLDB_REGISTER_CONSTRUCTOR(SBCommandInterpreter,
426                               (const lldb::SBCommandInterpreter &));
427     LLDB_REGISTER_METHOD(
428         const lldb::SBCommandInterpreter &,
429         SBCommandInterpreter, operator=,(const lldb::SBCommandInterpreter &));
430     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreter, IsValid, ());
431     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreter, operator bool, ());
432     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, CommandExists,
433                          (const char *));
434     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, AliasExists,
435                          (const char *));
436     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, IsActive, ());
437     LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreter, WasInterrupted, ());
438     LLDB_REGISTER_METHOD(const char *, SBCommandInterpreter,
439                          GetIOHandlerControlSequence, (char));
440     LLDB_REGISTER_METHOD(lldb::ReturnStatus, SBCommandInterpreter,
441                          HandleCommand,
442                          (const char *, lldb::SBCommandReturnObject &, bool));
443     LLDB_REGISTER_METHOD(lldb::ReturnStatus, SBCommandInterpreter,
444                          HandleCommand,
445                          (const char *, lldb::SBExecutionContext &,
446                           lldb::SBCommandReturnObject &, bool));
447     LLDB_REGISTER_METHOD(void, SBCommandInterpreter, HandleCommandsFromFile,
448                          (lldb::SBFileSpec &, lldb::SBExecutionContext &,
449                           lldb::SBCommandInterpreterRunOptions &,
450                           lldb::SBCommandReturnObject));
451     LLDB_REGISTER_METHOD(int, SBCommandInterpreter, HandleCompletion,
452                          (const char *, const char *, const char *, int, int,
453                           lldb::SBStringList &));
454     LLDB_REGISTER_METHOD(int, SBCommandInterpreter,
455                          HandleCompletionWithDescriptions,
456                          (const char *, const char *, const char *, int, int,
457                           lldb::SBStringList &, lldb::SBStringList &));
458     LLDB_REGISTER_METHOD(int, SBCommandInterpreter,
459                          HandleCompletionWithDescriptions,
460                          (const char *, uint32_t, int, int,
461                           lldb::SBStringList &, lldb::SBStringList &));
462     LLDB_REGISTER_METHOD(
463         int, SBCommandInterpreter, HandleCompletion,
464         (const char *, uint32_t, int, int, lldb::SBStringList &));
465     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, HasCommands, ());
466     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, HasAliases, ());
467     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, HasAliasOptions, ());
468     LLDB_REGISTER_METHOD(lldb::SBProcess, SBCommandInterpreter, GetProcess, ());
469     LLDB_REGISTER_METHOD(lldb::SBDebugger, SBCommandInterpreter, GetDebugger,
470                          ());
471     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, GetPromptOnQuit, ());
472     LLDB_REGISTER_METHOD(void, SBCommandInterpreter, SetPromptOnQuit, (bool));
473     LLDB_REGISTER_METHOD(void, SBCommandInterpreter, AllowExitCodeOnQuit,
474                          (bool));
475     LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, HasCustomQuitExitCode, ());
476     LLDB_REGISTER_METHOD(int, SBCommandInterpreter, GetQuitStatus, ());
477     LLDB_REGISTER_METHOD(void, SBCommandInterpreter, ResolveCommand,
478                          (const char *, lldb::SBCommandReturnObject &));
479     LLDB_REGISTER_METHOD(void, SBCommandInterpreter,
480                          SourceInitFileInHomeDirectory,
481                          (lldb::SBCommandReturnObject &));
482     LLDB_REGISTER_METHOD(void, SBCommandInterpreter,
483                          SourceInitFileInCurrentWorkingDirectory,
484                          (lldb::SBCommandReturnObject &));
485     LLDB_REGISTER_METHOD(lldb::SBBroadcaster, SBCommandInterpreter,
486                          GetBroadcaster, ());
487     LLDB_REGISTER_STATIC_METHOD(const char *, SBCommandInterpreter,
488                                 GetBroadcasterClass, ());
489     LLDB_REGISTER_STATIC_METHOD(const char *, SBCommandInterpreter,
490                                 GetArgumentTypeAsCString,
491                                 (const lldb::CommandArgumentType));
492     LLDB_REGISTER_STATIC_METHOD(const char *, SBCommandInterpreter,
493                                 GetArgumentDescriptionAsCString,
494                                 (const lldb::CommandArgumentType));
495     LLDB_REGISTER_STATIC_METHOD(bool, SBCommandInterpreter,
496                                 EventIsCommandInterpreterEvent,
497                                 (const lldb::SBEvent &));
498     LLDB_REGISTER_METHOD(lldb::SBCommand, SBCommandInterpreter,
499                          AddMultiwordCommand, (const char *, const char *));
500     LLDB_REGISTER_METHOD(
501         lldb::SBCommand, SBCommandInterpreter, AddCommand,
502         (const char *, lldb::SBCommandPluginInterface *, const char *));
503     LLDB_REGISTER_METHOD(lldb::SBCommand, SBCommandInterpreter, AddCommand,
504                          (const char *, lldb::SBCommandPluginInterface *,
505                           const char *, const char *));
506     LLDB_REGISTER_CONSTRUCTOR(SBCommand, ());
507     LLDB_REGISTER_METHOD(bool, SBCommand, IsValid, ());
508     LLDB_REGISTER_METHOD_CONST(bool, SBCommand, operator bool, ());
509     LLDB_REGISTER_METHOD(const char *, SBCommand, GetName, ());
510     LLDB_REGISTER_METHOD(const char *, SBCommand, GetHelp, ());
511     LLDB_REGISTER_METHOD(const char *, SBCommand, GetHelpLong, ());
512     LLDB_REGISTER_METHOD(void, SBCommand, SetHelp, (const char *));
513     LLDB_REGISTER_METHOD(void, SBCommand, SetHelpLong, (const char *));
514     LLDB_REGISTER_METHOD(lldb::SBCommand, SBCommand, AddMultiwordCommand,
515                          (const char *, const char *));
516     LLDB_REGISTER_METHOD(
517         lldb::SBCommand, SBCommand, AddCommand,
518         (const char *, lldb::SBCommandPluginInterface *, const char *));
519     LLDB_REGISTER_METHOD(lldb::SBCommand, SBCommand, AddCommand,
520                          (const char *, lldb::SBCommandPluginInterface *,
521                           const char *, const char *));
522     LLDB_REGISTER_METHOD(uint32_t, SBCommand, GetFlags, ());
523     LLDB_REGISTER_METHOD(void, SBCommand, SetFlags, (uint32_t));
524   }
525   {
526     LLDB_REGISTER_CONSTRUCTOR(SBCommandReturnObject, ());
527     LLDB_REGISTER_CONSTRUCTOR(SBCommandReturnObject,
528                               (const lldb::SBCommandReturnObject &));
529     LLDB_REGISTER_CONSTRUCTOR(SBCommandReturnObject,
530                               (lldb_private::CommandReturnObject *));
531     LLDB_REGISTER_METHOD(lldb_private::CommandReturnObject *,
532                          SBCommandReturnObject, Release, ());
533     LLDB_REGISTER_METHOD(
534         const lldb::SBCommandReturnObject &,
535         SBCommandReturnObject, operator=,(const lldb::SBCommandReturnObject &));
536     LLDB_REGISTER_METHOD_CONST(bool, SBCommandReturnObject, IsValid, ());
537     LLDB_REGISTER_METHOD_CONST(bool, SBCommandReturnObject, operator bool, ());
538     LLDB_REGISTER_METHOD(const char *, SBCommandReturnObject, GetOutput, ());
539     LLDB_REGISTER_METHOD(const char *, SBCommandReturnObject, GetError, ());
540     LLDB_REGISTER_METHOD(size_t, SBCommandReturnObject, GetOutputSize, ());
541     LLDB_REGISTER_METHOD(size_t, SBCommandReturnObject, GetErrorSize, ());
542     LLDB_REGISTER_METHOD(size_t, SBCommandReturnObject, PutOutput, (FILE *));
543     LLDB_REGISTER_METHOD(size_t, SBCommandReturnObject, PutError, (FILE *));
544     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, Clear, ());
545     LLDB_REGISTER_METHOD(lldb::ReturnStatus, SBCommandReturnObject, GetStatus,
546                          ());
547     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetStatus,
548                          (lldb::ReturnStatus));
549     LLDB_REGISTER_METHOD(bool, SBCommandReturnObject, Succeeded, ());
550     LLDB_REGISTER_METHOD(bool, SBCommandReturnObject, HasResult, ());
551     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, AppendMessage,
552                          (const char *));
553     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, AppendWarning,
554                          (const char *));
555     LLDB_REGISTER_METHOD(bool, SBCommandReturnObject, GetDescription,
556                          (lldb::SBStream &));
557     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetImmediateOutputFile,
558                          (FILE *));
559     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetImmediateErrorFile,
560                          (FILE *));
561     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetImmediateOutputFile,
562                          (FILE *, bool));
563     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetImmediateErrorFile,
564                          (FILE *, bool));
565     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, PutCString,
566                          (const char *, int));
567     LLDB_REGISTER_METHOD(const char *, SBCommandReturnObject, GetOutput,
568                          (bool));
569     LLDB_REGISTER_METHOD(const char *, SBCommandReturnObject, GetError, (bool));
570     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetError,
571                          (lldb::SBError &, const char *));
572     LLDB_REGISTER_METHOD(void, SBCommandReturnObject, SetError, (const char *));
573   }
574   {
575     LLDB_REGISTER_CONSTRUCTOR(SBCommunication, ());
576     LLDB_REGISTER_CONSTRUCTOR(SBCommunication, (const char *));
577     LLDB_REGISTER_METHOD_CONST(bool, SBCommunication, IsValid, ());
578     LLDB_REGISTER_METHOD_CONST(bool, SBCommunication, operator bool, ());
579     LLDB_REGISTER_METHOD(bool, SBCommunication, GetCloseOnEOF, ());
580     LLDB_REGISTER_METHOD(void, SBCommunication, SetCloseOnEOF, (bool));
581     LLDB_REGISTER_METHOD(lldb::ConnectionStatus, SBCommunication, Connect,
582                          (const char *));
583     LLDB_REGISTER_METHOD(lldb::ConnectionStatus, SBCommunication,
584                          AdoptFileDesriptor, (int, bool));
585     LLDB_REGISTER_METHOD(lldb::ConnectionStatus, SBCommunication, Disconnect,
586                          ());
587     LLDB_REGISTER_METHOD_CONST(bool, SBCommunication, IsConnected, ());
588     LLDB_REGISTER_METHOD(bool, SBCommunication, ReadThreadStart, ());
589     LLDB_REGISTER_METHOD(bool, SBCommunication, ReadThreadStop, ());
590     LLDB_REGISTER_METHOD(bool, SBCommunication, ReadThreadIsRunning, ());
591     LLDB_REGISTER_METHOD(lldb::SBBroadcaster, SBCommunication, GetBroadcaster,
592                          ());
593     LLDB_REGISTER_STATIC_METHOD(const char *, SBCommunication,
594                                 GetBroadcasterClass, ());
595   }
596   {
597     LLDB_REGISTER_CONSTRUCTOR(SBCompileUnit, ());
598     LLDB_REGISTER_CONSTRUCTOR(SBCompileUnit, (const lldb::SBCompileUnit &));
599     LLDB_REGISTER_METHOD(
600         const lldb::SBCompileUnit &,
601         SBCompileUnit, operator=,(const lldb::SBCompileUnit &));
602     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBCompileUnit, GetFileSpec,
603                                ());
604     LLDB_REGISTER_METHOD_CONST(uint32_t, SBCompileUnit, GetNumLineEntries, ());
605     LLDB_REGISTER_METHOD_CONST(lldb::SBLineEntry, SBCompileUnit,
606                                GetLineEntryAtIndex, (uint32_t));
607     LLDB_REGISTER_METHOD_CONST(uint32_t, SBCompileUnit, FindLineEntryIndex,
608                                (uint32_t, uint32_t, lldb::SBFileSpec *));
609     LLDB_REGISTER_METHOD_CONST(uint32_t, SBCompileUnit, FindLineEntryIndex,
610                                (uint32_t, uint32_t, lldb::SBFileSpec *, bool));
611     LLDB_REGISTER_METHOD_CONST(uint32_t, SBCompileUnit, GetNumSupportFiles, ());
612     LLDB_REGISTER_METHOD(lldb::SBTypeList, SBCompileUnit, GetTypes, (uint32_t));
613     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBCompileUnit,
614                                GetSupportFileAtIndex, (uint32_t));
615     LLDB_REGISTER_METHOD(uint32_t, SBCompileUnit, FindSupportFileIndex,
616                          (uint32_t, const lldb::SBFileSpec &, bool));
617     LLDB_REGISTER_METHOD(lldb::LanguageType, SBCompileUnit, GetLanguage, ());
618     LLDB_REGISTER_METHOD_CONST(bool, SBCompileUnit, IsValid, ());
619     LLDB_REGISTER_METHOD_CONST(bool, SBCompileUnit, operator bool, ());
620     LLDB_REGISTER_METHOD_CONST(
621         bool, SBCompileUnit, operator==,(const lldb::SBCompileUnit &));
622     LLDB_REGISTER_METHOD_CONST(
623         bool, SBCompileUnit, operator!=,(const lldb::SBCompileUnit &));
624     LLDB_REGISTER_METHOD(bool, SBCompileUnit, GetDescription,
625                          (lldb::SBStream &));
626   }
627   {
628     LLDB_REGISTER_CONSTRUCTOR(SBData, ());
629     LLDB_REGISTER_CONSTRUCTOR(SBData, (const lldb::SBData &));
630     LLDB_REGISTER_METHOD(const lldb::SBData &,
631                          SBData, operator=,(const lldb::SBData &));
632     LLDB_REGISTER_METHOD(bool, SBData, IsValid, ());
633     LLDB_REGISTER_METHOD_CONST(bool, SBData, operator bool, ());
634     LLDB_REGISTER_METHOD(uint8_t, SBData, GetAddressByteSize, ());
635     LLDB_REGISTER_METHOD(void, SBData, SetAddressByteSize, (uint8_t));
636     LLDB_REGISTER_METHOD(void, SBData, Clear, ());
637     LLDB_REGISTER_METHOD(size_t, SBData, GetByteSize, ());
638     LLDB_REGISTER_METHOD(lldb::ByteOrder, SBData, GetByteOrder, ());
639     LLDB_REGISTER_METHOD(void, SBData, SetByteOrder, (lldb::ByteOrder));
640     LLDB_REGISTER_METHOD(float, SBData, GetFloat,
641                          (lldb::SBError &, lldb::offset_t));
642     LLDB_REGISTER_METHOD(double, SBData, GetDouble,
643                          (lldb::SBError &, lldb::offset_t));
644     LLDB_REGISTER_METHOD(long double, SBData, GetLongDouble,
645                          (lldb::SBError &, lldb::offset_t));
646     LLDB_REGISTER_METHOD(lldb::addr_t, SBData, GetAddress,
647                          (lldb::SBError &, lldb::offset_t));
648     LLDB_REGISTER_METHOD(uint8_t, SBData, GetUnsignedInt8,
649                          (lldb::SBError &, lldb::offset_t));
650     LLDB_REGISTER_METHOD(uint16_t, SBData, GetUnsignedInt16,
651                          (lldb::SBError &, lldb::offset_t));
652     LLDB_REGISTER_METHOD(uint32_t, SBData, GetUnsignedInt32,
653                          (lldb::SBError &, lldb::offset_t));
654     LLDB_REGISTER_METHOD(uint64_t, SBData, GetUnsignedInt64,
655                          (lldb::SBError &, lldb::offset_t));
656     LLDB_REGISTER_METHOD(int8_t, SBData, GetSignedInt8,
657                          (lldb::SBError &, lldb::offset_t));
658     LLDB_REGISTER_METHOD(int16_t, SBData, GetSignedInt16,
659                          (lldb::SBError &, lldb::offset_t));
660     LLDB_REGISTER_METHOD(int32_t, SBData, GetSignedInt32,
661                          (lldb::SBError &, lldb::offset_t));
662     LLDB_REGISTER_METHOD(int64_t, SBData, GetSignedInt64,
663                          (lldb::SBError &, lldb::offset_t));
664     LLDB_REGISTER_METHOD(const char *, SBData, GetString,
665                          (lldb::SBError &, lldb::offset_t));
666     LLDB_REGISTER_METHOD(bool, SBData, GetDescription,
667                          (lldb::SBStream &, lldb::addr_t));
668     LLDB_REGISTER_METHOD(bool, SBData, Append, (const lldb::SBData &));
669     LLDB_REGISTER_STATIC_METHOD(lldb::SBData, SBData, CreateDataFromCString,
670                                 (lldb::ByteOrder, uint32_t, const char *));
671     LLDB_REGISTER_STATIC_METHOD(
672         lldb::SBData, SBData, CreateDataFromUInt64Array,
673         (lldb::ByteOrder, uint32_t, uint64_t *, size_t));
674     LLDB_REGISTER_STATIC_METHOD(
675         lldb::SBData, SBData, CreateDataFromUInt32Array,
676         (lldb::ByteOrder, uint32_t, uint32_t *, size_t));
677     LLDB_REGISTER_STATIC_METHOD(lldb::SBData, SBData, CreateDataFromSInt64Array,
678                                 (lldb::ByteOrder, uint32_t, int64_t *, size_t));
679     LLDB_REGISTER_STATIC_METHOD(lldb::SBData, SBData, CreateDataFromSInt32Array,
680                                 (lldb::ByteOrder, uint32_t, int32_t *, size_t));
681     LLDB_REGISTER_STATIC_METHOD(lldb::SBData, SBData, CreateDataFromDoubleArray,
682                                 (lldb::ByteOrder, uint32_t, double *, size_t));
683     LLDB_REGISTER_METHOD(bool, SBData, SetDataFromCString, (const char *));
684     LLDB_REGISTER_METHOD(bool, SBData, SetDataFromUInt64Array,
685                          (uint64_t *, size_t));
686     LLDB_REGISTER_METHOD(bool, SBData, SetDataFromUInt32Array,
687                          (uint32_t *, size_t));
688     LLDB_REGISTER_METHOD(bool, SBData, SetDataFromSInt64Array,
689                          (int64_t *, size_t));
690     LLDB_REGISTER_METHOD(bool, SBData, SetDataFromSInt32Array,
691                          (int32_t *, size_t));
692     LLDB_REGISTER_METHOD(bool, SBData, SetDataFromDoubleArray,
693                          (double *, size_t));
694   }
695   {
696     LLDB_REGISTER_METHOD(void, SBInputReader, SetIsDone, (bool));
697     LLDB_REGISTER_METHOD_CONST(bool, SBInputReader, IsActive, ());
698     LLDB_REGISTER_CONSTRUCTOR(SBDebugger, ());
699     LLDB_REGISTER_CONSTRUCTOR(SBDebugger, (const lldb::DebuggerSP &));
700     LLDB_REGISTER_CONSTRUCTOR(SBDebugger, (const lldb::SBDebugger &));
701     LLDB_REGISTER_METHOD(lldb::SBDebugger &,
702                          SBDebugger, operator=,(const lldb::SBDebugger &));
703     LLDB_REGISTER_STATIC_METHOD(void, SBDebugger, Initialize, ());
704     LLDB_REGISTER_STATIC_METHOD(lldb::SBError, SBDebugger,
705                                 InitializeWithErrorHandling, ());
706     LLDB_REGISTER_STATIC_METHOD(void, SBDebugger, Terminate, ());
707     LLDB_REGISTER_METHOD(void, SBDebugger, Clear, ());
708     LLDB_REGISTER_STATIC_METHOD(lldb::SBDebugger, SBDebugger, Create, ());
709     LLDB_REGISTER_STATIC_METHOD(lldb::SBDebugger, SBDebugger, Create, (bool));
710     LLDB_REGISTER_STATIC_METHOD(void, SBDebugger, Destroy,
711                                 (lldb::SBDebugger &));
712     LLDB_REGISTER_STATIC_METHOD(void, SBDebugger, MemoryPressureDetected, ());
713     LLDB_REGISTER_METHOD_CONST(bool, SBDebugger, IsValid, ());
714     LLDB_REGISTER_METHOD_CONST(bool, SBDebugger, operator bool, ());
715     LLDB_REGISTER_METHOD(void, SBDebugger, SetAsync, (bool));
716     LLDB_REGISTER_METHOD(bool, SBDebugger, GetAsync, ());
717     LLDB_REGISTER_METHOD(void, SBDebugger, SkipLLDBInitFiles, (bool));
718     LLDB_REGISTER_METHOD(void, SBDebugger, SkipAppInitFiles, (bool));
719     LLDB_REGISTER_METHOD(void, SBDebugger, SetInputFileHandle, (FILE *, bool));
720     LLDB_REGISTER_METHOD(FILE *, SBDebugger, GetInputFileHandle, ());
721     LLDB_REGISTER_METHOD(FILE *, SBDebugger, GetOutputFileHandle, ());
722     LLDB_REGISTER_METHOD(FILE *, SBDebugger, GetErrorFileHandle, ());
723     LLDB_REGISTER_METHOD(void, SBDebugger, SaveInputTerminalState, ());
724     LLDB_REGISTER_METHOD(void, SBDebugger, RestoreInputTerminalState, ());
725     LLDB_REGISTER_METHOD(lldb::SBCommandInterpreter, SBDebugger,
726                          GetCommandInterpreter, ());
727     LLDB_REGISTER_METHOD(void, SBDebugger, HandleCommand, (const char *));
728     LLDB_REGISTER_METHOD(lldb::SBListener, SBDebugger, GetListener, ());
729     LLDB_REGISTER_METHOD(
730         void, SBDebugger, HandleProcessEvent,
731         (const lldb::SBProcess &, const lldb::SBEvent &, FILE *, FILE *));
732     LLDB_REGISTER_METHOD(lldb::SBSourceManager, SBDebugger, GetSourceManager,
733                          ());
734     LLDB_REGISTER_STATIC_METHOD(bool, SBDebugger, SetDefaultArchitecture,
735                                 (const char *));
736     LLDB_REGISTER_METHOD(lldb::ScriptLanguage, SBDebugger, GetScriptingLanguage,
737                          (const char *));
738     LLDB_REGISTER_STATIC_METHOD(const char *, SBDebugger, GetVersionString, ());
739     LLDB_REGISTER_STATIC_METHOD(const char *, SBDebugger, StateAsCString,
740                                 (lldb::StateType));
741     LLDB_REGISTER_STATIC_METHOD(lldb::SBStructuredData, SBDebugger,
742                                 GetBuildConfiguration, ());
743     LLDB_REGISTER_STATIC_METHOD(bool, SBDebugger, StateIsRunningState,
744                                 (lldb::StateType));
745     LLDB_REGISTER_STATIC_METHOD(bool, SBDebugger, StateIsStoppedState,
746                                 (lldb::StateType));
747     LLDB_REGISTER_METHOD(
748         lldb::SBTarget, SBDebugger, CreateTarget,
749         (const char *, const char *, const char *, bool, lldb::SBError &));
750     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger,
751                          CreateTargetWithFileAndTargetTriple,
752                          (const char *, const char *));
753     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger,
754                          CreateTargetWithFileAndArch,
755                          (const char *, const char *));
756     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger, CreateTarget,
757                          (const char *));
758     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger, GetDummyTarget, ());
759     LLDB_REGISTER_METHOD(bool, SBDebugger, DeleteTarget, (lldb::SBTarget &));
760     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger, GetTargetAtIndex,
761                          (uint32_t));
762     LLDB_REGISTER_METHOD(uint32_t, SBDebugger, GetIndexOfTarget,
763                          (lldb::SBTarget));
764     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger, FindTargetWithProcessID,
765                          (lldb::pid_t));
766     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger, FindTargetWithFileAndArch,
767                          (const char *, const char *));
768     LLDB_REGISTER_METHOD(uint32_t, SBDebugger, GetNumTargets, ());
769     LLDB_REGISTER_METHOD(lldb::SBTarget, SBDebugger, GetSelectedTarget, ());
770     LLDB_REGISTER_METHOD(void, SBDebugger, SetSelectedTarget,
771                          (lldb::SBTarget &));
772     LLDB_REGISTER_METHOD(lldb::SBPlatform, SBDebugger, GetSelectedPlatform, ());
773     LLDB_REGISTER_METHOD(void, SBDebugger, SetSelectedPlatform,
774                          (lldb::SBPlatform &));
775     LLDB_REGISTER_METHOD(uint32_t, SBDebugger, GetNumPlatforms, ());
776     LLDB_REGISTER_METHOD(lldb::SBPlatform, SBDebugger, GetPlatformAtIndex,
777                          (uint32_t));
778     LLDB_REGISTER_METHOD(uint32_t, SBDebugger, GetNumAvailablePlatforms, ());
779     LLDB_REGISTER_METHOD(lldb::SBStructuredData, SBDebugger,
780                          GetAvailablePlatformInfoAtIndex, (uint32_t));
781     LLDB_REGISTER_METHOD(void, SBDebugger, DispatchInputInterrupt, ());
782     LLDB_REGISTER_METHOD(void, SBDebugger, DispatchInputEndOfFile, ());
783     LLDB_REGISTER_METHOD(void, SBDebugger, PushInputReader,
784                          (lldb::SBInputReader &));
785     LLDB_REGISTER_METHOD(void, SBDebugger, RunCommandInterpreter, (bool, bool));
786     LLDB_REGISTER_METHOD(void, SBDebugger, RunCommandInterpreter,
787                          (bool, bool, lldb::SBCommandInterpreterRunOptions &,
788                           int &, bool &, bool &));
789     LLDB_REGISTER_METHOD(lldb::SBError, SBDebugger, RunREPL,
790                          (lldb::LanguageType, const char *));
791     LLDB_REGISTER_STATIC_METHOD(lldb::SBDebugger, SBDebugger,
792                                 FindDebuggerWithID, (int));
793     LLDB_REGISTER_METHOD(const char *, SBDebugger, GetInstanceName, ());
794     LLDB_REGISTER_STATIC_METHOD(lldb::SBError, SBDebugger, SetInternalVariable,
795                                 (const char *, const char *, const char *));
796     LLDB_REGISTER_STATIC_METHOD(lldb::SBStringList, SBDebugger,
797                                 GetInternalVariableValue,
798                                 (const char *, const char *));
799     LLDB_REGISTER_METHOD_CONST(uint32_t, SBDebugger, GetTerminalWidth, ());
800     LLDB_REGISTER_METHOD(void, SBDebugger, SetTerminalWidth, (uint32_t));
801     LLDB_REGISTER_METHOD_CONST(const char *, SBDebugger, GetPrompt, ());
802     LLDB_REGISTER_METHOD(void, SBDebugger, SetPrompt, (const char *));
803     LLDB_REGISTER_METHOD_CONST(const char *, SBDebugger, GetReproducerPath, ());
804     LLDB_REGISTER_METHOD_CONST(lldb::ScriptLanguage, SBDebugger,
805                                GetScriptLanguage, ());
806     LLDB_REGISTER_METHOD(void, SBDebugger, SetScriptLanguage,
807                          (lldb::ScriptLanguage));
808     LLDB_REGISTER_METHOD(bool, SBDebugger, SetUseExternalEditor, (bool));
809     LLDB_REGISTER_METHOD(bool, SBDebugger, GetUseExternalEditor, ());
810     LLDB_REGISTER_METHOD(bool, SBDebugger, SetUseColor, (bool));
811     LLDB_REGISTER_METHOD_CONST(bool, SBDebugger, GetUseColor, ());
812     LLDB_REGISTER_METHOD(bool, SBDebugger, GetDescription, (lldb::SBStream &));
813     LLDB_REGISTER_METHOD(lldb::user_id_t, SBDebugger, GetID, ());
814     LLDB_REGISTER_METHOD(lldb::SBError, SBDebugger, SetCurrentPlatform,
815                          (const char *));
816     LLDB_REGISTER_METHOD(bool, SBDebugger, SetCurrentPlatformSDKRoot,
817                          (const char *));
818     LLDB_REGISTER_METHOD_CONST(bool, SBDebugger, GetCloseInputOnEOF, ());
819     LLDB_REGISTER_METHOD(void, SBDebugger, SetCloseInputOnEOF, (bool));
820     LLDB_REGISTER_METHOD(lldb::SBTypeCategory, SBDebugger, GetCategory,
821                          (const char *));
822     LLDB_REGISTER_METHOD(lldb::SBTypeCategory, SBDebugger, GetCategory,
823                          (lldb::LanguageType));
824     LLDB_REGISTER_METHOD(lldb::SBTypeCategory, SBDebugger, CreateCategory,
825                          (const char *));
826     LLDB_REGISTER_METHOD(bool, SBDebugger, DeleteCategory, (const char *));
827     LLDB_REGISTER_METHOD(uint32_t, SBDebugger, GetNumCategories, ());
828     LLDB_REGISTER_METHOD(lldb::SBTypeCategory, SBDebugger, GetCategoryAtIndex,
829                          (uint32_t));
830     LLDB_REGISTER_METHOD(lldb::SBTypeCategory, SBDebugger, GetDefaultCategory,
831                          ());
832     LLDB_REGISTER_METHOD(lldb::SBTypeFormat, SBDebugger, GetFormatForType,
833                          (lldb::SBTypeNameSpecifier));
834     LLDB_REGISTER_METHOD(lldb::SBTypeSummary, SBDebugger, GetSummaryForType,
835                          (lldb::SBTypeNameSpecifier));
836     LLDB_REGISTER_METHOD(lldb::SBTypeSynthetic, SBDebugger, GetSyntheticForType,
837                          (lldb::SBTypeNameSpecifier));
838     LLDB_REGISTER_METHOD(lldb::SBTypeFilter, SBDebugger, GetFilterForType,
839                          (lldb::SBTypeNameSpecifier));
840     LLDB_REGISTER_METHOD(bool, SBDebugger, EnableLog,
841                          (const char *, const char **));
842   }
843   {
844     LLDB_REGISTER_CONSTRUCTOR(SBDeclaration, ());
845     LLDB_REGISTER_CONSTRUCTOR(SBDeclaration, (const lldb::SBDeclaration &));
846     LLDB_REGISTER_METHOD(
847         const lldb::SBDeclaration &,
848         SBDeclaration, operator=,(const lldb::SBDeclaration &));
849     LLDB_REGISTER_METHOD_CONST(bool, SBDeclaration, IsValid, ());
850     LLDB_REGISTER_METHOD_CONST(bool, SBDeclaration, operator bool, ());
851     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBDeclaration, GetFileSpec,
852                                ());
853     LLDB_REGISTER_METHOD_CONST(uint32_t, SBDeclaration, GetLine, ());
854     LLDB_REGISTER_METHOD_CONST(uint32_t, SBDeclaration, GetColumn, ());
855     LLDB_REGISTER_METHOD(void, SBDeclaration, SetFileSpec, (lldb::SBFileSpec));
856     LLDB_REGISTER_METHOD(void, SBDeclaration, SetLine, (uint32_t));
857     LLDB_REGISTER_METHOD(void, SBDeclaration, SetColumn, (uint32_t));
858     LLDB_REGISTER_METHOD_CONST(
859         bool, SBDeclaration, operator==,(const lldb::SBDeclaration &));
860     LLDB_REGISTER_METHOD_CONST(
861         bool, SBDeclaration, operator!=,(const lldb::SBDeclaration &));
862     LLDB_REGISTER_METHOD(bool, SBDeclaration, GetDescription,
863                          (lldb::SBStream &));
864   }
865   {
866     LLDB_REGISTER_CONSTRUCTOR(SBError, ());
867     LLDB_REGISTER_CONSTRUCTOR(SBError, (const lldb::SBError &));
868     LLDB_REGISTER_METHOD(const lldb::SBError &,
869                          SBError, operator=,(const lldb::SBError &));
870     LLDB_REGISTER_METHOD_CONST(const char *, SBError, GetCString, ());
871     LLDB_REGISTER_METHOD(void, SBError, Clear, ());
872     LLDB_REGISTER_METHOD_CONST(bool, SBError, Fail, ());
873     LLDB_REGISTER_METHOD_CONST(bool, SBError, Success, ());
874     LLDB_REGISTER_METHOD_CONST(uint32_t, SBError, GetError, ());
875     LLDB_REGISTER_METHOD_CONST(lldb::ErrorType, SBError, GetType, ());
876     LLDB_REGISTER_METHOD(void, SBError, SetError, (uint32_t, lldb::ErrorType));
877     LLDB_REGISTER_METHOD(void, SBError, SetErrorToErrno, ());
878     LLDB_REGISTER_METHOD(void, SBError, SetErrorToGenericError, ());
879     LLDB_REGISTER_METHOD(void, SBError, SetErrorString, (const char *));
880     LLDB_REGISTER_METHOD_CONST(bool, SBError, IsValid, ());
881     LLDB_REGISTER_METHOD_CONST(bool, SBError, operator bool, ());
882     LLDB_REGISTER_METHOD(bool, SBError, GetDescription, (lldb::SBStream &));
883   }
884   {
885     LLDB_REGISTER_CONSTRUCTOR(SBEvent, ());
886     LLDB_REGISTER_CONSTRUCTOR(SBEvent, (uint32_t, const char *, uint32_t));
887     LLDB_REGISTER_CONSTRUCTOR(SBEvent, (lldb::EventSP &));
888     LLDB_REGISTER_CONSTRUCTOR(SBEvent, (lldb_private::Event *));
889     LLDB_REGISTER_CONSTRUCTOR(SBEvent, (const lldb::SBEvent &));
890     LLDB_REGISTER_METHOD(const lldb::SBEvent &,
891                          SBEvent, operator=,(const lldb::SBEvent &));
892     LLDB_REGISTER_METHOD(const char *, SBEvent, GetDataFlavor, ());
893     LLDB_REGISTER_METHOD_CONST(uint32_t, SBEvent, GetType, ());
894     LLDB_REGISTER_METHOD_CONST(lldb::SBBroadcaster, SBEvent, GetBroadcaster,
895                                ());
896     LLDB_REGISTER_METHOD_CONST(const char *, SBEvent, GetBroadcasterClass, ());
897     LLDB_REGISTER_METHOD(bool, SBEvent, BroadcasterMatchesPtr,
898                          (const lldb::SBBroadcaster *));
899     LLDB_REGISTER_METHOD(bool, SBEvent, BroadcasterMatchesRef,
900                          (const lldb::SBBroadcaster &));
901     LLDB_REGISTER_METHOD(void, SBEvent, Clear, ());
902     LLDB_REGISTER_METHOD_CONST(bool, SBEvent, IsValid, ());
903     LLDB_REGISTER_METHOD_CONST(bool, SBEvent, operator bool, ());
904     LLDB_REGISTER_STATIC_METHOD(const char *, SBEvent, GetCStringFromEvent,
905                                 (const lldb::SBEvent &));
906     LLDB_REGISTER_METHOD(bool, SBEvent, GetDescription, (lldb::SBStream &));
907     LLDB_REGISTER_METHOD_CONST(bool, SBEvent, GetDescription,
908                                (lldb::SBStream &));
909   }
910   {
911     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext, ());
912     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext,
913                               (const lldb::SBExecutionContext &));
914     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext,
915                               (lldb::ExecutionContextRefSP));
916     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext, (const lldb::SBTarget &));
917     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext, (const lldb::SBProcess &));
918     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext, (lldb::SBThread));
919     LLDB_REGISTER_CONSTRUCTOR(SBExecutionContext, (const lldb::SBFrame &));
920     LLDB_REGISTER_METHOD(
921         const lldb::SBExecutionContext &,
922         SBExecutionContext, operator=,(const lldb::SBExecutionContext &));
923     LLDB_REGISTER_METHOD_CONST(lldb::SBTarget, SBExecutionContext, GetTarget,
924                                ());
925     LLDB_REGISTER_METHOD_CONST(lldb::SBProcess, SBExecutionContext, GetProcess,
926                                ());
927     LLDB_REGISTER_METHOD_CONST(lldb::SBThread, SBExecutionContext, GetThread,
928                                ());
929     LLDB_REGISTER_METHOD_CONST(lldb::SBFrame, SBExecutionContext, GetFrame, ());
930   }
931   {
932     LLDB_REGISTER_CONSTRUCTOR(SBExpressionOptions, ());
933     LLDB_REGISTER_CONSTRUCTOR(SBExpressionOptions,
934                               (const lldb::SBExpressionOptions &));
935     LLDB_REGISTER_METHOD(
936         const lldb::SBExpressionOptions &,
937         SBExpressionOptions, operator=,(const lldb::SBExpressionOptions &));
938     LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetCoerceResultToId,
939                                ());
940     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetCoerceResultToId,
941                          (bool));
942     LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetUnwindOnError, ());
943     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetUnwindOnError, (bool));
944     LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetIgnoreBreakpoints,
945                                ());
946     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetIgnoreBreakpoints,
947                          (bool));
948     LLDB_REGISTER_METHOD_CONST(lldb::DynamicValueType, SBExpressionOptions,
949                                GetFetchDynamicValue, ());
950     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetFetchDynamicValue,
951                          (lldb::DynamicValueType));
952     LLDB_REGISTER_METHOD_CONST(uint32_t, SBExpressionOptions,
953                                GetTimeoutInMicroSeconds, ());
954     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTimeoutInMicroSeconds,
955                          (uint32_t));
956     LLDB_REGISTER_METHOD_CONST(uint32_t, SBExpressionOptions,
957                                GetOneThreadTimeoutInMicroSeconds, ());
958     LLDB_REGISTER_METHOD(void, SBExpressionOptions,
959                          SetOneThreadTimeoutInMicroSeconds, (uint32_t));
960     LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetTryAllThreads, ());
961     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTryAllThreads, (bool));
962     LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetStopOthers, ());
963     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetStopOthers, (bool));
964     LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetTrapExceptions,
965                                ());
966     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTrapExceptions, (bool));
967     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetLanguage,
968                          (lldb::LanguageType));
969     LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetGenerateDebugInfo, ());
970     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetGenerateDebugInfo,
971                          (bool));
972     LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetSuppressPersistentResult,
973                          ());
974     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetSuppressPersistentResult,
975                          (bool));
976     LLDB_REGISTER_METHOD_CONST(const char *, SBExpressionOptions, GetPrefix,
977                                ());
978     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetPrefix, (const char *));
979     LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetAutoApplyFixIts, ());
980     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetAutoApplyFixIts, (bool));
981     LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetTopLevel, ());
982     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTopLevel, (bool));
983     LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetAllowJIT, ());
984     LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetAllowJIT, (bool));
985   }
986   {
987     LLDB_REGISTER_CONSTRUCTOR(SBFileSpec, ());
988     LLDB_REGISTER_CONSTRUCTOR(SBFileSpec, (const lldb::SBFileSpec &));
989     LLDB_REGISTER_CONSTRUCTOR(SBFileSpec, (const char *));
990     LLDB_REGISTER_CONSTRUCTOR(SBFileSpec, (const char *, bool));
991     LLDB_REGISTER_METHOD(const lldb::SBFileSpec &,
992                          SBFileSpec, operator=,(const lldb::SBFileSpec &));
993     LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, IsValid, ());
994     LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, operator bool, ());
995     LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, Exists, ());
996     LLDB_REGISTER_METHOD(bool, SBFileSpec, ResolveExecutableLocation, ());
997     LLDB_REGISTER_STATIC_METHOD(int, SBFileSpec, ResolvePath,
998                                 (const char *, char *, size_t));
999     LLDB_REGISTER_METHOD_CONST(const char *, SBFileSpec, GetFilename, ());
1000     LLDB_REGISTER_METHOD_CONST(const char *, SBFileSpec, GetDirectory, ());
1001     LLDB_REGISTER_METHOD(void, SBFileSpec, SetFilename, (const char *));
1002     LLDB_REGISTER_METHOD(void, SBFileSpec, SetDirectory, (const char *));
1003     LLDB_REGISTER_METHOD_CONST(uint32_t, SBFileSpec, GetPath, (char *, size_t));
1004     LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, GetDescription,
1005                                (lldb::SBStream &));
1006     LLDB_REGISTER_METHOD(void, SBFileSpec, AppendPathComponent, (const char *));
1007   }
1008   {
1009     LLDB_REGISTER_CONSTRUCTOR(SBFileSpecList, ());
1010     LLDB_REGISTER_CONSTRUCTOR(SBFileSpecList, (const lldb::SBFileSpecList &));
1011     LLDB_REGISTER_METHOD(
1012         const lldb::SBFileSpecList &,
1013         SBFileSpecList, operator=,(const lldb::SBFileSpecList &));
1014     LLDB_REGISTER_METHOD_CONST(uint32_t, SBFileSpecList, GetSize, ());
1015     LLDB_REGISTER_METHOD(void, SBFileSpecList, Append,
1016                          (const lldb::SBFileSpec &));
1017     LLDB_REGISTER_METHOD(bool, SBFileSpecList, AppendIfUnique,
1018                          (const lldb::SBFileSpec &));
1019     LLDB_REGISTER_METHOD(void, SBFileSpecList, Clear, ());
1020     LLDB_REGISTER_METHOD(uint32_t, SBFileSpecList, FindFileIndex,
1021                          (uint32_t, const lldb::SBFileSpec &, bool));
1022     LLDB_REGISTER_METHOD_CONST(const lldb::SBFileSpec, SBFileSpecList,
1023                                GetFileSpecAtIndex, (uint32_t));
1024     LLDB_REGISTER_METHOD_CONST(bool, SBFileSpecList, GetDescription,
1025                                (lldb::SBStream &));
1026   }
1027   {
1028     LLDB_REGISTER_CONSTRUCTOR(SBFrame, ());
1029     LLDB_REGISTER_CONSTRUCTOR(SBFrame, (const lldb::StackFrameSP &));
1030     LLDB_REGISTER_CONSTRUCTOR(SBFrame, (const lldb::SBFrame &));
1031     LLDB_REGISTER_METHOD(const lldb::SBFrame &,
1032                          SBFrame, operator=,(const lldb::SBFrame &));
1033     LLDB_REGISTER_METHOD_CONST(bool, SBFrame, IsValid, ());
1034     LLDB_REGISTER_METHOD_CONST(bool, SBFrame, operator bool, ());
1035     LLDB_REGISTER_METHOD_CONST(lldb::SBSymbolContext, SBFrame, GetSymbolContext,
1036                                (uint32_t));
1037     LLDB_REGISTER_METHOD_CONST(lldb::SBModule, SBFrame, GetModule, ());
1038     LLDB_REGISTER_METHOD_CONST(lldb::SBCompileUnit, SBFrame, GetCompileUnit,
1039                                ());
1040     LLDB_REGISTER_METHOD_CONST(lldb::SBFunction, SBFrame, GetFunction, ());
1041     LLDB_REGISTER_METHOD_CONST(lldb::SBSymbol, SBFrame, GetSymbol, ());
1042     LLDB_REGISTER_METHOD_CONST(lldb::SBBlock, SBFrame, GetBlock, ());
1043     LLDB_REGISTER_METHOD_CONST(lldb::SBBlock, SBFrame, GetFrameBlock, ());
1044     LLDB_REGISTER_METHOD_CONST(lldb::SBLineEntry, SBFrame, GetLineEntry, ());
1045     LLDB_REGISTER_METHOD_CONST(uint32_t, SBFrame, GetFrameID, ());
1046     LLDB_REGISTER_METHOD_CONST(lldb::addr_t, SBFrame, GetCFA, ());
1047     LLDB_REGISTER_METHOD_CONST(lldb::addr_t, SBFrame, GetPC, ());
1048     LLDB_REGISTER_METHOD(bool, SBFrame, SetPC, (lldb::addr_t));
1049     LLDB_REGISTER_METHOD_CONST(lldb::addr_t, SBFrame, GetSP, ());
1050     LLDB_REGISTER_METHOD_CONST(lldb::addr_t, SBFrame, GetFP, ());
1051     LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBFrame, GetPCAddress, ());
1052     LLDB_REGISTER_METHOD(void, SBFrame, Clear, ());
1053     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, GetValueForVariablePath,
1054                          (const char *));
1055     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, GetValueForVariablePath,
1056                          (const char *, lldb::DynamicValueType));
1057     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, FindVariable, (const char *));
1058     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, FindVariable,
1059                          (const char *, lldb::DynamicValueType));
1060     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, FindValue,
1061                          (const char *, lldb::ValueType));
1062     LLDB_REGISTER_METHOD(
1063         lldb::SBValue, SBFrame, FindValue,
1064         (const char *, lldb::ValueType, lldb::DynamicValueType));
1065     LLDB_REGISTER_METHOD_CONST(bool, SBFrame, IsEqual, (const lldb::SBFrame &));
1066     LLDB_REGISTER_METHOD_CONST(bool,
1067                                SBFrame, operator==,(const lldb::SBFrame &));
1068     LLDB_REGISTER_METHOD_CONST(bool,
1069                                SBFrame, operator!=,(const lldb::SBFrame &));
1070     LLDB_REGISTER_METHOD_CONST(lldb::SBThread, SBFrame, GetThread, ());
1071     LLDB_REGISTER_METHOD_CONST(const char *, SBFrame, Disassemble, ());
1072     LLDB_REGISTER_METHOD(lldb::SBValueList, SBFrame, GetVariables,
1073                          (bool, bool, bool, bool));
1074     LLDB_REGISTER_METHOD(lldb::SBValueList, SBFrame, GetVariables,
1075                          (bool, bool, bool, bool, lldb::DynamicValueType));
1076     LLDB_REGISTER_METHOD(lldb::SBValueList, SBFrame, GetVariables,
1077                          (const lldb::SBVariablesOptions &));
1078     LLDB_REGISTER_METHOD(lldb::SBValueList, SBFrame, GetRegisters, ());
1079     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, FindRegister, (const char *));
1080     LLDB_REGISTER_METHOD(bool, SBFrame, GetDescription, (lldb::SBStream &));
1081     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, EvaluateExpression,
1082                          (const char *));
1083     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, EvaluateExpression,
1084                          (const char *, lldb::DynamicValueType));
1085     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, EvaluateExpression,
1086                          (const char *, lldb::DynamicValueType, bool));
1087     LLDB_REGISTER_METHOD(lldb::SBValue, SBFrame, EvaluateExpression,
1088                          (const char *, const lldb::SBExpressionOptions &));
1089     LLDB_REGISTER_METHOD(bool, SBFrame, IsInlined, ());
1090     LLDB_REGISTER_METHOD_CONST(bool, SBFrame, IsInlined, ());
1091     LLDB_REGISTER_METHOD(bool, SBFrame, IsArtificial, ());
1092     LLDB_REGISTER_METHOD_CONST(bool, SBFrame, IsArtificial, ());
1093     LLDB_REGISTER_METHOD(const char *, SBFrame, GetFunctionName, ());
1094     LLDB_REGISTER_METHOD_CONST(lldb::LanguageType, SBFrame, GuessLanguage, ());
1095     LLDB_REGISTER_METHOD_CONST(const char *, SBFrame, GetFunctionName, ());
1096     LLDB_REGISTER_METHOD(const char *, SBFrame, GetDisplayFunctionName, ());
1097   }
1098   {
1099     LLDB_REGISTER_CONSTRUCTOR(SBFunction, ());
1100     LLDB_REGISTER_CONSTRUCTOR(SBFunction, (const lldb::SBFunction &));
1101     LLDB_REGISTER_METHOD(const lldb::SBFunction &,
1102                          SBFunction, operator=,(const lldb::SBFunction &));
1103     LLDB_REGISTER_METHOD_CONST(bool, SBFunction, IsValid, ());
1104     LLDB_REGISTER_METHOD_CONST(bool, SBFunction, operator bool, ());
1105     LLDB_REGISTER_METHOD_CONST(const char *, SBFunction, GetName, ());
1106     LLDB_REGISTER_METHOD_CONST(const char *, SBFunction, GetDisplayName, ());
1107     LLDB_REGISTER_METHOD_CONST(const char *, SBFunction, GetMangledName, ());
1108     LLDB_REGISTER_METHOD_CONST(
1109         bool, SBFunction, operator==,(const lldb::SBFunction &));
1110     LLDB_REGISTER_METHOD_CONST(
1111         bool, SBFunction, operator!=,(const lldb::SBFunction &));
1112     LLDB_REGISTER_METHOD(bool, SBFunction, GetDescription, (lldb::SBStream &));
1113     LLDB_REGISTER_METHOD(lldb::SBInstructionList, SBFunction, GetInstructions,
1114                          (lldb::SBTarget));
1115     LLDB_REGISTER_METHOD(lldb::SBInstructionList, SBFunction, GetInstructions,
1116                          (lldb::SBTarget, const char *));
1117     LLDB_REGISTER_METHOD(lldb::SBAddress, SBFunction, GetStartAddress, ());
1118     LLDB_REGISTER_METHOD(lldb::SBAddress, SBFunction, GetEndAddress, ());
1119     LLDB_REGISTER_METHOD(const char *, SBFunction, GetArgumentName, (uint32_t));
1120     LLDB_REGISTER_METHOD(uint32_t, SBFunction, GetPrologueByteSize, ());
1121     LLDB_REGISTER_METHOD(lldb::SBType, SBFunction, GetType, ());
1122     LLDB_REGISTER_METHOD(lldb::SBBlock, SBFunction, GetBlock, ());
1123     LLDB_REGISTER_METHOD(lldb::LanguageType, SBFunction, GetLanguage, ());
1124     LLDB_REGISTER_METHOD(bool, SBFunction, GetIsOptimized, ());
1125   }
1126   {
1127     LLDB_REGISTER_STATIC_METHOD(lldb::SBFileSpec, SBHostOS, GetProgramFileSpec,
1128                                 ());
1129     LLDB_REGISTER_STATIC_METHOD(lldb::SBFileSpec, SBHostOS, GetLLDBPythonPath,
1130                                 ());
1131     LLDB_REGISTER_STATIC_METHOD(lldb::SBFileSpec, SBHostOS, GetLLDBPath,
1132                                 (lldb::PathType));
1133     LLDB_REGISTER_STATIC_METHOD(lldb::SBFileSpec, SBHostOS,
1134                                 GetUserHomeDirectory, ());
1135     LLDB_REGISTER_STATIC_METHOD(void, SBHostOS, ThreadCreated, (const char *));
1136   }
1137   {
1138     LLDB_REGISTER_CONSTRUCTOR(SBInstruction, ());
1139     LLDB_REGISTER_CONSTRUCTOR(SBInstruction, (const lldb::SBInstruction &));
1140     LLDB_REGISTER_METHOD(
1141         const lldb::SBInstruction &,
1142         SBInstruction, operator=,(const lldb::SBInstruction &));
1143     LLDB_REGISTER_METHOD(bool, SBInstruction, IsValid, ());
1144     LLDB_REGISTER_METHOD_CONST(bool, SBInstruction, operator bool, ());
1145     LLDB_REGISTER_METHOD(lldb::SBAddress, SBInstruction, GetAddress, ());
1146     LLDB_REGISTER_METHOD(const char *, SBInstruction, GetMnemonic,
1147                          (lldb::SBTarget));
1148     LLDB_REGISTER_METHOD(const char *, SBInstruction, GetOperands,
1149                          (lldb::SBTarget));
1150     LLDB_REGISTER_METHOD(const char *, SBInstruction, GetComment,
1151                          (lldb::SBTarget));
1152     LLDB_REGISTER_METHOD(size_t, SBInstruction, GetByteSize, ());
1153     LLDB_REGISTER_METHOD(lldb::SBData, SBInstruction, GetData,
1154                          (lldb::SBTarget));
1155     LLDB_REGISTER_METHOD(bool, SBInstruction, DoesBranch, ());
1156     LLDB_REGISTER_METHOD(bool, SBInstruction, HasDelaySlot, ());
1157     LLDB_REGISTER_METHOD(bool, SBInstruction, CanSetBreakpoint, ());
1158     LLDB_REGISTER_METHOD(bool, SBInstruction, GetDescription,
1159                          (lldb::SBStream &));
1160     LLDB_REGISTER_METHOD(void, SBInstruction, Print, (FILE *));
1161     LLDB_REGISTER_METHOD(bool, SBInstruction, EmulateWithFrame,
1162                          (lldb::SBFrame &, uint32_t));
1163     LLDB_REGISTER_METHOD(bool, SBInstruction, DumpEmulation, (const char *));
1164     LLDB_REGISTER_METHOD(bool, SBInstruction, TestEmulation,
1165                          (lldb::SBStream &, const char *));
1166   }
1167   {
1168     LLDB_REGISTER_CONSTRUCTOR(SBInstructionList, ());
1169     LLDB_REGISTER_CONSTRUCTOR(SBInstructionList,
1170                               (const lldb::SBInstructionList &));
1171     LLDB_REGISTER_METHOD(
1172         const lldb::SBInstructionList &,
1173         SBInstructionList, operator=,(const lldb::SBInstructionList &));
1174     LLDB_REGISTER_METHOD_CONST(bool, SBInstructionList, IsValid, ());
1175     LLDB_REGISTER_METHOD_CONST(bool, SBInstructionList, operator bool, ());
1176     LLDB_REGISTER_METHOD(size_t, SBInstructionList, GetSize, ());
1177     LLDB_REGISTER_METHOD(lldb::SBInstruction, SBInstructionList,
1178                          GetInstructionAtIndex, (uint32_t));
1179     LLDB_REGISTER_METHOD(
1180         size_t, SBInstructionList, GetInstructionsCount,
1181         (const lldb::SBAddress &, const lldb::SBAddress &, bool));
1182     LLDB_REGISTER_METHOD(void, SBInstructionList, Clear, ());
1183     LLDB_REGISTER_METHOD(void, SBInstructionList, AppendInstruction,
1184                          (lldb::SBInstruction));
1185     LLDB_REGISTER_METHOD(void, SBInstructionList, Print, (FILE *));
1186     LLDB_REGISTER_METHOD(bool, SBInstructionList, GetDescription,
1187                          (lldb::SBStream &));
1188     LLDB_REGISTER_METHOD(bool, SBInstructionList,
1189                          DumpEmulationForAllInstructions, (const char *));
1190   }
1191   {
1192     LLDB_REGISTER_STATIC_METHOD(lldb::LanguageType, SBLanguageRuntime,
1193                                 GetLanguageTypeFromString, (const char *));
1194     LLDB_REGISTER_STATIC_METHOD(const char *, SBLanguageRuntime,
1195                                 GetNameForLanguageType, (lldb::LanguageType));
1196   }
1197   {
1198     LLDB_REGISTER_CONSTRUCTOR(SBLaunchInfo, (const char **));
1199     LLDB_REGISTER_METHOD(lldb::pid_t, SBLaunchInfo, GetProcessID, ());
1200     LLDB_REGISTER_METHOD(uint32_t, SBLaunchInfo, GetUserID, ());
1201     LLDB_REGISTER_METHOD(uint32_t, SBLaunchInfo, GetGroupID, ());
1202     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, UserIDIsValid, ());
1203     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, GroupIDIsValid, ());
1204     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetUserID, (uint32_t));
1205     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetGroupID, (uint32_t));
1206     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBLaunchInfo, GetExecutableFile, ());
1207     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetExecutableFile,
1208                          (lldb::SBFileSpec, bool));
1209     LLDB_REGISTER_METHOD(lldb::SBListener, SBLaunchInfo, GetListener, ());
1210     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetListener, (lldb::SBListener &));
1211     LLDB_REGISTER_METHOD(uint32_t, SBLaunchInfo, GetNumArguments, ());
1212     LLDB_REGISTER_METHOD(const char *, SBLaunchInfo, GetArgumentAtIndex,
1213                          (uint32_t));
1214     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetArguments,
1215                          (const char **, bool));
1216     LLDB_REGISTER_METHOD(uint32_t, SBLaunchInfo, GetNumEnvironmentEntries, ());
1217     LLDB_REGISTER_METHOD(const char *, SBLaunchInfo, GetEnvironmentEntryAtIndex,
1218                          (uint32_t));
1219     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetEnvironmentEntries,
1220                          (const char **, bool));
1221     LLDB_REGISTER_METHOD(void, SBLaunchInfo, Clear, ());
1222     LLDB_REGISTER_METHOD_CONST(const char *, SBLaunchInfo, GetWorkingDirectory,
1223                                ());
1224     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetWorkingDirectory,
1225                          (const char *));
1226     LLDB_REGISTER_METHOD(uint32_t, SBLaunchInfo, GetLaunchFlags, ());
1227     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetLaunchFlags, (uint32_t));
1228     LLDB_REGISTER_METHOD(const char *, SBLaunchInfo, GetProcessPluginName, ());
1229     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetProcessPluginName,
1230                          (const char *));
1231     LLDB_REGISTER_METHOD(const char *, SBLaunchInfo, GetShell, ());
1232     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetShell, (const char *));
1233     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, GetShellExpandArguments, ());
1234     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetShellExpandArguments, (bool));
1235     LLDB_REGISTER_METHOD(uint32_t, SBLaunchInfo, GetResumeCount, ());
1236     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetResumeCount, (uint32_t));
1237     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, AddCloseFileAction, (int));
1238     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, AddDuplicateFileAction,
1239                          (int, int));
1240     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, AddOpenFileAction,
1241                          (int, const char *, bool, bool));
1242     LLDB_REGISTER_METHOD(bool, SBLaunchInfo, AddSuppressFileAction,
1243                          (int, bool, bool));
1244     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetLaunchEventData,
1245                          (const char *));
1246     LLDB_REGISTER_METHOD_CONST(const char *, SBLaunchInfo, GetLaunchEventData,
1247                                ());
1248     LLDB_REGISTER_METHOD(void, SBLaunchInfo, SetDetachOnError, (bool));
1249     LLDB_REGISTER_METHOD_CONST(bool, SBLaunchInfo, GetDetachOnError, ());
1250   }
1251   {
1252     LLDB_REGISTER_CONSTRUCTOR(SBLineEntry, ());
1253     LLDB_REGISTER_CONSTRUCTOR(SBLineEntry, (const lldb::SBLineEntry &));
1254     LLDB_REGISTER_METHOD(const lldb::SBLineEntry &,
1255                          SBLineEntry, operator=,(const lldb::SBLineEntry &));
1256     LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBLineEntry, GetStartAddress,
1257                                ());
1258     LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBLineEntry, GetEndAddress, ());
1259     LLDB_REGISTER_METHOD_CONST(bool, SBLineEntry, IsValid, ());
1260     LLDB_REGISTER_METHOD_CONST(bool, SBLineEntry, operator bool, ());
1261     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBLineEntry, GetFileSpec, ());
1262     LLDB_REGISTER_METHOD_CONST(uint32_t, SBLineEntry, GetLine, ());
1263     LLDB_REGISTER_METHOD_CONST(uint32_t, SBLineEntry, GetColumn, ());
1264     LLDB_REGISTER_METHOD(void, SBLineEntry, SetFileSpec, (lldb::SBFileSpec));
1265     LLDB_REGISTER_METHOD(void, SBLineEntry, SetLine, (uint32_t));
1266     LLDB_REGISTER_METHOD(void, SBLineEntry, SetColumn, (uint32_t));
1267     LLDB_REGISTER_METHOD_CONST(
1268         bool, SBLineEntry, operator==,(const lldb::SBLineEntry &));
1269     LLDB_REGISTER_METHOD_CONST(
1270         bool, SBLineEntry, operator!=,(const lldb::SBLineEntry &));
1271     LLDB_REGISTER_METHOD(bool, SBLineEntry, GetDescription, (lldb::SBStream &));
1272   }
1273   {
1274     LLDB_REGISTER_CONSTRUCTOR(SBListener, ());
1275     LLDB_REGISTER_CONSTRUCTOR(SBListener, (const char *));
1276     LLDB_REGISTER_CONSTRUCTOR(SBListener, (const lldb::SBListener &));
1277     LLDB_REGISTER_METHOD(const lldb::SBListener &,
1278                          SBListener, operator=,(const lldb::SBListener &));
1279     LLDB_REGISTER_METHOD_CONST(bool, SBListener, IsValid, ());
1280     LLDB_REGISTER_METHOD_CONST(bool, SBListener, operator bool, ());
1281     LLDB_REGISTER_METHOD(void, SBListener, AddEvent, (const lldb::SBEvent &));
1282     LLDB_REGISTER_METHOD(void, SBListener, Clear, ());
1283     LLDB_REGISTER_METHOD(uint32_t, SBListener, StartListeningForEventClass,
1284                          (lldb::SBDebugger &, const char *, uint32_t));
1285     LLDB_REGISTER_METHOD(bool, SBListener, StopListeningForEventClass,
1286                          (lldb::SBDebugger &, const char *, uint32_t));
1287     LLDB_REGISTER_METHOD(uint32_t, SBListener, StartListeningForEvents,
1288                          (const lldb::SBBroadcaster &, uint32_t));
1289     LLDB_REGISTER_METHOD(bool, SBListener, StopListeningForEvents,
1290                          (const lldb::SBBroadcaster &, uint32_t));
1291     LLDB_REGISTER_METHOD(bool, SBListener, WaitForEvent,
1292                          (uint32_t, lldb::SBEvent &));
1293     LLDB_REGISTER_METHOD(
1294         bool, SBListener, WaitForEventForBroadcaster,
1295         (uint32_t, const lldb::SBBroadcaster &, lldb::SBEvent &));
1296     LLDB_REGISTER_METHOD(
1297         bool, SBListener, WaitForEventForBroadcasterWithType,
1298         (uint32_t, const lldb::SBBroadcaster &, uint32_t, lldb::SBEvent &));
1299     LLDB_REGISTER_METHOD(bool, SBListener, PeekAtNextEvent, (lldb::SBEvent &));
1300     LLDB_REGISTER_METHOD(bool, SBListener, PeekAtNextEventForBroadcaster,
1301                          (const lldb::SBBroadcaster &, lldb::SBEvent &));
1302     LLDB_REGISTER_METHOD(
1303         bool, SBListener, PeekAtNextEventForBroadcasterWithType,
1304         (const lldb::SBBroadcaster &, uint32_t, lldb::SBEvent &));
1305     LLDB_REGISTER_METHOD(bool, SBListener, GetNextEvent, (lldb::SBEvent &));
1306     LLDB_REGISTER_METHOD(bool, SBListener, GetNextEventForBroadcaster,
1307                          (const lldb::SBBroadcaster &, lldb::SBEvent &));
1308     LLDB_REGISTER_METHOD(
1309         bool, SBListener, GetNextEventForBroadcasterWithType,
1310         (const lldb::SBBroadcaster &, uint32_t, lldb::SBEvent &));
1311     LLDB_REGISTER_METHOD(bool, SBListener, HandleBroadcastEvent,
1312                          (const lldb::SBEvent &));
1313   }
1314   {
1315     LLDB_REGISTER_CONSTRUCTOR(SBMemoryRegionInfo, ());
1316     LLDB_REGISTER_CONSTRUCTOR(SBMemoryRegionInfo,
1317                               (const lldb::SBMemoryRegionInfo &));
1318     LLDB_REGISTER_METHOD(
1319         const lldb::SBMemoryRegionInfo &,
1320         SBMemoryRegionInfo, operator=,(const lldb::SBMemoryRegionInfo &));
1321     LLDB_REGISTER_METHOD(void, SBMemoryRegionInfo, Clear, ());
1322     LLDB_REGISTER_METHOD_CONST(
1323         bool,
1324         SBMemoryRegionInfo, operator==,(const lldb::SBMemoryRegionInfo &));
1325     LLDB_REGISTER_METHOD_CONST(
1326         bool,
1327         SBMemoryRegionInfo, operator!=,(const lldb::SBMemoryRegionInfo &));
1328     LLDB_REGISTER_METHOD(lldb::addr_t, SBMemoryRegionInfo, GetRegionBase, ());
1329     LLDB_REGISTER_METHOD(lldb::addr_t, SBMemoryRegionInfo, GetRegionEnd, ());
1330     LLDB_REGISTER_METHOD(bool, SBMemoryRegionInfo, IsReadable, ());
1331     LLDB_REGISTER_METHOD(bool, SBMemoryRegionInfo, IsWritable, ());
1332     LLDB_REGISTER_METHOD(bool, SBMemoryRegionInfo, IsExecutable, ());
1333     LLDB_REGISTER_METHOD(bool, SBMemoryRegionInfo, IsMapped, ());
1334     LLDB_REGISTER_METHOD(const char *, SBMemoryRegionInfo, GetName, ());
1335     LLDB_REGISTER_METHOD(bool, SBMemoryRegionInfo, GetDescription,
1336                          (lldb::SBStream &));
1337   }
1338   {
1339     LLDB_REGISTER_CONSTRUCTOR(SBMemoryRegionInfoList, ());
1340     LLDB_REGISTER_CONSTRUCTOR(SBMemoryRegionInfoList,
1341                               (const lldb::SBMemoryRegionInfoList &));
1342     LLDB_REGISTER_METHOD(
1343         const lldb::SBMemoryRegionInfoList &,
1344         SBMemoryRegionInfoList, operator=,(
1345                                     const lldb::SBMemoryRegionInfoList &));
1346     LLDB_REGISTER_METHOD_CONST(uint32_t, SBMemoryRegionInfoList, GetSize, ());
1347     LLDB_REGISTER_METHOD(bool, SBMemoryRegionInfoList, GetMemoryRegionAtIndex,
1348                          (uint32_t, lldb::SBMemoryRegionInfo &));
1349     LLDB_REGISTER_METHOD(void, SBMemoryRegionInfoList, Clear, ());
1350     LLDB_REGISTER_METHOD(void, SBMemoryRegionInfoList, Append,
1351                          (lldb::SBMemoryRegionInfo &));
1352     LLDB_REGISTER_METHOD(void, SBMemoryRegionInfoList, Append,
1353                          (lldb::SBMemoryRegionInfoList &));
1354   }
1355   {
1356     LLDB_REGISTER_CONSTRUCTOR(SBModule, ());
1357     LLDB_REGISTER_CONSTRUCTOR(SBModule, (const lldb::SBModuleSpec &));
1358     LLDB_REGISTER_CONSTRUCTOR(SBModule, (const lldb::SBModule &));
1359     LLDB_REGISTER_CONSTRUCTOR(SBModule, (lldb::SBProcess &, lldb::addr_t));
1360     LLDB_REGISTER_METHOD(const lldb::SBModule &,
1361                          SBModule, operator=,(const lldb::SBModule &));
1362     LLDB_REGISTER_METHOD_CONST(bool, SBModule, IsValid, ());
1363     LLDB_REGISTER_METHOD_CONST(bool, SBModule, operator bool, ());
1364     LLDB_REGISTER_METHOD(void, SBModule, Clear, ());
1365     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBModule, GetFileSpec, ());
1366     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBModule, GetPlatformFileSpec,
1367                                ());
1368     LLDB_REGISTER_METHOD(bool, SBModule, SetPlatformFileSpec,
1369                          (const lldb::SBFileSpec &));
1370     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBModule, GetRemoteInstallFileSpec,
1371                          ());
1372     LLDB_REGISTER_METHOD(bool, SBModule, SetRemoteInstallFileSpec,
1373                          (lldb::SBFileSpec &));
1374     LLDB_REGISTER_METHOD_CONST(const char *, SBModule, GetUUIDString, ());
1375     LLDB_REGISTER_METHOD_CONST(bool,
1376                                SBModule, operator==,(const lldb::SBModule &));
1377     LLDB_REGISTER_METHOD_CONST(bool,
1378                                SBModule, operator!=,(const lldb::SBModule &));
1379     LLDB_REGISTER_METHOD(lldb::SBAddress, SBModule, ResolveFileAddress,
1380                          (lldb::addr_t));
1381     LLDB_REGISTER_METHOD(lldb::SBSymbolContext, SBModule,
1382                          ResolveSymbolContextForAddress,
1383                          (const lldb::SBAddress &, uint32_t));
1384     LLDB_REGISTER_METHOD(bool, SBModule, GetDescription, (lldb::SBStream &));
1385     LLDB_REGISTER_METHOD(uint32_t, SBModule, GetNumCompileUnits, ());
1386     LLDB_REGISTER_METHOD(lldb::SBCompileUnit, SBModule, GetCompileUnitAtIndex,
1387                          (uint32_t));
1388     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBModule, FindCompileUnits,
1389                          (const lldb::SBFileSpec &));
1390     LLDB_REGISTER_METHOD(size_t, SBModule, GetNumSymbols, ());
1391     LLDB_REGISTER_METHOD(lldb::SBSymbol, SBModule, GetSymbolAtIndex, (size_t));
1392     LLDB_REGISTER_METHOD(lldb::SBSymbol, SBModule, FindSymbol,
1393                          (const char *, lldb::SymbolType));
1394     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBModule, FindSymbols,
1395                          (const char *, lldb::SymbolType));
1396     LLDB_REGISTER_METHOD(size_t, SBModule, GetNumSections, ());
1397     LLDB_REGISTER_METHOD(lldb::SBSection, SBModule, GetSectionAtIndex,
1398                          (size_t));
1399     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBModule, FindFunctions,
1400                          (const char *, uint32_t));
1401     LLDB_REGISTER_METHOD(lldb::SBValueList, SBModule, FindGlobalVariables,
1402                          (lldb::SBTarget &, const char *, uint32_t));
1403     LLDB_REGISTER_METHOD(lldb::SBValue, SBModule, FindFirstGlobalVariable,
1404                          (lldb::SBTarget &, const char *));
1405     LLDB_REGISTER_METHOD(lldb::SBType, SBModule, FindFirstType, (const char *));
1406     LLDB_REGISTER_METHOD(lldb::SBType, SBModule, GetBasicType,
1407                          (lldb::BasicType));
1408     LLDB_REGISTER_METHOD(lldb::SBTypeList, SBModule, FindTypes, (const char *));
1409     LLDB_REGISTER_METHOD(lldb::SBType, SBModule, GetTypeByID,
1410                          (lldb::user_id_t));
1411     LLDB_REGISTER_METHOD(lldb::SBTypeList, SBModule, GetTypes, (uint32_t));
1412     LLDB_REGISTER_METHOD(lldb::SBSection, SBModule, FindSection,
1413                          (const char *));
1414     LLDB_REGISTER_METHOD(lldb::ByteOrder, SBModule, GetByteOrder, ());
1415     LLDB_REGISTER_METHOD(const char *, SBModule, GetTriple, ());
1416     LLDB_REGISTER_METHOD(uint32_t, SBModule, GetAddressByteSize, ());
1417     LLDB_REGISTER_METHOD(uint32_t, SBModule, GetVersion,
1418                          (uint32_t *, uint32_t));
1419     LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBModule, GetSymbolFileSpec,
1420                                ());
1421     LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBModule,
1422                                GetObjectFileHeaderAddress, ());
1423     LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBModule,
1424                                GetObjectFileEntryPointAddress, ());
1425   }
1426   {
1427     LLDB_REGISTER_CONSTRUCTOR(SBModuleSpec, ());
1428     LLDB_REGISTER_CONSTRUCTOR(SBModuleSpec, (const lldb::SBModuleSpec &));
1429     LLDB_REGISTER_METHOD(const lldb::SBModuleSpec &,
1430                          SBModuleSpec, operator=,(const lldb::SBModuleSpec &));
1431     LLDB_REGISTER_METHOD_CONST(bool, SBModuleSpec, IsValid, ());
1432     LLDB_REGISTER_METHOD_CONST(bool, SBModuleSpec, operator bool, ());
1433     LLDB_REGISTER_METHOD(void, SBModuleSpec, Clear, ());
1434     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBModuleSpec, GetFileSpec, ());
1435     LLDB_REGISTER_METHOD(void, SBModuleSpec, SetFileSpec,
1436                          (const lldb::SBFileSpec &));
1437     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBModuleSpec, GetPlatformFileSpec,
1438                          ());
1439     LLDB_REGISTER_METHOD(void, SBModuleSpec, SetPlatformFileSpec,
1440                          (const lldb::SBFileSpec &));
1441     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBModuleSpec, GetSymbolFileSpec, ());
1442     LLDB_REGISTER_METHOD(void, SBModuleSpec, SetSymbolFileSpec,
1443                          (const lldb::SBFileSpec &));
1444     LLDB_REGISTER_METHOD(const char *, SBModuleSpec, GetObjectName, ());
1445     LLDB_REGISTER_METHOD(void, SBModuleSpec, SetObjectName, (const char *));
1446     LLDB_REGISTER_METHOD(const char *, SBModuleSpec, GetTriple, ());
1447     LLDB_REGISTER_METHOD(void, SBModuleSpec, SetTriple, (const char *));
1448     LLDB_REGISTER_METHOD(size_t, SBModuleSpec, GetUUIDLength, ());
1449     LLDB_REGISTER_METHOD(bool, SBModuleSpec, GetDescription,
1450                          (lldb::SBStream &));
1451     LLDB_REGISTER_CONSTRUCTOR(SBModuleSpecList, ());
1452     LLDB_REGISTER_CONSTRUCTOR(SBModuleSpecList,
1453                               (const lldb::SBModuleSpecList &));
1454     LLDB_REGISTER_METHOD(
1455         lldb::SBModuleSpecList &,
1456         SBModuleSpecList, operator=,(const lldb::SBModuleSpecList &));
1457     LLDB_REGISTER_STATIC_METHOD(lldb::SBModuleSpecList, SBModuleSpecList,
1458                                 GetModuleSpecifications, (const char *));
1459     LLDB_REGISTER_METHOD(void, SBModuleSpecList, Append,
1460                          (const lldb::SBModuleSpec &));
1461     LLDB_REGISTER_METHOD(void, SBModuleSpecList, Append,
1462                          (const lldb::SBModuleSpecList &));
1463     LLDB_REGISTER_METHOD(size_t, SBModuleSpecList, GetSize, ());
1464     LLDB_REGISTER_METHOD(lldb::SBModuleSpec, SBModuleSpecList, GetSpecAtIndex,
1465                          (size_t));
1466     LLDB_REGISTER_METHOD(lldb::SBModuleSpec, SBModuleSpecList,
1467                          FindFirstMatchingSpec, (const lldb::SBModuleSpec &));
1468     LLDB_REGISTER_METHOD(lldb::SBModuleSpecList, SBModuleSpecList,
1469                          FindMatchingSpecs, (const lldb::SBModuleSpec &));
1470     LLDB_REGISTER_METHOD(bool, SBModuleSpecList, GetDescription,
1471                          (lldb::SBStream &));
1472   }
1473   {
1474     LLDB_REGISTER_CONSTRUCTOR(SBPlatformConnectOptions, (const char *));
1475     LLDB_REGISTER_CONSTRUCTOR(SBPlatformConnectOptions,
1476                               (const lldb::SBPlatformConnectOptions &));
1477     LLDB_REGISTER_METHOD(
1478         void,
1479         SBPlatformConnectOptions, operator=,(
1480                                       const lldb::SBPlatformConnectOptions &));
1481     LLDB_REGISTER_METHOD(const char *, SBPlatformConnectOptions, GetURL, ());
1482     LLDB_REGISTER_METHOD(void, SBPlatformConnectOptions, SetURL,
1483                          (const char *));
1484     LLDB_REGISTER_METHOD(bool, SBPlatformConnectOptions, GetRsyncEnabled, ());
1485     LLDB_REGISTER_METHOD(void, SBPlatformConnectOptions, EnableRsync,
1486                          (const char *, const char *, bool));
1487     LLDB_REGISTER_METHOD(void, SBPlatformConnectOptions, DisableRsync, ());
1488     LLDB_REGISTER_METHOD(const char *, SBPlatformConnectOptions,
1489                          GetLocalCacheDirectory, ());
1490     LLDB_REGISTER_METHOD(void, SBPlatformConnectOptions, SetLocalCacheDirectory,
1491                          (const char *));
1492     LLDB_REGISTER_CONSTRUCTOR(SBPlatformShellCommand, (const char *));
1493     LLDB_REGISTER_CONSTRUCTOR(SBPlatformShellCommand,
1494                               (const lldb::SBPlatformShellCommand &));
1495     LLDB_REGISTER_METHOD(void, SBPlatformShellCommand, Clear, ());
1496     LLDB_REGISTER_METHOD(const char *, SBPlatformShellCommand, GetCommand, ());
1497     LLDB_REGISTER_METHOD(void, SBPlatformShellCommand, SetCommand,
1498                          (const char *));
1499     LLDB_REGISTER_METHOD(const char *, SBPlatformShellCommand,
1500                          GetWorkingDirectory, ());
1501     LLDB_REGISTER_METHOD(void, SBPlatformShellCommand, SetWorkingDirectory,
1502                          (const char *));
1503     LLDB_REGISTER_METHOD(uint32_t, SBPlatformShellCommand, GetTimeoutSeconds,
1504                          ());
1505     LLDB_REGISTER_METHOD(void, SBPlatformShellCommand, SetTimeoutSeconds,
1506                          (uint32_t));
1507     LLDB_REGISTER_METHOD(int, SBPlatformShellCommand, GetSignal, ());
1508     LLDB_REGISTER_METHOD(int, SBPlatformShellCommand, GetStatus, ());
1509     LLDB_REGISTER_METHOD(const char *, SBPlatformShellCommand, GetOutput, ());
1510     LLDB_REGISTER_CONSTRUCTOR(SBPlatform, ());
1511     LLDB_REGISTER_CONSTRUCTOR(SBPlatform, (const char *));
1512     LLDB_REGISTER_METHOD_CONST(bool, SBPlatform, IsValid, ());
1513     LLDB_REGISTER_METHOD_CONST(bool, SBPlatform, operator bool, ());
1514     LLDB_REGISTER_METHOD(void, SBPlatform, Clear, ());
1515     LLDB_REGISTER_METHOD(const char *, SBPlatform, GetName, ());
1516     LLDB_REGISTER_METHOD(const char *, SBPlatform, GetWorkingDirectory, ());
1517     LLDB_REGISTER_METHOD(bool, SBPlatform, SetWorkingDirectory, (const char *));
1518     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, ConnectRemote,
1519                          (lldb::SBPlatformConnectOptions &));
1520     LLDB_REGISTER_METHOD(void, SBPlatform, DisconnectRemote, ());
1521     LLDB_REGISTER_METHOD(bool, SBPlatform, IsConnected, ());
1522     LLDB_REGISTER_METHOD(const char *, SBPlatform, GetTriple, ());
1523     LLDB_REGISTER_METHOD(const char *, SBPlatform, GetOSBuild, ());
1524     LLDB_REGISTER_METHOD(const char *, SBPlatform, GetOSDescription, ());
1525     LLDB_REGISTER_METHOD(const char *, SBPlatform, GetHostname, ());
1526     LLDB_REGISTER_METHOD(uint32_t, SBPlatform, GetOSMajorVersion, ());
1527     LLDB_REGISTER_METHOD(uint32_t, SBPlatform, GetOSMinorVersion, ());
1528     LLDB_REGISTER_METHOD(uint32_t, SBPlatform, GetOSUpdateVersion, ());
1529     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, Get,
1530                          (lldb::SBFileSpec &, lldb::SBFileSpec &));
1531     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, Put,
1532                          (lldb::SBFileSpec &, lldb::SBFileSpec &));
1533     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, Install,
1534                          (lldb::SBFileSpec &, lldb::SBFileSpec &));
1535     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, Run,
1536                          (lldb::SBPlatformShellCommand &));
1537     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, Launch,
1538                          (lldb::SBLaunchInfo &));
1539     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, Kill, (const lldb::pid_t));
1540     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, MakeDirectory,
1541                          (const char *, uint32_t));
1542     LLDB_REGISTER_METHOD(uint32_t, SBPlatform, GetFilePermissions,
1543                          (const char *));
1544     LLDB_REGISTER_METHOD(lldb::SBError, SBPlatform, SetFilePermissions,
1545                          (const char *, uint32_t));
1546     LLDB_REGISTER_METHOD_CONST(lldb::SBUnixSignals, SBPlatform, GetUnixSignals,
1547                                ());
1548   }
1549   {
1550     LLDB_REGISTER_CONSTRUCTOR(SBProcess, ());
1551     LLDB_REGISTER_CONSTRUCTOR(SBProcess, (const lldb::SBProcess &));
1552     LLDB_REGISTER_CONSTRUCTOR(SBProcess, (const lldb::ProcessSP &));
1553     LLDB_REGISTER_METHOD(const lldb::SBProcess &,
1554                          SBProcess, operator=,(const lldb::SBProcess &));
1555     LLDB_REGISTER_STATIC_METHOD(const char *, SBProcess,
1556                                 GetBroadcasterClassName, ());
1557     LLDB_REGISTER_METHOD(const char *, SBProcess, GetPluginName, ());
1558     LLDB_REGISTER_METHOD(const char *, SBProcess, GetShortPluginName, ());
1559     LLDB_REGISTER_METHOD(void, SBProcess, Clear, ());
1560     LLDB_REGISTER_METHOD_CONST(bool, SBProcess, IsValid, ());
1561     LLDB_REGISTER_METHOD_CONST(bool, SBProcess, operator bool, ());
1562     LLDB_REGISTER_METHOD(bool, SBProcess, RemoteLaunch,
1563                          (const char **, const char **, const char *,
1564                           const char *, const char *, const char *, uint32_t,
1565                           bool, lldb::SBError &));
1566     LLDB_REGISTER_METHOD(bool, SBProcess, RemoteAttachToProcessWithID,
1567                          (lldb::pid_t, lldb::SBError &));
1568     LLDB_REGISTER_METHOD(uint32_t, SBProcess, GetNumThreads, ());
1569     LLDB_REGISTER_METHOD_CONST(lldb::SBThread, SBProcess, GetSelectedThread,
1570                                ());
1571     LLDB_REGISTER_METHOD(lldb::SBThread, SBProcess, CreateOSPluginThread,
1572                          (lldb::tid_t, lldb::addr_t));
1573     LLDB_REGISTER_METHOD_CONST(lldb::SBTarget, SBProcess, GetTarget, ());
1574     LLDB_REGISTER_METHOD(size_t, SBProcess, PutSTDIN, (const char *, size_t));
1575     LLDB_REGISTER_METHOD_CONST(size_t, SBProcess, GetSTDOUT, (char *, size_t));
1576     LLDB_REGISTER_METHOD_CONST(size_t, SBProcess, GetSTDERR, (char *, size_t));
1577     LLDB_REGISTER_METHOD_CONST(size_t, SBProcess, GetAsyncProfileData,
1578                                (char *, size_t));
1579     LLDB_REGISTER_METHOD(lldb::SBTrace, SBProcess, StartTrace,
1580                          (lldb::SBTraceOptions &, lldb::SBError &));
1581     LLDB_REGISTER_METHOD_CONST(void, SBProcess, ReportEventState,
1582                                (const lldb::SBEvent &, FILE *));
1583     LLDB_REGISTER_METHOD(
1584         void, SBProcess, AppendEventStateReport,
1585         (const lldb::SBEvent &, lldb::SBCommandReturnObject &));
1586     LLDB_REGISTER_METHOD(bool, SBProcess, SetSelectedThread,
1587                          (const lldb::SBThread &));
1588     LLDB_REGISTER_METHOD(bool, SBProcess, SetSelectedThreadByID, (lldb::tid_t));
1589     LLDB_REGISTER_METHOD(bool, SBProcess, SetSelectedThreadByIndexID,
1590                          (uint32_t));
1591     LLDB_REGISTER_METHOD(lldb::SBThread, SBProcess, GetThreadAtIndex, (size_t));
1592     LLDB_REGISTER_METHOD(uint32_t, SBProcess, GetNumQueues, ());
1593     LLDB_REGISTER_METHOD(lldb::SBQueue, SBProcess, GetQueueAtIndex, (size_t));
1594     LLDB_REGISTER_METHOD(uint32_t, SBProcess, GetStopID, (bool));
1595     LLDB_REGISTER_METHOD(lldb::SBEvent, SBProcess, GetStopEventForStopID,
1596                          (uint32_t));
1597     LLDB_REGISTER_METHOD(lldb::StateType, SBProcess, GetState, ());
1598     LLDB_REGISTER_METHOD(int, SBProcess, GetExitStatus, ());
1599     LLDB_REGISTER_METHOD(const char *, SBProcess, GetExitDescription, ());
1600     LLDB_REGISTER_METHOD(lldb::pid_t, SBProcess, GetProcessID, ());
1601     LLDB_REGISTER_METHOD(uint32_t, SBProcess, GetUniqueID, ());
1602     LLDB_REGISTER_METHOD_CONST(lldb::ByteOrder, SBProcess, GetByteOrder, ());
1603     LLDB_REGISTER_METHOD_CONST(uint32_t, SBProcess, GetAddressByteSize, ());
1604     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Continue, ());
1605     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Destroy, ());
1606     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Stop, ());
1607     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Kill, ());
1608     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Detach, ());
1609     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Detach, (bool));
1610     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, Signal, (int));
1611     LLDB_REGISTER_METHOD(lldb::SBUnixSignals, SBProcess, GetUnixSignals, ());
1612     LLDB_REGISTER_METHOD(void, SBProcess, SendAsyncInterrupt, ());
1613     LLDB_REGISTER_METHOD(lldb::SBThread, SBProcess, GetThreadByID,
1614                          (lldb::tid_t));
1615     LLDB_REGISTER_METHOD(lldb::SBThread, SBProcess, GetThreadByIndexID,
1616                          (uint32_t));
1617     LLDB_REGISTER_STATIC_METHOD(lldb::StateType, SBProcess, GetStateFromEvent,
1618                                 (const lldb::SBEvent &));
1619     LLDB_REGISTER_STATIC_METHOD(bool, SBProcess, GetRestartedFromEvent,
1620                                 (const lldb::SBEvent &));
1621     LLDB_REGISTER_STATIC_METHOD(size_t, SBProcess,
1622                                 GetNumRestartedReasonsFromEvent,
1623                                 (const lldb::SBEvent &));
1624     LLDB_REGISTER_STATIC_METHOD(const char *, SBProcess,
1625                                 GetRestartedReasonAtIndexFromEvent,
1626                                 (const lldb::SBEvent &, size_t));
1627     LLDB_REGISTER_STATIC_METHOD(lldb::SBProcess, SBProcess, GetProcessFromEvent,
1628                                 (const lldb::SBEvent &));
1629     LLDB_REGISTER_STATIC_METHOD(bool, SBProcess, GetInterruptedFromEvent,
1630                                 (const lldb::SBEvent &));
1631     LLDB_REGISTER_STATIC_METHOD(lldb::SBStructuredData, SBProcess,
1632                                 GetStructuredDataFromEvent,
1633                                 (const lldb::SBEvent &));
1634     LLDB_REGISTER_STATIC_METHOD(bool, SBProcess, EventIsProcessEvent,
1635                                 (const lldb::SBEvent &));
1636     LLDB_REGISTER_STATIC_METHOD(bool, SBProcess, EventIsStructuredDataEvent,
1637                                 (const lldb::SBEvent &));
1638     LLDB_REGISTER_METHOD_CONST(lldb::SBBroadcaster, SBProcess, GetBroadcaster,
1639                                ());
1640     LLDB_REGISTER_STATIC_METHOD(const char *, SBProcess, GetBroadcasterClass,
1641                                 ());
1642     LLDB_REGISTER_METHOD(uint64_t, SBProcess, ReadUnsignedFromMemory,
1643                          (lldb::addr_t, uint32_t, lldb::SBError &));
1644     LLDB_REGISTER_METHOD(lldb::addr_t, SBProcess, ReadPointerFromMemory,
1645                          (lldb::addr_t, lldb::SBError &));
1646     LLDB_REGISTER_METHOD(bool, SBProcess, GetDescription, (lldb::SBStream &));
1647     LLDB_REGISTER_METHOD_CONST(uint32_t, SBProcess,
1648                                GetNumSupportedHardwareWatchpoints,
1649                                (lldb::SBError &));
1650     LLDB_REGISTER_METHOD(uint32_t, SBProcess, LoadImage,
1651                          (lldb::SBFileSpec &, lldb::SBError &));
1652     LLDB_REGISTER_METHOD(
1653         uint32_t, SBProcess, LoadImage,
1654         (const lldb::SBFileSpec &, const lldb::SBFileSpec &, lldb::SBError &));
1655     LLDB_REGISTER_METHOD(uint32_t, SBProcess, LoadImageUsingPaths,
1656                          (const lldb::SBFileSpec &, lldb::SBStringList &,
1657                           lldb::SBFileSpec &, lldb::SBError &));
1658     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, UnloadImage, (uint32_t));
1659     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, SendEventData,
1660                          (const char *));
1661     LLDB_REGISTER_METHOD(uint32_t, SBProcess, GetNumExtendedBacktraceTypes, ());
1662     LLDB_REGISTER_METHOD(const char *, SBProcess,
1663                          GetExtendedBacktraceTypeAtIndex, (uint32_t));
1664     LLDB_REGISTER_METHOD(lldb::SBThreadCollection, SBProcess, GetHistoryThreads,
1665                          (lldb::addr_t));
1666     LLDB_REGISTER_METHOD(bool, SBProcess, IsInstrumentationRuntimePresent,
1667                          (lldb::InstrumentationRuntimeType));
1668     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, SaveCore, (const char *));
1669     LLDB_REGISTER_METHOD(lldb::SBError, SBProcess, GetMemoryRegionInfo,
1670                          (lldb::addr_t, lldb::SBMemoryRegionInfo &));
1671     LLDB_REGISTER_METHOD(lldb::SBMemoryRegionInfoList, SBProcess,
1672                          GetMemoryRegions, ());
1673     LLDB_REGISTER_METHOD(lldb::SBProcessInfo, SBProcess, GetProcessInfo, ());
1674   }
1675   {
1676     LLDB_REGISTER_CONSTRUCTOR(SBProcessInfo, ());
1677     LLDB_REGISTER_CONSTRUCTOR(SBProcessInfo, (const lldb::SBProcessInfo &));
1678     LLDB_REGISTER_METHOD(
1679         lldb::SBProcessInfo &,
1680         SBProcessInfo, operator=,(const lldb::SBProcessInfo &));
1681     LLDB_REGISTER_METHOD_CONST(bool, SBProcessInfo, IsValid, ());
1682     LLDB_REGISTER_METHOD_CONST(bool, SBProcessInfo, operator bool, ());
1683     LLDB_REGISTER_METHOD(const char *, SBProcessInfo, GetName, ());
1684     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBProcessInfo, GetExecutableFile,
1685                          ());
1686     LLDB_REGISTER_METHOD(lldb::pid_t, SBProcessInfo, GetProcessID, ());
1687     LLDB_REGISTER_METHOD(uint32_t, SBProcessInfo, GetUserID, ());
1688     LLDB_REGISTER_METHOD(uint32_t, SBProcessInfo, GetGroupID, ());
1689     LLDB_REGISTER_METHOD(bool, SBProcessInfo, UserIDIsValid, ());
1690     LLDB_REGISTER_METHOD(bool, SBProcessInfo, GroupIDIsValid, ());
1691     LLDB_REGISTER_METHOD(uint32_t, SBProcessInfo, GetEffectiveUserID, ());
1692     LLDB_REGISTER_METHOD(uint32_t, SBProcessInfo, GetEffectiveGroupID, ());
1693     LLDB_REGISTER_METHOD(bool, SBProcessInfo, EffectiveUserIDIsValid, ());
1694     LLDB_REGISTER_METHOD(bool, SBProcessInfo, EffectiveGroupIDIsValid, ());
1695     LLDB_REGISTER_METHOD(lldb::pid_t, SBProcessInfo, GetParentProcessID, ());
1696   }
1697   {
1698     LLDB_REGISTER_CONSTRUCTOR(SBQueue, ());
1699     LLDB_REGISTER_CONSTRUCTOR(SBQueue, (const lldb::QueueSP &));
1700     LLDB_REGISTER_CONSTRUCTOR(SBQueue, (const lldb::SBQueue &));
1701     LLDB_REGISTER_METHOD(const lldb::SBQueue &,
1702                          SBQueue, operator=,(const lldb::SBQueue &));
1703     LLDB_REGISTER_METHOD_CONST(bool, SBQueue, IsValid, ());
1704     LLDB_REGISTER_METHOD_CONST(bool, SBQueue, operator bool, ());
1705     LLDB_REGISTER_METHOD(void, SBQueue, Clear, ());
1706     LLDB_REGISTER_METHOD_CONST(lldb::queue_id_t, SBQueue, GetQueueID, ());
1707     LLDB_REGISTER_METHOD_CONST(uint32_t, SBQueue, GetIndexID, ());
1708     LLDB_REGISTER_METHOD_CONST(const char *, SBQueue, GetName, ());
1709     LLDB_REGISTER_METHOD(uint32_t, SBQueue, GetNumThreads, ());
1710     LLDB_REGISTER_METHOD(lldb::SBThread, SBQueue, GetThreadAtIndex, (uint32_t));
1711     LLDB_REGISTER_METHOD(uint32_t, SBQueue, GetNumPendingItems, ());
1712     LLDB_REGISTER_METHOD(lldb::SBQueueItem, SBQueue, GetPendingItemAtIndex,
1713                          (uint32_t));
1714     LLDB_REGISTER_METHOD(uint32_t, SBQueue, GetNumRunningItems, ());
1715     LLDB_REGISTER_METHOD(lldb::SBProcess, SBQueue, GetProcess, ());
1716     LLDB_REGISTER_METHOD(lldb::QueueKind, SBQueue, GetKind, ());
1717   }
1718   {
1719     LLDB_REGISTER_CONSTRUCTOR(SBQueueItem, ());
1720     LLDB_REGISTER_CONSTRUCTOR(SBQueueItem, (const lldb::QueueItemSP &));
1721     LLDB_REGISTER_METHOD_CONST(bool, SBQueueItem, IsValid, ());
1722     LLDB_REGISTER_METHOD_CONST(bool, SBQueueItem, operator bool, ());
1723     LLDB_REGISTER_METHOD(void, SBQueueItem, Clear, ());
1724     LLDB_REGISTER_METHOD(void, SBQueueItem, SetQueueItem,
1725                          (const lldb::QueueItemSP &));
1726     LLDB_REGISTER_METHOD_CONST(lldb::QueueItemKind, SBQueueItem, GetKind, ());
1727     LLDB_REGISTER_METHOD(void, SBQueueItem, SetKind, (lldb::QueueItemKind));
1728     LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBQueueItem, GetAddress, ());
1729     LLDB_REGISTER_METHOD(void, SBQueueItem, SetAddress, (lldb::SBAddress));
1730     LLDB_REGISTER_METHOD(lldb::SBThread, SBQueueItem,
1731                          GetExtendedBacktraceThread, (const char *));
1732   }
1733   {
1734     LLDB_REGISTER_CONSTRUCTOR(SBSection, ());
1735     LLDB_REGISTER_CONSTRUCTOR(SBSection, (const lldb::SBSection &));
1736     LLDB_REGISTER_METHOD(const lldb::SBSection &,
1737                          SBSection, operator=,(const lldb::SBSection &));
1738     LLDB_REGISTER_METHOD_CONST(bool, SBSection, IsValid, ());
1739     LLDB_REGISTER_METHOD_CONST(bool, SBSection, operator bool, ());
1740     LLDB_REGISTER_METHOD(const char *, SBSection, GetName, ());
1741     LLDB_REGISTER_METHOD(lldb::SBSection, SBSection, GetParent, ());
1742     LLDB_REGISTER_METHOD(lldb::SBSection, SBSection, FindSubSection,
1743                          (const char *));
1744     LLDB_REGISTER_METHOD(size_t, SBSection, GetNumSubSections, ());
1745     LLDB_REGISTER_METHOD(lldb::SBSection, SBSection, GetSubSectionAtIndex,
1746                          (size_t));
1747     LLDB_REGISTER_METHOD(lldb::addr_t, SBSection, GetFileAddress, ());
1748     LLDB_REGISTER_METHOD(lldb::addr_t, SBSection, GetLoadAddress,
1749                          (lldb::SBTarget &));
1750     LLDB_REGISTER_METHOD(lldb::addr_t, SBSection, GetByteSize, ());
1751     LLDB_REGISTER_METHOD(uint64_t, SBSection, GetFileOffset, ());
1752     LLDB_REGISTER_METHOD(uint64_t, SBSection, GetFileByteSize, ());
1753     LLDB_REGISTER_METHOD(lldb::SBData, SBSection, GetSectionData, ());
1754     LLDB_REGISTER_METHOD(lldb::SBData, SBSection, GetSectionData,
1755                          (uint64_t, uint64_t));
1756     LLDB_REGISTER_METHOD(lldb::SectionType, SBSection, GetSectionType, ());
1757     LLDB_REGISTER_METHOD_CONST(uint32_t, SBSection, GetPermissions, ());
1758     LLDB_REGISTER_METHOD(uint32_t, SBSection, GetTargetByteSize, ());
1759     LLDB_REGISTER_METHOD(bool, SBSection, operator==,(const lldb::SBSection &));
1760     LLDB_REGISTER_METHOD(bool, SBSection, operator!=,(const lldb::SBSection &));
1761     LLDB_REGISTER_METHOD(bool, SBSection, GetDescription, (lldb::SBStream &));
1762   }
1763   {
1764     LLDB_REGISTER_CONSTRUCTOR(SBSourceManager, (const lldb::SBDebugger &));
1765     LLDB_REGISTER_CONSTRUCTOR(SBSourceManager, (const lldb::SBTarget &));
1766     LLDB_REGISTER_CONSTRUCTOR(SBSourceManager, (const lldb::SBSourceManager &));
1767     LLDB_REGISTER_METHOD(
1768         const lldb::SBSourceManager &,
1769         SBSourceManager, operator=,(const lldb::SBSourceManager &));
1770     LLDB_REGISTER_METHOD(size_t, SBSourceManager,
1771                          DisplaySourceLinesWithLineNumbers,
1772                          (const lldb::SBFileSpec &, uint32_t, uint32_t,
1773                           uint32_t, const char *, lldb::SBStream &));
1774     LLDB_REGISTER_METHOD(size_t, SBSourceManager,
1775                          DisplaySourceLinesWithLineNumbersAndColumn,
1776                          (const lldb::SBFileSpec &, uint32_t, uint32_t,
1777                           uint32_t, uint32_t, const char *, lldb::SBStream &));
1778   }
1779   {
1780     LLDB_REGISTER_CONSTRUCTOR(SBStream, ());
1781     LLDB_REGISTER_METHOD_CONST(bool, SBStream, IsValid, ());
1782     LLDB_REGISTER_METHOD_CONST(bool, SBStream, operator bool, ());
1783     LLDB_REGISTER_METHOD(const char *, SBStream, GetData, ());
1784     LLDB_REGISTER_METHOD(size_t, SBStream, GetSize, ());
1785     LLDB_REGISTER_METHOD(void, SBStream, RedirectToFile, (const char *, bool));
1786     LLDB_REGISTER_METHOD(void, SBStream, RedirectToFileHandle, (FILE *, bool));
1787     LLDB_REGISTER_METHOD(void, SBStream, RedirectToFileDescriptor, (int, bool));
1788     LLDB_REGISTER_METHOD(void, SBStream, Clear, ());
1789   }
1790   {
1791     LLDB_REGISTER_CONSTRUCTOR(SBStringList, ());
1792     LLDB_REGISTER_CONSTRUCTOR(SBStringList, (const lldb::SBStringList &));
1793     LLDB_REGISTER_METHOD(const lldb::SBStringList &,
1794                          SBStringList, operator=,(const lldb::SBStringList &));
1795     LLDB_REGISTER_METHOD_CONST(bool, SBStringList, IsValid, ());
1796     LLDB_REGISTER_METHOD_CONST(bool, SBStringList, operator bool, ());
1797     LLDB_REGISTER_METHOD(void, SBStringList, AppendString, (const char *));
1798     LLDB_REGISTER_METHOD(void, SBStringList, AppendList, (const char **, int));
1799     LLDB_REGISTER_METHOD(void, SBStringList, AppendList,
1800                          (const lldb::SBStringList &));
1801     LLDB_REGISTER_METHOD_CONST(uint32_t, SBStringList, GetSize, ());
1802     LLDB_REGISTER_METHOD(const char *, SBStringList, GetStringAtIndex,
1803                          (size_t));
1804     LLDB_REGISTER_METHOD_CONST(const char *, SBStringList, GetStringAtIndex,
1805                                (size_t));
1806     LLDB_REGISTER_METHOD(void, SBStringList, Clear, ());
1807   }
1808   {
1809     LLDB_REGISTER_CONSTRUCTOR(SBStructuredData, ());
1810     LLDB_REGISTER_CONSTRUCTOR(SBStructuredData,
1811                               (const lldb::SBStructuredData &));
1812     LLDB_REGISTER_CONSTRUCTOR(SBStructuredData, (const lldb::EventSP &));
1813     LLDB_REGISTER_CONSTRUCTOR(SBStructuredData,
1814                               (lldb_private::StructuredDataImpl *));
1815     LLDB_REGISTER_METHOD(
1816         lldb::SBStructuredData &,
1817         SBStructuredData, operator=,(const lldb::SBStructuredData &));
1818     LLDB_REGISTER_METHOD(lldb::SBError, SBStructuredData, SetFromJSON,
1819                          (lldb::SBStream &));
1820     LLDB_REGISTER_METHOD_CONST(bool, SBStructuredData, IsValid, ());
1821     LLDB_REGISTER_METHOD_CONST(bool, SBStructuredData, operator bool, ());
1822     LLDB_REGISTER_METHOD(void, SBStructuredData, Clear, ());
1823     LLDB_REGISTER_METHOD_CONST(lldb::SBError, SBStructuredData, GetAsJSON,
1824                                (lldb::SBStream &));
1825     LLDB_REGISTER_METHOD_CONST(lldb::SBError, SBStructuredData, GetDescription,
1826                                (lldb::SBStream &));
1827     LLDB_REGISTER_METHOD_CONST(lldb::StructuredDataType, SBStructuredData,
1828                                GetType, ());
1829     LLDB_REGISTER_METHOD_CONST(size_t, SBStructuredData, GetSize, ());
1830     LLDB_REGISTER_METHOD_CONST(bool, SBStructuredData, GetKeys,
1831                                (lldb::SBStringList &));
1832     LLDB_REGISTER_METHOD_CONST(lldb::SBStructuredData, SBStructuredData,
1833                                GetValueForKey, (const char *));
1834     LLDB_REGISTER_METHOD_CONST(lldb::SBStructuredData, SBStructuredData,
1835                                GetItemAtIndex, (size_t));
1836     LLDB_REGISTER_METHOD_CONST(uint64_t, SBStructuredData, GetIntegerValue,
1837                                (uint64_t));
1838     LLDB_REGISTER_METHOD_CONST(double, SBStructuredData, GetFloatValue,
1839                                (double));
1840     LLDB_REGISTER_METHOD_CONST(bool, SBStructuredData, GetBooleanValue, (bool));
1841     LLDB_REGISTER_METHOD_CONST(size_t, SBStructuredData, GetStringValue,
1842                                (char *, size_t));
1843   }
1844   {
1845     LLDB_REGISTER_CONSTRUCTOR(SBSymbol, ());
1846     LLDB_REGISTER_CONSTRUCTOR(SBSymbol, (const lldb::SBSymbol &));
1847     LLDB_REGISTER_METHOD(const lldb::SBSymbol &,
1848                          SBSymbol, operator=,(const lldb::SBSymbol &));
1849     LLDB_REGISTER_METHOD_CONST(bool, SBSymbol, IsValid, ());
1850     LLDB_REGISTER_METHOD_CONST(bool, SBSymbol, operator bool, ());
1851     LLDB_REGISTER_METHOD_CONST(const char *, SBSymbol, GetName, ());
1852     LLDB_REGISTER_METHOD_CONST(const char *, SBSymbol, GetDisplayName, ());
1853     LLDB_REGISTER_METHOD_CONST(const char *, SBSymbol, GetMangledName, ());
1854     LLDB_REGISTER_METHOD_CONST(bool,
1855                                SBSymbol, operator==,(const lldb::SBSymbol &));
1856     LLDB_REGISTER_METHOD_CONST(bool,
1857                                SBSymbol, operator!=,(const lldb::SBSymbol &));
1858     LLDB_REGISTER_METHOD(bool, SBSymbol, GetDescription, (lldb::SBStream &));
1859     LLDB_REGISTER_METHOD(lldb::SBInstructionList, SBSymbol, GetInstructions,
1860                          (lldb::SBTarget));
1861     LLDB_REGISTER_METHOD(lldb::SBInstructionList, SBSymbol, GetInstructions,
1862                          (lldb::SBTarget, const char *));
1863     LLDB_REGISTER_METHOD(lldb::SBAddress, SBSymbol, GetStartAddress, ());
1864     LLDB_REGISTER_METHOD(lldb::SBAddress, SBSymbol, GetEndAddress, ());
1865     LLDB_REGISTER_METHOD(uint32_t, SBSymbol, GetPrologueByteSize, ());
1866     LLDB_REGISTER_METHOD(lldb::SymbolType, SBSymbol, GetType, ());
1867     LLDB_REGISTER_METHOD(bool, SBSymbol, IsExternal, ());
1868     LLDB_REGISTER_METHOD(bool, SBSymbol, IsSynthetic, ());
1869   }
1870   {
1871     LLDB_REGISTER_CONSTRUCTOR(SBSymbolContext, ());
1872     LLDB_REGISTER_CONSTRUCTOR(SBSymbolContext,
1873                               (const lldb_private::SymbolContext *));
1874     LLDB_REGISTER_CONSTRUCTOR(SBSymbolContext, (const lldb::SBSymbolContext &));
1875     LLDB_REGISTER_METHOD(
1876         const lldb::SBSymbolContext &,
1877         SBSymbolContext, operator=,(const lldb::SBSymbolContext &));
1878     LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContext, IsValid, ());
1879     LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContext, operator bool, ());
1880     LLDB_REGISTER_METHOD(lldb::SBModule, SBSymbolContext, GetModule, ());
1881     LLDB_REGISTER_METHOD(lldb::SBCompileUnit, SBSymbolContext, GetCompileUnit,
1882                          ());
1883     LLDB_REGISTER_METHOD(lldb::SBFunction, SBSymbolContext, GetFunction, ());
1884     LLDB_REGISTER_METHOD(lldb::SBBlock, SBSymbolContext, GetBlock, ());
1885     LLDB_REGISTER_METHOD(lldb::SBLineEntry, SBSymbolContext, GetLineEntry, ());
1886     LLDB_REGISTER_METHOD(lldb::SBSymbol, SBSymbolContext, GetSymbol, ());
1887     LLDB_REGISTER_METHOD(void, SBSymbolContext, SetModule, (lldb::SBModule));
1888     LLDB_REGISTER_METHOD(void, SBSymbolContext, SetCompileUnit,
1889                          (lldb::SBCompileUnit));
1890     LLDB_REGISTER_METHOD(void, SBSymbolContext, SetFunction,
1891                          (lldb::SBFunction));
1892     LLDB_REGISTER_METHOD(void, SBSymbolContext, SetBlock, (lldb::SBBlock));
1893     LLDB_REGISTER_METHOD(void, SBSymbolContext, SetLineEntry,
1894                          (lldb::SBLineEntry));
1895     LLDB_REGISTER_METHOD(void, SBSymbolContext, SetSymbol, (lldb::SBSymbol));
1896     LLDB_REGISTER_METHOD(bool, SBSymbolContext, GetDescription,
1897                          (lldb::SBStream &));
1898     LLDB_REGISTER_METHOD_CONST(lldb::SBSymbolContext, SBSymbolContext,
1899                                GetParentOfInlinedScope,
1900                                (const lldb::SBAddress &, lldb::SBAddress &));
1901   }
1902   {
1903     LLDB_REGISTER_CONSTRUCTOR(SBSymbolContextList, ());
1904     LLDB_REGISTER_CONSTRUCTOR(SBSymbolContextList,
1905                               (const lldb::SBSymbolContextList &));
1906     LLDB_REGISTER_METHOD(
1907         const lldb::SBSymbolContextList &,
1908         SBSymbolContextList, operator=,(const lldb::SBSymbolContextList &));
1909     LLDB_REGISTER_METHOD_CONST(uint32_t, SBSymbolContextList, GetSize, ());
1910     LLDB_REGISTER_METHOD(lldb::SBSymbolContext, SBSymbolContextList,
1911                          GetContextAtIndex, (uint32_t));
1912     LLDB_REGISTER_METHOD(void, SBSymbolContextList, Clear, ());
1913     LLDB_REGISTER_METHOD(void, SBSymbolContextList, Append,
1914                          (lldb::SBSymbolContext &));
1915     LLDB_REGISTER_METHOD(void, SBSymbolContextList, Append,
1916                          (lldb::SBSymbolContextList &));
1917     LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContextList, IsValid, ());
1918     LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContextList, operator bool, ());
1919     LLDB_REGISTER_METHOD(bool, SBSymbolContextList, GetDescription,
1920                          (lldb::SBStream &));
1921   }
1922   {
1923     LLDB_REGISTER_CONSTRUCTOR(SBTarget, ());
1924     LLDB_REGISTER_CONSTRUCTOR(SBTarget, (const lldb::SBTarget &));
1925     LLDB_REGISTER_CONSTRUCTOR(SBTarget, (const lldb::TargetSP &));
1926     LLDB_REGISTER_METHOD(const lldb::SBTarget &,
1927                          SBTarget, operator=,(const lldb::SBTarget &));
1928     LLDB_REGISTER_STATIC_METHOD(bool, SBTarget, EventIsTargetEvent,
1929                                 (const lldb::SBEvent &));
1930     LLDB_REGISTER_STATIC_METHOD(lldb::SBTarget, SBTarget, GetTargetFromEvent,
1931                                 (const lldb::SBEvent &));
1932     LLDB_REGISTER_STATIC_METHOD(uint32_t, SBTarget, GetNumModulesFromEvent,
1933                                 (const lldb::SBEvent &));
1934     LLDB_REGISTER_STATIC_METHOD(lldb::SBModule, SBTarget,
1935                                 GetModuleAtIndexFromEvent,
1936                                 (const uint32_t, const lldb::SBEvent &));
1937     LLDB_REGISTER_STATIC_METHOD(const char *, SBTarget, GetBroadcasterClassName,
1938                                 ());
1939     LLDB_REGISTER_METHOD_CONST(bool, SBTarget, IsValid, ());
1940     LLDB_REGISTER_METHOD_CONST(bool, SBTarget, operator bool, ());
1941     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, GetProcess, ());
1942     LLDB_REGISTER_METHOD(lldb::SBPlatform, SBTarget, GetPlatform, ());
1943     LLDB_REGISTER_METHOD_CONST(lldb::SBDebugger, SBTarget, GetDebugger, ());
1944     LLDB_REGISTER_METHOD(lldb::SBStructuredData, SBTarget, GetStatistics, ());
1945     LLDB_REGISTER_METHOD(void, SBTarget, SetCollectingStats, (bool));
1946     LLDB_REGISTER_METHOD(bool, SBTarget, GetCollectingStats, ());
1947     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, LoadCore, (const char *));
1948     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, LoadCore,
1949                          (const char *, lldb::SBError &));
1950     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, LaunchSimple,
1951                          (const char **, const char **, const char *));
1952     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, Install, ());
1953     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, Launch,
1954                          (lldb::SBListener &, const char **, const char **,
1955                           const char *, const char *, const char *,
1956                           const char *, uint32_t, bool, lldb::SBError &));
1957     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, Launch,
1958                          (lldb::SBLaunchInfo &, lldb::SBError &));
1959     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, Attach,
1960                          (lldb::SBAttachInfo &, lldb::SBError &));
1961     LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, AttachToProcessWithID,
1962                          (lldb::SBListener &, lldb::pid_t, lldb::SBError &));
1963     LLDB_REGISTER_METHOD(
1964         lldb::SBProcess, SBTarget, AttachToProcessWithName,
1965         (lldb::SBListener &, const char *, bool, lldb::SBError &));
1966     LLDB_REGISTER_METHOD(
1967         lldb::SBProcess, SBTarget, ConnectRemote,
1968         (lldb::SBListener &, const char *, const char *, lldb::SBError &));
1969     LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBTarget, GetExecutable, ());
1970     LLDB_REGISTER_METHOD_CONST(bool,
1971                                SBTarget, operator==,(const lldb::SBTarget &));
1972     LLDB_REGISTER_METHOD_CONST(bool,
1973                                SBTarget, operator!=,(const lldb::SBTarget &));
1974     LLDB_REGISTER_METHOD(lldb::SBAddress, SBTarget, ResolveLoadAddress,
1975                          (lldb::addr_t));
1976     LLDB_REGISTER_METHOD(lldb::SBAddress, SBTarget, ResolveFileAddress,
1977                          (lldb::addr_t));
1978     LLDB_REGISTER_METHOD(lldb::SBAddress, SBTarget, ResolvePastLoadAddress,
1979                          (uint32_t, lldb::addr_t));
1980     LLDB_REGISTER_METHOD(lldb::SBSymbolContext, SBTarget,
1981                          ResolveSymbolContextForAddress,
1982                          (const lldb::SBAddress &, uint32_t));
1983     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
1984                          BreakpointCreateByLocation, (const char *, uint32_t));
1985     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
1986                          BreakpointCreateByLocation,
1987                          (const lldb::SBFileSpec &, uint32_t));
1988     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
1989                          BreakpointCreateByLocation,
1990                          (const lldb::SBFileSpec &, uint32_t, lldb::addr_t));
1991     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
1992                          BreakpointCreateByLocation,
1993                          (const lldb::SBFileSpec &, uint32_t, lldb::addr_t,
1994                           lldb::SBFileSpecList &));
1995     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
1996                          BreakpointCreateByLocation,
1997                          (const lldb::SBFileSpec &, uint32_t, uint32_t,
1998                           lldb::addr_t, lldb::SBFileSpecList &));
1999     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByName,
2000                          (const char *, const char *));
2001     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByName,
2002                          (const char *, const lldb::SBFileSpecList &,
2003                           const lldb::SBFileSpecList &));
2004     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByName,
2005                          (const char *, uint32_t, const lldb::SBFileSpecList &,
2006                           const lldb::SBFileSpecList &));
2007     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByName,
2008                          (const char *, uint32_t, lldb::LanguageType,
2009                           const lldb::SBFileSpecList &,
2010                           const lldb::SBFileSpecList &));
2011     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByNames,
2012                          (const char **, uint32_t, uint32_t,
2013                           const lldb::SBFileSpecList &,
2014                           const lldb::SBFileSpecList &));
2015     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByNames,
2016                          (const char **, uint32_t, uint32_t, lldb::LanguageType,
2017                           const lldb::SBFileSpecList &,
2018                           const lldb::SBFileSpecList &));
2019     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByNames,
2020                          (const char **, uint32_t, uint32_t, lldb::LanguageType,
2021                           lldb::addr_t, const lldb::SBFileSpecList &,
2022                           const lldb::SBFileSpecList &));
2023     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByRegex,
2024                          (const char *, const char *));
2025     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByRegex,
2026                          (const char *, const lldb::SBFileSpecList &,
2027                           const lldb::SBFileSpecList &));
2028     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, BreakpointCreateByRegex,
2029                          (const char *, lldb::LanguageType,
2030                           const lldb::SBFileSpecList &,
2031                           const lldb::SBFileSpecList &));
2032     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
2033                          BreakpointCreateByAddress, (lldb::addr_t));
2034     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
2035                          BreakpointCreateBySBAddress, (lldb::SBAddress &));
2036     LLDB_REGISTER_METHOD(
2037         lldb::SBBreakpoint, SBTarget, BreakpointCreateBySourceRegex,
2038         (const char *, const lldb::SBFileSpec &, const char *));
2039     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
2040                          BreakpointCreateBySourceRegex,
2041                          (const char *, const lldb::SBFileSpecList &,
2042                           const lldb::SBFileSpecList &));
2043     LLDB_REGISTER_METHOD(
2044         lldb::SBBreakpoint, SBTarget, BreakpointCreateBySourceRegex,
2045         (const char *, const lldb::SBFileSpecList &,
2046          const lldb::SBFileSpecList &, const lldb::SBStringList &));
2047     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget,
2048                          BreakpointCreateForException,
2049                          (lldb::LanguageType, bool, bool));
2050     LLDB_REGISTER_METHOD(
2051         lldb::SBBreakpoint, SBTarget, BreakpointCreateFromScript,
2052         (const char *, lldb::SBStructuredData &, const lldb::SBFileSpecList &,
2053          const lldb::SBFileSpecList &, bool));
2054     LLDB_REGISTER_METHOD_CONST(uint32_t, SBTarget, GetNumBreakpoints, ());
2055     LLDB_REGISTER_METHOD_CONST(lldb::SBBreakpoint, SBTarget,
2056                                GetBreakpointAtIndex, (uint32_t));
2057     LLDB_REGISTER_METHOD(bool, SBTarget, BreakpointDelete, (lldb::break_id_t));
2058     LLDB_REGISTER_METHOD(lldb::SBBreakpoint, SBTarget, FindBreakpointByID,
2059                          (lldb::break_id_t));
2060     LLDB_REGISTER_METHOD(bool, SBTarget, FindBreakpointsByName,
2061                          (const char *, lldb::SBBreakpointList &));
2062     LLDB_REGISTER_METHOD(void, SBTarget, GetBreakpointNames,
2063                          (lldb::SBStringList &));
2064     LLDB_REGISTER_METHOD(void, SBTarget, DeleteBreakpointName, (const char *));
2065     LLDB_REGISTER_METHOD(bool, SBTarget, EnableAllBreakpoints, ());
2066     LLDB_REGISTER_METHOD(bool, SBTarget, DisableAllBreakpoints, ());
2067     LLDB_REGISTER_METHOD(bool, SBTarget, DeleteAllBreakpoints, ());
2068     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, BreakpointsCreateFromFile,
2069                          (lldb::SBFileSpec &, lldb::SBBreakpointList &));
2070     LLDB_REGISTER_METHOD(
2071         lldb::SBError, SBTarget, BreakpointsCreateFromFile,
2072         (lldb::SBFileSpec &, lldb::SBStringList &, lldb::SBBreakpointList &));
2073     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, BreakpointsWriteToFile,
2074                          (lldb::SBFileSpec &));
2075     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, BreakpointsWriteToFile,
2076                          (lldb::SBFileSpec &, lldb::SBBreakpointList &, bool));
2077     LLDB_REGISTER_METHOD_CONST(uint32_t, SBTarget, GetNumWatchpoints, ());
2078     LLDB_REGISTER_METHOD_CONST(lldb::SBWatchpoint, SBTarget,
2079                                GetWatchpointAtIndex, (uint32_t));
2080     LLDB_REGISTER_METHOD(bool, SBTarget, DeleteWatchpoint, (lldb::watch_id_t));
2081     LLDB_REGISTER_METHOD(lldb::SBWatchpoint, SBTarget, FindWatchpointByID,
2082                          (lldb::watch_id_t));
2083     LLDB_REGISTER_METHOD(lldb::SBWatchpoint, SBTarget, WatchAddress,
2084                          (lldb::addr_t, size_t, bool, bool, lldb::SBError &));
2085     LLDB_REGISTER_METHOD(bool, SBTarget, EnableAllWatchpoints, ());
2086     LLDB_REGISTER_METHOD(bool, SBTarget, DisableAllWatchpoints, ());
2087     LLDB_REGISTER_METHOD(lldb::SBValue, SBTarget, CreateValueFromAddress,
2088                          (const char *, lldb::SBAddress, lldb::SBType));
2089     LLDB_REGISTER_METHOD(lldb::SBValue, SBTarget, CreateValueFromData,
2090                          (const char *, lldb::SBData, lldb::SBType));
2091     LLDB_REGISTER_METHOD(lldb::SBValue, SBTarget, CreateValueFromExpression,
2092                          (const char *, const char *));
2093     LLDB_REGISTER_METHOD(bool, SBTarget, DeleteAllWatchpoints, ());
2094     LLDB_REGISTER_METHOD(void, SBTarget, AppendImageSearchPath,
2095                          (const char *, const char *, lldb::SBError &));
2096     LLDB_REGISTER_METHOD(lldb::SBModule, SBTarget, AddModule,
2097                          (const char *, const char *, const char *));
2098     LLDB_REGISTER_METHOD(
2099         lldb::SBModule, SBTarget, AddModule,
2100         (const char *, const char *, const char *, const char *));
2101     LLDB_REGISTER_METHOD(lldb::SBModule, SBTarget, AddModule,
2102                          (const lldb::SBModuleSpec &));
2103     LLDB_REGISTER_METHOD(bool, SBTarget, AddModule, (lldb::SBModule &));
2104     LLDB_REGISTER_METHOD_CONST(uint32_t, SBTarget, GetNumModules, ());
2105     LLDB_REGISTER_METHOD(void, SBTarget, Clear, ());
2106     LLDB_REGISTER_METHOD(lldb::SBModule, SBTarget, FindModule,
2107                          (const lldb::SBFileSpec &));
2108     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBTarget, FindCompileUnits,
2109                          (const lldb::SBFileSpec &));
2110     LLDB_REGISTER_METHOD(lldb::ByteOrder, SBTarget, GetByteOrder, ());
2111     LLDB_REGISTER_METHOD(const char *, SBTarget, GetTriple, ());
2112     LLDB_REGISTER_METHOD(uint32_t, SBTarget, GetDataByteSize, ());
2113     LLDB_REGISTER_METHOD(uint32_t, SBTarget, GetCodeByteSize, ());
2114     LLDB_REGISTER_METHOD(uint32_t, SBTarget, GetAddressByteSize, ());
2115     LLDB_REGISTER_METHOD(lldb::SBModule, SBTarget, GetModuleAtIndex,
2116                          (uint32_t));
2117     LLDB_REGISTER_METHOD(bool, SBTarget, RemoveModule, (lldb::SBModule));
2118     LLDB_REGISTER_METHOD_CONST(lldb::SBBroadcaster, SBTarget, GetBroadcaster,
2119                                ());
2120     LLDB_REGISTER_METHOD(bool, SBTarget, GetDescription,
2121                          (lldb::SBStream &, lldb::DescriptionLevel));
2122     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBTarget, FindFunctions,
2123                          (const char *, uint32_t));
2124     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBTarget,
2125                          FindGlobalFunctions,
2126                          (const char *, uint32_t, lldb::MatchType));
2127     LLDB_REGISTER_METHOD(lldb::SBType, SBTarget, FindFirstType, (const char *));
2128     LLDB_REGISTER_METHOD(lldb::SBType, SBTarget, GetBasicType,
2129                          (lldb::BasicType));
2130     LLDB_REGISTER_METHOD(lldb::SBTypeList, SBTarget, FindTypes, (const char *));
2131     LLDB_REGISTER_METHOD(lldb::SBValueList, SBTarget, FindGlobalVariables,
2132                          (const char *, uint32_t));
2133     LLDB_REGISTER_METHOD(lldb::SBValueList, SBTarget, FindGlobalVariables,
2134                          (const char *, uint32_t, lldb::MatchType));
2135     LLDB_REGISTER_METHOD(lldb::SBValue, SBTarget, FindFirstGlobalVariable,
2136                          (const char *));
2137     LLDB_REGISTER_METHOD(lldb::SBSourceManager, SBTarget, GetSourceManager, ());
2138     LLDB_REGISTER_METHOD(lldb::SBInstructionList, SBTarget, ReadInstructions,
2139                          (lldb::SBAddress, uint32_t));
2140     LLDB_REGISTER_METHOD(lldb::SBInstructionList, SBTarget, ReadInstructions,
2141                          (lldb::SBAddress, uint32_t, const char *));
2142     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, SetSectionLoadAddress,
2143                          (lldb::SBSection, lldb::addr_t));
2144     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, ClearSectionLoadAddress,
2145                          (lldb::SBSection));
2146     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, SetModuleLoadAddress,
2147                          (lldb::SBModule, int64_t));
2148     LLDB_REGISTER_METHOD(lldb::SBError, SBTarget, ClearModuleLoadAddress,
2149                          (lldb::SBModule));
2150     LLDB_REGISTER_METHOD(lldb::SBSymbolContextList, SBTarget, FindSymbols,
2151                          (const char *, lldb::SymbolType));
2152     LLDB_REGISTER_METHOD(lldb::SBValue, SBTarget, EvaluateExpression,
2153                          (const char *));
2154     LLDB_REGISTER_METHOD(lldb::SBValue, SBTarget, EvaluateExpression,
2155                          (const char *, const lldb::SBExpressionOptions &));
2156     LLDB_REGISTER_METHOD(lldb::addr_t, SBTarget, GetStackRedZoneSize, ());
2157     LLDB_REGISTER_METHOD_CONST(lldb::SBLaunchInfo, SBTarget, GetLaunchInfo, ());
2158     LLDB_REGISTER_METHOD(void, SBTarget, SetLaunchInfo,
2159                          (const lldb::SBLaunchInfo &));
2160   }
2161   {
2162     LLDB_REGISTER_STATIC_METHOD(const char *, SBThread, GetBroadcasterClassName,
2163                                 ());
2164     LLDB_REGISTER_CONSTRUCTOR(SBThread, ());
2165     LLDB_REGISTER_CONSTRUCTOR(SBThread, (const lldb::ThreadSP &));
2166     LLDB_REGISTER_CONSTRUCTOR(SBThread, (const lldb::SBThread &));
2167     LLDB_REGISTER_METHOD(const lldb::SBThread &,
2168                          SBThread, operator=,(const lldb::SBThread &));
2169     LLDB_REGISTER_METHOD_CONST(lldb::SBQueue, SBThread, GetQueue, ());
2170     LLDB_REGISTER_METHOD_CONST(bool, SBThread, IsValid, ());
2171     LLDB_REGISTER_METHOD_CONST(bool, SBThread, operator bool, ());
2172     LLDB_REGISTER_METHOD(void, SBThread, Clear, ());
2173     LLDB_REGISTER_METHOD(lldb::StopReason, SBThread, GetStopReason, ());
2174     LLDB_REGISTER_METHOD(size_t, SBThread, GetStopReasonDataCount, ());
2175     LLDB_REGISTER_METHOD(uint64_t, SBThread, GetStopReasonDataAtIndex,
2176                          (uint32_t));
2177     LLDB_REGISTER_METHOD(bool, SBThread, GetStopReasonExtendedInfoAsJSON,
2178                          (lldb::SBStream &));
2179     LLDB_REGISTER_METHOD(lldb::SBThreadCollection, SBThread,
2180                          GetStopReasonExtendedBacktraces,
2181                          (lldb::InstrumentationRuntimeType));
2182     LLDB_REGISTER_METHOD(size_t, SBThread, GetStopDescription,
2183                          (char *, size_t));
2184     LLDB_REGISTER_METHOD(lldb::SBValue, SBThread, GetStopReturnValue, ());
2185     LLDB_REGISTER_METHOD_CONST(lldb::tid_t, SBThread, GetThreadID, ());
2186     LLDB_REGISTER_METHOD_CONST(uint32_t, SBThread, GetIndexID, ());
2187     LLDB_REGISTER_METHOD_CONST(const char *, SBThread, GetName, ());
2188     LLDB_REGISTER_METHOD_CONST(const char *, SBThread, GetQueueName, ());
2189     LLDB_REGISTER_METHOD_CONST(lldb::queue_id_t, SBThread, GetQueueID, ());
2190     LLDB_REGISTER_METHOD(bool, SBThread, GetInfoItemByPathAsString,
2191                          (const char *, lldb::SBStream &));
2192     LLDB_REGISTER_METHOD(void, SBThread, StepOver, (lldb::RunMode));
2193     LLDB_REGISTER_METHOD(void, SBThread, StepOver,
2194                          (lldb::RunMode, lldb::SBError &));
2195     LLDB_REGISTER_METHOD(void, SBThread, StepInto, (lldb::RunMode));
2196     LLDB_REGISTER_METHOD(void, SBThread, StepInto,
2197                          (const char *, lldb::RunMode));
2198     LLDB_REGISTER_METHOD(
2199         void, SBThread, StepInto,
2200         (const char *, uint32_t, lldb::SBError &, lldb::RunMode));
2201     LLDB_REGISTER_METHOD(void, SBThread, StepOut, ());
2202     LLDB_REGISTER_METHOD(void, SBThread, StepOut, (lldb::SBError &));
2203     LLDB_REGISTER_METHOD(void, SBThread, StepOutOfFrame, (lldb::SBFrame &));
2204     LLDB_REGISTER_METHOD(void, SBThread, StepOutOfFrame,
2205                          (lldb::SBFrame &, lldb::SBError &));
2206     LLDB_REGISTER_METHOD(void, SBThread, StepInstruction, (bool));
2207     LLDB_REGISTER_METHOD(void, SBThread, StepInstruction,
2208                          (bool, lldb::SBError &));
2209     LLDB_REGISTER_METHOD(void, SBThread, RunToAddress, (lldb::addr_t));
2210     LLDB_REGISTER_METHOD(void, SBThread, RunToAddress,
2211                          (lldb::addr_t, lldb::SBError &));
2212     LLDB_REGISTER_METHOD(lldb::SBError, SBThread, StepOverUntil,
2213                          (lldb::SBFrame &, lldb::SBFileSpec &, uint32_t));
2214     LLDB_REGISTER_METHOD(lldb::SBError, SBThread, StepUsingScriptedThreadPlan,
2215                          (const char *));
2216     LLDB_REGISTER_METHOD(lldb::SBError, SBThread, StepUsingScriptedThreadPlan,
2217                          (const char *, bool));
2218     LLDB_REGISTER_METHOD(lldb::SBError, SBThread, JumpToLine,
2219                          (lldb::SBFileSpec &, uint32_t));
2220     LLDB_REGISTER_METHOD(lldb::SBError, SBThread, ReturnFromFrame,
2221                          (lldb::SBFrame &, lldb::SBValue &));
2222     LLDB_REGISTER_METHOD(lldb::SBError, SBThread, UnwindInnermostExpression,
2223                          ());
2224     LLDB_REGISTER_METHOD(bool, SBThread, Suspend, ());
2225     LLDB_REGISTER_METHOD(bool, SBThread, Suspend, (lldb::SBError &));
2226     LLDB_REGISTER_METHOD(bool, SBThread, Resume, ());
2227     LLDB_REGISTER_METHOD(bool, SBThread, Resume, (lldb::SBError &));
2228     LLDB_REGISTER_METHOD(bool, SBThread, IsSuspended, ());
2229     LLDB_REGISTER_METHOD(bool, SBThread, IsStopped, ());
2230     LLDB_REGISTER_METHOD(lldb::SBProcess, SBThread, GetProcess, ());
2231     LLDB_REGISTER_METHOD(uint32_t, SBThread, GetNumFrames, ());
2232     LLDB_REGISTER_METHOD(lldb::SBFrame, SBThread, GetFrameAtIndex, (uint32_t));
2233     LLDB_REGISTER_METHOD(lldb::SBFrame, SBThread, GetSelectedFrame, ());
2234     LLDB_REGISTER_METHOD(lldb::SBFrame, SBThread, SetSelectedFrame, (uint32_t));
2235     LLDB_REGISTER_STATIC_METHOD(bool, SBThread, EventIsThreadEvent,
2236                                 (const lldb::SBEvent &));
2237     LLDB_REGISTER_STATIC_METHOD(lldb::SBFrame, SBThread, GetStackFrameFromEvent,
2238                                 (const lldb::SBEvent &));
2239     LLDB_REGISTER_STATIC_METHOD(lldb::SBThread, SBThread, GetThreadFromEvent,
2240                                 (const lldb::SBEvent &));
2241     LLDB_REGISTER_METHOD_CONST(bool,
2242                                SBThread, operator==,(const lldb::SBThread &));
2243     LLDB_REGISTER_METHOD_CONST(bool,
2244                                SBThread, operator!=,(const lldb::SBThread &));
2245     LLDB_REGISTER_METHOD_CONST(bool, SBThread, GetStatus, (lldb::SBStream &));
2246     LLDB_REGISTER_METHOD_CONST(bool, SBThread, GetDescription,
2247                                (lldb::SBStream &));
2248     LLDB_REGISTER_METHOD_CONST(bool, SBThread, GetDescription,
2249                                (lldb::SBStream &, bool));
2250     LLDB_REGISTER_METHOD(lldb::SBThread, SBThread, GetExtendedBacktraceThread,
2251                          (const char *));
2252     LLDB_REGISTER_METHOD(uint32_t, SBThread,
2253                          GetExtendedBacktraceOriginatingIndexID, ());
2254     LLDB_REGISTER_METHOD(lldb::SBValue, SBThread, GetCurrentException, ());
2255     LLDB_REGISTER_METHOD(lldb::SBThread, SBThread, GetCurrentExceptionBacktrace,
2256                          ());
2257     LLDB_REGISTER_METHOD(bool, SBThread, SafeToCallFunctions, ());
2258     LLDB_REGISTER_METHOD(lldb_private::Thread *, SBThread, operator->,());
2259     LLDB_REGISTER_METHOD(lldb_private::Thread *, SBThread, get, ());
2260   }
2261   {
2262     LLDB_REGISTER_CONSTRUCTOR(SBThreadCollection, ());
2263     LLDB_REGISTER_CONSTRUCTOR(SBThreadCollection,
2264                               (const lldb::SBThreadCollection &));
2265     LLDB_REGISTER_METHOD(
2266         const lldb::SBThreadCollection &,
2267         SBThreadCollection, operator=,(const lldb::SBThreadCollection &));
2268     LLDB_REGISTER_METHOD_CONST(bool, SBThreadCollection, IsValid, ());
2269     LLDB_REGISTER_METHOD_CONST(bool, SBThreadCollection, operator bool, ());
2270     LLDB_REGISTER_METHOD(size_t, SBThreadCollection, GetSize, ());
2271     LLDB_REGISTER_METHOD(lldb::SBThread, SBThreadCollection, GetThreadAtIndex,
2272                          (size_t));
2273   }
2274   {
2275     LLDB_REGISTER_CONSTRUCTOR(SBThreadPlan, ());
2276     LLDB_REGISTER_CONSTRUCTOR(SBThreadPlan, (const lldb::ThreadPlanSP &));
2277     LLDB_REGISTER_CONSTRUCTOR(SBThreadPlan, (const lldb::SBThreadPlan &));
2278     LLDB_REGISTER_CONSTRUCTOR(SBThreadPlan, (lldb::SBThread &, const char *));
2279     LLDB_REGISTER_METHOD(const lldb::SBThreadPlan &,
2280                          SBThreadPlan, operator=,(const lldb::SBThreadPlan &));
2281     LLDB_REGISTER_METHOD(lldb_private::ThreadPlan *, SBThreadPlan, get, ());
2282     LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, IsValid, ());
2283     LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, operator bool, ());
2284     LLDB_REGISTER_METHOD(void, SBThreadPlan, Clear, ());
2285     LLDB_REGISTER_METHOD(lldb::StopReason, SBThreadPlan, GetStopReason, ());
2286     LLDB_REGISTER_METHOD(size_t, SBThreadPlan, GetStopReasonDataCount, ());
2287     LLDB_REGISTER_METHOD(uint64_t, SBThreadPlan, GetStopReasonDataAtIndex,
2288                          (uint32_t));
2289     LLDB_REGISTER_METHOD_CONST(lldb::SBThread, SBThreadPlan, GetThread, ());
2290     LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, GetDescription,
2291                                (lldb::SBStream &));
2292     LLDB_REGISTER_METHOD(void, SBThreadPlan, SetPlanComplete, (bool));
2293     LLDB_REGISTER_METHOD(bool, SBThreadPlan, IsPlanComplete, ());
2294     LLDB_REGISTER_METHOD(bool, SBThreadPlan, IsPlanStale, ());
2295     LLDB_REGISTER_METHOD(bool, SBThreadPlan, IsValid, ());
2296     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2297                          QueueThreadPlanForStepOverRange,
2298                          (lldb::SBAddress &, lldb::addr_t));
2299     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2300                          QueueThreadPlanForStepOverRange,
2301                          (lldb::SBAddress &, lldb::addr_t, lldb::SBError &));
2302     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2303                          QueueThreadPlanForStepInRange,
2304                          (lldb::SBAddress &, lldb::addr_t));
2305     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2306                          QueueThreadPlanForStepInRange,
2307                          (lldb::SBAddress &, lldb::addr_t, lldb::SBError &));
2308     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2309                          QueueThreadPlanForStepOut, (uint32_t, bool));
2310     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2311                          QueueThreadPlanForStepOut,
2312                          (uint32_t, bool, lldb::SBError &));
2313     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2314                          QueueThreadPlanForRunToAddress, (lldb::SBAddress));
2315     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2316                          QueueThreadPlanForRunToAddress,
2317                          (lldb::SBAddress, lldb::SBError &));
2318     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2319                          QueueThreadPlanForStepScripted, (const char *));
2320     LLDB_REGISTER_METHOD(lldb::SBThreadPlan, SBThreadPlan,
2321                          QueueThreadPlanForStepScripted,
2322                          (const char *, lldb::SBError &));
2323   }
2324   {
2325     LLDB_REGISTER_METHOD(void, SBTrace, StopTrace,
2326                          (lldb::SBError &, lldb::tid_t));
2327     LLDB_REGISTER_METHOD(void, SBTrace, GetTraceConfig,
2328                          (lldb::SBTraceOptions &, lldb::SBError &));
2329     LLDB_REGISTER_METHOD(lldb::user_id_t, SBTrace, GetTraceUID, ());
2330     LLDB_REGISTER_CONSTRUCTOR(SBTrace, ());
2331     LLDB_REGISTER_METHOD(bool, SBTrace, IsValid, ());
2332     LLDB_REGISTER_METHOD_CONST(bool, SBTrace, operator bool, ());
2333   }
2334   {
2335     LLDB_REGISTER_CONSTRUCTOR(SBTraceOptions, ());
2336     LLDB_REGISTER_METHOD_CONST(lldb::TraceType, SBTraceOptions, getType, ());
2337     LLDB_REGISTER_METHOD_CONST(uint64_t, SBTraceOptions, getTraceBufferSize,
2338                                ());
2339     LLDB_REGISTER_METHOD(lldb::SBStructuredData, SBTraceOptions, getTraceParams,
2340                          (lldb::SBError &));
2341     LLDB_REGISTER_METHOD_CONST(uint64_t, SBTraceOptions, getMetaDataBufferSize,
2342                                ());
2343     LLDB_REGISTER_METHOD(void, SBTraceOptions, setTraceParams,
2344                          (lldb::SBStructuredData &));
2345     LLDB_REGISTER_METHOD(void, SBTraceOptions, setType, (lldb::TraceType));
2346     LLDB_REGISTER_METHOD(void, SBTraceOptions, setTraceBufferSize, (uint64_t));
2347     LLDB_REGISTER_METHOD(void, SBTraceOptions, setMetaDataBufferSize,
2348                          (uint64_t));
2349     LLDB_REGISTER_METHOD(bool, SBTraceOptions, IsValid, ());
2350     LLDB_REGISTER_METHOD_CONST(bool, SBTraceOptions, operator bool, ());
2351     LLDB_REGISTER_METHOD(void, SBTraceOptions, setThreadID, (lldb::tid_t));
2352     LLDB_REGISTER_METHOD(lldb::tid_t, SBTraceOptions, getThreadID, ());
2353   }
2354   {
2355     LLDB_REGISTER_CONSTRUCTOR(SBType, ());
2356     LLDB_REGISTER_CONSTRUCTOR(SBType, (const lldb::SBType &));
2357     LLDB_REGISTER_METHOD(bool, SBType, operator==,(lldb::SBType &));
2358     LLDB_REGISTER_METHOD(bool, SBType, operator!=,(lldb::SBType &));
2359     LLDB_REGISTER_METHOD(lldb::SBType &,
2360                          SBType, operator=,(const lldb::SBType &));
2361     LLDB_REGISTER_METHOD_CONST(bool, SBType, IsValid, ());
2362     LLDB_REGISTER_METHOD_CONST(bool, SBType, operator bool, ());
2363     LLDB_REGISTER_METHOD(uint64_t, SBType, GetByteSize, ());
2364     LLDB_REGISTER_METHOD(bool, SBType, IsPointerType, ());
2365     LLDB_REGISTER_METHOD(bool, SBType, IsArrayType, ());
2366     LLDB_REGISTER_METHOD(bool, SBType, IsVectorType, ());
2367     LLDB_REGISTER_METHOD(bool, SBType, IsReferenceType, ());
2368     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetPointerType, ());
2369     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetPointeeType, ());
2370     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetReferenceType, ());
2371     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetTypedefedType, ());
2372     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetDereferencedType, ());
2373     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetArrayElementType, ());
2374     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetArrayType, (uint64_t));
2375     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetVectorElementType, ());
2376     LLDB_REGISTER_METHOD(bool, SBType, IsFunctionType, ());
2377     LLDB_REGISTER_METHOD(bool, SBType, IsPolymorphicClass, ());
2378     LLDB_REGISTER_METHOD(bool, SBType, IsTypedefType, ());
2379     LLDB_REGISTER_METHOD(bool, SBType, IsAnonymousType, ());
2380     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetFunctionReturnType, ());
2381     LLDB_REGISTER_METHOD(lldb::SBTypeList, SBType, GetFunctionArgumentTypes,
2382                          ());
2383     LLDB_REGISTER_METHOD(uint32_t, SBType, GetNumberOfMemberFunctions, ());
2384     LLDB_REGISTER_METHOD(lldb::SBTypeMemberFunction, SBType,
2385                          GetMemberFunctionAtIndex, (uint32_t));
2386     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetUnqualifiedType, ());
2387     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetCanonicalType, ());
2388     LLDB_REGISTER_METHOD(lldb::BasicType, SBType, GetBasicType, ());
2389     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetBasicType, (lldb::BasicType));
2390     LLDB_REGISTER_METHOD(uint32_t, SBType, GetNumberOfDirectBaseClasses, ());
2391     LLDB_REGISTER_METHOD(uint32_t, SBType, GetNumberOfVirtualBaseClasses, ());
2392     LLDB_REGISTER_METHOD(uint32_t, SBType, GetNumberOfFields, ());
2393     LLDB_REGISTER_METHOD(bool, SBType, GetDescription,
2394                          (lldb::SBStream &, lldb::DescriptionLevel));
2395     LLDB_REGISTER_METHOD(lldb::SBTypeMember, SBType, GetDirectBaseClassAtIndex,
2396                          (uint32_t));
2397     LLDB_REGISTER_METHOD(lldb::SBTypeMember, SBType, GetVirtualBaseClassAtIndex,
2398                          (uint32_t));
2399     LLDB_REGISTER_METHOD(lldb::SBTypeEnumMemberList, SBType, GetEnumMembers,
2400                          ());
2401     LLDB_REGISTER_METHOD(lldb::SBTypeMember, SBType, GetFieldAtIndex,
2402                          (uint32_t));
2403     LLDB_REGISTER_METHOD(bool, SBType, IsTypeComplete, ());
2404     LLDB_REGISTER_METHOD(uint32_t, SBType, GetTypeFlags, ());
2405     LLDB_REGISTER_METHOD(const char *, SBType, GetName, ());
2406     LLDB_REGISTER_METHOD(const char *, SBType, GetDisplayTypeName, ());
2407     LLDB_REGISTER_METHOD(lldb::TypeClass, SBType, GetTypeClass, ());
2408     LLDB_REGISTER_METHOD(uint32_t, SBType, GetNumberOfTemplateArguments, ());
2409     LLDB_REGISTER_METHOD(lldb::SBType, SBType, GetTemplateArgumentType,
2410                          (uint32_t));
2411     LLDB_REGISTER_METHOD(lldb::TemplateArgumentKind, SBType,
2412                          GetTemplateArgumentKind, (uint32_t));
2413     LLDB_REGISTER_CONSTRUCTOR(SBTypeList, ());
2414     LLDB_REGISTER_CONSTRUCTOR(SBTypeList, (const lldb::SBTypeList &));
2415     LLDB_REGISTER_METHOD(bool, SBTypeList, IsValid, ());
2416     LLDB_REGISTER_METHOD_CONST(bool, SBTypeList, operator bool, ());
2417     LLDB_REGISTER_METHOD(lldb::SBTypeList &,
2418                          SBTypeList, operator=,(const lldb::SBTypeList &));
2419     LLDB_REGISTER_METHOD(void, SBTypeList, Append, (lldb::SBType));
2420     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeList, GetTypeAtIndex, (uint32_t));
2421     LLDB_REGISTER_METHOD(uint32_t, SBTypeList, GetSize, ());
2422     LLDB_REGISTER_CONSTRUCTOR(SBTypeMember, ());
2423     LLDB_REGISTER_CONSTRUCTOR(SBTypeMember, (const lldb::SBTypeMember &));
2424     LLDB_REGISTER_METHOD(lldb::SBTypeMember &,
2425                          SBTypeMember, operator=,(const lldb::SBTypeMember &));
2426     LLDB_REGISTER_METHOD_CONST(bool, SBTypeMember, IsValid, ());
2427     LLDB_REGISTER_METHOD_CONST(bool, SBTypeMember, operator bool, ());
2428     LLDB_REGISTER_METHOD(const char *, SBTypeMember, GetName, ());
2429     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeMember, GetType, ());
2430     LLDB_REGISTER_METHOD(uint64_t, SBTypeMember, GetOffsetInBytes, ());
2431     LLDB_REGISTER_METHOD(uint64_t, SBTypeMember, GetOffsetInBits, ());
2432     LLDB_REGISTER_METHOD(bool, SBTypeMember, IsBitfield, ());
2433     LLDB_REGISTER_METHOD(uint32_t, SBTypeMember, GetBitfieldSizeInBits, ());
2434     LLDB_REGISTER_METHOD(bool, SBTypeMember, GetDescription,
2435                          (lldb::SBStream &, lldb::DescriptionLevel));
2436     LLDB_REGISTER_CONSTRUCTOR(SBTypeMemberFunction, ());
2437     LLDB_REGISTER_CONSTRUCTOR(SBTypeMemberFunction,
2438                               (const lldb::SBTypeMemberFunction &));
2439     LLDB_REGISTER_METHOD(
2440         lldb::SBTypeMemberFunction &,
2441         SBTypeMemberFunction, operator=,(const lldb::SBTypeMemberFunction &));
2442     LLDB_REGISTER_METHOD_CONST(bool, SBTypeMemberFunction, IsValid, ());
2443     LLDB_REGISTER_METHOD_CONST(bool, SBTypeMemberFunction, operator bool, ());
2444     LLDB_REGISTER_METHOD(const char *, SBTypeMemberFunction, GetName, ());
2445     LLDB_REGISTER_METHOD(const char *, SBTypeMemberFunction, GetDemangledName,
2446                          ());
2447     LLDB_REGISTER_METHOD(const char *, SBTypeMemberFunction, GetMangledName,
2448                          ());
2449     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeMemberFunction, GetType, ());
2450     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeMemberFunction, GetReturnType, ());
2451     LLDB_REGISTER_METHOD(uint32_t, SBTypeMemberFunction, GetNumberOfArguments,
2452                          ());
2453     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeMemberFunction,
2454                          GetArgumentTypeAtIndex, (uint32_t));
2455     LLDB_REGISTER_METHOD(lldb::MemberFunctionKind, SBTypeMemberFunction,
2456                          GetKind, ());
2457     LLDB_REGISTER_METHOD(bool, SBTypeMemberFunction, GetDescription,
2458                          (lldb::SBStream &, lldb::DescriptionLevel));
2459   }
2460   {
2461     LLDB_REGISTER_CONSTRUCTOR(SBTypeCategory, ());
2462     LLDB_REGISTER_CONSTRUCTOR(SBTypeCategory, (const lldb::SBTypeCategory &));
2463     LLDB_REGISTER_METHOD_CONST(bool, SBTypeCategory, IsValid, ());
2464     LLDB_REGISTER_METHOD_CONST(bool, SBTypeCategory, operator bool, ());
2465     LLDB_REGISTER_METHOD(bool, SBTypeCategory, GetEnabled, ());
2466     LLDB_REGISTER_METHOD(void, SBTypeCategory, SetEnabled, (bool));
2467     LLDB_REGISTER_METHOD(const char *, SBTypeCategory, GetName, ());
2468     LLDB_REGISTER_METHOD(lldb::LanguageType, SBTypeCategory, GetLanguageAtIndex,
2469                          (uint32_t));
2470     LLDB_REGISTER_METHOD(uint32_t, SBTypeCategory, GetNumLanguages, ());
2471     LLDB_REGISTER_METHOD(void, SBTypeCategory, AddLanguage,
2472                          (lldb::LanguageType));
2473     LLDB_REGISTER_METHOD(uint32_t, SBTypeCategory, GetNumFormats, ());
2474     LLDB_REGISTER_METHOD(uint32_t, SBTypeCategory, GetNumSummaries, ());
2475     LLDB_REGISTER_METHOD(uint32_t, SBTypeCategory, GetNumFilters, ());
2476     LLDB_REGISTER_METHOD(uint32_t, SBTypeCategory, GetNumSynthetics, ());
2477     LLDB_REGISTER_METHOD(lldb::SBTypeNameSpecifier, SBTypeCategory,
2478                          GetTypeNameSpecifierForSyntheticAtIndex, (uint32_t));
2479     LLDB_REGISTER_METHOD(lldb::SBTypeSummary, SBTypeCategory, GetSummaryForType,
2480                          (lldb::SBTypeNameSpecifier));
2481     LLDB_REGISTER_METHOD(lldb::SBTypeSynthetic, SBTypeCategory,
2482                          GetSyntheticForType, (lldb::SBTypeNameSpecifier));
2483     LLDB_REGISTER_METHOD(lldb::SBTypeFilter, SBTypeCategory, GetFilterAtIndex,
2484                          (uint32_t));
2485     LLDB_REGISTER_METHOD(lldb::SBTypeSummary, SBTypeCategory, GetSummaryAtIndex,
2486                          (uint32_t));
2487     LLDB_REGISTER_METHOD(lldb::SBTypeSynthetic, SBTypeCategory,
2488                          GetSyntheticAtIndex, (uint32_t));
2489     LLDB_REGISTER_METHOD(bool, SBTypeCategory, AddTypeSummary,
2490                          (lldb::SBTypeNameSpecifier, lldb::SBTypeSummary));
2491     LLDB_REGISTER_METHOD(bool, SBTypeCategory, AddTypeSynthetic,
2492                          (lldb::SBTypeNameSpecifier, lldb::SBTypeSynthetic));
2493     LLDB_REGISTER_METHOD(bool, SBTypeCategory, DeleteTypeSynthetic,
2494                          (lldb::SBTypeNameSpecifier));
2495     LLDB_REGISTER_METHOD(lldb::SBTypeNameSpecifier, SBTypeCategory,
2496                          GetTypeNameSpecifierForFilterAtIndex, (uint32_t));
2497     LLDB_REGISTER_METHOD(lldb::SBTypeNameSpecifier, SBTypeCategory,
2498                          GetTypeNameSpecifierForFormatAtIndex, (uint32_t));
2499     LLDB_REGISTER_METHOD(lldb::SBTypeNameSpecifier, SBTypeCategory,
2500                          GetTypeNameSpecifierForSummaryAtIndex, (uint32_t));
2501     LLDB_REGISTER_METHOD(lldb::SBTypeFilter, SBTypeCategory, GetFilterForType,
2502                          (lldb::SBTypeNameSpecifier));
2503     LLDB_REGISTER_METHOD(lldb::SBTypeFormat, SBTypeCategory, GetFormatForType,
2504                          (lldb::SBTypeNameSpecifier));
2505     LLDB_REGISTER_METHOD(lldb::SBTypeFormat, SBTypeCategory, GetFormatAtIndex,
2506                          (uint32_t));
2507     LLDB_REGISTER_METHOD(bool, SBTypeCategory, AddTypeFormat,
2508                          (lldb::SBTypeNameSpecifier, lldb::SBTypeFormat));
2509     LLDB_REGISTER_METHOD(bool, SBTypeCategory, DeleteTypeFormat,
2510                          (lldb::SBTypeNameSpecifier));
2511     LLDB_REGISTER_METHOD(bool, SBTypeCategory, DeleteTypeSummary,
2512                          (lldb::SBTypeNameSpecifier));
2513     LLDB_REGISTER_METHOD(bool, SBTypeCategory, AddTypeFilter,
2514                          (lldb::SBTypeNameSpecifier, lldb::SBTypeFilter));
2515     LLDB_REGISTER_METHOD(bool, SBTypeCategory, DeleteTypeFilter,
2516                          (lldb::SBTypeNameSpecifier));
2517     LLDB_REGISTER_METHOD(bool, SBTypeCategory, GetDescription,
2518                          (lldb::SBStream &, lldb::DescriptionLevel));
2519     LLDB_REGISTER_METHOD(
2520         lldb::SBTypeCategory &,
2521         SBTypeCategory, operator=,(const lldb::SBTypeCategory &));
2522     LLDB_REGISTER_METHOD(bool,
2523                          SBTypeCategory, operator==,(lldb::SBTypeCategory &));
2524     LLDB_REGISTER_METHOD(bool,
2525                          SBTypeCategory, operator!=,(lldb::SBTypeCategory &));
2526   }
2527   {
2528     LLDB_REGISTER_CONSTRUCTOR(SBTypeEnumMember, ());
2529     LLDB_REGISTER_CONSTRUCTOR(SBTypeEnumMember,
2530                               (const lldb::SBTypeEnumMember &));
2531     LLDB_REGISTER_METHOD(
2532         lldb::SBTypeEnumMember &,
2533         SBTypeEnumMember, operator=,(const lldb::SBTypeEnumMember &));
2534     LLDB_REGISTER_METHOD_CONST(bool, SBTypeEnumMember, IsValid, ());
2535     LLDB_REGISTER_METHOD_CONST(bool, SBTypeEnumMember, operator bool, ());
2536     LLDB_REGISTER_METHOD(const char *, SBTypeEnumMember, GetName, ());
2537     LLDB_REGISTER_METHOD(int64_t, SBTypeEnumMember, GetValueAsSigned, ());
2538     LLDB_REGISTER_METHOD(uint64_t, SBTypeEnumMember, GetValueAsUnsigned, ());
2539     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeEnumMember, GetType, ());
2540     LLDB_REGISTER_CONSTRUCTOR(SBTypeEnumMemberList, ());
2541     LLDB_REGISTER_CONSTRUCTOR(SBTypeEnumMemberList,
2542                               (const lldb::SBTypeEnumMemberList &));
2543     LLDB_REGISTER_METHOD(bool, SBTypeEnumMemberList, IsValid, ());
2544     LLDB_REGISTER_METHOD_CONST(bool, SBTypeEnumMemberList, operator bool, ());
2545     LLDB_REGISTER_METHOD(
2546         lldb::SBTypeEnumMemberList &,
2547         SBTypeEnumMemberList, operator=,(const lldb::SBTypeEnumMemberList &));
2548     LLDB_REGISTER_METHOD(void, SBTypeEnumMemberList, Append,
2549                          (lldb::SBTypeEnumMember));
2550     LLDB_REGISTER_METHOD(lldb::SBTypeEnumMember, SBTypeEnumMemberList,
2551                          GetTypeEnumMemberAtIndex, (uint32_t));
2552     LLDB_REGISTER_METHOD(uint32_t, SBTypeEnumMemberList, GetSize, ());
2553     LLDB_REGISTER_METHOD(bool, SBTypeEnumMember, GetDescription,
2554                          (lldb::SBStream &, lldb::DescriptionLevel));
2555   }
2556   {
2557     LLDB_REGISTER_CONSTRUCTOR(SBTypeFilter, ());
2558     LLDB_REGISTER_CONSTRUCTOR(SBTypeFilter, (uint32_t));
2559     LLDB_REGISTER_CONSTRUCTOR(SBTypeFilter, (const lldb::SBTypeFilter &));
2560     LLDB_REGISTER_METHOD_CONST(bool, SBTypeFilter, IsValid, ());
2561     LLDB_REGISTER_METHOD_CONST(bool, SBTypeFilter, operator bool, ());
2562     LLDB_REGISTER_METHOD(uint32_t, SBTypeFilter, GetOptions, ());
2563     LLDB_REGISTER_METHOD(void, SBTypeFilter, SetOptions, (uint32_t));
2564     LLDB_REGISTER_METHOD(bool, SBTypeFilter, GetDescription,
2565                          (lldb::SBStream &, lldb::DescriptionLevel));
2566     LLDB_REGISTER_METHOD(void, SBTypeFilter, Clear, ());
2567     LLDB_REGISTER_METHOD(uint32_t, SBTypeFilter, GetNumberOfExpressionPaths,
2568                          ());
2569     LLDB_REGISTER_METHOD(const char *, SBTypeFilter, GetExpressionPathAtIndex,
2570                          (uint32_t));
2571     LLDB_REGISTER_METHOD(bool, SBTypeFilter, ReplaceExpressionPathAtIndex,
2572                          (uint32_t, const char *));
2573     LLDB_REGISTER_METHOD(void, SBTypeFilter, AppendExpressionPath,
2574                          (const char *));
2575     LLDB_REGISTER_METHOD(lldb::SBTypeFilter &,
2576                          SBTypeFilter, operator=,(const lldb::SBTypeFilter &));
2577     LLDB_REGISTER_METHOD(bool, SBTypeFilter, operator==,(lldb::SBTypeFilter &));
2578     LLDB_REGISTER_METHOD(bool, SBTypeFilter, IsEqualTo, (lldb::SBTypeFilter &));
2579     LLDB_REGISTER_METHOD(bool, SBTypeFilter, operator!=,(lldb::SBTypeFilter &));
2580   }
2581   {
2582     LLDB_REGISTER_CONSTRUCTOR(SBTypeFormat, ());
2583     LLDB_REGISTER_CONSTRUCTOR(SBTypeFormat, (lldb::Format, uint32_t));
2584     LLDB_REGISTER_CONSTRUCTOR(SBTypeFormat, (const char *, uint32_t));
2585     LLDB_REGISTER_CONSTRUCTOR(SBTypeFormat, (const lldb::SBTypeFormat &));
2586     LLDB_REGISTER_METHOD_CONST(bool, SBTypeFormat, IsValid, ());
2587     LLDB_REGISTER_METHOD_CONST(bool, SBTypeFormat, operator bool, ());
2588     LLDB_REGISTER_METHOD(lldb::Format, SBTypeFormat, GetFormat, ());
2589     LLDB_REGISTER_METHOD(const char *, SBTypeFormat, GetTypeName, ());
2590     LLDB_REGISTER_METHOD(uint32_t, SBTypeFormat, GetOptions, ());
2591     LLDB_REGISTER_METHOD(void, SBTypeFormat, SetFormat, (lldb::Format));
2592     LLDB_REGISTER_METHOD(void, SBTypeFormat, SetTypeName, (const char *));
2593     LLDB_REGISTER_METHOD(void, SBTypeFormat, SetOptions, (uint32_t));
2594     LLDB_REGISTER_METHOD(bool, SBTypeFormat, GetDescription,
2595                          (lldb::SBStream &, lldb::DescriptionLevel));
2596     LLDB_REGISTER_METHOD(lldb::SBTypeFormat &,
2597                          SBTypeFormat, operator=,(const lldb::SBTypeFormat &));
2598     LLDB_REGISTER_METHOD(bool, SBTypeFormat, operator==,(lldb::SBTypeFormat &));
2599     LLDB_REGISTER_METHOD(bool, SBTypeFormat, IsEqualTo, (lldb::SBTypeFormat &));
2600     LLDB_REGISTER_METHOD(bool, SBTypeFormat, operator!=,(lldb::SBTypeFormat &));
2601   }
2602   {
2603     LLDB_REGISTER_CONSTRUCTOR(SBTypeNameSpecifier, ());
2604     LLDB_REGISTER_CONSTRUCTOR(SBTypeNameSpecifier, (const char *, bool));
2605     LLDB_REGISTER_CONSTRUCTOR(SBTypeNameSpecifier, (lldb::SBType));
2606     LLDB_REGISTER_CONSTRUCTOR(SBTypeNameSpecifier,
2607                               (const lldb::SBTypeNameSpecifier &));
2608     LLDB_REGISTER_METHOD_CONST(bool, SBTypeNameSpecifier, IsValid, ());
2609     LLDB_REGISTER_METHOD_CONST(bool, SBTypeNameSpecifier, operator bool, ());
2610     LLDB_REGISTER_METHOD(const char *, SBTypeNameSpecifier, GetName, ());
2611     LLDB_REGISTER_METHOD(lldb::SBType, SBTypeNameSpecifier, GetType, ());
2612     LLDB_REGISTER_METHOD(bool, SBTypeNameSpecifier, IsRegex, ());
2613     LLDB_REGISTER_METHOD(bool, SBTypeNameSpecifier, GetDescription,
2614                          (lldb::SBStream &, lldb::DescriptionLevel));
2615     LLDB_REGISTER_METHOD(
2616         lldb::SBTypeNameSpecifier &,
2617         SBTypeNameSpecifier, operator=,(const lldb::SBTypeNameSpecifier &));
2618     LLDB_REGISTER_METHOD(
2619         bool, SBTypeNameSpecifier, operator==,(lldb::SBTypeNameSpecifier &));
2620     LLDB_REGISTER_METHOD(bool, SBTypeNameSpecifier, IsEqualTo,
2621                          (lldb::SBTypeNameSpecifier &));
2622     LLDB_REGISTER_METHOD(
2623         bool, SBTypeNameSpecifier, operator!=,(lldb::SBTypeNameSpecifier &));
2624   }
2625   {
2626     LLDB_REGISTER_CONSTRUCTOR(SBTypeSummaryOptions, ());
2627     LLDB_REGISTER_CONSTRUCTOR(SBTypeSummaryOptions,
2628                               (const lldb::SBTypeSummaryOptions &));
2629     LLDB_REGISTER_METHOD(bool, SBTypeSummaryOptions, IsValid, ());
2630     LLDB_REGISTER_METHOD_CONST(bool, SBTypeSummaryOptions, operator bool, ());
2631     LLDB_REGISTER_METHOD(lldb::LanguageType, SBTypeSummaryOptions, GetLanguage,
2632                          ());
2633     LLDB_REGISTER_METHOD(lldb::TypeSummaryCapping, SBTypeSummaryOptions,
2634                          GetCapping, ());
2635     LLDB_REGISTER_METHOD(void, SBTypeSummaryOptions, SetLanguage,
2636                          (lldb::LanguageType));
2637     LLDB_REGISTER_METHOD(void, SBTypeSummaryOptions, SetCapping,
2638                          (lldb::TypeSummaryCapping));
2639     LLDB_REGISTER_CONSTRUCTOR(SBTypeSummaryOptions,
2640                               (const lldb_private::TypeSummaryOptions *));
2641     LLDB_REGISTER_CONSTRUCTOR(SBTypeSummary, ());
2642     LLDB_REGISTER_STATIC_METHOD(lldb::SBTypeSummary, SBTypeSummary,
2643                                 CreateWithSummaryString,
2644                                 (const char *, uint32_t));
2645     LLDB_REGISTER_STATIC_METHOD(lldb::SBTypeSummary, SBTypeSummary,
2646                                 CreateWithFunctionName,
2647                                 (const char *, uint32_t));
2648     LLDB_REGISTER_STATIC_METHOD(lldb::SBTypeSummary, SBTypeSummary,
2649                                 CreateWithScriptCode, (const char *, uint32_t));
2650     LLDB_REGISTER_CONSTRUCTOR(SBTypeSummary, (const lldb::SBTypeSummary &));
2651     LLDB_REGISTER_METHOD_CONST(bool, SBTypeSummary, IsValid, ());
2652     LLDB_REGISTER_METHOD_CONST(bool, SBTypeSummary, operator bool, ());
2653     LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsFunctionCode, ());
2654     LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsFunctionName, ());
2655     LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsSummaryString, ());
2656     LLDB_REGISTER_METHOD(const char *, SBTypeSummary, GetData, ());
2657     LLDB_REGISTER_METHOD(uint32_t, SBTypeSummary, GetOptions, ());
2658     LLDB_REGISTER_METHOD(void, SBTypeSummary, SetOptions, (uint32_t));
2659     LLDB_REGISTER_METHOD(void, SBTypeSummary, SetSummaryString, (const char *));
2660     LLDB_REGISTER_METHOD(void, SBTypeSummary, SetFunctionName, (const char *));
2661     LLDB_REGISTER_METHOD(void, SBTypeSummary, SetFunctionCode, (const char *));
2662     LLDB_REGISTER_METHOD(bool, SBTypeSummary, GetDescription,
2663                          (lldb::SBStream &, lldb::DescriptionLevel));
2664     LLDB_REGISTER_METHOD(bool, SBTypeSummary, DoesPrintValue, (lldb::SBValue));
2665     LLDB_REGISTER_METHOD(
2666         lldb::SBTypeSummary &,
2667         SBTypeSummary, operator=,(const lldb::SBTypeSummary &));
2668     LLDB_REGISTER_METHOD(bool,
2669                          SBTypeSummary, operator==,(lldb::SBTypeSummary &));
2670     LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsEqualTo,
2671                          (lldb::SBTypeSummary &));
2672     LLDB_REGISTER_METHOD(bool,
2673                          SBTypeSummary, operator!=,(lldb::SBTypeSummary &));
2674   }
2675   {
2676     LLDB_REGISTER_CONSTRUCTOR(SBTypeSynthetic, ());
2677     LLDB_REGISTER_STATIC_METHOD(lldb::SBTypeSynthetic, SBTypeSynthetic,
2678                                 CreateWithClassName, (const char *, uint32_t));
2679     LLDB_REGISTER_STATIC_METHOD(lldb::SBTypeSynthetic, SBTypeSynthetic,
2680                                 CreateWithScriptCode, (const char *, uint32_t));
2681     LLDB_REGISTER_CONSTRUCTOR(SBTypeSynthetic, (const lldb::SBTypeSynthetic &));
2682     LLDB_REGISTER_METHOD_CONST(bool, SBTypeSynthetic, IsValid, ());
2683     LLDB_REGISTER_METHOD_CONST(bool, SBTypeSynthetic, operator bool, ());
2684     LLDB_REGISTER_METHOD(bool, SBTypeSynthetic, IsClassCode, ());
2685     LLDB_REGISTER_METHOD(bool, SBTypeSynthetic, IsClassName, ());
2686     LLDB_REGISTER_METHOD(const char *, SBTypeSynthetic, GetData, ());
2687     LLDB_REGISTER_METHOD(void, SBTypeSynthetic, SetClassName, (const char *));
2688     LLDB_REGISTER_METHOD(void, SBTypeSynthetic, SetClassCode, (const char *));
2689     LLDB_REGISTER_METHOD(uint32_t, SBTypeSynthetic, GetOptions, ());
2690     LLDB_REGISTER_METHOD(void, SBTypeSynthetic, SetOptions, (uint32_t));
2691     LLDB_REGISTER_METHOD(bool, SBTypeSynthetic, GetDescription,
2692                          (lldb::SBStream &, lldb::DescriptionLevel));
2693     LLDB_REGISTER_METHOD(
2694         lldb::SBTypeSynthetic &,
2695         SBTypeSynthetic, operator=,(const lldb::SBTypeSynthetic &));
2696     LLDB_REGISTER_METHOD(bool,
2697                          SBTypeSynthetic, operator==,(lldb::SBTypeSynthetic &));
2698     LLDB_REGISTER_METHOD(bool, SBTypeSynthetic, IsEqualTo,
2699                          (lldb::SBTypeSynthetic &));
2700     LLDB_REGISTER_METHOD(bool,
2701                          SBTypeSynthetic, operator!=,(lldb::SBTypeSynthetic &));
2702   }
2703   {
2704     LLDB_REGISTER_CONSTRUCTOR(SBUnixSignals, ());
2705     LLDB_REGISTER_CONSTRUCTOR(SBUnixSignals, (const lldb::SBUnixSignals &));
2706     LLDB_REGISTER_METHOD(
2707         const lldb::SBUnixSignals &,
2708         SBUnixSignals, operator=,(const lldb::SBUnixSignals &));
2709     LLDB_REGISTER_METHOD(void, SBUnixSignals, Clear, ());
2710     LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, IsValid, ());
2711     LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, operator bool, ());
2712     LLDB_REGISTER_METHOD_CONST(const char *, SBUnixSignals, GetSignalAsCString,
2713                                (int32_t));
2714     LLDB_REGISTER_METHOD_CONST(int32_t, SBUnixSignals, GetSignalNumberFromName,
2715                                (const char *));
2716     LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, GetShouldSuppress,
2717                                (int32_t));
2718     LLDB_REGISTER_METHOD(bool, SBUnixSignals, SetShouldSuppress,
2719                          (int32_t, bool));
2720     LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, GetShouldStop, (int32_t));
2721     LLDB_REGISTER_METHOD(bool, SBUnixSignals, SetShouldStop, (int32_t, bool));
2722     LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, GetShouldNotify, (int32_t));
2723     LLDB_REGISTER_METHOD(bool, SBUnixSignals, SetShouldNotify, (int32_t, bool));
2724     LLDB_REGISTER_METHOD_CONST(int32_t, SBUnixSignals, GetNumSignals, ());
2725     LLDB_REGISTER_METHOD_CONST(int32_t, SBUnixSignals, GetSignalAtIndex,
2726                                (int32_t));
2727   }
2728   {
2729     LLDB_REGISTER_CONSTRUCTOR(SBValue, ());
2730     LLDB_REGISTER_CONSTRUCTOR(SBValue, (const lldb::ValueObjectSP &));
2731     LLDB_REGISTER_CONSTRUCTOR(SBValue, (const lldb::SBValue &));
2732     LLDB_REGISTER_METHOD(lldb::SBValue &,
2733                          SBValue, operator=,(const lldb::SBValue &));
2734     LLDB_REGISTER_METHOD(bool, SBValue, IsValid, ());
2735     LLDB_REGISTER_METHOD_CONST(bool, SBValue, operator bool, ());
2736     LLDB_REGISTER_METHOD(void, SBValue, Clear, ());
2737     LLDB_REGISTER_METHOD(lldb::SBError, SBValue, GetError, ());
2738     LLDB_REGISTER_METHOD(lldb::user_id_t, SBValue, GetID, ());
2739     LLDB_REGISTER_METHOD(const char *, SBValue, GetName, ());
2740     LLDB_REGISTER_METHOD(const char *, SBValue, GetTypeName, ());
2741     LLDB_REGISTER_METHOD(const char *, SBValue, GetDisplayTypeName, ());
2742     LLDB_REGISTER_METHOD(size_t, SBValue, GetByteSize, ());
2743     LLDB_REGISTER_METHOD(bool, SBValue, IsInScope, ());
2744     LLDB_REGISTER_METHOD(const char *, SBValue, GetValue, ());
2745     LLDB_REGISTER_METHOD(lldb::ValueType, SBValue, GetValueType, ());
2746     LLDB_REGISTER_METHOD(const char *, SBValue, GetObjectDescription, ());
2747     LLDB_REGISTER_METHOD(const char *, SBValue, GetTypeValidatorResult, ());
2748     LLDB_REGISTER_METHOD(lldb::SBType, SBValue, GetType, ());
2749     LLDB_REGISTER_METHOD(bool, SBValue, GetValueDidChange, ());
2750     LLDB_REGISTER_METHOD(const char *, SBValue, GetSummary, ());
2751     LLDB_REGISTER_METHOD(const char *, SBValue, GetSummary,
2752                          (lldb::SBStream &, lldb::SBTypeSummaryOptions &));
2753     LLDB_REGISTER_METHOD(const char *, SBValue, GetLocation, ());
2754     LLDB_REGISTER_METHOD(bool, SBValue, SetValueFromCString, (const char *));
2755     LLDB_REGISTER_METHOD(bool, SBValue, SetValueFromCString,
2756                          (const char *, lldb::SBError &));
2757     LLDB_REGISTER_METHOD(lldb::SBTypeFormat, SBValue, GetTypeFormat, ());
2758     LLDB_REGISTER_METHOD(lldb::SBTypeSummary, SBValue, GetTypeSummary, ());
2759     LLDB_REGISTER_METHOD(lldb::SBTypeFilter, SBValue, GetTypeFilter, ());
2760     LLDB_REGISTER_METHOD(lldb::SBTypeSynthetic, SBValue, GetTypeSynthetic, ());
2761     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, CreateChildAtOffset,
2762                          (const char *, uint32_t, lldb::SBType));
2763     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, Cast, (lldb::SBType));
2764     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, CreateValueFromExpression,
2765                          (const char *, const char *));
2766     LLDB_REGISTER_METHOD(
2767         lldb::SBValue, SBValue, CreateValueFromExpression,
2768         (const char *, const char *, lldb::SBExpressionOptions &));
2769     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, CreateValueFromAddress,
2770                          (const char *, lldb::addr_t, lldb::SBType));
2771     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, CreateValueFromData,
2772                          (const char *, lldb::SBData, lldb::SBType));
2773     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetChildAtIndex, (uint32_t));
2774     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetChildAtIndex,
2775                          (uint32_t, lldb::DynamicValueType, bool));
2776     LLDB_REGISTER_METHOD(uint32_t, SBValue, GetIndexOfChildWithName,
2777                          (const char *));
2778     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetChildMemberWithName,
2779                          (const char *));
2780     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetChildMemberWithName,
2781                          (const char *, lldb::DynamicValueType));
2782     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetDynamicValue,
2783                          (lldb::DynamicValueType));
2784     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetStaticValue, ());
2785     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetNonSyntheticValue, ());
2786     LLDB_REGISTER_METHOD(lldb::DynamicValueType, SBValue, GetPreferDynamicValue,
2787                          ());
2788     LLDB_REGISTER_METHOD(void, SBValue, SetPreferDynamicValue,
2789                          (lldb::DynamicValueType));
2790     LLDB_REGISTER_METHOD(bool, SBValue, GetPreferSyntheticValue, ());
2791     LLDB_REGISTER_METHOD(void, SBValue, SetPreferSyntheticValue, (bool));
2792     LLDB_REGISTER_METHOD(bool, SBValue, IsDynamic, ());
2793     LLDB_REGISTER_METHOD(bool, SBValue, IsSynthetic, ());
2794     LLDB_REGISTER_METHOD(bool, SBValue, IsSyntheticChildrenGenerated, ());
2795     LLDB_REGISTER_METHOD(void, SBValue, SetSyntheticChildrenGenerated, (bool));
2796     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, GetValueForExpressionPath,
2797                          (const char *));
2798     LLDB_REGISTER_METHOD(int64_t, SBValue, GetValueAsSigned,
2799                          (lldb::SBError &, int64_t));
2800     LLDB_REGISTER_METHOD(uint64_t, SBValue, GetValueAsUnsigned,
2801                          (lldb::SBError &, uint64_t));
2802     LLDB_REGISTER_METHOD(int64_t, SBValue, GetValueAsSigned, (int64_t));
2803     LLDB_REGISTER_METHOD(uint64_t, SBValue, GetValueAsUnsigned, (uint64_t));
2804     LLDB_REGISTER_METHOD(bool, SBValue, MightHaveChildren, ());
2805     LLDB_REGISTER_METHOD(bool, SBValue, IsRuntimeSupportValue, ());
2806     LLDB_REGISTER_METHOD(uint32_t, SBValue, GetNumChildren, ());
2807     LLDB_REGISTER_METHOD(uint32_t, SBValue, GetNumChildren, (uint32_t));
2808     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, Dereference, ());
2809     LLDB_REGISTER_METHOD(bool, SBValue, TypeIsPointerType, ());
2810     LLDB_REGISTER_METHOD(void *, SBValue, GetOpaqueType, ());
2811     LLDB_REGISTER_METHOD(lldb::SBTarget, SBValue, GetTarget, ());
2812     LLDB_REGISTER_METHOD(lldb::SBProcess, SBValue, GetProcess, ());
2813     LLDB_REGISTER_METHOD(lldb::SBThread, SBValue, GetThread, ());
2814     LLDB_REGISTER_METHOD(lldb::SBFrame, SBValue, GetFrame, ());
2815     LLDB_REGISTER_METHOD_CONST(lldb::ValueObjectSP, SBValue, GetSP, ());
2816     LLDB_REGISTER_METHOD(bool, SBValue, GetExpressionPath, (lldb::SBStream &));
2817     LLDB_REGISTER_METHOD(bool, SBValue, GetExpressionPath,
2818                          (lldb::SBStream &, bool));
2819     LLDB_REGISTER_METHOD_CONST(lldb::SBValue, SBValue, EvaluateExpression,
2820                                (const char *));
2821     LLDB_REGISTER_METHOD_CONST(
2822         lldb::SBValue, SBValue, EvaluateExpression,
2823         (const char *, const lldb::SBExpressionOptions &));
2824     LLDB_REGISTER_METHOD_CONST(
2825         lldb::SBValue, SBValue, EvaluateExpression,
2826         (const char *, const lldb::SBExpressionOptions &, const char *));
2827     LLDB_REGISTER_METHOD(bool, SBValue, GetDescription, (lldb::SBStream &));
2828     LLDB_REGISTER_METHOD(lldb::Format, SBValue, GetFormat, ());
2829     LLDB_REGISTER_METHOD(void, SBValue, SetFormat, (lldb::Format));
2830     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, AddressOf, ());
2831     LLDB_REGISTER_METHOD(lldb::addr_t, SBValue, GetLoadAddress, ());
2832     LLDB_REGISTER_METHOD(lldb::SBAddress, SBValue, GetAddress, ());
2833     LLDB_REGISTER_METHOD(lldb::SBData, SBValue, GetPointeeData,
2834                          (uint32_t, uint32_t));
2835     LLDB_REGISTER_METHOD(lldb::SBData, SBValue, GetData, ());
2836     LLDB_REGISTER_METHOD(bool, SBValue, SetData,
2837                          (lldb::SBData &, lldb::SBError &));
2838     LLDB_REGISTER_METHOD(lldb::SBDeclaration, SBValue, GetDeclaration, ());
2839     LLDB_REGISTER_METHOD(lldb::SBWatchpoint, SBValue, Watch,
2840                          (bool, bool, bool, lldb::SBError &));
2841     LLDB_REGISTER_METHOD(lldb::SBWatchpoint, SBValue, Watch,
2842                          (bool, bool, bool));
2843     LLDB_REGISTER_METHOD(lldb::SBWatchpoint, SBValue, WatchPointee,
2844                          (bool, bool, bool, lldb::SBError &));
2845     LLDB_REGISTER_METHOD(lldb::SBValue, SBValue, Persist, ());
2846   }
2847   {
2848     LLDB_REGISTER_CONSTRUCTOR(SBValueList, ());
2849     LLDB_REGISTER_CONSTRUCTOR(SBValueList, (const lldb::SBValueList &));
2850     LLDB_REGISTER_METHOD_CONST(bool, SBValueList, IsValid, ());
2851     LLDB_REGISTER_METHOD_CONST(bool, SBValueList, operator bool, ());
2852     LLDB_REGISTER_METHOD(void, SBValueList, Clear, ());
2853     LLDB_REGISTER_METHOD(const lldb::SBValueList &,
2854                          SBValueList, operator=,(const lldb::SBValueList &));
2855     LLDB_REGISTER_METHOD(void, SBValueList, Append, (const lldb::SBValue &));
2856     LLDB_REGISTER_METHOD(void, SBValueList, Append,
2857                          (const lldb::SBValueList &));
2858     LLDB_REGISTER_METHOD_CONST(lldb::SBValue, SBValueList, GetValueAtIndex,
2859                                (uint32_t));
2860     LLDB_REGISTER_METHOD_CONST(uint32_t, SBValueList, GetSize, ());
2861     LLDB_REGISTER_METHOD(lldb::SBValue, SBValueList, FindValueObjectByUID,
2862                          (lldb::user_id_t));
2863     LLDB_REGISTER_METHOD_CONST(lldb::SBValue, SBValueList, GetFirstValueByName,
2864                                (const char *));
2865   }
2866   {
2867     LLDB_REGISTER_CONSTRUCTOR(SBVariablesOptions, ());
2868     LLDB_REGISTER_CONSTRUCTOR(SBVariablesOptions,
2869                               (const lldb::SBVariablesOptions &));
2870     LLDB_REGISTER_METHOD(
2871         lldb::SBVariablesOptions &,
2872         SBVariablesOptions, operator=,(const lldb::SBVariablesOptions &));
2873     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, IsValid, ());
2874     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, operator bool, ());
2875     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, GetIncludeArguments,
2876                                ());
2877     LLDB_REGISTER_METHOD(void, SBVariablesOptions, SetIncludeArguments, (bool));
2878     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions,
2879                                GetIncludeRecognizedArguments,
2880                                (const lldb::SBTarget &));
2881     LLDB_REGISTER_METHOD(void, SBVariablesOptions,
2882                          SetIncludeRecognizedArguments, (bool));
2883     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, GetIncludeLocals, ());
2884     LLDB_REGISTER_METHOD(void, SBVariablesOptions, SetIncludeLocals, (bool));
2885     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, GetIncludeStatics, ());
2886     LLDB_REGISTER_METHOD(void, SBVariablesOptions, SetIncludeStatics, (bool));
2887     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, GetInScopeOnly, ());
2888     LLDB_REGISTER_METHOD(void, SBVariablesOptions, SetInScopeOnly, (bool));
2889     LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions,
2890                                GetIncludeRuntimeSupportValues, ());
2891     LLDB_REGISTER_METHOD(void, SBVariablesOptions,
2892                          SetIncludeRuntimeSupportValues, (bool));
2893     LLDB_REGISTER_METHOD_CONST(lldb::DynamicValueType, SBVariablesOptions,
2894                                GetUseDynamic, ());
2895     LLDB_REGISTER_METHOD(void, SBVariablesOptions, SetUseDynamic,
2896                          (lldb::DynamicValueType));
2897   }
2898   {
2899     LLDB_REGISTER_CONSTRUCTOR(SBWatchpoint, ());
2900     LLDB_REGISTER_CONSTRUCTOR(SBWatchpoint, (const lldb::WatchpointSP &));
2901     LLDB_REGISTER_CONSTRUCTOR(SBWatchpoint, (const lldb::SBWatchpoint &));
2902     LLDB_REGISTER_METHOD(const lldb::SBWatchpoint &,
2903                          SBWatchpoint, operator=,(const lldb::SBWatchpoint &));
2904     LLDB_REGISTER_METHOD(lldb::watch_id_t, SBWatchpoint, GetID, ());
2905     LLDB_REGISTER_METHOD_CONST(bool, SBWatchpoint, IsValid, ());
2906     LLDB_REGISTER_METHOD_CONST(bool, SBWatchpoint, operator bool, ());
2907     LLDB_REGISTER_METHOD(lldb::SBError, SBWatchpoint, GetError, ());
2908     LLDB_REGISTER_METHOD(int32_t, SBWatchpoint, GetHardwareIndex, ());
2909     LLDB_REGISTER_METHOD(lldb::addr_t, SBWatchpoint, GetWatchAddress, ());
2910     LLDB_REGISTER_METHOD(size_t, SBWatchpoint, GetWatchSize, ());
2911     LLDB_REGISTER_METHOD(void, SBWatchpoint, SetEnabled, (bool));
2912     LLDB_REGISTER_METHOD(bool, SBWatchpoint, IsEnabled, ());
2913     LLDB_REGISTER_METHOD(uint32_t, SBWatchpoint, GetHitCount, ());
2914     LLDB_REGISTER_METHOD(uint32_t, SBWatchpoint, GetIgnoreCount, ());
2915     LLDB_REGISTER_METHOD(void, SBWatchpoint, SetIgnoreCount, (uint32_t));
2916     LLDB_REGISTER_METHOD(const char *, SBWatchpoint, GetCondition, ());
2917     LLDB_REGISTER_METHOD(void, SBWatchpoint, SetCondition, (const char *));
2918     LLDB_REGISTER_METHOD(bool, SBWatchpoint, GetDescription,
2919                          (lldb::SBStream &, lldb::DescriptionLevel));
2920     LLDB_REGISTER_METHOD(void, SBWatchpoint, Clear, ());
2921     LLDB_REGISTER_METHOD_CONST(lldb::WatchpointSP, SBWatchpoint, GetSP, ());
2922     LLDB_REGISTER_METHOD(void, SBWatchpoint, SetSP,
2923                          (const lldb::WatchpointSP &));
2924     LLDB_REGISTER_STATIC_METHOD(bool, SBWatchpoint, EventIsWatchpointEvent,
2925                                 (const lldb::SBEvent &));
2926     LLDB_REGISTER_STATIC_METHOD(lldb::WatchpointEventType, SBWatchpoint,
2927                                 GetWatchpointEventTypeFromEvent,
2928                                 (const lldb::SBEvent &));
2929     LLDB_REGISTER_STATIC_METHOD(lldb::SBWatchpoint, SBWatchpoint,
2930                                 GetWatchpointFromEvent,
2931                                 (const lldb::SBEvent &));
2932   }
2933 }
2934 
2935 const char *SBReproducer::Capture() {
2936   static std::string error;
2937   if (auto e = Reproducer::Initialize(ReproducerMode::Capture, llvm::None)) {
2938     error = llvm::toString(std::move(e));
2939     return error.c_str();
2940   }
2941   return nullptr;
2942 }
2943 
2944 const char *SBReproducer::Capture(const char *path) {
2945   static std::string error;
2946   if (auto e =
2947           Reproducer::Initialize(ReproducerMode::Capture, FileSpec(path))) {
2948     error = llvm::toString(std::move(e));
2949     return error.c_str();
2950   }
2951   return nullptr;
2952 }
2953 
2954 const char *SBReproducer::Replay(const char *path) {
2955   static std::string error;
2956   if (auto e = Reproducer::Initialize(ReproducerMode::Replay, FileSpec(path))) {
2957     error = llvm::toString(std::move(e));
2958     return error.c_str();
2959   }
2960 
2961   repro::Loader *loader = repro::Reproducer::Instance().GetLoader();
2962   if (!loader) {
2963     error = "unable to get replay loader.";
2964     return error.c_str();
2965   }
2966 
2967   FileSpec file = loader->GetFile<SBInfo>();
2968   if (!file) {
2969     error = "unable to get replay data from reproducer.";
2970     return error.c_str();
2971   }
2972 
2973   SBRegistry registry;
2974   registry.Replay(file);
2975 
2976   return nullptr;
2977 }
2978 
2979 char lldb_private::repro::SBProvider::ID = 0;
2980 const char *SBInfo::name = "sbapi";
2981 const char *SBInfo::file = "sbapi.bin";
2982