/**
* Copyright (c) 2007 - 2009 OptXware Research and Development LLC.
* All rights reserved.   This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
*   Daniel Varro - Initial API and implementation
*
* This file was generated automatically based upon the VTCL LPG Parser
* VTCLParser.g 
*/

package org.eclipse.viatra2.lpgparser.ast;

public interface ResultVisitor
{
    Object visit(ASTNodeToken n);
    Object visit(VTCLFile n);
    Object visit(NamespaceDefAST n);
    Object visit(NamespaceImportsAST n);
    Object visit(GTASMDefAST n);
    Object visit(MachineContentsAST n);
    Object visit(MachineContentAST n);
    Object visit(GraphPatternDefAST n);
    Object visit(OptShareableDefAST n);
    Object visit(PatternBodiesAST n);
    Object visit(PatternBodyAST n);
    Object visit(PatternBodyContentsAST n);
    Object visit(PatternBodyContentAST n);
    Object visit(NegativePatternAST n);
    Object visit(PatternCompositionAST n);
    Object visit(PatternVariableAssignmentAST n);
    Object visit(NonInjectivityConstraintAST n);
    Object visit(CheckConditionAST n);
    Object visit(OptMatchCountAST n);
    Object visit(PatternVariableDefAST n);
    Object visit(PatternVariableRefAST n);
    Object visit(CounterVariableAST n);
    Object visit(GraphPatternCallAST n);
    Object visit(EntityAST n);
    Object visit(EntityBody n);
    Object visit(RelationAST n);
    Object visit(RelationBodyAST n);
    Object visit(RelationshipBodyAST n);
    Object visit(GTRuleDefAST n);
    Object visit(ActionOptAST n);
    Object visit(GTRuleCallAST n);
    Object visit(LogicalAndTermAST n);
    Object visit(RelationalTermAST n);
    Object visit(RelationalOpAST n);
    Object visit(BaseArithmeticTermAST n);
    Object visit(AsmFunctionDefAST n);
    Object visit(ArityAST n);
    Object visit(InitialValuesAST n);
    Object visit(InitialValueAST n);
    Object visit(AsmFunctionLocationAST n);
    Object visit(BuiltInFunctionNameAST n);
    Object visit(ConversionFunctionNameAST n);
    Object visit(AsmRuleDefAST n);
    Object visit(AsmRulesAST n);
    Object visit(AsmRulesOptAST n);
    Object visit(AsmRuleAST n);
    Object visit(SkipRuleAST n);
    Object visit(FailRuleAST n);
    Object visit(CallRuleAST n);
    Object visit(AsmFunctionUpdateLocationAST n);
    Object visit(LogRuleAST n);
    Object visit(LogLevelAST n);
    Object visit(SequentialRuleAST n);
    Object visit(ParallelRuleAST n);
    Object visit(RandomRuleAST n);
    Object visit(OptSemicolonAST n);
    Object visit(LetRuleAST n);
    Object visit(VariableDefinitionsAST n);
    Object visit(VariableDefinitionAST n);
    Object visit(IterateRuleAST n);
    Object visit(ChooseRuleAST n);
    Object visit(ForallRuleAST n);
    Object visit(WhenRuleAST n);
    Object visit(WhenConditionAST n);
    Object visit(CreateEntityBodyAST n);
    Object visit(CreateRelationBodyAST n);
    Object visit(InConstraintOptAST n);
    Object visit(DeleteContentsAST n);
    Object visit(DeleteSemanticsOptAST n);
    Object visit(CopyRuleAST n);
    Object visit(CopyContentsAST n);
    Object visit(MoveRuleAST n);
    Object visit(TwoParametersAST n);
    Object visit(ElementUpdateRuleAST n);
    Object visit(ElementUpdateOpAST n);
    Object visit(QualifiedTypeNameAST n);
    Object visit(VariableRefAST n);
    Object visit(VariableDefRefAST n);
    Object visit(VariableDefAST n);
    Object visit(ValueQualifiedNameAST n);
    Object visit(ActualParamsAST n);
    Object visit(ActualParamsPatternVariablesAST n);
    Object visit(TypeOptAST n);
    Object visit(ReturnTypeOptAST n);
    Object visit(UndefValueAST n);
    Object visit(StringConstantAST n);
    Object visit(KeywordAsIdentifier n);
    Object visit(AnnotationsAST n);
    Object visit(AnnotationAST n);
    Object visit(AnnotationBodyAST n);
    Object visit(KeyValuePairAST n);
    Object visit(AnnotationNameAST n);
    Object visit(NamespaceImportAST0 n);
    Object visit(NamespaceImportAST1 n);
    Object visit(PatternBodyContentDefAST0 n);
    Object visit(PatternBodyContentDefAST1 n);
    Object visit(PatternVariableDefRefAST0 n);
    Object visit(PatternVariableDefRefAST1 n);
    Object visit(InheritanceAST0 n);
    Object visit(InheritanceAST1 n);
    Object visit(InstantiationAST0 n);
    Object visit(InstantiationAST1 n);
    Object visit(GTRuleBodyAST0 n);
    Object visit(GTRuleBodyAST1 n);
    Object visit(PreconditionDefAST0 n);
    Object visit(PreconditionDefAST1 n);
    Object visit(PostconditionOptAST0 n);
    Object visit(PostconditionOptAST1 n);
    Object visit(LogicalTermAST0 n);
    Object visit(LogicalTermAST1 n);
    Object visit(EqualityTermAST0 n);
    Object visit(EqualityTermAST1 n);
    Object visit(ArithmeticTermAST0 n);
    Object visit(ArithmeticTermAST1 n);
    Object visit(MultArithmeticTermAST0 n);
    Object visit(MultArithmeticTermAST1 n);
    Object visit(MultArithmeticTermAST2 n);
    Object visit(UnaryArithmeticTermAST0 n);
    Object visit(UnaryArithmeticTermAST1 n);
    Object visit(ArityOrTypeDeclAST0 n);
    Object visit(ArityOrTypeDeclAST1 n);
    Object visit(InitialValuesOptAST0 n);
    Object visit(InitialValuesOptAST1 n);
    Object visit(TypeConstantsAST0 n);
    Object visit(TypeConstantsAST1 n);
    Object visit(PredefinedFunctionCallAST0 n);
    Object visit(PredefinedFunctionCallAST1 n);
    Object visit(UpdateRuleAST0 n);
    Object visit(UpdateRuleAST1 n);
    Object visit(PrintRuleAST0 n);
    Object visit(PrintRuleAST1 n);
    Object visit(PrintRuleAST2 n);
    Object visit(PrintRuleAST3 n);
    Object visit(DoActionOptAST0 n);
    Object visit(DoActionOptAST1 n);
    Object visit(IfRuleAST0 n);
    Object visit(IfRuleAST1 n);
    Object visit(TryRuleAST0 n);
    Object visit(TryRuleAST1 n);
    Object visit(WhenChangeAST0 n);
    Object visit(WhenChangeAST1 n);
    Object visit(WhenChangeAST2 n);
    Object visit(CreateRuleAST0 n);
    Object visit(CreateRuleAST1 n);
    Object visit(CreateModelElementAST0 n);
    Object visit(CreateModelElementAST1 n);
    Object visit(CreateRelationshipAST0 n);
    Object visit(CreateRelationshipAST1 n);
    Object visit(CreateRelationshipAST2 n);
    Object visit(CreateRelationshipAST3 n);
    Object visit(DeleteRuleAST0 n);
    Object visit(DeleteRuleAST1 n);
    Object visit(DeleteSemanticsAST0 n);
    Object visit(DeleteSemanticsAST1 n);
    Object visit(DeleteRelationshipAST0 n);
    Object visit(DeleteRelationshipAST1 n);
    Object visit(DeleteRelationshipAST2 n);
    Object visit(DeleteRelationshipAST3 n);
    Object visit(CopySemanticsAST0 n);
    Object visit(CopySemanticsAST1 n);
    Object visit(TypeNameAST0 n);
    Object visit(TypeNameAST1 n);
    Object visit(TypeNameAST2 n);
    Object visit(TypeNameAST3 n);
    Object visit(ValueLocalNameAST0 n);
    Object visit(ValueLocalNameAST1 n);
    Object visit(FormalParameterDefAST0 n);
    Object visit(FormalParameterDefAST1 n);
    Object visit(FormalParamsAST0 n);
    Object visit(FormalParamsAST1 n);
    Object visit(DirectedFormalParameterDefAST0 n);
    Object visit(DirectedFormalParameterDefAST1 n);
    Object visit(DirectedFormalParamsAST0 n);
    Object visit(DirectedFormalParamsAST1 n);
    Object visit(DirectionKindAST0 n);
    Object visit(DirectionKindAST1 n);
    Object visit(DirectionKindAST2 n);
    Object visit(ActualParameterDefAST0 n);
    Object visit(ActualParameterDefAST1 n);
    Object visit(ActualPatternParameterDefAST0 n);
    Object visit(ActualPatternParameterDefAST1 n);
    Object visit(ConstrainedVariablesAST0 n);
    Object visit(ConstrainedVariablesAST1 n);
    Object visit(ContainmentConstraintOptAST0 n);
    Object visit(ContainmentConstraintOptAST1 n);
    Object visit(BooleanConstantAST0 n);
    Object visit(BooleanConstantAST1 n);
    Object visit(MultiplicityConstantAST0 n);
    Object visit(MultiplicityConstantAST1 n);
    Object visit(MultiplicityConstantAST2 n);
    Object visit(MultiplicityConstantAST3 n);
    Object visit(NumericConstantAST0 n);
    Object visit(NumericConstantAST1 n);
    Object visit(NumericConstantAST2 n);
    Object visit(NumericConstantAST3 n);
}

