com.google.javascript.jscomp
Class NodeTraversal.AbstractNodeTypePruningCallback

java.lang.Object
  extended by com.google.javascript.jscomp.NodeTraversal.AbstractNodeTypePruningCallback
All Implemented Interfaces:
NodeTraversal.Callback
Enclosing class:
NodeTraversal

public abstract static class NodeTraversal.AbstractNodeTypePruningCallback
extends Object
implements NodeTraversal.Callback

Abstract callback to visit a pruned set of nodes.


Constructor Summary
NodeTraversal.AbstractNodeTypePruningCallback(Set<Integer> nodeTypes)
          Creates an abstract pruned callback.
NodeTraversal.AbstractNodeTypePruningCallback(Set<Integer> nodeTypes, boolean include)
          Creates an abstract pruned callback.
 
Method Summary
 boolean shouldTraverse(NodeTraversal nodeTraversal, Node n, Node parent)
          Visits a node in pre order (before visiting its children) and decides whether this node's children should be traversed.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.google.javascript.jscomp.NodeTraversal.Callback
visit
 

Constructor Detail

NodeTraversal.AbstractNodeTypePruningCallback

public NodeTraversal.AbstractNodeTypePruningCallback(Set<Integer> nodeTypes)
Creates an abstract pruned callback.

Parameters:
nodeTypes - the nodes to include in the traversal

NodeTraversal.AbstractNodeTypePruningCallback

public NodeTraversal.AbstractNodeTypePruningCallback(Set<Integer> nodeTypes,
                                                     boolean include)
Creates an abstract pruned callback.

Parameters:
nodeTypes - the nodes to include/exclude in the traversal
include - whether to include or exclude the nodes in the traversal
Method Detail

shouldTraverse

public boolean shouldTraverse(NodeTraversal nodeTraversal,
                              Node n,
                              Node parent)
Description copied from interface: 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 post order.

Implementations can have side effects (e.g. modifying the parse tree).

Specified by:
shouldTraverse in interface NodeTraversal.Callback
Returns:
whether the children of this node should be visited