Class BitmappedReachabilityChecker.ReachedFilter

  • Enclosing class:
    BitmappedReachabilityChecker

    private static class BitmappedReachabilityChecker.ReachedFilter
    extends RevFilter
    This filter emits commits that were not bitmap-reachable from anything visited before. Or in other words, commits that add something (themselves or their bitmap) to the "reached" bitmap. Current progress can be queried via isReachable(RevCommit).
    • Constructor Detail

      • ReachedFilter

        public ReachedFilter​(BitmapIndex repoBitmaps)
        Create a filter that emits only previously unreachable commits.
        Parameters:
        repoBitmaps - bitmap index of the repo
    • Method Detail

      • include

        public final boolean include​(RevWalk walker,
                                     RevCommit cmit)
        Determine if the supplied commit should be included in results.
        Specified by:
        include in class RevFilter
        Parameters:
        walker - the active walker this filter is being invoked from within.
        cmit - the commit currently being tested. The commit has been parsed and its body is available for inspection only if the filter returns true from RevFilter.requiresCommitBody().
        Returns:
        true to include this commit in the results; false to have this commit be omitted entirely from the results.
      • dontFollow

        private static final void dontFollow​(RevCommit cmit)
      • clone

        public final RevFilter clone()

        Clone this revision filter, including its parameters.

        This is a deep clone. If this filter embeds objects or other filters it must also clone those, to ensure the instances do not share mutable data.

        Specified by:
        clone in class RevFilter
      • requiresCommitBody

        public final boolean requiresCommitBody()
        Whether the filter needs the commit body to be parsed.
        Overrides:
        requiresCommitBody in class RevFilter
        Returns:
        true if the filter needs the commit body to be parsed.
      • isReachable

        boolean isReachable​(RevCommit commit)