code: public static <N extends AbstractDTNode<?, ?, ?, N>> Iterator<N> leafIterator(N root) {
          return Iterators.filter(nodeIterator(root), AbstractDTNode::isLeaf);
      }
docs: Iterator that traverses all leaves (no inner nodes) of a subtree of a given discrimination tree node.
  
  @param root
  the root node, from which traversal should start
  @param <N>
  node type