src/com/google/javascript/jscomp/NodeUtil.java
/** A post-order traversal, calling Visitor.visit for each descendant matching the predicate. */
A post-order traversal, calling Visitor.visit for each descendant matching the predicate.
A post - order traversal calling Visitor . visit for each descendant matching the predicate .
public static void visitPostOrder(
      Node node, Visitor visitor, Predicate<Node> traverseChildrenPred) {
    if (traverseChildrenPred.apply(node)) {
      for (Node c = node.getFirstChild(); c != null; c = c.getNext()) {
        visitPostOrder(c, visitor, traverseChildrenPred);
      }
    }
    visitor.visit(node);
  }
public static void visitPostOrder ( Node node , Visitor visitor , Predicate < Node > traverseChildrenPred ) { if ( traverseChildrenPred . apply ( node ) ) { for ( Node c = node . getFirstChild ( ) ; c != null ; c = c . getNext ( ) ) { visitPostOrder ( c , visitor , traverseChildrenPred ) ; } } visitor . visit ( node ) ; }
A post-order traversal, calling Visitor.visit for each descendant matching the predicate.
A post - order traversal calling Visitor . visit for each descendant matching the predicate .