File indexing completed on 2024-05-19 15:42:36

0001 /*
0002     SPDX-FileCopyrightText: 2007 Andreas Pakulat <apaku@gmx.de>
0003     SPDX-FileCopyrightText: 2012 Sven Brauch <svenbrauch@googlemail.com>
0004     SPDX-FileCopyrightText: 2012 Patrick Spendrin <ps_ml@gmx.de>
0005 
0006     SPDX-License-Identifier: LGPL-2.0-or-later
0007 */
0008 
0009 #ifndef PYTHONASTVISITOR_H
0010 #define PYTHONASTVISITOR_H
0011 
0012 #include "ast.h"
0013 #include "parserexport.h"
0014 
0015 /**
0016  * Note: This has been generated using utilities/generate.py
0017  * but you can modifiy it, it's not regenerated automatically
0018  */
0019 
0020 namespace Python
0021 {
0022 
0023 class KDEVPYTHONPARSER_EXPORT AstVisitor
0024 {
0025 public:
0026     AstVisitor();
0027     virtual ~AstVisitor();
0028 
0029     typedef void (AstVisitor::*visitFunc)(Ast *);
0030 
0031     virtual void visitNode(Ast* node);
0032 
0033     template <typename T> void visitNodeList( const QList<T*>& l ) {
0034         foreach ( T* node, l ) {
0035             visitNode(node);
0036         }
0037     }
0038 
0039     virtual void visitCode(CodeAst* node) { Q_UNUSED(node); };
0040     virtual void visitStatement(StatementAst* node) { Q_UNUSED(node); };
0041     virtual void visitFunctionDefinition(FunctionDefinitionAst* node) { Q_UNUSED(node); };
0042     virtual void visitClassDefinition(ClassDefinitionAst* node) { Q_UNUSED(node); };
0043     virtual void visitReturn(ReturnAst* node) { Q_UNUSED(node); };
0044     virtual void visitAwait(AwaitAst* node) { Q_UNUSED(node); };
0045     virtual void visitDelete(DeleteAst* node) { Q_UNUSED(node); };
0046     virtual void visitAssignment(AssignmentAst* node) { Q_UNUSED(node); };
0047     virtual void visitAugmentedAssignment(AugmentedAssignmentAst* node) { Q_UNUSED(node); };
0048     virtual void visitAnnotationAssignment(AnnotationAssignmentAst* node) { Q_UNUSED(node); };
0049     virtual void visitAssignmentExpression(AssignmentExpressionAst* node) { Q_UNUSED(node); };
0050     virtual void visitFor(ForAst* node) { Q_UNUSED(node); };
0051     virtual void visitWhile(WhileAst* node) { Q_UNUSED(node); };
0052     virtual void visitIf(IfAst* node) { Q_UNUSED(node); };
0053     virtual void visitWith(WithAst* node) { Q_UNUSED(node); };
0054     virtual void visitRaise(RaiseAst* node) { Q_UNUSED(node); };
0055     virtual void visitTry(TryAst* node) { Q_UNUSED(node); };
0056     virtual void visitTryStar(TryStarAst* node) { Q_UNUSED(node); };
0057     virtual void visitAssertion(AssertionAst* node) { Q_UNUSED(node); };
0058     virtual void visitImport(ImportAst* node) { Q_UNUSED(node); };
0059     virtual void visitImportFrom(ImportFromAst* node) { Q_UNUSED(node); };
0060     virtual void visitGlobal(GlobalAst* node) { Q_UNUSED(node); };
0061     virtual void visitBreak(BreakAst* node) { Q_UNUSED(node); };
0062     virtual void visitContinue(ContinueAst* node) { Q_UNUSED(node); };
0063     virtual void visitPass(PassAst* node) { Q_UNUSED(node); };
0064     virtual void visitNonlocal(NonlocalAst* node) { Q_UNUSED(node); };
0065     virtual void visitExpression(ExpressionAst* node) { Q_UNUSED(node); };
0066     virtual void visitYieldFrom(YieldFromAst* node) { Q_UNUSED(node); };
0067     virtual void visitBooleanOperation(BooleanOperationAst* node) { Q_UNUSED(node); };
0068     virtual void visitBinaryOperation(BinaryOperationAst* node) { Q_UNUSED(node); };
0069     virtual void visitUnaryOperation(UnaryOperationAst* node) { Q_UNUSED(node); };
0070     virtual void visitLambda(LambdaAst* node) { Q_UNUSED(node); };
0071     virtual void visitIfExpression(IfExpressionAst* node) { Q_UNUSED(node); };
0072     virtual void visitDict(DictAst* node) { Q_UNUSED(node); };
0073     virtual void visitSet(SetAst* node) { Q_UNUSED(node); };
0074     virtual void visitListComprehension(ListComprehensionAst* node) { Q_UNUSED(node); };
0075     virtual void visitSetComprehension(SetComprehensionAst* node) { Q_UNUSED(node); };
0076     virtual void visitDictionaryComprehension(DictionaryComprehensionAst* node) { Q_UNUSED(node); };
0077     virtual void visitGeneratorExpression(GeneratorExpressionAst* node) { Q_UNUSED(node); };
0078     virtual void visitCompare(CompareAst* node) { Q_UNUSED(node); };
0079     virtual void visitNumber(NumberAst* node) { Q_UNUSED(node); };
0080     virtual void visitString(StringAst* node) { Q_UNUSED(node); };
0081     virtual void visitFormattedValue(FormattedValueAst* node) { Q_UNUSED(node); };
0082     virtual void visitJoinedString(JoinedStringAst* node) { Q_UNUSED(node); };
0083     virtual void visitBytes(BytesAst* node) { Q_UNUSED(node); };
0084     virtual void visitYield(YieldAst* node) { Q_UNUSED(node); };
0085     virtual void visitName(NameAst* node) { Q_UNUSED(node); };
0086     virtual void visitNameConstant(NameConstantAst* node) { Q_UNUSED(node); };
0087     virtual void visitCall(CallAst* node) { Q_UNUSED(node); };
0088     virtual void visitAttribute(AttributeAst* node) { Q_UNUSED(node); };
0089     virtual void visitSubscript(SubscriptAst* node) { Q_UNUSED(node); };
0090     virtual void visitStarred(StarredAst* node) { Q_UNUSED(node); };
0091     virtual void visitList(ListAst* node) { Q_UNUSED(node); };
0092     virtual void visitTuple(TupleAst* node) { Q_UNUSED(node); };
0093     virtual void visitEllipsis(EllipsisAst* node) { Q_UNUSED(node); };
0094     virtual void visitSlice(SliceAst* node) { Q_UNUSED(node); };
0095     virtual void visitArguments(ArgumentsAst* node) { Q_UNUSED(node); };
0096     virtual void visitKeyword(KeywordAst* node) { Q_UNUSED(node); };
0097     virtual void visitArg(ArgAst* node) { Q_UNUSED(node); };
0098     virtual void visitComprehension(ComprehensionAst* node) { Q_UNUSED(node); };
0099     virtual void visitExceptionHandler(ExceptionHandlerAst* node) { Q_UNUSED(node); };
0100     virtual void visitAlias(AliasAst* node) { Q_UNUSED(node); };
0101     virtual void visitWithItem(WithItemAst* node) { Q_UNUSED(node); };
0102     virtual void visitMatch(MatchAst* node) { Q_UNUSED(node); };
0103     virtual void visitMatchCase(MatchCaseAst* node) { Q_UNUSED(node); };
0104     virtual void visitMatchValue(MatchValueAst* node) { Q_UNUSED(node); };
0105     virtual void visitMatchSingleton(MatchSingletonAst* node) { Q_UNUSED(node); };
0106     virtual void visitMatchSequence(MatchSequenceAst* node) { Q_UNUSED(node); };
0107     virtual void visitMatchMapping(MatchMappingAst* node) { Q_UNUSED(node); };
0108     virtual void visitMatchClass(MatchClassAst* node) { Q_UNUSED(node); };
0109     virtual void visitMatchStar(MatchStarAst* node) { Q_UNUSED(node); };
0110     virtual void visitMatchAs(MatchAsAst* node) { Q_UNUSED(node); };
0111     virtual void visitMatchOr(MatchOrAst* node) { Q_UNUSED(node); };
0112 };
0113 }
0114 
0115 #endif