Interface Product4<_1,_2,_3,_4>
-
- Type Parameters:
_1- The first element type_2- The second element type_3- The third element type_4- The fourth element type
- All Known Subinterfaces:
Product5<_1,_2,_3,_4,_5>,Product6<_1,_2,_3,_4,_5,_6>,Product7<_1,_2,_3,_4,_5,_6,_7>,Product8<_1,_2,_3,_4,_5,_6,_7,_8>
public interface Product4<_1,_2,_3,_4> extends Product3<_1,_2,_3>
A product with four values.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description _4_4()Retrieve the fourth element.default <R> Rinto(Fn4<? super _1,? super _2,? super _3,? super _4,? extends R> fn)Destructure and apply this product to a function accepting the same number of arguments as this product's slots.default Product4<_2,_1,_3,_4>invert()Rotate the first two slots of this product.static <_1,_2,_3,_4>
Product4<_1,_2,_3,_4>product(_1 _1, _2 _2, _3 _3, _4 _4)Static factory method for creating a genericProduct4.default Product4<_2,_3,_1,_4>rotateL3()Rotate the first three values of this product one slot to the left.default Product4<_2,_3,_4,_1>rotateL4()Rotate the first four values of this product one slot to the left.default Product4<_3,_1,_2,_4>rotateR3()Rotate the first three values of this product one slot to the right.default Product4<_4,_1,_2,_3>rotateR4()Rotate the first four values of this product one slot to the right.
-
-
-
Method Detail
-
_4
_4 _4()
Retrieve the fourth element.- Returns:
- the fourth element
-
into
default <R> R into(Fn4<? super _1,? super _2,? super _3,? super _4,? extends R> fn)
Destructure and apply this product to a function accepting the same number of arguments as this product's slots. This can be thought of as a kind of dual to uncurrying a function and applying a product to it.- Type Parameters:
R- the return type of the function- Parameters:
fn- the function to apply- Returns:
- the result of applying the destructured product to the function
-
rotateL4
default Product4<_2,_3,_4,_1> rotateL4()
Rotate the first four values of this product one slot to the left.- Returns:
- the left-rotated product
-
rotateR4
default Product4<_4,_1,_2,_3> rotateR4()
Rotate the first four values of this product one slot to the right.- Returns:
- the right-rotated product
-
rotateL3
default Product4<_2,_3,_1,_4> rotateL3()
Description copied from interface:Product3Rotate the first three values of this product one slot to the left.
-
rotateR3
default Product4<_3,_1,_2,_4> rotateR3()
Description copied from interface:Product3Rotate the first three values of this product one slot to the right.
-
invert
default Product4<_2,_1,_3,_4> invert()
Description copied from interface:Product2Rotate the first two slots of this product.
-
product
static <_1,_2,_3,_4> Product4<_1,_2,_3,_4> product(_1 _1, _2 _2, _3 _3, _4 _4)
Static factory method for creating a genericProduct4.- Type Parameters:
_1- the first slot type_2- the second slot type_3- the third slot type_4- the fourth slot type- Parameters:
_1- the first slot_2- the second slot_3- the third slot_4- the fourth slot- Returns:
- the
Product4
-
-