diff options
Diffstat (limited to 'src/minijava/visitor/GJNoArguVisitor.java')
-rw-r--r-- | src/minijava/visitor/GJNoArguVisitor.java | 416 |
1 files changed, 416 insertions, 0 deletions
diff --git a/src/minijava/visitor/GJNoArguVisitor.java b/src/minijava/visitor/GJNoArguVisitor.java new file mode 100644 index 0000000..3ef4ecc --- /dev/null +++ b/src/minijava/visitor/GJNoArguVisitor.java @@ -0,0 +1,416 @@ +// +// Generated by JTB 1.3.2 +//
+
+package minijava.visitor;
+import minijava.syntaxtree.AllocationExpression; +import minijava.syntaxtree.AndExpression; +import minijava.syntaxtree.ArrayAllocationExpression; +import minijava.syntaxtree.ArrayAssignmentStatement; +import minijava.syntaxtree.ArrayLength; +import minijava.syntaxtree.ArrayLookup; +import minijava.syntaxtree.ArrayType; +import minijava.syntaxtree.AssignmentStatement; +import minijava.syntaxtree.Block; +import minijava.syntaxtree.BooleanType; +import minijava.syntaxtree.BracketExpression; +import minijava.syntaxtree.ClassDeclaration; +import minijava.syntaxtree.ClassExtendsDeclaration; +import minijava.syntaxtree.CompareExpression; +import minijava.syntaxtree.Expression; +import minijava.syntaxtree.ExpressionList; +import minijava.syntaxtree.ExpressionRest; +import minijava.syntaxtree.FalseLiteral; +import minijava.syntaxtree.FormalParameter; +import minijava.syntaxtree.FormalParameterList; +import minijava.syntaxtree.FormalParameterRest; +import minijava.syntaxtree.Goal; +import minijava.syntaxtree.Identifier; +import minijava.syntaxtree.IfStatement; +import minijava.syntaxtree.IntegerLiteral; +import minijava.syntaxtree.IntegerType; +import minijava.syntaxtree.MainClass; +import minijava.syntaxtree.MessageSend; +import minijava.syntaxtree.MethodDeclaration; +import minijava.syntaxtree.MinusExpression; +import minijava.syntaxtree.NodeList; +import minijava.syntaxtree.NodeListOptional; +import minijava.syntaxtree.NodeOptional; +import minijava.syntaxtree.NodeSequence; +import minijava.syntaxtree.NodeToken; +import minijava.syntaxtree.NotExpression; +import minijava.syntaxtree.PlusExpression; +import minijava.syntaxtree.PrimaryExpression; +import minijava.syntaxtree.PrintStatement; +import minijava.syntaxtree.Statement; +import minijava.syntaxtree.ThisExpression; +import minijava.syntaxtree.TimesExpression; +import minijava.syntaxtree.TrueLiteral; +import minijava.syntaxtree.Type; +import minijava.syntaxtree.TypeDeclaration; +import minijava.syntaxtree.VarDeclaration; +import minijava.syntaxtree.WhileStatement; +
+/**
+ * All GJ visitors with no argument must implement this interface.
+ */ +
+public interface GJNoArguVisitor<R> { +
+ //
+ // GJ Auto class visitors with no argument
+ // +
+ public R visit(NodeList n); + public R visit(NodeListOptional n); + public R visit(NodeOptional n); + public R visit(NodeSequence n); + public R visit(NodeToken n); +
+ //
+ // User-generated visitor methods below
+ //
+
+ /**
+ * f0 -> MainClass()
+ * f1 -> ( TypeDeclaration() )*
+ * f2 -> <EOF>
+ */
+ public R visit(Goal n); +
+ /**
+ * f0 -> "class"
+ * f1 -> Identifier()
+ * f2 -> "{"
+ * f3 -> "public"
+ * f4 -> "static"
+ * f5 -> "void"
+ * f6 -> "main"
+ * f7 -> "("
+ * f8 -> "String"
+ * f9 -> "["
+ * f10 -> "]"
+ * f11 -> Identifier()
+ * f12 -> ")"
+ * f13 -> "{"
+ * f14 -> PrintStatement()
+ * f15 -> "}"
+ * f16 -> "}"
+ */
+ public R visit(MainClass n); +
+ /**
+ * f0 -> ClassDeclaration()
+ * | ClassExtendsDeclaration()
+ */
+ public R visit(TypeDeclaration n); +
+ /**
+ * f0 -> "class"
+ * f1 -> Identifier()
+ * f2 -> "{"
+ * f3 -> ( VarDeclaration() )*
+ * f4 -> ( MethodDeclaration() )*
+ * f5 -> "}"
+ */
+ public R visit(ClassDeclaration n); +
+ /**
+ * f0 -> "class"
+ * f1 -> Identifier()
+ * f2 -> "extends"
+ * f3 -> Identifier()
+ * f4 -> "{"
+ * f5 -> ( VarDeclaration() )*
+ * f6 -> ( MethodDeclaration() )*
+ * f7 -> "}"
+ */
+ public R visit(ClassExtendsDeclaration n); +
+ /**
+ * f0 -> Type()
+ * f1 -> Identifier()
+ * f2 -> ";"
+ */
+ public R visit(VarDeclaration n); +
+ /**
+ * f0 -> "public"
+ * f1 -> Type()
+ * f2 -> Identifier()
+ * f3 -> "("
+ * f4 -> ( FormalParameterList() )?
+ * f5 -> ")"
+ * f6 -> "{"
+ * f7 -> ( VarDeclaration() )*
+ * f8 -> ( Statement() )*
+ * f9 -> "return"
+ * f10 -> Expression()
+ * f11 -> ";"
+ * f12 -> "}"
+ */
+ public R visit(MethodDeclaration n); +
+ /**
+ * f0 -> FormalParameter()
+ * f1 -> ( FormalParameterRest() )*
+ */
+ public R visit(FormalParameterList n); +
+ /**
+ * f0 -> Type()
+ * f1 -> Identifier()
+ */
+ public R visit(FormalParameter n); +
+ /**
+ * f0 -> ","
+ * f1 -> FormalParameter()
+ */
+ public R visit(FormalParameterRest n); +
+ /**
+ * f0 -> ArrayType()
+ * | BooleanType()
+ * | IntegerType()
+ * | Identifier()
+ */
+ public R visit(Type n); +
+ /**
+ * f0 -> "int"
+ * f1 -> "["
+ * f2 -> "]"
+ */
+ public R visit(ArrayType n); +
+ /**
+ * f0 -> "boolean"
+ */
+ public R visit(BooleanType n); +
+ /**
+ * f0 -> "int"
+ */
+ public R visit(IntegerType n); +
+ /**
+ * f0 -> Block()
+ * | AssignmentStatement()
+ * | ArrayAssignmentStatement()
+ * | IfStatement()
+ * | WhileStatement()
+ * | PrintStatement()
+ */
+ public R visit(Statement n); +
+ /**
+ * f0 -> "{"
+ * f1 -> ( Statement() )*
+ * f2 -> "}"
+ */
+ public R visit(Block n); +
+ /**
+ * f0 -> Identifier()
+ * f1 -> "="
+ * f2 -> Expression()
+ * f3 -> ";"
+ */
+ public R visit(AssignmentStatement n); +
+ /**
+ * f0 -> Identifier()
+ * f1 -> "["
+ * f2 -> Expression()
+ * f3 -> "]"
+ * f4 -> "="
+ * f5 -> Expression()
+ * f6 -> ";"
+ */
+ public R visit(ArrayAssignmentStatement n); +
+ /**
+ * f0 -> "if"
+ * f1 -> "("
+ * f2 -> Expression()
+ * f3 -> ")"
+ * f4 -> Statement()
+ * f5 -> "else"
+ * f6 -> Statement()
+ */
+ public R visit(IfStatement n); +
+ /**
+ * f0 -> "while"
+ * f1 -> "("
+ * f2 -> Expression()
+ * f3 -> ")"
+ * f4 -> Statement()
+ */
+ public R visit(WhileStatement n); +
+ /**
+ * f0 -> "System.out.println"
+ * f1 -> "("
+ * f2 -> Expression()
+ * f3 -> ")"
+ * f4 -> ";"
+ */
+ public R visit(PrintStatement n); +
+ /**
+ * f0 -> AndExpression()
+ * | CompareExpression()
+ * | PlusExpression()
+ * | MinusExpression()
+ * | TimesExpression()
+ * | ArrayLookup()
+ * | ArrayLength()
+ * | MessageSend()
+ * | PrimaryExpression()
+ */
+ public R visit(Expression n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "&&"
+ * f2 -> PrimaryExpression()
+ */
+ public R visit(AndExpression n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "<"
+ * f2 -> PrimaryExpression()
+ */
+ public R visit(CompareExpression n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "+"
+ * f2 -> PrimaryExpression()
+ */
+ public R visit(PlusExpression n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "-"
+ * f2 -> PrimaryExpression()
+ */
+ public R visit(MinusExpression n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "*"
+ * f2 -> PrimaryExpression()
+ */
+ public R visit(TimesExpression n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "["
+ * f2 -> PrimaryExpression()
+ * f3 -> "]"
+ */
+ public R visit(ArrayLookup n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "."
+ * f2 -> "length"
+ */
+ public R visit(ArrayLength n); +
+ /**
+ * f0 -> PrimaryExpression()
+ * f1 -> "."
+ * f2 -> Identifier()
+ * f3 -> "("
+ * f4 -> ( ExpressionList() )?
+ * f5 -> ")"
+ */
+ public R visit(MessageSend n); +
+ /**
+ * f0 -> Expression()
+ * f1 -> ( ExpressionRest() )*
+ */
+ public R visit(ExpressionList n); +
+ /**
+ * f0 -> ","
+ * f1 -> Expression()
+ */
+ public R visit(ExpressionRest n); +
+ /**
+ * f0 -> IntegerLiteral()
+ * | TrueLiteral()
+ * | FalseLiteral()
+ * | Identifier()
+ * | ThisExpression()
+ * | ArrayAllocationExpression()
+ * | AllocationExpression()
+ * | NotExpression()
+ * | BracketExpression()
+ */
+ public R visit(PrimaryExpression n); +
+ /**
+ * f0 -> <INTEGER_LITERAL>
+ */
+ public R visit(IntegerLiteral n); +
+ /**
+ * f0 -> "true"
+ */
+ public R visit(TrueLiteral n); +
+ /**
+ * f0 -> "false"
+ */
+ public R visit(FalseLiteral n); +
+ /**
+ * f0 -> <IDENTIFIER>
+ */
+ public R visit(Identifier n); +
+ /**
+ * f0 -> "this"
+ */
+ public R visit(ThisExpression n); +
+ /**
+ * f0 -> "new"
+ * f1 -> "int"
+ * f2 -> "["
+ * f3 -> Expression()
+ * f4 -> "]"
+ */
+ public R visit(ArrayAllocationExpression n); +
+ /**
+ * f0 -> "new"
+ * f1 -> Identifier()
+ * f2 -> "("
+ * f3 -> ")"
+ */
+ public R visit(AllocationExpression n); +
+ /**
+ * f0 -> "!"
+ * f1 -> Expression()
+ */
+ public R visit(NotExpression n); +
+ /**
+ * f0 -> "("
+ * f1 -> Expression()
+ * f2 -> ")"
+ */
+ public R visit(BracketExpression n); +
+} +
|