private static class TypedScopeCreator.FirstOrderFunctionAnalyzer extends NodeTraversal.AbstractScopedCallback implements CompilerPass
| Modifier and Type | Field and Description |
|---|---|
private AbstractCompiler |
compiler |
private java.util.Map<Node,FunctionTypeBuilder.AstFunctionContents> |
data |
| Constructor and Description |
|---|
FirstOrderFunctionAnalyzer(AbstractCompiler compiler,
java.util.Map<Node,FunctionTypeBuilder.AstFunctionContents> outParam) |
| Modifier and Type | Method and Description |
|---|---|
void |
enterScope(NodeTraversal t)
Called immediately after entering a new scope.
|
void |
process(Node externs,
Node root)
Process the JS with root node root.
|
void |
visit(NodeTraversal t,
Node n,
Node parent)
Visits a node in postorder (after its children have been visited).
|
exitScope, shouldTraverseprivate final AbstractCompiler compiler
private final java.util.Map<Node,FunctionTypeBuilder.AstFunctionContents> data
FirstOrderFunctionAnalyzer(AbstractCompiler compiler, java.util.Map<Node,FunctionTypeBuilder.AstFunctionContents> outParam)
public void process(Node externs, Node root)
CompilerPassprocess in interface CompilerPassexterns - Top of external JS treeroot - Top of JS treepublic void enterScope(NodeTraversal t)
NodeTraversal.ScopedCallbackenterScope in interface NodeTraversal.ScopedCallbackenterScope in class NodeTraversal.AbstractScopedCallbackpublic void visit(NodeTraversal t, Node n, Node parent)
NodeTraversal.CallbackVisits 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