public abstract static class NodeTraversal.AbstractModuleCallback extends java.lang.Object implements NodeTraversal.Callback
Modifier and Type | Field and Description |
---|---|
protected AbstractCompiler |
compiler |
Modifier and Type | Method and Description |
---|---|
protected void |
enterModule(ModuleMetadataMap.ModuleMetadata currentModule,
Node moduleScopeRoot) |
protected void |
exitModule(ModuleMetadataMap.ModuleMetadata oldModule,
Node moduleScopeRoot) |
protected boolean |
shouldTraverse(NodeTraversal t,
Node n,
ModuleMetadataMap.ModuleMetadata currentModule,
Node moduleScopeRoot) |
boolean |
shouldTraverse(NodeTraversal t,
Node n,
Node parent)
Visits a node in pre order (before visiting its children) and decides
whether this node's children should be traversed.
|
protected void |
visit(NodeTraversal t,
Node n,
ModuleMetadataMap.ModuleMetadata currentModule,
Node moduleScopeRoot) |
void |
visit(NodeTraversal t,
Node n,
Node parent)
Visits a node in postorder (after its children have been visited).
|
protected final AbstractCompiler compiler
protected void enterModule(ModuleMetadataMap.ModuleMetadata currentModule, Node moduleScopeRoot)
protected void exitModule(ModuleMetadataMap.ModuleMetadata oldModule, Node moduleScopeRoot)
public final boolean shouldTraverse(NodeTraversal t, Node n, Node parent)
NodeTraversal.Callback
Visits a node in pre order (before visiting its children) and decides
whether this node's children should be traversed. If children are
traversed, they will be visited by
NodeTraversal.Callback.visit(NodeTraversal, Node, Node)
in postorder.
Implementations can have side effects (e.g. modifying the parse tree).
shouldTraverse
in interface NodeTraversal.Callback
protected boolean shouldTraverse(NodeTraversal t, Node n, @Nullable ModuleMetadataMap.ModuleMetadata currentModule, @Nullable Node moduleScopeRoot)
public final void visit(NodeTraversal t, Node n, Node parent)
NodeTraversal.Callback
Visits a node in postorder (after its children have been visited).
A node is visited only if all its parents should be traversed
(NodeTraversal.Callback.shouldTraverse(NodeTraversal, Node, Node)
).
Implementations can have side effects (e.g. modifying the parse tree).
visit
in interface NodeTraversal.Callback
protected void visit(NodeTraversal t, Node n, @Nullable ModuleMetadataMap.ModuleMetadata currentModule, @Nullable Node moduleScopeRoot)
Copyright © 2009-2020 Google. All Rights Reserved.