@Override
          public IterationMode next(final NodeType node) {
            // Nodes without outgoing edges into the subgraph formed by the selected nodes
            // are unselected. Those are just the nodes which have no selected children.

            if (areAllChildrenDeselected(node)) {
              if (!deselect.contains(node)) {
                deselect.add(node);
              }
            }

            return IterationMode.CONTINUE;
          }
Shrinks the current selection up. This means that all selected nodes without outgoing edges are
unselected.

@param <NodeType> The type of the nodes in the graph.
@param graph The graph in question.
java/zylib/src/main/java/com/google/security/zynamics/zylib/gui/zygraph/helpers/GraphHelpers.java