1 //===-- StmtNodes.def - Metadata about Stmt AST nodes -----------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file defines the AST Node info database.
12 //===----------------------------------------------------------------------===//
26 STMT( 1, NullStmt , Stmt)
27 STMT( 2, CompoundStmt , Stmt)
28 STMT( 3, CaseStmt , SwitchCase)
29 STMT( 4, DefaultStmt , SwitchCase)
30 STMT( 5, LabelStmt , Stmt)
31 STMT( 6, IfStmt , Stmt)
32 STMT( 7, SwitchStmt , Stmt)
33 STMT( 8, WhileStmt , Stmt)
34 STMT( 9, DoStmt , Stmt)
35 STMT(10, ForStmt , Stmt)
36 STMT(11, GotoStmt , Stmt)
37 STMT(12, IndirectGotoStmt, Stmt)
38 STMT(13, ContinueStmt , Stmt)
39 STMT(14, BreakStmt , Stmt)
40 STMT(15, ReturnStmt , Stmt)
41 STMT(16, DeclStmt , Stmt)
42 STMT(17, SwitchCase , Stmt)
44 // GNU Stmt Extensions
45 STMT(18, AsmStmt , Stmt)
48 STMT(19, ObjCAtTryStmt , Stmt)
49 STMT(20, ObjCAtCatchStmt , Stmt)
50 STMT(21, ObjCAtFinallyStmt , Stmt)
51 STMT(22, ObjCAtThrowStmt , Stmt)
52 STMT(23, ObjCAtSynchronizedStmt , Stmt)
54 STMT(24, ObjCForCollectionStmt, Stmt)
61 STMT(32, PreDefinedExpr , Expr)
62 STMT(33, DeclRefExpr , Expr)
63 STMT(34, IntegerLiteral , Expr)
64 STMT(35, FloatingLiteral , Expr)
65 STMT(36, ImaginaryLiteral , Expr)
66 STMT(37, StringLiteral , Expr)
67 STMT(38, CharacterLiteral , Expr)
68 STMT(39, ParenExpr , Expr)
69 STMT(40, UnaryOperator , Expr)
70 STMT(41, SizeOfAlignOfTypeExpr , Expr)
71 STMT(42, ArraySubscriptExpr , Expr)
72 STMT(43, CallExpr , Expr)
73 STMT(44, MemberExpr , Expr)
74 STMT(45, CastExpr , Expr)
75 STMT(46, BinaryOperator , Expr)
76 STMT(47, CompoundAssignOperator, BinaryOperator)
77 STMT(48, ConditionalOperator , Expr)
78 STMT(49, ImplicitCastExpr , Expr)
79 STMT(50, CompoundLiteralExpr , Expr)
80 STMT(51, OCUVectorElementExpr , Expr)
81 STMT(52, InitListExpr , Expr)
82 STMT(53, VAArgExpr , Expr)
85 STMT(55, AddrLabelExpr , Expr)
86 STMT(56, StmtExpr , Expr)
87 STMT(57, TypesCompatibleExpr , Expr)
88 STMT(58, ChooseExpr , Expr)
91 STMT(60, CXXCastExpr , Expr)
92 STMT(61, CXXBoolLiteralExpr , Expr)
93 STMT(62, CXXThrowExpr , Expr)
96 STMT(70, ObjCStringLiteral , Expr)
97 STMT(71, ObjCEncodeExpr , Expr)
98 STMT(72, ObjCMessageExpr , Expr)
99 STMT(73, ObjCSelectorExpr , Expr)
100 STMT(74, ObjCProtocolExpr , Expr)
101 STMT(75, ObjCIvarRefExpr , Expr)
104 STMT(76, OverloadExpr , Expr)