MCPcopy Index your code
hub / github.com/apache/groovy / depthFirstRest

Method depthFirstRest

src/main/java/groovy/util/Node.java:599–613  ·  view source on GitHub ↗
(boolean preorder)

Source from the content-addressed store, hash-verified

597 }
598
599 private List depthFirstRest(boolean preorder) {
600 List answer = new NodeList();
601 for (Iterator iter = InvokerHelper.asIterator(value); iter.hasNext(); ) {
602 Object child = iter.next();
603 if (child instanceof Node childNode) {
604 List children = childNode.depthFirstRest(preorder);
605 if (preorder) answer.add(childNode);
606 if (children.size() > 1 || (children.size() == 1 && !(children.get(0) instanceof String))) answer.addAll(children);
607 if (!preorder) answer.add(childNode);
608 } else if (child instanceof String) {
609 answer.add(child);
610 }
611 }
612 return answer;
613 }
614
615 /**
616 * Provides a collection of all the nodes in the tree

Callers 1

depthFirstMethod · 0.95

Calls 8

asIteratorMethod · 0.95
callClosureForNodeMethod · 0.95
addMethod · 0.65
sizeMethod · 0.65
getMethod · 0.65
hasNextMethod · 0.45
nextMethod · 0.45
addAllMethod · 0.45

Tested by

no test coverage detected