Line data Source code
1 : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2 : |* *|
3 : |* List of AST nodes of a particular kind *|
4 : |* *|
5 : |* Automatically generated file, do not edit! *|
6 : |* *|
7 : \*===----------------------------------------------------------------------===*/
8 :
9 : #ifndef ABSTRACT_DECL
10 : # define ABSTRACT_DECL(Type) Type
11 : #endif
12 : #ifndef DECL_RANGE
13 : # define DECL_RANGE(Base, First, Last)
14 : #endif
15 :
16 : #ifndef LAST_DECL_RANGE
17 : # define LAST_DECL_RANGE(Base, First, Last) DECL_RANGE(Base, First, Last)
18 : #endif
19 :
20 : #ifndef ACCESSSPEC
21 : # define ACCESSSPEC(Type, Base) DECL(Type, Base)
22 : #endif
23 99 : ACCESSSPEC(AccessSpec, Decl)
24 : #undef ACCESSSPEC
25 :
26 : #ifndef BLOCK
27 : # define BLOCK(Type, Base) DECL(Type, Base)
28 : #endif
29 0 : BLOCK(Block, Decl)
30 : #undef BLOCK
31 :
32 : #ifndef CAPTURED
33 : # define CAPTURED(Type, Base) DECL(Type, Base)
34 : #endif
35 0 : CAPTURED(Captured, Decl)
36 : #undef CAPTURED
37 :
38 : #ifndef CLASSSCOPEFUNCTIONSPECIALIZATION
39 : # define CLASSSCOPEFUNCTIONSPECIALIZATION(Type, Base) DECL(Type, Base)
40 : #endif
41 0 : CLASSSCOPEFUNCTIONSPECIALIZATION(ClassScopeFunctionSpecialization, Decl)
42 : #undef CLASSSCOPEFUNCTIONSPECIALIZATION
43 :
44 : #ifndef EMPTY
45 : # define EMPTY(Type, Base) DECL(Type, Base)
46 : #endif
47 0 : EMPTY(Empty, Decl)
48 : #undef EMPTY
49 :
50 : #ifndef EXTERNCCONTEXT
51 : # define EXTERNCCONTEXT(Type, Base) DECL(Type, Base)
52 : #endif
53 0 : EXTERNCCONTEXT(ExternCContext, Decl)
54 : #undef EXTERNCCONTEXT
55 :
56 : #ifndef FILESCOPEASM
57 : # define FILESCOPEASM(Type, Base) DECL(Type, Base)
58 : #endif
59 0 : FILESCOPEASM(FileScopeAsm, Decl)
60 : #undef FILESCOPEASM
61 :
62 : #ifndef FRIEND
63 : # define FRIEND(Type, Base) DECL(Type, Base)
64 : #endif
65 0 : FRIEND(Friend, Decl)
66 : #undef FRIEND
67 :
68 : #ifndef FRIENDTEMPLATE
69 : # define FRIENDTEMPLATE(Type, Base) DECL(Type, Base)
70 : #endif
71 0 : FRIENDTEMPLATE(FriendTemplate, Decl)
72 : #undef FRIENDTEMPLATE
73 :
74 : #ifndef IMPORT
75 : # define IMPORT(Type, Base) DECL(Type, Base)
76 : #endif
77 0 : IMPORT(Import, Decl)
78 : #undef IMPORT
79 :
80 : #ifndef LINKAGESPEC
81 : # define LINKAGESPEC(Type, Base) DECL(Type, Base)
82 : #endif
83 0 : LINKAGESPEC(LinkageSpec, Decl)
84 : #undef LINKAGESPEC
85 :
86 : #ifndef NAMED
87 : # define NAMED(Type, Base) DECL(Type, Base)
88 : #endif
89 414 : ABSTRACT_DECL(NAMED(Named, Decl))
90 : #ifndef LABEL
91 : # define LABEL(Type, Base) NAMED(Type, Base)
92 : #endif
93 0 : LABEL(Label, NamedDecl)
94 : #undef LABEL
95 :
96 : #ifndef NAMESPACE
97 : # define NAMESPACE(Type, Base) NAMED(Type, Base)
98 : #endif
99 0 : NAMESPACE(Namespace, NamedDecl)
100 : #undef NAMESPACE
101 :
102 : #ifndef NAMESPACEALIAS
103 : # define NAMESPACEALIAS(Type, Base) NAMED(Type, Base)
104 : #endif
105 0 : NAMESPACEALIAS(NamespaceAlias, NamedDecl)
106 : #undef NAMESPACEALIAS
107 :
108 : #ifndef OBJCCOMPATIBLEALIAS
109 : # define OBJCCOMPATIBLEALIAS(Type, Base) NAMED(Type, Base)
110 : #endif
111 0 : OBJCCOMPATIBLEALIAS(ObjCCompatibleAlias, NamedDecl)
112 : #undef OBJCCOMPATIBLEALIAS
113 :
114 : #ifndef OBJCCONTAINER
115 : # define OBJCCONTAINER(Type, Base) NAMED(Type, Base)
116 : #endif
117 0 : ABSTRACT_DECL(OBJCCONTAINER(ObjCContainer, NamedDecl))
118 : #ifndef OBJCCATEGORY
119 : # define OBJCCATEGORY(Type, Base) OBJCCONTAINER(Type, Base)
120 : #endif
121 0 : OBJCCATEGORY(ObjCCategory, ObjCContainerDecl)
122 : #undef OBJCCATEGORY
123 :
124 : #ifndef OBJCIMPL
125 : # define OBJCIMPL(Type, Base) OBJCCONTAINER(Type, Base)
126 : #endif
127 0 : ABSTRACT_DECL(OBJCIMPL(ObjCImpl, ObjCContainerDecl))
128 : #ifndef OBJCCATEGORYIMPL
129 : # define OBJCCATEGORYIMPL(Type, Base) OBJCIMPL(Type, Base)
130 : #endif
131 0 : OBJCCATEGORYIMPL(ObjCCategoryImpl, ObjCImplDecl)
132 : #undef OBJCCATEGORYIMPL
133 :
134 : #ifndef OBJCIMPLEMENTATION
135 : # define OBJCIMPLEMENTATION(Type, Base) OBJCIMPL(Type, Base)
136 : #endif
137 0 : OBJCIMPLEMENTATION(ObjCImplementation, ObjCImplDecl)
138 : #undef OBJCIMPLEMENTATION
139 :
140 : DECL_RANGE(ObjCImpl, ObjCCategoryImpl, ObjCImplementation)
141 :
142 : #undef OBJCIMPL
143 :
144 : #ifndef OBJCINTERFACE
145 : # define OBJCINTERFACE(Type, Base) OBJCCONTAINER(Type, Base)
146 : #endif
147 0 : OBJCINTERFACE(ObjCInterface, ObjCContainerDecl)
148 : #undef OBJCINTERFACE
149 :
150 : #ifndef OBJCPROTOCOL
151 : # define OBJCPROTOCOL(Type, Base) OBJCCONTAINER(Type, Base)
152 : #endif
153 0 : OBJCPROTOCOL(ObjCProtocol, ObjCContainerDecl)
154 : #undef OBJCPROTOCOL
155 :
156 : DECL_RANGE(ObjCContainer, ObjCCategory, ObjCProtocol)
157 :
158 : #undef OBJCCONTAINER
159 :
160 : #ifndef OBJCMETHOD
161 : # define OBJCMETHOD(Type, Base) NAMED(Type, Base)
162 : #endif
163 0 : OBJCMETHOD(ObjCMethod, NamedDecl)
164 : #undef OBJCMETHOD
165 :
166 : #ifndef OBJCPROPERTY
167 : # define OBJCPROPERTY(Type, Base) NAMED(Type, Base)
168 : #endif
169 0 : OBJCPROPERTY(ObjCProperty, NamedDecl)
170 : #undef OBJCPROPERTY
171 :
172 : #ifndef TEMPLATE
173 : # define TEMPLATE(Type, Base) NAMED(Type, Base)
174 : #endif
175 0 : ABSTRACT_DECL(TEMPLATE(Template, NamedDecl))
176 : #ifndef REDECLARABLETEMPLATE
177 : # define REDECLARABLETEMPLATE(Type, Base) TEMPLATE(Type, Base)
178 : #endif
179 0 : ABSTRACT_DECL(REDECLARABLETEMPLATE(RedeclarableTemplate, TemplateDecl))
180 : #ifndef CLASSTEMPLATE
181 : # define CLASSTEMPLATE(Type, Base) REDECLARABLETEMPLATE(Type, Base)
182 : #endif
183 0 : CLASSTEMPLATE(ClassTemplate, RedeclarableTemplateDecl)
184 : #undef CLASSTEMPLATE
185 :
186 : #ifndef FUNCTIONTEMPLATE
187 : # define FUNCTIONTEMPLATE(Type, Base) REDECLARABLETEMPLATE(Type, Base)
188 : #endif
189 0 : FUNCTIONTEMPLATE(FunctionTemplate, RedeclarableTemplateDecl)
190 : #undef FUNCTIONTEMPLATE
191 :
192 : #ifndef TYPEALIASTEMPLATE
193 : # define TYPEALIASTEMPLATE(Type, Base) REDECLARABLETEMPLATE(Type, Base)
194 : #endif
195 0 : TYPEALIASTEMPLATE(TypeAliasTemplate, RedeclarableTemplateDecl)
196 : #undef TYPEALIASTEMPLATE
197 :
198 : #ifndef VARTEMPLATE
199 : # define VARTEMPLATE(Type, Base) REDECLARABLETEMPLATE(Type, Base)
200 : #endif
201 0 : VARTEMPLATE(VarTemplate, RedeclarableTemplateDecl)
202 : #undef VARTEMPLATE
203 :
204 : DECL_RANGE(RedeclarableTemplate, ClassTemplate, VarTemplate)
205 :
206 : #undef REDECLARABLETEMPLATE
207 :
208 : #ifndef TEMPLATETEMPLATEPARM
209 : # define TEMPLATETEMPLATEPARM(Type, Base) TEMPLATE(Type, Base)
210 : #endif
211 0 : TEMPLATETEMPLATEPARM(TemplateTemplateParm, TemplateDecl)
212 : #undef TEMPLATETEMPLATEPARM
213 :
214 : DECL_RANGE(Template, ClassTemplate, TemplateTemplateParm)
215 :
216 : #undef TEMPLATE
217 :
218 : #ifndef TYPE
219 : # define TYPE(Type, Base) NAMED(Type, Base)
220 : #endif
221 117 : ABSTRACT_DECL(TYPE(Type, NamedDecl))
222 : #ifndef TAG
223 : # define TAG(Type, Base) TYPE(Type, Base)
224 : #endif
225 117 : ABSTRACT_DECL(TAG(Tag, TypeDecl))
226 : #ifndef ENUM
227 : # define ENUM(Type, Base) TAG(Type, Base)
228 : #endif
229 0 : ENUM(Enum, TagDecl)
230 : #undef ENUM
231 :
232 : #ifndef RECORD
233 : # define RECORD(Type, Base) TAG(Type, Base)
234 : #endif
235 117 : RECORD(Record, TagDecl)
236 : #ifndef CXXRECORD
237 : # define CXXRECORD(Type, Base) RECORD(Type, Base)
238 : #endif
239 104 : CXXRECORD(CXXRecord, RecordDecl)
240 : #ifndef CLASSTEMPLATESPECIALIZATION
241 : # define CLASSTEMPLATESPECIALIZATION(Type, Base) CXXRECORD(Type, Base)
242 : #endif
243 0 : CLASSTEMPLATESPECIALIZATION(ClassTemplateSpecialization, CXXRecordDecl)
244 : #ifndef CLASSTEMPLATEPARTIALSPECIALIZATION
245 : # define CLASSTEMPLATEPARTIALSPECIALIZATION(Type, Base) CLASSTEMPLATESPECIALIZATION(Type, Base)
246 : #endif
247 0 : CLASSTEMPLATEPARTIALSPECIALIZATION(ClassTemplatePartialSpecialization, ClassTemplateSpecializationDecl)
248 : #undef CLASSTEMPLATEPARTIALSPECIALIZATION
249 :
250 : DECL_RANGE(ClassTemplateSpecialization, ClassTemplateSpecialization, ClassTemplatePartialSpecialization)
251 :
252 : #undef CLASSTEMPLATESPECIALIZATION
253 :
254 : DECL_RANGE(CXXRecord, CXXRecord, ClassTemplatePartialSpecialization)
255 :
256 : #undef CXXRECORD
257 :
258 : DECL_RANGE(Record, Record, ClassTemplatePartialSpecialization)
259 :
260 : #undef RECORD
261 :
262 : DECL_RANGE(Tag, Enum, ClassTemplatePartialSpecialization)
263 :
264 : #undef TAG
265 :
266 : #ifndef TEMPLATETYPEPARM
267 : # define TEMPLATETYPEPARM(Type, Base) TYPE(Type, Base)
268 : #endif
269 0 : TEMPLATETYPEPARM(TemplateTypeParm, TypeDecl)
270 : #undef TEMPLATETYPEPARM
271 :
272 : #ifndef TYPEDEFNAME
273 : # define TYPEDEFNAME(Type, Base) TYPE(Type, Base)
274 : #endif
275 0 : ABSTRACT_DECL(TYPEDEFNAME(TypedefName, TypeDecl))
276 : #ifndef OBJCTYPEPARAM
277 : # define OBJCTYPEPARAM(Type, Base) TYPEDEFNAME(Type, Base)
278 : #endif
279 0 : OBJCTYPEPARAM(ObjCTypeParam, TypedefNameDecl)
280 : #undef OBJCTYPEPARAM
281 :
282 : #ifndef TYPEALIAS
283 : # define TYPEALIAS(Type, Base) TYPEDEFNAME(Type, Base)
284 : #endif
285 0 : TYPEALIAS(TypeAlias, TypedefNameDecl)
286 : #undef TYPEALIAS
287 :
288 : #ifndef TYPEDEF
289 : # define TYPEDEF(Type, Base) TYPEDEFNAME(Type, Base)
290 : #endif
291 0 : TYPEDEF(Typedef, TypedefNameDecl)
292 : #undef TYPEDEF
293 :
294 : DECL_RANGE(TypedefName, ObjCTypeParam, Typedef)
295 :
296 : #undef TYPEDEFNAME
297 :
298 : #ifndef UNRESOLVEDUSINGTYPENAME
299 : # define UNRESOLVEDUSINGTYPENAME(Type, Base) TYPE(Type, Base)
300 : #endif
301 0 : UNRESOLVEDUSINGTYPENAME(UnresolvedUsingTypename, TypeDecl)
302 : #undef UNRESOLVEDUSINGTYPENAME
303 :
304 : DECL_RANGE(Type, Enum, UnresolvedUsingTypename)
305 :
306 : #undef TYPE
307 :
308 : #ifndef USING
309 : # define USING(Type, Base) NAMED(Type, Base)
310 : #endif
311 0 : USING(Using, NamedDecl)
312 : #undef USING
313 :
314 : #ifndef USINGDIRECTIVE
315 : # define USINGDIRECTIVE(Type, Base) NAMED(Type, Base)
316 : #endif
317 0 : USINGDIRECTIVE(UsingDirective, NamedDecl)
318 : #undef USINGDIRECTIVE
319 :
320 : #ifndef USINGSHADOW
321 : # define USINGSHADOW(Type, Base) NAMED(Type, Base)
322 : #endif
323 0 : USINGSHADOW(UsingShadow, NamedDecl)
324 : #undef USINGSHADOW
325 :
326 : #ifndef VALUE
327 : # define VALUE(Type, Base) NAMED(Type, Base)
328 : #endif
329 297 : ABSTRACT_DECL(VALUE(Value, NamedDecl))
330 : #ifndef DECLARATOR
331 : # define DECLARATOR(Type, Base) VALUE(Type, Base)
332 : #endif
333 297 : ABSTRACT_DECL(DECLARATOR(Declarator, ValueDecl))
334 : #ifndef FIELD
335 : # define FIELD(Type, Base) DECLARATOR(Type, Base)
336 : #endif
337 48 : FIELD(Field, DeclaratorDecl)
338 : #ifndef OBJCATDEFSFIELD
339 : # define OBJCATDEFSFIELD(Type, Base) FIELD(Type, Base)
340 : #endif
341 0 : OBJCATDEFSFIELD(ObjCAtDefsField, FieldDecl)
342 : #undef OBJCATDEFSFIELD
343 :
344 : #ifndef OBJCIVAR
345 : # define OBJCIVAR(Type, Base) FIELD(Type, Base)
346 : #endif
347 0 : OBJCIVAR(ObjCIvar, FieldDecl)
348 : #undef OBJCIVAR
349 :
350 : DECL_RANGE(Field, Field, ObjCIvar)
351 :
352 : #undef FIELD
353 :
354 : #ifndef FUNCTION
355 : # define FUNCTION(Type, Base) DECLARATOR(Type, Base)
356 : #endif
357 144 : FUNCTION(Function, DeclaratorDecl)
358 : #ifndef CXXMETHOD
359 : # define CXXMETHOD(Type, Base) FUNCTION(Type, Base)
360 : #endif
361 64 : CXXMETHOD(CXXMethod, FunctionDecl)
362 : #ifndef CXXCONSTRUCTOR
363 : # define CXXCONSTRUCTOR(Type, Base) CXXMETHOD(Type, Base)
364 : #endif
365 32 : CXXCONSTRUCTOR(CXXConstructor, CXXMethodDecl)
366 : #undef CXXCONSTRUCTOR
367 :
368 : #ifndef CXXCONVERSION
369 : # define CXXCONVERSION(Type, Base) CXXMETHOD(Type, Base)
370 : #endif
371 0 : CXXCONVERSION(CXXConversion, CXXMethodDecl)
372 : #undef CXXCONVERSION
373 :
374 : #ifndef CXXDESTRUCTOR
375 : # define CXXDESTRUCTOR(Type, Base) CXXMETHOD(Type, Base)
376 : #endif
377 0 : CXXDESTRUCTOR(CXXDestructor, CXXMethodDecl)
378 : #undef CXXDESTRUCTOR
379 :
380 : DECL_RANGE(CXXMethod, CXXMethod, CXXDestructor)
381 :
382 : #undef CXXMETHOD
383 :
384 : DECL_RANGE(Function, Function, CXXDestructor)
385 :
386 : #undef FUNCTION
387 :
388 : #ifndef MSPROPERTY
389 : # define MSPROPERTY(Type, Base) DECLARATOR(Type, Base)
390 : #endif
391 0 : MSPROPERTY(MSProperty, DeclaratorDecl)
392 : #undef MSPROPERTY
393 :
394 : #ifndef NONTYPETEMPLATEPARM
395 : # define NONTYPETEMPLATEPARM(Type, Base) DECLARATOR(Type, Base)
396 : #endif
397 0 : NONTYPETEMPLATEPARM(NonTypeTemplateParm, DeclaratorDecl)
398 : #undef NONTYPETEMPLATEPARM
399 :
400 : #ifndef VAR
401 : # define VAR(Type, Base) DECLARATOR(Type, Base)
402 : #endif
403 88 : VAR(Var, DeclaratorDecl)
404 : #ifndef IMPLICITPARAM
405 : # define IMPLICITPARAM(Type, Base) VAR(Type, Base)
406 : #endif
407 0 : IMPLICITPARAM(ImplicitParam, VarDecl)
408 : #undef IMPLICITPARAM
409 :
410 : #ifndef PARMVAR
411 : # define PARMVAR(Type, Base) VAR(Type, Base)
412 : #endif
413 18 : PARMVAR(ParmVar, VarDecl)
414 : #undef PARMVAR
415 :
416 : #ifndef VARTEMPLATESPECIALIZATION
417 : # define VARTEMPLATESPECIALIZATION(Type, Base) VAR(Type, Base)
418 : #endif
419 0 : VARTEMPLATESPECIALIZATION(VarTemplateSpecialization, VarDecl)
420 : #ifndef VARTEMPLATEPARTIALSPECIALIZATION
421 : # define VARTEMPLATEPARTIALSPECIALIZATION(Type, Base) VARTEMPLATESPECIALIZATION(Type, Base)
422 : #endif
423 0 : VARTEMPLATEPARTIALSPECIALIZATION(VarTemplatePartialSpecialization, VarTemplateSpecializationDecl)
424 : #undef VARTEMPLATEPARTIALSPECIALIZATION
425 :
426 : DECL_RANGE(VarTemplateSpecialization, VarTemplateSpecialization, VarTemplatePartialSpecialization)
427 :
428 : #undef VARTEMPLATESPECIALIZATION
429 :
430 : DECL_RANGE(Var, Var, VarTemplatePartialSpecialization)
431 :
432 : #undef VAR
433 :
434 : DECL_RANGE(Declarator, Field, VarTemplatePartialSpecialization)
435 :
436 : #undef DECLARATOR
437 :
438 : #ifndef ENUMCONSTANT
439 : # define ENUMCONSTANT(Type, Base) VALUE(Type, Base)
440 : #endif
441 0 : ENUMCONSTANT(EnumConstant, ValueDecl)
442 : #undef ENUMCONSTANT
443 :
444 : #ifndef INDIRECTFIELD
445 : # define INDIRECTFIELD(Type, Base) VALUE(Type, Base)
446 : #endif
447 0 : INDIRECTFIELD(IndirectField, ValueDecl)
448 : #undef INDIRECTFIELD
449 :
450 : #ifndef UNRESOLVEDUSINGVALUE
451 : # define UNRESOLVEDUSINGVALUE(Type, Base) VALUE(Type, Base)
452 : #endif
453 0 : UNRESOLVEDUSINGVALUE(UnresolvedUsingValue, ValueDecl)
454 : #undef UNRESOLVEDUSINGVALUE
455 :
456 : DECL_RANGE(Value, Field, UnresolvedUsingValue)
457 :
458 : #undef VALUE
459 :
460 : DECL_RANGE(Named, Label, UnresolvedUsingValue)
461 :
462 : #undef NAMED
463 :
464 : #ifndef OMPTHREADPRIVATE
465 : # define OMPTHREADPRIVATE(Type, Base) DECL(Type, Base)
466 : #endif
467 0 : OMPTHREADPRIVATE(OMPThreadPrivate, Decl)
468 : #undef OMPTHREADPRIVATE
469 :
470 : #ifndef OBJCPROPERTYIMPL
471 : # define OBJCPROPERTYIMPL(Type, Base) DECL(Type, Base)
472 : #endif
473 0 : OBJCPROPERTYIMPL(ObjCPropertyImpl, Decl)
474 : #undef OBJCPROPERTYIMPL
475 :
476 : #ifndef STATICASSERT
477 : # define STATICASSERT(Type, Base) DECL(Type, Base)
478 : #endif
479 0 : STATICASSERT(StaticAssert, Decl)
480 : #undef STATICASSERT
481 :
482 : #ifndef TRANSLATIONUNIT
483 : # define TRANSLATIONUNIT(Type, Base) DECL(Type, Base)
484 : #endif
485 108 : TRANSLATIONUNIT(TranslationUnit, Decl)
486 : #undef TRANSLATIONUNIT
487 :
488 : LAST_DECL_RANGE(Decl, AccessSpec, TranslationUnit)
489 :
490 : #undef DECL
491 : #undef DECL_RANGE
492 : #undef LAST_DECL_RANGE
493 : #undef ABSTRACT_DECL
494 : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
495 : |* *|
496 : |* List of AST Decl nodes *|
497 : |* *|
498 : |* Automatically generated file, do not edit! *|
499 : |* *|
500 : \*===----------------------------------------------------------------------===*/
501 :
502 : #ifndef DECL_CONTEXT
503 : # define DECL_CONTEXT(DECL)
504 : #endif
505 : #ifndef DECL_CONTEXT_BASE
506 : # define DECL_CONTEXT_BASE(DECL) DECL_CONTEXT(DECL)
507 : #endif
508 : DECL_CONTEXT_BASE(Function)
509 : DECL_CONTEXT_BASE(Tag)
510 : DECL_CONTEXT_BASE(ObjCContainer)
511 : DECL_CONTEXT(Block)
512 : DECL_CONTEXT(Captured)
513 : DECL_CONTEXT(ExternCContext)
514 : DECL_CONTEXT(LinkageSpec)
515 : DECL_CONTEXT(Namespace)
516 : DECL_CONTEXT(ObjCMethod)
517 : DECL_CONTEXT(TranslationUnit)
518 : #undef DECL_CONTEXT
519 : #undef DECL_CONTEXT_BASE
|