Class NodeIterable

    • Constructor Summary

      Constructors 
      Constructor Description
      NodeIterable​(INode startWith)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      BidiIterator<INode> iterator()
      Returns an iterator that can be used forwards and backwards.
      BidiIterable<INode> reverse()
      Returns a reverse version of this iterable that can be used forwards and backwards.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.lang.Iterable

        forEach, spliterator
    • Constructor Detail

      • NodeIterable

        public NodeIterable​(INode startWith)
    • Method Detail

      • iterator

        public BidiIterator<INode> iterator()
        Description copied from interface: BidiIterable
        Returns an iterator that can be used forwards and backwards.
        Specified by:
        iterator in interface BidiIterable<INode>
        Specified by:
        iterator in interface java.lang.Iterable<INode>
        Returns:
        an iterator. Never returns null.
      • reverse

        public BidiIterable<INode> reverse()
        Description copied from interface: BidiIterable

        Returns a reverse version of this iterable that can be used forwards and backwards. In other words, an iterator provided by the reverse iterable will delegate its hasNext() and next() invocations to BidiIterator.hasPrevious() and BidiIterator.previous() respectively.

        This allows clients to iterate backwards by means of the enhanced for-loop:

         for(T t: iterable.reverse()) {
           // do something with t
         }
         
        Specified by:
        reverse in interface BidiIterable<INode>
        Returns:
        the reversed iterable. Never returns null.