Class Joiners
- java.lang.Object
-
- org.optaplanner.core.api.score.stream.Joiners
-
public final class Joiners extends Object
Creates anBiJoiner
,TriJoiner
, ... instance for use inUniConstraintStream.join(Class, BiJoiner)
, ...
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <A> BiJoiner<A,A>
equal()
static <A,B,C,Property_>
TriJoiner<A,B,C>equal(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
static <A,Property_>
BiJoiner<A,A>equal(Function<A,Property_> mapping)
static <A,B,Property_>
BiJoiner<A,B>equal(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
static <A,B,C,D,E,Property_>
PentaJoiner<A,B,C,D,E>equal(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
static <A,B,C,D,Property_>
QuadJoiner<A,B,C,D>equal(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
static <A,B>
BiJoiner<A,B>filtering(BiPredicate<A,B> filter)
Applies a filter to the joined tuple, with the semantics ofBiConstraintStream.filter(BiPredicate)
.static <A,B,C,D,E>
PentaJoiner<A,B,C,D,E>filtering(PentaPredicate<A,B,C,D,E> filter)
static <A,B,C,D>
QuadJoiner<A,B,C,D>filtering(QuadPredicate<A,B,C,D> filter)
static <A,B,C>
TriJoiner<A,B,C>filtering(TriPredicate<A,B,C> filter)
static <A,B,C,Property_ extends Comparable<Property_>>
TriJoiner<A,B,C>greaterThan(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
static <A,Property_ extends Comparable<Property_>>
BiJoiner<A,A>greaterThan(Function<A,Property_> mapping)
static <A,B,Property_ extends Comparable<Property_>>
BiJoiner<A,B>greaterThan(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
static <A,B,C,D,E,Property_ extends Comparable<Property_>>
PentaJoiner<A,B,C,D,E>greaterThan(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
static <A,B,C,D,Property_ extends Comparable<Property_>>
QuadJoiner<A,B,C,D>greaterThan(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
static <A,B,C,Property_ extends Comparable<Property_>>
TriJoiner<A,B,C>greaterThanOrEqual(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
static <A,Property_ extends Comparable<Property_>>
BiJoiner<A,A>greaterThanOrEqual(Function<A,Property_> mapping)
static <A,B,Property_ extends Comparable<Property_>>
BiJoiner<A,B>greaterThanOrEqual(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
static <A,B,C,D,E,Property_ extends Comparable<Property_>>
PentaJoiner<A,B,C,D,E>greaterThanOrEqual(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
static <A,B,C,D,Property_ extends Comparable<Property_>>
QuadJoiner<A,B,C,D>greaterThanOrEqual(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
static <A,B,C,Property_ extends Comparable<Property_>>
TriJoiner<A,B,C>lessThan(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
static <A,Property_ extends Comparable<Property_>>
BiJoiner<A,A>lessThan(Function<A,Property_> mapping)
static <A,B,Property_ extends Comparable<Property_>>
BiJoiner<A,B>lessThan(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
static <A,B,C,D,E,Property_ extends Comparable<Property_>>
PentaJoiner<A,B,C,D,E>lessThan(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
static <A,B,C,D,Property_ extends Comparable<Property_>>
QuadJoiner<A,B,C,D>lessThan(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
static <A,B,C,Property_ extends Comparable<Property_>>
TriJoiner<A,B,C>lessThanOrEqual(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
static <A,Property_ extends Comparable<Property_>>
BiJoiner<A,A>lessThanOrEqual(Function<A,Property_> mapping)
static <A,B,Property_ extends Comparable<Property_>>
BiJoiner<A,B>lessThanOrEqual(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
static <A,B,C,D,E,Property_ extends Comparable<Property_>>
PentaJoiner<A,B,C,D,E>lessThanOrEqual(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
static <A,B,C,D,Property_ extends Comparable<Property_>>
QuadJoiner<A,B,C,D>lessThanOrEqual(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
-
-
-
Method Detail
-
equal
public static <A> BiJoiner<A,A> equal()
-
equal
public static <A,B,Property_> BiJoiner<A,B> equal(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
-
lessThan
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> lessThan(Function<A,Property_> mapping)
-
lessThan
public static <A,B,Property_ extends Comparable<Property_>> BiJoiner<A,B> lessThan(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
-
lessThanOrEqual
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> lessThanOrEqual(Function<A,Property_> mapping)
-
lessThanOrEqual
public static <A,B,Property_ extends Comparable<Property_>> BiJoiner<A,B> lessThanOrEqual(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
-
greaterThan
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> greaterThan(Function<A,Property_> mapping)
-
greaterThan
public static <A,B,Property_ extends Comparable<Property_>> BiJoiner<A,B> greaterThan(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
-
greaterThanOrEqual
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> greaterThanOrEqual(Function<A,Property_> mapping)
-
greaterThanOrEqual
public static <A,B,Property_ extends Comparable<Property_>> BiJoiner<A,B> greaterThanOrEqual(Function<A,Property_> leftMapping, Function<B,Property_> rightMapping)
-
filtering
public static <A,B> BiJoiner<A,B> filtering(BiPredicate<A,B> filter)
Applies a filter to the joined tuple, with the semantics ofBiConstraintStream.filter(BiPredicate)
.- Type Parameters:
A
- type of the first fact in the tupleB
- type of the second fact in the tuple- Parameters:
filter
- never null, filter to apply- Returns:
- never null
-
equal
public static <A,B,C,Property_> TriJoiner<A,B,C> equal(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
-
lessThan
public static <A,B,C,Property_ extends Comparable<Property_>> TriJoiner<A,B,C> lessThan(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
-
lessThanOrEqual
public static <A,B,C,Property_ extends Comparable<Property_>> TriJoiner<A,B,C> lessThanOrEqual(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
-
greaterThan
public static <A,B,C,Property_ extends Comparable<Property_>> TriJoiner<A,B,C> greaterThan(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
-
greaterThanOrEqual
public static <A,B,C,Property_ extends Comparable<Property_>> TriJoiner<A,B,C> greaterThanOrEqual(BiFunction<A,B,Property_> leftMapping, Function<C,Property_> rightMapping)
-
filtering
public static <A,B,C> TriJoiner<A,B,C> filtering(TriPredicate<A,B,C> filter)
-
equal
public static <A,B,C,D,Property_> QuadJoiner<A,B,C,D> equal(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
-
lessThan
public static <A,B,C,D,Property_ extends Comparable<Property_>> QuadJoiner<A,B,C,D> lessThan(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
-
lessThanOrEqual
public static <A,B,C,D,Property_ extends Comparable<Property_>> QuadJoiner<A,B,C,D> lessThanOrEqual(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
-
greaterThan
public static <A,B,C,D,Property_ extends Comparable<Property_>> QuadJoiner<A,B,C,D> greaterThan(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
-
greaterThanOrEqual
public static <A,B,C,D,Property_ extends Comparable<Property_>> QuadJoiner<A,B,C,D> greaterThanOrEqual(TriFunction<A,B,C,Property_> leftMapping, Function<D,Property_> rightMapping)
-
filtering
public static <A,B,C,D> QuadJoiner<A,B,C,D> filtering(QuadPredicate<A,B,C,D> filter)
-
equal
public static <A,B,C,D,E,Property_> PentaJoiner<A,B,C,D,E> equal(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
-
lessThan
public static <A,B,C,D,E,Property_ extends Comparable<Property_>> PentaJoiner<A,B,C,D,E> lessThan(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
-
lessThanOrEqual
public static <A,B,C,D,E,Property_ extends Comparable<Property_>> PentaJoiner<A,B,C,D,E> lessThanOrEqual(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
-
greaterThan
public static <A,B,C,D,E,Property_ extends Comparable<Property_>> PentaJoiner<A,B,C,D,E> greaterThan(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
-
greaterThanOrEqual
public static <A,B,C,D,E,Property_ extends Comparable<Property_>> PentaJoiner<A,B,C,D,E> greaterThanOrEqual(QuadFunction<A,B,C,D,Property_> leftMapping, Function<E,Property_> rightMapping)
-
filtering
public static <A,B,C,D,E> PentaJoiner<A,B,C,D,E> filtering(PentaPredicate<A,B,C,D,E> filter)
-
-