polyglot.visit
Class ConstantChecker

java.lang.Object
  extended by polyglot.visit.NodeVisitor
      extended by polyglot.visit.HaltingVisitor
          extended by polyglot.visit.ErrorHandlingVisitor
              extended by polyglot.visit.ContextVisitor
                  extended by polyglot.visit.ConstantChecker
All Implemented Interfaces:
java.lang.Cloneable, Copy

public class ConstantChecker
extends ContextVisitor

Visitor which performs type checking on the AST.


Nested Class Summary
protected static class ConstantChecker.TypeCheckChecker
           
 
Field Summary
 
Fields inherited from class polyglot.visit.ContextVisitor
context, outer
 
Fields inherited from class polyglot.visit.ErrorHandlingVisitor
error, job, nf, ts
 
Constructor Summary
ConstantChecker(Job job, TypeSystem ts, NodeFactory nf)
           
 
Method Summary
protected  Node leaveCall(Node old, Node n, NodeVisitor v)
           
 
Methods inherited from class polyglot.visit.ContextVisitor
addDecls, begin, context, context, enter, enterScope, leave, superEnter
 
Methods inherited from class polyglot.visit.ErrorHandlingVisitor
catchErrors, enterCall, enterCall, enterError, errorQueue, hasErrors, job, leaveCall, leaveCall, nodeFactory, typeSystem
 
Methods inherited from class polyglot.visit.HaltingVisitor
bypass, bypass, bypassChildren, override, visitChildren
 
Methods inherited from class polyglot.visit.NodeVisitor
copy, enter, finish, finish, leave, override, toString, visitEdge, visitEdgeNoOverride
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ConstantChecker

public ConstantChecker(Job job,
                       TypeSystem ts,
                       NodeFactory nf)
Method Detail

leaveCall

protected Node leaveCall(Node old,
                         Node n,
                         NodeVisitor v)
                  throws SemanticException
Overrides:
leaveCall in class ErrorHandlingVisitor
Throws:
SemanticException