import java.lang.reflect.Array; import syntaxtree.*; import visitor.*; public class InterpreterVisitor implements InterpretVisitor { Environment env; SymbolTable symbolTable; Program p; public InterpreterVisitor(SymbolTable st){ env = new Environment(); symbolTable = st; } public MethodDecl getMethodDecl(String methodName, String classScope){ /* Your code also goes here */ } // MainClass m; // ClassDeclList cl; public Object visit(Program n) { return null; } // Identifier i1,i2; // Statement s; public Object visit(MainClass n) { return null; } // Identifier i; // VarDeclList vl; // MethodDeclList ml; public Object visit(ClassDeclSimple n) { return null; } // Identifier i; // Identifier j; // VarDeclList vl; // MethodDeclList ml; public Object visit(ClassDeclExtends n) { return null; } // Type t; // Identifier i; public Object visit(VarDecl n) { return null; } // Type t; // Identifier i; // FormalList fl; // VarDeclList vl; // StatementList sl; // Exp e; public Object visit(MethodDecl n) { return null; } // Type t; // Identifier i; public Object visit(Formal n) { return null; } public Object visit(IntArrayType n) { return null; } public Object visit(BooleanType n) { return null; } public Object visit(IntegerType n) { return null; } // String s; public Object visit(IdentifierType n) { return null; } // StatementList sl; public Object visit(Block n) { return null; } // Exp e; // Statement s1,s2; public Object visit(If n) { return null; } // Exp e; // Statement s; public Object visit(While n) { return null; } // Exp e; public Object visit(Print n) { return null; } // Identifier i; // Exp e; public Object visit(Assign n) { return null; } // Identifier i; // Exp e1,e2; public Object visit(ArrayAssign n) { return null; } // Exp e1,e2; public Object visit(And n) { return null; } // Exp e1,e2; public Object visit(LessThan n) { return null; } // Exp e1,e2; public Object visit(Plus n) { return null; } // Exp e1,e2; public Object visit(Minus n) { return null; } // Exp e1,e2; public Object visit(Times n) { return null; } // Exp e1,e2; public Object visit(ArrayLookup n) { return null; } // Exp e; public Object visit(ArrayLength n) { return null; } // Exp e; // Identifier i; // ExpList el; public Object visit(Call n) { return null; } // int i; public Object visit(IntegerLiteral n) { return null; } public Object visit(True n) { return null; } public Object visit(False n) { return null; } // String s; public Object visit(IdentifierExp n) { return null; } public Object visit(This n) { return null; } // Exp e; public Object visit(NewArray n) { return null; } // Identifier i; public Object visit(NewObject n) { return null; } // Exp e; public Object visit(Not n) { return null; } // String s; public Object visit(Identifier n) { return null; } }