Class Joiners
java.lang.Object
org.optaplanner.core.api.score.stream.Joiners
Creates an
BiJoiner
, TriJoiner
, ... instance
for use in UniConstraintStream.join(Class, BiJoiner)
, ...-
Method Summary
Modifier and TypeMethodDescriptionstatic <A> BiJoiner<A,
A> equal()
As defined byequal(Function)
withFunction.identity()
as the argument.static <A,
B, C, Property_>
TriJoiner<A,B, C> equal
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined byequal(Function, Function)
.static <A,
Property_>
BiJoiner<A,A> As defined byequal(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_>
BiJoiner<A,B> Joins every A and B that share a property.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) As defined byequal(Function, Function)
static <A,
B, C, D, Property_>
QuadJoiner<A,B, C, D> equal
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byequal(Function, Function)
.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) As defined byfiltering(BiPredicate)
.static <A,
B, C, D> QuadJoiner<A, B, C, D> filtering
(QuadPredicate<A, B, C, D> filter) As defined byfiltering(BiPredicate)
.static <A,
B, C> TriJoiner<A, B, C> filtering
(TriPredicate<A, B, C> filter) As defined byfiltering(BiPredicate)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> greaterThan
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThan(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> greaterThan
(Function<A, Property_> mapping) As defined bygreaterThan(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> greaterThan
(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than the value of a property on B.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) As defined bygreaterThan(Function, Function)
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) As defined bygreaterThan(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> greaterThanOrEqual
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> greaterThanOrEqual
(Function<A, Property_> mapping) As defined bygreaterThanOrEqual(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> greaterThanOrEqual
(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than or equal to the value of a property on B.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) As defined bygreaterThanOrEqual(Function, Function)
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) As defined bygreaterThanOrEqual(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> lessThan
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThan(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> As defined bylessThan(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> Joins every A and B where a value of property on A is less than the value of a property on B.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) As defined bylessThan(Function, Function)
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) As defined bylessThan(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> lessThanOrEqual
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> lessThanOrEqual
(Function<A, Property_> mapping) As defined bylessThanOrEqual(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> lessThanOrEqual
(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is less than or equal to the value of a property on B.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) As defined bylessThanOrEqual(Function, Function)
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) As defined bylessThanOrEqual(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> overlapping
(BiFunction<A, B, Property_> leftStartMapping, BiFunction<A, B, Property_> leftEndMapping, Function<C, Property_> rightStartMapping, Function<C, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> overlapping
(Function<A, Property_> startMapping, Function<A, Property_> endMapping) Joins every A and B that overlap for an interval which is specified by a start and end property on both A and B.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> overlapping
(Function<A, Property_> leftStartMapping, Function<A, Property_> leftEndMapping, Function<B, Property_> rightStartMapping, Function<B, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.static <A,
B, C, D, E, Property_ extends Comparable<Property_>>
PentaJoiner<A,B, C, D, E> overlapping
(QuadFunction<A, B, C, D, Property_> leftStartMapping, QuadFunction<A, B, C, D, Property_> leftEndMapping, Function<E, Property_> rightStartMapping, Function<E, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> overlapping
(TriFunction<A, B, C, Property_> leftStartMapping, TriFunction<A, B, C, Property_> leftEndMapping, Function<D, Property_> rightStartMapping, Function<D, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.
-
Method Details
-
equal
As defined byequal(Function)
withFunction.identity()
as the argument.- Type Parameters:
A
- the type of both objects- Returns:
- never null
-
equal
As defined byequal(Function, Function)
with both arguments using the same mapping.- Type Parameters:
A
- the type of both objectsProperty_
- the type of the property to compare- Parameters:
mapping
- mapping function to apply to both A and B- Returns:
- never null
-
equal
public static <A,B, BiJoiner<A,Property_> B> equal(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B that share a property. These are exactly the pairs whereleftMapping.apply(A).equals(rightMapping.apply(B))
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Ann), (Ann, Eric), (Beth, Beth), (Eric, Ann), (Eric, Eric)
.- Type Parameters:
B
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to ArightMapping
- mapping function to apply to B- Returns:
- never null
-
lessThan
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> lessThan(Function<A, Property_> mapping) As defined bylessThan(Function, Function)
with both arguments using the same mapping.- Type Parameters:
A
- the type of both objectsProperty_
- the type of the property to compare- Parameters:
mapping
- mapping function to apply- Returns:
- never null
-
lessThan
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> lessThan(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is less than the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) < 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Beth), (Eric, Beth)
.- Type Parameters:
A
- the type of object on the leftB
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to ArightMapping
- mapping function to apply to B- Returns:
- never null
-
lessThanOrEqual
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> lessThanOrEqual(Function<A, Property_> mapping) As defined bylessThanOrEqual(Function, Function)
with both arguments using the same mapping.- Type Parameters:
A
- the type of both objectsProperty_
- the type of the property to compare- Parameters:
mapping
- mapping function to apply- Returns:
- never null
-
lessThanOrEqual
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> lessThanOrEqual(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is less than or equal to the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) <= 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Ann), (Ann, Beth), (Ann, Eric), (Beth, Beth), (Eric, Ann), (Eric, Beth), (Eric, Eric)
.- Type Parameters:
A
- the type of object on the leftB
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to ArightMapping
- mapping function to apply to B- Returns:
- never null
-
greaterThan
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> greaterThan(Function<A, Property_> mapping) As defined bygreaterThan(Function, Function)
with both arguments using the same mapping.- Type Parameters:
A
- the type of both objectsProperty_
- the type of the property to compare- Parameters:
mapping
- mapping function to apply- Returns:
- never null
-
greaterThan
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> greaterThan(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) > 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Beth, Ann), (Beth, Eric)
.- Type Parameters:
A
- the type of object on the leftB
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to ArightMapping
- mapping function to apply to B- Returns:
- never null
-
greaterThanOrEqual
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> greaterThanOrEqual(Function<A, Property_> mapping) As defined bygreaterThanOrEqual(Function, Function)
with both arguments using the same mapping.- Type Parameters:
A
- the type of both objectsProperty_
- the type of the property to compare- Parameters:
mapping
- mapping function to apply- Returns:
- never null
-
greaterThanOrEqual
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> greaterThanOrEqual(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than or equal to the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) >= 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Ann), (Ann, Eric), (Beth, Ann), (Beth, Beth), (Beth, Eric), (Eric, Ann), (Eric, Eric)
.- Type Parameters:
A
- the type of object on the leftB
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to ArightMapping
- mapping function to apply to B- Returns:
- never null
-
filtering
Applies a filter to the joined tuple, with the semantics ofBiConstraintStream.filter(BiPredicate)
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with filter beingage == 20
, this joiner will produce pairs(Ann, Ann), (Ann, Eric), (Eric, Ann), (Eric, Eric)
.- 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
-
overlapping
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> overlapping(Function<A, Property_> startMapping, Function<A, Property_> endMapping) Joins every A and B that overlap for an interval which is specified by a start and end property on both A and B. These are exactly the pairs whereA.start < B.end
andA.end > B.start
. For example, on a cartesian product of list[Ann(start=08:00, end=14:00), Beth(start=12:00, end=18:00), Eric(start=16:00, end=22:00)]
with startMapping beingPerson::getStart
and endMapping beingPerson::getEnd
, this joiner will produce pairs(Ann, Ann), (Ann, Beth), (Beth, Ann), (Beth, Beth), (Beth, Eric), (Eric, Beth), (Eric, Eric)
.- Type Parameters:
A
- the type of both the first and second argumentProperty_
- the type used to define the interval, comparable- Parameters:
startMapping
- maps the argument to the start point of its interval (inclusive)endMapping
- maps the argument to the end point of its interval (exclusive)- Returns:
- never null
-
overlapping
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> overlapping(Function<A, Property_> leftStartMapping, Function<A, Property_> leftEndMapping, Function<B, Property_> rightStartMapping, Function<B, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.- Type Parameters:
A
- the type of the first argumentB
- the type of the second argumentProperty_
- the type used to define the interval, comparable- Parameters:
leftStartMapping
- maps the first argument to its interval start point (inclusive)leftEndMapping
- maps the first argument to its interval end point (exclusive)rightStartMapping
- maps the second argument to its interval start point (inclusive)rightEndMapping
- maps the second argument to its interval end point (exclusive)- Returns:
- never null
-
equal
public static <A,B, TriJoiner<A,C, Property_> B, equalC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined byequal(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B)rightMapping
- mapping function to apply to C- Returns:
- never null
-
lessThan
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, lessThanC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThan(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B)rightMapping
- mapping function to apply to C- Returns:
- never null
-
lessThanOrEqual
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, lessThanOrEqualC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B)rightMapping
- mapping function to apply to C- Returns:
- never null
-
greaterThan
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, greaterThanC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThan(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B)rightMapping
- mapping function to apply to C- Returns:
- never null
-
greaterThanOrEqual
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, greaterThanOrEqualC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B)rightMapping
- mapping function to apply to C- Returns:
- never null
-
filtering
As defined byfiltering(BiPredicate)
.- Type Parameters:
A
- type of the first fact in the tupleB
- type of the second fact in the tupleC
- type of the third fact in the tuple- Parameters:
filter
- never null, filter to apply- Returns:
- never null
-
overlapping
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, overlappingC> (BiFunction<A, B, Property_> leftStartMapping, BiFunction<A, B, Property_> leftEndMapping, Function<C, Property_> rightStartMapping, Function<C, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.- Type Parameters:
A
- the type of the first argumentB
- the type of the second argumentC
- the type of the third argumentProperty_
- the type used to define the interval, comparable- Parameters:
leftStartMapping
- maps the first and second arguments to their interval start point (inclusive)leftEndMapping
- maps the first and second arguments to their interval end point (exclusive)rightStartMapping
- maps the third argument to its interval start point (inclusive)rightEndMapping
- maps the third argument to its interval end point (exclusive)- Returns:
- never null
-
equal
public static <A,B, QuadJoiner<A,C, D, Property_> B, equalC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byequal(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A, B, C)rightMapping
- mapping function to apply to D- Returns:
- never null
-
lessThan
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, lessThanC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bylessThan(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C)rightMapping
- mapping function to apply to D- Returns:
- never null
-
lessThanOrEqual
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, lessThanOrEqualC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C)rightMapping
- mapping function to apply to D- Returns:
- never null
-
greaterThan
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, greaterThanC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bygreaterThan(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C)rightMapping
- mapping function to apply to D- Returns:
- never null
-
greaterThanOrEqual
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, greaterThanOrEqualC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C)rightMapping
- mapping function to apply to D- Returns:
- never null
-
filtering
As defined byfiltering(BiPredicate)
.- Type Parameters:
A
- type of the first fact in the tupleB
- type of the second fact in the tupleC
- type of the third fact in the tupleD
- type of the fourth fact in the tuple- Parameters:
filter
- never null, filter to apply- Returns:
- never null
-
overlapping
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, overlappingC, D> (TriFunction<A, B, C, Property_> leftStartMapping, TriFunction<A, B, C, Property_> leftEndMapping, Function<D, Property_> rightStartMapping, Function<D, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.- Type Parameters:
A
- the type of the first argumentB
- the type of the second argumentC
- the type of the third argumentD
- the type of the fourth argumentProperty_
- the type used to define the interval, comparable- Parameters:
leftStartMapping
- maps the first, second and third arguments to their interval start point (inclusive)leftEndMapping
- maps the first, second and third arguments to their interval end point (exclusive)rightStartMapping
- maps the fourth argument to its interval start point (inclusive)rightEndMapping
- maps the fourth argument to its interval end point (exclusive)- Returns:
- never null
-
equal
public static <A,B, PentaJoiner<A,C, D, E, Property_> B, equalC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined byequal(Function, Function)
- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the fourth object on the leftE
- the type of the object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C,D)rightMapping
- mapping function to apply to E- Returns:
- never null
-
lessThan
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, lessThanC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bylessThan(Function, Function)
- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the fourth object on the leftE
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C,D)rightMapping
- mapping function to apply to E- Returns:
- never null
-
lessThanOrEqual
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, lessThanOrEqualC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the fourth object on the leftE
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C,D)rightMapping
- mapping function to apply to E- Returns:
- never null
-
greaterThan
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, greaterThanC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bygreaterThan(Function, Function)
- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the fourth object on the leftE
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C,D)rightMapping
- mapping function to apply to E- Returns:
- never null
-
greaterThanOrEqual
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, greaterThanOrEqualC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the fourth object on the leftE
- the type of object on the rightProperty_
- the type of the property to compare- Parameters:
leftMapping
- mapping function to apply to (A,B,C,D)rightMapping
- mapping function to apply to E- Returns:
- never null
-
filtering
As defined byfiltering(BiPredicate)
.- Type Parameters:
A
- the type of the first object on the leftB
- the type of the second object on the leftC
- the type of the third object on the leftD
- the type of the fourth object on the leftE
- the type of object on the right- Parameters:
filter
- never null, filter to apply- Returns:
- never null
-
overlapping
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, overlappingC, D, E> (QuadFunction<A, B, C, D, Property_> leftStartMapping, QuadFunction<A, B, C, D, Property_> leftEndMapping, Function<E, Property_> rightStartMapping, Function<E, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.- Type Parameters:
A
- the type of the first argumentB
- the type of the second argumentC
- the type of the third argumentD
- the type of the fourth argumentE
- the type of the fifth argumentProperty_
- the type used to define the interval, comparable- Parameters:
leftStartMapping
- maps the first, second, third and fourth arguments to their interval start point (inclusive)leftEndMapping
- maps the first, second, third and fourth arguments to their interval end point (exclusive)rightStartMapping
- maps the fifth argument to its interval start point (inclusive)rightEndMapping
- maps the fifth argument to its interval end point (exclusive)- Returns:
- never null
-