private class InlineFunctions.FindCandidatesReferences extends InlineFunctions.CallVisitor implements InlineFunctions.CallVisitorCallback
callback
Constructor and Description |
---|
FindCandidatesReferences(java.util.Map<java.lang.String,InlineFunctions.FunctionState> fns,
java.util.Map<Node,java.lang.String> anonFns) |
Modifier and Type | Method and Description |
---|---|
private void |
checkNameUsage(Node n,
Node parent)
Find functions that can be inlined.
|
(package private) void |
maybeAddReference(NodeTraversal t,
InlineFunctions.FunctionState fs,
Node callNode,
JSModule module) |
private boolean |
maybeAddReferenceUsingMode(NodeTraversal t,
InlineFunctions.FunctionState fs,
Node callNode,
JSModule module,
FunctionInjector.InliningMode mode) |
void |
visit(NodeTraversal t,
Node n,
Node parent)
Visits a node in postorder (after its children have been visited).
|
void |
visitCallSite(NodeTraversal t,
Node callNode,
InlineFunctions.FunctionState fs) |
shouldTraverse
FindCandidatesReferences(java.util.Map<java.lang.String,InlineFunctions.FunctionState> fns, java.util.Map<Node,java.lang.String> anonFns)
public 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
visit
in class InlineFunctions.CallVisitor
public void visitCallSite(NodeTraversal t, Node callNode, InlineFunctions.FunctionState fs)
visitCallSite
in interface InlineFunctions.CallVisitorCallback
void maybeAddReference(NodeTraversal t, InlineFunctions.FunctionState fs, Node callNode, JSModule module)
private boolean maybeAddReferenceUsingMode(NodeTraversal t, InlineFunctions.FunctionState fs, Node callNode, JSModule module, FunctionInjector.InliningMode mode)