Interface BiNeighborhoodsPredicate<Solution_,A,B>

Type Parameters:
Solution_ - the type of the solution
A - the type of the first parameter
B - the type of the second parameter
All Superinterfaces:
TriPredicate<SolutionView<Solution_>,A,B>

@NullMarked public interface BiNeighborhoodsPredicate<Solution_,A,B> extends TriPredicate<SolutionView<Solution_>,A,B>
A filter that can be applied to a BiEnumeratingStream to filter out pairs of data, optionally using SolutionView to query for solution state.
  • Method Details

    • test

      boolean test(SolutionView<Solution_> solutionView, @Nullable A a, @Nullable B b)
      Description copied from interface: TriPredicate
      Evaluates this predicate on the given arguments.
      Specified by:
      test in interface TriPredicate<Solution_,A,B>
      Parameters:
      solutionView - the first input argument
      a - the second input argument
      b - the third input argument
      Returns:
      true if the input arguments match the predicate, otherwise false
    • and

      default BiNeighborhoodsPredicate<Solution_,A,B> and(TriPredicate<? super SolutionView<Solution_>,? super A,? super B> other)
      Description copied from interface: TriPredicate
      Returns a composed predicate that represents a short-circuiting logical AND of this predicate and another. When evaluating the composed predicate, if this predicate is false, then the other predicate is not evaluated.

      Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.

      Specified by:
      and in interface TriPredicate<Solution_,A,B>
      Parameters:
      other - a predicate that will be logically-ANDed with this predicate
      Returns:
      a composed predicate that represents the short-circuiting logical AND of this predicate and the other predicate
    • toBiPredicate

      default BiPredicate<A,B> toBiPredicate(SolutionView<Solution_> solutionView)