Sha256: 02b58ca9dcd7ce339698d990b275dc519929fd383c88d89b55cf4b6af9220d8c
Contents?: true
Size: 1.93 KB
Versions: 6
Compression:
Stored size: 1.93 KB
Contents
#ifndef _IV_AST_FWD_H_ #define _IV_AST_FWD_H_ namespace iv { namespace core { namespace ast { #define STATEMENT_DERIVED_NODE_LIST(V)\ V(EmptyStatement)\ V(DebuggerStatement)\ V(FunctionStatement)\ V(Block)\ V(VariableStatement)\ V(IfStatement)\ V(DoWhileStatement)\ V(WhileStatement)\ V(ForInStatement)\ V(ExpressionStatement)\ V(ForStatement)\ V(ContinueStatement)\ V(BreakStatement)\ V(ReturnStatement)\ V(WithStatement)\ V(SwitchStatement)\ V(ThrowStatement)\ V(TryStatement)\ V(LabelledStatement)\ V(FunctionDeclaration) #define STATEMENT_NODE_LIST(V)\ V(Statement)\ V(IterationStatement)\ V(BreakableStatement)\ V(NamedOnlyBreakableStatement)\ V(AnonymousBreakableStatement)\ STATEMENT_DERIVED_NODE_LIST(V) #define LITERAL_NODE_LIST(V)\ V(Literal)\ V(Identifier)\ V(NumberLiteral)\ V(StringLiteral)\ V(Directivable)\ V(RegExpLiteral)\ V(FunctionLiteral)\ V(ArrayLiteral)\ V(ObjectLiteral)\ V(NullLiteral)\ V(ThisLiteral)\ V(Undefined)\ V(TrueLiteral)\ V(FalseLiteral) #define EXPRESSION_DERIVED_NODE_LIST(V)\ V(FunctionCall)\ V(ConstructorCall)\ V(BinaryOperation)\ V(Assignment)\ V(ConditionalExpression)\ V(UnaryOperation)\ V(PostfixExpression)\ V(IdentifierAccess)\ V(IndexAccess)\ LITERAL_NODE_LIST(V) #define EXPRESSION_NODE_LIST(V)\ V(Expression)\ V(PropertyAccess)\ V(Call)\ EXPRESSION_DERIVED_NODE_LIST(V) #define OTHER_NODE_LIST(V)\ V(AstNode)\ V(Declaration)\ V(Scope)\ V(CaseClause)\ V(Variable)\ V(IdentifierKey) #define AST_DERIVED_NODE_LIST(V)\ STATEMENT_DERIVED_NODE_LIST(V)\ EXPRESSION_DERIVED_NODE_LIST(V) #define AST_NODE_LIST(V)\ OTHER_NODE_LIST(V)\ STATEMENT_NODE_LIST(V)\ EXPRESSION_NODE_LIST(V) #define AST_LIST_LIST(V)\ V(Identifier, Identifiers)\ V(Declaration, Declarations)\ V(Expression, Expressions)\ V(Statement, Statements)\ V(CaseClause, CaseClauses) #define AST_STRING(V) V(SpaceUString) #define V(AST)\ template<typename Factory>\ class AST; AST_NODE_LIST(V) #undef V } } } // namespace iv::core::ast #endif // _IV_AST_FWD_H_
Version data entries
6 entries across 6 versions & 1 rubygems