public class RemoveAnnotations extends ContextVisitor
context, outer, prune, rethrowMissingDependencies
error, job, nf, ts
bypass, bypassParent
Constructor and Description |
---|
RemoveAnnotations(Job job,
TypeSystem ts,
NodeFactory nf) |
Modifier and Type | Method and Description |
---|---|
protected Node |
leaveCall(Node parent,
Node old,
Node n,
NodeVisitor v)
Contains all of the functionality that can be done in the
leave
method, but allows SemanticExceptions to be
thrown. |
addDecls, addDecls, begin, context, context, enter, enter, enterScope, leave, rethrowMissingDependencies, superEnter
catchErrors, enterCall, enterCall, enterError, errorQueue, hasErrors, job, leaveCall, leaveCall, nodeFactory, typeSystem
bypass, bypass, bypassChildren, override, visitChildren
copy, finish, finish, lang, leave, override, toString, visitEdge, visitEdgeNoOverride
public RemoveAnnotations(Job job, TypeSystem ts, NodeFactory nf)
protected Node leaveCall(Node parent, Node old, Node n, NodeVisitor v) throws SemanticException
ErrorHandlingVisitor
leave
method, but allows SemanticExceptions
to be
thrown.
This method is in addition to the leave
method,
and allows the compiler writer to write code that can throw errors
and let the Polyglot infrastructure handle the exceptions.leaveCall
in class ErrorHandlingVisitor
old
- The original state of root of the current subtree.n
- The current state of the root of the current subtree.v
- The NodeVisitor
object used to visit the children.n
.SemanticException
NodeVisitor.leave(Node, Node, NodeVisitor)