Interface UniquenessFilter


public interface UniquenessFilter
Interface for filters preventing the traversal from visiting already seen parts of the graph. Implementations can allow for different heuristics to use to determine what may be re-visited.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Checks whether or not branch is unique, and hence can be visited in this traversal.
    boolean
    The check whether or not to expand the first branch is a separate method because it may contain checks which would be unnecessary for all other checks.
  • Method Details

    • checkFirst

      boolean checkFirst(TraversalBranch branch)
      The check whether or not to expand the first branch is a separate method because it may contain checks which would be unnecessary for all other checks. So it's purely an optimization.
      Parameters:
      branch - the first branch to check, i.e. the branch representing the start node in the traversal.
      Returns:
      whether or not branch is unique, and hence can be visited in this traversal.
    • check

      boolean check(TraversalBranch branch)
      Checks whether or not branch is unique, and hence can be visited in this traversal.
      Parameters:
      branch - the TraversalBranch to check for uniqueness.
      Returns:
      whether or not branch is unique, and hence can be visited in this traversal.