1 /****************************************************************************
3 ** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
4 ** Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
6 ** This file is part of the Qt Script Generator project on Trolltech Labs.
8 ** This file may be used under the terms of the GNU General Public
9 ** License version 2.0 as published by the Free Software Foundation
10 ** and appearing in the file LICENSE.GPL included in the packaging of
11 ** this file. Please review the following information to ensure GNU
12 ** General Public Licensing requirements will be met:
13 ** http://www.trolltech.com/products/qt/opensource.html
15 ** If you are unsure which license is appropriate for your use, please
16 ** review the following information:
17 ** http://www.trolltech.com/products/qt/licensing.html or contact the
18 ** sales department at sales@trolltech.com.
20 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
21 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
23 ****************************************************************************/
37 virtual void visit(AST
*node
);
40 virtual void visitAccessSpecifier(AccessSpecifierAST
*) {}
41 virtual void visitAsmDefinition(AsmDefinitionAST
*) {}
42 virtual void visitBaseClause(BaseClauseAST
*) {}
43 virtual void visitBaseSpecifier(BaseSpecifierAST
*) {}
44 virtual void visitBinaryExpression(BinaryExpressionAST
*) {}
45 virtual void visitCastExpression(CastExpressionAST
*) {}
46 virtual void visitClassMemberAccess(ClassMemberAccessAST
*) {}
47 virtual void visitClassSpecifier(ClassSpecifierAST
*) {}
48 virtual void visitCompoundStatement(CompoundStatementAST
*) {}
49 virtual void visitCondition(ConditionAST
*) {}
50 virtual void visitConditionalExpression(ConditionalExpressionAST
*) {}
51 virtual void visitCppCastExpression(CppCastExpressionAST
*) {}
52 virtual void visitCtorInitializer(CtorInitializerAST
*) {}
53 virtual void visitDeclarationStatement(DeclarationStatementAST
*) {}
54 virtual void visitDeclarator(DeclaratorAST
*) {}
55 virtual void visitDeleteExpression(DeleteExpressionAST
*) {}
56 virtual void visitDoStatement(DoStatementAST
*) {}
57 virtual void visitElaboratedTypeSpecifier(ElaboratedTypeSpecifierAST
*) {}
58 virtual void visitEnumSpecifier(EnumSpecifierAST
*) {}
59 virtual void visitEnumerator(EnumeratorAST
*) {}
60 virtual void visitExceptionSpecification(ExceptionSpecificationAST
*) {}
61 virtual void visitExpressionOrDeclarationStatement(ExpressionOrDeclarationStatementAST
*) {}
62 virtual void visitExpressionStatement(ExpressionStatementAST
*) {}
63 virtual void visitForStatement(ForStatementAST
*) {}
64 virtual void visitFunctionCall(FunctionCallAST
*) {}
65 virtual void visitFunctionDefinition(FunctionDefinitionAST
*) {}
66 virtual void visitIfStatement(IfStatementAST
*) {}
67 virtual void visitIncrDecrExpression(IncrDecrExpressionAST
*) {}
68 virtual void visitInitDeclarator(InitDeclaratorAST
*) {}
69 virtual void visitInitializer(InitializerAST
*) {}
70 virtual void visitInitializerClause(InitializerClauseAST
*) {}
71 virtual void visitLabeledStatement(LabeledStatementAST
*) {}
72 virtual void visitLinkageBody(LinkageBodyAST
*) {}
73 virtual void visitLinkageSpecification(LinkageSpecificationAST
*) {}
74 virtual void visitMemInitializer(MemInitializerAST
*) {}
75 virtual void visitName(NameAST
*) {}
76 virtual void visitNamespace(NamespaceAST
*) {}
77 virtual void visitNamespaceAliasDefinition(NamespaceAliasDefinitionAST
*) {}
78 virtual void visitNewDeclarator(NewDeclaratorAST
*) {}
79 virtual void visitNewExpression(NewExpressionAST
*) {}
80 virtual void visitNewInitializer(NewInitializerAST
*) {}
81 virtual void visitNewTypeId(NewTypeIdAST
*) {}
82 virtual void visitOperator(OperatorAST
*) {}
83 virtual void visitOperatorFunctionId(OperatorFunctionIdAST
*) {}
84 virtual void visitParameterDeclaration(ParameterDeclarationAST
*) {}
85 virtual void visitParameterDeclarationClause(ParameterDeclarationClauseAST
*) {}
86 virtual void visitPostfixExpression(PostfixExpressionAST
*) {}
87 virtual void visitPrimaryExpression(PrimaryExpressionAST
*) {}
88 virtual void visitPtrOperator(PtrOperatorAST
*) {}
89 virtual void visitPtrToMember(PtrToMemberAST
*) {}
90 virtual void visitReturnStatement(ReturnStatementAST
*) {}
91 virtual void visitSimpleDeclaration(SimpleDeclarationAST
*) {}
92 virtual void visitSimpleTypeSpecifier(SimpleTypeSpecifierAST
*) {}
93 virtual void visitSizeofExpression(SizeofExpressionAST
*) {}
94 virtual void visitStringLiteral(StringLiteralAST
*) {}
95 virtual void visitSubscriptExpression(SubscriptExpressionAST
*) {}
96 virtual void visitSwitchStatement(SwitchStatementAST
*) {}
97 virtual void visitTemplateArgument(TemplateArgumentAST
*) {}
98 virtual void visitTemplateDeclaration(TemplateDeclarationAST
*) {}
99 virtual void visitTemplateParameter(TemplateParameterAST
*) {}
100 virtual void visitThrowExpression(ThrowExpressionAST
*) {}
101 virtual void visitTranslationUnit(TranslationUnitAST
*) {}
102 virtual void visitTryBlockStatement(TryBlockStatementAST
*) {}
103 virtual void visitTypeId(TypeIdAST
*) {}
104 virtual void visitTypeIdentification(TypeIdentificationAST
*) {}
105 virtual void visitTypeParameter(TypeParameterAST
*) {}
106 virtual void visitTypedef(TypedefAST
*) {}
107 virtual void visitUnaryExpression(UnaryExpressionAST
*) {}
108 virtual void visitUnqualifiedName(UnqualifiedNameAST
*) {}
109 virtual void visitUsing(UsingAST
*) {}
110 virtual void visitUsingDirective(UsingDirectiveAST
*) {}
111 virtual void visitWhileStatement(WhileStatementAST
*) {}
112 virtual void visitWinDeclSpec(WinDeclSpecAST
*) {}
113 virtual void visitQProperty(QPropertyAST
*) {}
114 virtual void visitForwardDeclarationSpecifier(ForwardDeclarationSpecifierAST
*) {}
115 virtual void visitQEnums(QEnumsAST
*) {}
118 typedef void (Visitor::*visitor_fun_ptr
)(AST
*);
119 static visitor_fun_ptr _S_table
[];
123 void visitNodes(Visitor
*v
, const ListNode
<_Tp
> *nodes
)
129 *it
= nodes
->toFront(),
134 v
->visit(it
->element
);
142 // kate: space-indent on; indent-width 2; replace-tabs on;