Class Generator

java.lang.Object
org.eclipse.jgit.revwalk.Generator
Direct Known Subclasses:
AbstractRevQueue, BoundaryGenerator, BoundaryGenerator.InitialGenerator, DelayRevQueue, DepthGenerator, EndGenerator, FixUninterestingGenerator, MergeBaseGenerator, PendingGenerator, RewriteGenerator, StartGenerator, TopoNonIntermixSortGenerator, TopoSortGenerator

abstract class Generator extends Object
Produces commits for RevWalk to return to applications.

Implementations of this basic class provide the real work behind RevWalk. Conceptually a Generator is an iterator or a queue, it returns commits until there are no more relevant. Generators may be piped/stacked together to create a more complex set of operations.

See Also:
  • Field Details

  • Constructor Details

    • Generator

      protected Generator(boolean firstParent)
  • Method Details

    • shareFreeList

      void shareFreeList(BlockRevQueue q)
      Connect the supplied queue to this generator's own free list (if any).
      Parameters:
      q - another FIFO queue that wants to share our queue's free list.
    • outputType

      abstract int outputType()
      Obtain flags describing the output behavior of this generator.
      Returns:
      one or more of the constants declared in this class, describing how this generator produces its results.
    • next

      Return the next commit to the application, or the next generator.
      Returns:
      next available commit; null if no more are to be returned.
      Throws:
      MissingObjectException
      IncorrectObjectTypeException
      IOException