Interface Product8<_1,_2,_3,_4,_5,_6,_7,_8>
-
- Type Parameters:
_1
- The first element type_2
- The second element type_3
- The third element type_4
- The fourth element type_5
- The fifth element type_6
- The sixth element type_7
- The seventh element type_8
- The eighth element type
- All Superinterfaces:
java.util.Map.Entry<_1,_2>
,Product2<_1,_2>
,Product3<_1,_2,_3>
,Product4<_1,_2,_3,_4>
,Product5<_1,_2,_3,_4,_5>
,Product6<_1,_2,_3,_4,_5,_6>
,Product7<_1,_2,_3,_4,_5,_6,_7>
- All Known Implementing Classes:
Tuple8
public interface Product8<_1,_2,_3,_4,_5,_6,_7,_8> extends Product7<_1,_2,_3,_4,_5,_6,_7>
A product with eight values.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description _8
_8()
Retrieve the eighth element.default <R> R
into(Fn8<? super _1,? super _2,? super _3,? super _4,? super _5,? super _6,? super _7,? super _8,? extends R> fn)
Destructure and apply this product to a function accepting the same number of arguments as this product's slots.default Product8<_2,_1,_3,_4,_5,_6,_7,_8>
invert()
Rotate the first two slots of this product.static <_1,_2,_3,_4,_5,_6,_7,_8>
Product8<_1,_2,_3,_4,_5,_6,_7,_8>product(_1 _1, _2 _2, _3 _3, _4 _4, _5 _5, _6 _6, _7 _7, _8 _8)
Static factory method for creating a genericProduct8
.default Product8<_2,_3,_1,_4,_5,_6,_7,_8>
rotateL3()
Rotate the first three values of this product one slot to the left.default Product8<_2,_3,_4,_1,_5,_6,_7,_8>
rotateL4()
Rotate the first four values of this product one slot to the left.default Product8<_2,_3,_4,_5,_1,_6,_7,_8>
rotateL5()
Rotate the first five values of this product one slot to the left.default Product8<_2,_3,_4,_5,_6,_1,_7,_8>
rotateL6()
Rotate the first six values of this product one slot to the left.default Product8<_2,_3,_4,_5,_6,_7,_1,_8>
rotateL7()
Rotate the first seven values of this product one slot to the left.default Product8<_2,_3,_4,_5,_6,_7,_8,_1>
rotateL8()
Rotate all eight values of this product one slot to the left.default Product8<_3,_1,_2,_4,_5,_6,_7,_8>
rotateR3()
Rotate the first three values of this product one slot to the right.default Product8<_4,_1,_2,_3,_5,_6,_7,_8>
rotateR4()
Rotate the first four values of this product one slot to the right.default Product8<_5,_1,_2,_3,_4,_6,_7,_8>
rotateR5()
Rotate the first five values of this product one slot to the right.default Product8<_6,_1,_2,_3,_4,_5,_7,_8>
rotateR6()
Rotate the first six values of this product one slot to the right.default Product8<_7,_1,_2,_3,_4,_5,_6,_8>
rotateR7()
Rotate the first seven values of this product one slot to the right.default Product8<_8,_1,_2,_3,_4,_5,_6,_7>
rotateR8()
Rotate all eight values of this product one slot to the right.
-
-
-
Method Detail
-
_8
_8 _8()
Retrieve the eighth element.- Returns:
- the eighth element
-
into
default <R> R into(Fn8<? super _1,? super _2,? super _3,? super _4,? super _5,? super _6,? super _7,? super _8,? 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
-
rotateL8
default Product8<_2,_3,_4,_5,_6,_7,_8,_1> rotateL8()
Rotate all eight values of this product one slot to the left.- Returns:
- the left-rotated product
-
rotateR8
default Product8<_8,_1,_2,_3,_4,_5,_6,_7> rotateR8()
Rotate all eight values of this product one slot to the right.- Returns:
- the right-rotated product
-
rotateL7
default Product8<_2,_3,_4,_5,_6,_7,_1,_8> rotateL7()
Description copied from interface:Product7
Rotate the first seven values of this product one slot to the left.
-
rotateR7
default Product8<_7,_1,_2,_3,_4,_5,_6,_8> rotateR7()
Description copied from interface:Product7
Rotate the first seven values of this product one slot to the right.
-
rotateL6
default Product8<_2,_3,_4,_5,_6,_1,_7,_8> rotateL6()
Description copied from interface:Product6
Rotate the first six values of this product one slot to the left.
-
rotateR6
default Product8<_6,_1,_2,_3,_4,_5,_7,_8> rotateR6()
Description copied from interface:Product6
Rotate the first six values of this product one slot to the right.
-
rotateL5
default Product8<_2,_3,_4,_5,_1,_6,_7,_8> rotateL5()
Description copied from interface:Product5
Rotate the first five values of this product one slot to the left.
-
rotateR5
default Product8<_5,_1,_2,_3,_4,_6,_7,_8> rotateR5()
Description copied from interface:Product5
Rotate the first five values of this product one slot to the right.
-
rotateL4
default Product8<_2,_3,_4,_1,_5,_6,_7,_8> rotateL4()
Description copied from interface:Product4
Rotate the first four values of this product one slot to the left.- Specified by:
rotateL4
in interfaceProduct4<_1,_2,_3,_4>
- Specified by:
rotateL4
in interfaceProduct5<_1,_2,_3,_4,_5>
- Specified by:
rotateL4
in interfaceProduct6<_1,_2,_3,_4,_5,_6>
- Specified by:
rotateL4
in interfaceProduct7<_1,_2,_3,_4,_5,_6,_7>
- Returns:
- the left-rotated product
-
rotateR4
default Product8<_4,_1,_2,_3,_5,_6,_7,_8> rotateR4()
Description copied from interface:Product4
Rotate the first four values of this product one slot to the right.- Specified by:
rotateR4
in interfaceProduct4<_1,_2,_3,_4>
- Specified by:
rotateR4
in interfaceProduct5<_1,_2,_3,_4,_5>
- Specified by:
rotateR4
in interfaceProduct6<_1,_2,_3,_4,_5,_6>
- Specified by:
rotateR4
in interfaceProduct7<_1,_2,_3,_4,_5,_6,_7>
- Returns:
- the right-rotated product
-
rotateL3
default Product8<_2,_3,_1,_4,_5,_6,_7,_8> rotateL3()
Description copied from interface:Product3
Rotate the first three values of this product one slot to the left.- Specified by:
rotateL3
in interfaceProduct3<_1,_2,_3>
- Specified by:
rotateL3
in interfaceProduct4<_1,_2,_3,_4>
- Specified by:
rotateL3
in interfaceProduct5<_1,_2,_3,_4,_5>
- Specified by:
rotateL3
in interfaceProduct6<_1,_2,_3,_4,_5,_6>
- Specified by:
rotateL3
in interfaceProduct7<_1,_2,_3,_4,_5,_6,_7>
- Returns:
- the left-rotated product
-
rotateR3
default Product8<_3,_1,_2,_4,_5,_6,_7,_8> rotateR3()
Description copied from interface:Product3
Rotate the first three values of this product one slot to the right.- Specified by:
rotateR3
in interfaceProduct3<_1,_2,_3>
- Specified by:
rotateR3
in interfaceProduct4<_1,_2,_3,_4>
- Specified by:
rotateR3
in interfaceProduct5<_1,_2,_3,_4,_5>
- Specified by:
rotateR3
in interfaceProduct6<_1,_2,_3,_4,_5,_6>
- Specified by:
rotateR3
in interfaceProduct7<_1,_2,_3,_4,_5,_6,_7>
- Returns:
- the right-rotated product
-
invert
default Product8<_2,_1,_3,_4,_5,_6,_7,_8> invert()
Description copied from interface:Product2
Rotate the first two slots of this product.- Specified by:
invert
in interfaceProduct2<_1,_2>
- Specified by:
invert
in interfaceProduct3<_1,_2,_3>
- Specified by:
invert
in interfaceProduct4<_1,_2,_3,_4>
- Specified by:
invert
in interfaceProduct5<_1,_2,_3,_4,_5>
- Specified by:
invert
in interfaceProduct6<_1,_2,_3,_4,_5,_6>
- Specified by:
invert
in interfaceProduct7<_1,_2,_3,_4,_5,_6,_7>
- Returns:
- the rotated product
-
product
static <_1,_2,_3,_4,_5,_6,_7,_8> Product8<_1,_2,_3,_4,_5,_6,_7,_8> product(_1 _1, _2 _2, _3 _3, _4 _4, _5 _5, _6 _6, _7 _7, _8 _8)
Static factory method for creating a genericProduct8
.- Type Parameters:
_1
- the first slot type_2
- the second slot type_3
- the third slot type_4
- the fourth slot type_5
- the fifth slot type_6
- the sixth slot type_7
- the seventh slot type_8
- the eighth slot type- Parameters:
_1
- the first slot_2
- the second slot_3
- the third slot_4
- the fourth slot_5
- the fifth slot_6
- the sixth slot_7
- the seventh slot_8
- the eighth slot- Returns:
- the
Product8
-
-