Semant
Class MiniJava

java.lang.Object
  extended by Absyn.MiniJava.Visitor<java.lang.Void,Type>
      extended by Semant.MiniJava

public class MiniJava
extends MiniJava.Visitor<java.lang.Void,Type>


Field Summary
 boolean anyErrors
           
 Type.RECORD<Type.CLASS> classEnv
          The classes defined by this compilation unit.
 
Constructor Summary
MiniJava(java.lang.String mainClass)
           
 
Method Summary
static void main(java.lang.String[] argv)
           
 Type visit(MiniJava.Dec.Class d, java.lang.Void _)
           
 Type visit(MiniJava.Dec.Field d, java.lang.Void _)
           
 Type visit(MiniJava.Dec.Formal d, java.lang.Void _)
           
 Type visit(MiniJava.Dec.Method d, java.lang.Void _)
           
 Type visit(MiniJava.Dec.Var d, java.lang.Void _)
           
 Type visit(MiniJava.Exp.ArrayAccess e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Assign e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Call e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.FieldAccess e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Id e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.If e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Infix e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Literal e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.NewArray e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.NewInstance e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Prefix e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.Super e, java.lang.Void _)
           
 Type visit(MiniJava.Exp.This e, java.lang.Void _)
           
 Type visit(MiniJava.Modifier m, java.lang.Void _)
           
 Type visit(MiniJava.Name n, java.lang.Void _)
           
 Type visit(MiniJava.Stm.Block s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.Break s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.Continue s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.Dec s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.DoWhile s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.Exp s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.For s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.If s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.Return s, java.lang.Void _)
           
 Type visit(MiniJava.Stm.While s, java.lang.Void _)
           
 Type visit(MiniJava.Type.Array t, java.lang.Void _)
           
 Type visit(MiniJava.Type.Class c, java.lang.Void _)
           
 Type visit(MiniJava.Type.Primitive t, java.lang.Void _)
           
 Type visit(MiniJava.Unit unit, java.lang.Void _)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

classEnv

public final Type.RECORD<Type.CLASS> classEnv
The classes defined by this compilation unit.


anyErrors

public boolean anyErrors
Constructor Detail

MiniJava

public MiniJava(java.lang.String mainClass)
Method Detail

main

public static void main(java.lang.String[] argv)
                 throws java.io.IOException
Throws:
java.io.IOException

visit

public Type visit(MiniJava.Unit unit,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Name n,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Modifier m,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Dec.Class d,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Dec.Field d,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Dec.Method d,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Dec.Formal d,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Dec.Var d,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Type.Array t,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Type.Primitive t,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Type.Class c,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.Block s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.Break s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.Continue s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.Dec s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.DoWhile s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.Exp s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.For s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.If s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.Return s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Stm.While s,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.ArrayAccess e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Assign e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Call e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Id e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.If e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Infix e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.FieldAccess e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Literal e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.NewArray e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.NewInstance e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Prefix e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.Super e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>

visit

public Type visit(MiniJava.Exp.This e,
                  java.lang.Void _)
Specified by:
visit in class MiniJava.Visitor<java.lang.Void,Type>