_1
- The first slot element type_2
- The second slot element type_3
- The third slot element type_4
- The fourth slot element type_5
- The fifth slot element type_6
- The sixth slot element type_7
- The seventh slot element type_8
- The eighth slot element typepublic class Tuple8<_1,_2,_3,_4,_5,_6,_7,_8> extends HList.HCons<_1,Tuple7<_2,_3,_4,_5,_6,_7,_8>> implements Product8<_1,_2,_3,_4,_5,_6,_7,_8>, MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>, Bifunctor<_7,_8,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>, Traversable<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
HList.HCons<Head,Tail extends HList>, HList.HNil
Modifier and Type | Method and Description |
---|---|
_1 |
_1()
Retrieve the first element.
|
_2 |
_2()
Retrieve the second element.
|
_3 |
_3()
Retrieve the third element.
|
_4 |
_4()
Retrieve the fourth element.
|
_5 |
_5()
Retrieve the fifth element.
|
_6 |
_6()
Retrieve the sixth element.
|
_7 |
_7()
Retrieve the seventh element.
|
_8 |
_8()
Retrieve the eighth element.
|
<_7Prime,_8Prime> |
biMap(Fn1<? super _7,? extends _7Prime> lFn,
Fn1<? super _8,? extends _8Prime> rFn)
Dually map covariantly over both the left and right parameters.
|
<_7Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7Prime,_8> |
biMapL(Fn1<? super _7,? extends _7Prime> fn)
Covariantly map over the left parameter.
|
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
biMapR(Fn1<? super _8,? extends _8Prime> fn)
Covariantly map over the right parameter.
|
<_0> HList.HCons<_0,Tuple8<_1,_2,_3,_4,_5,_6,_7,_8>> |
cons(_0 _0)
Cons an element onto the front of this HList.
|
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
discardL(Applicative<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> appB)
Sequence both this
Applicative and appB , discarding this Applicative's
result and returning appB . |
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8> |
discardR(Applicative<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> appB)
Sequence both this
Applicative and appB , discarding appB's result and
returning this Applicative . |
static <A> Tuple8<A,A,A,A,A,A,A,A> |
fill(A a)
Given a value of type
A , produced an instance of this tuple with each slot set to that value. |
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
flatMap(Fn1<? super _8,? extends Monad<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> f)
Chain dependent computations that may continue or short-circuit based on previous results.
|
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
fmap(Fn1<? super _8,? extends _8Prime> fn)
Covariantly transmute this functor's parameter using the given mapping function.
|
static <A> Maybe<Tuple8<A,A,A,A,A,A,A,A>> |
fromIterable(Iterable<A> as)
|
Tuple8<_2,_1,_3,_4,_5,_6,_7,_8> |
invert()
Rotate the first two slots of this product.
|
<_8Prime> Lazy<Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime>> |
lazyZip(Lazy<? extends Applicative<Fn1<? super _8,? extends _8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> lazyAppFn)
Given a
lazy instance of this applicative over a mapping function, "zip" the two instances together
using whatever application semantics the current applicative supports. |
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
pure(_8Prime _8Prime)
Lift the value
b into this applicative functor. |
static <_1,_2,_3,_4,_5,_6,_7> |
pureTuple(_1 _1,
_2 _2,
_3 _3,
_4 _4,
_5 _5,
_6 _6,
_7 _7)
|
Tuple8<_2,_3,_1,_4,_5,_6,_7,_8> |
rotateL3()
Rotate the first three values of this product one slot to the left.
|
Tuple8<_2,_3,_4,_1,_5,_6,_7,_8> |
rotateL4()
Rotate the first four values of this product one slot to the left.
|
Tuple8<_2,_3,_4,_5,_1,_6,_7,_8> |
rotateL5()
Rotate the first five values of this product one slot to the left.
|
Tuple8<_2,_3,_4,_5,_6,_1,_7,_8> |
rotateL6()
Rotate the first six values of this product one slot to the left.
|
Tuple8<_2,_3,_4,_5,_6,_7,_1,_8> |
rotateL7()
Rotate the first seven values of this product one slot to the left.
|
Tuple8<_2,_3,_4,_5,_6,_7,_8,_1> |
rotateL8()
Rotate all eight values of this product one slot to the left.
|
Tuple8<_3,_1,_2,_4,_5,_6,_7,_8> |
rotateR3()
Rotate the first three values of this product one slot to the right.
|
Tuple8<_4,_1,_2,_3,_5,_6,_7,_8> |
rotateR4()
Rotate the first four values of this product one slot to the right.
|
Tuple8<_5,_1,_2,_3,_4,_6,_7,_8> |
rotateR5()
Rotate the first five values of this product one slot to the right.
|
Tuple8<_6,_1,_2,_3,_4,_5,_7,_8> |
rotateR6()
Rotate the first six values of this product one slot to the right.
|
Tuple8<_7,_1,_2,_3,_4,_5,_6,_8> |
rotateR7()
Rotate the first seven values of this product one slot to the right.
|
Tuple8<_8,_1,_2,_3,_4,_5,_6,_7> |
rotateR8()
Rotate all eight values of this product one slot to the right.
|
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
trampolineM(Fn1<? super _8,? extends MonadRec<RecursiveResult<_8,_8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_8Prime,App extends Applicative<?,App>,TravB extends Traversable<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>,AppTrav extends Applicative<TravB,App>> |
traverse(Fn1<? super _8,? extends Applicative<_8Prime,App>> fn,
Fn1<? super TravB,? extends AppTrav> pure)
Apply
fn to each element of this traversable from left to right, and collapse the results into
a single resulting applicative, potentially with the assistance of the applicative's pure function. |
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
zip(Applicative<Fn1<? super _8,? extends _8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> appFn)
Given another instance of this applicative over a mapping function, "zip" the two instances together using
whatever application semantics the current applicative supports.
|
equals, hashCode, head, tail
cons, nil, singletonHList, toString, tuple, tuple, tuple, tuple, tuple, tuple, tuple
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getKey, getValue, into, product, setValue
comparingByKey, comparingByKey, comparingByValue, comparingByValue, equals, hashCode
public <_0> HList.HCons<_0,Tuple8<_1,_2,_3,_4,_5,_6,_7,_8>> cons(_0 _0)
public _1 _1()
public _2 _2()
public _3 _3()
public _4 _4()
public _5 _5()
public _6 _6()
public _7 _7()
public _8 _8()
public Tuple8<_2,_3,_4,_5,_6,_7,_8,_1> rotateL8()
public Tuple8<_8,_1,_2,_3,_4,_5,_6,_7> rotateR8()
public Tuple8<_2,_3,_4,_5,_6,_7,_1,_8> rotateL7()
public Tuple8<_7,_1,_2,_3,_4,_5,_6,_8> rotateR7()
public Tuple8<_2,_3,_4,_5,_6,_1,_7,_8> rotateL6()
public Tuple8<_6,_1,_2,_3,_4,_5,_7,_8> rotateR6()
public Tuple8<_2,_3,_4,_5,_1,_6,_7,_8> rotateL5()
public Tuple8<_5,_1,_2,_3,_4,_6,_7,_8> rotateR5()
public Tuple8<_2,_3,_4,_1,_5,_6,_7,_8> rotateL4()
rotateL4
in interface Product4<_1,_2,_3,_4>
rotateL4
in interface Product5<_1,_2,_3,_4,_5>
rotateL4
in interface Product6<_1,_2,_3,_4,_5,_6>
rotateL4
in interface Product7<_1,_2,_3,_4,_5,_6,_7>
rotateL4
in interface Product8<_1,_2,_3,_4,_5,_6,_7,_8>
public Tuple8<_4,_1,_2,_3,_5,_6,_7,_8> rotateR4()
rotateR4
in interface Product4<_1,_2,_3,_4>
rotateR4
in interface Product5<_1,_2,_3,_4,_5>
rotateR4
in interface Product6<_1,_2,_3,_4,_5,_6>
rotateR4
in interface Product7<_1,_2,_3,_4,_5,_6,_7>
rotateR4
in interface Product8<_1,_2,_3,_4,_5,_6,_7,_8>
public Tuple8<_2,_3,_1,_4,_5,_6,_7,_8> rotateL3()
rotateL3
in interface Product3<_1,_2,_3>
rotateL3
in interface Product4<_1,_2,_3,_4>
rotateL3
in interface Product5<_1,_2,_3,_4,_5>
rotateL3
in interface Product6<_1,_2,_3,_4,_5,_6>
rotateL3
in interface Product7<_1,_2,_3,_4,_5,_6,_7>
rotateL3
in interface Product8<_1,_2,_3,_4,_5,_6,_7,_8>
public Tuple8<_3,_1,_2,_4,_5,_6,_7,_8> rotateR3()
rotateR3
in interface Product3<_1,_2,_3>
rotateR3
in interface Product4<_1,_2,_3,_4>
rotateR3
in interface Product5<_1,_2,_3,_4,_5>
rotateR3
in interface Product6<_1,_2,_3,_4,_5,_6>
rotateR3
in interface Product7<_1,_2,_3,_4,_5,_6,_7>
rotateR3
in interface Product8<_1,_2,_3,_4,_5,_6,_7,_8>
public Tuple8<_2,_1,_3,_4,_5,_6,_7,_8> invert()
invert
in interface Product2<_1,_2>
invert
in interface Product3<_1,_2,_3>
invert
in interface Product4<_1,_2,_3,_4>
invert
in interface Product5<_1,_2,_3,_4,_5>
invert
in interface Product6<_1,_2,_3,_4,_5,_6>
invert
in interface Product7<_1,_2,_3,_4,_5,_6,_7>
invert
in interface Product8<_1,_2,_3,_4,_5,_6,_7,_8>
public <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> fmap(Fn1<? super _8,? extends _8Prime> fn)
fmap
in interface Applicative<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
fmap
in interface Functor<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
fmap
in interface Monad<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
fmap
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
fmap
in interface Traversable<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the new parameter typefn
- the mapping functionpublic <_7Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7Prime,_8> biMapL(Fn1<? super _7,? extends _7Prime> fn)
biMapL
in interface Bifunctor<_7,_8,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>
biMapL
in interface BoundedBifunctor<_7,_8,Object,Object,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>
_7Prime
- the new left parameter typefn
- the mapping functionpublic <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> biMapR(Fn1<? super _8,? extends _8Prime> fn)
biMapR(f) == fmap(f)
.biMapR
in interface Bifunctor<_7,_8,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>
biMapR
in interface BoundedBifunctor<_7,_8,Object,Object,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>
_8Prime
- the new right parameter typefn
- the mapping functionpublic <_7Prime,_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7Prime,_8Prime> biMap(Fn1<? super _7,? extends _7Prime> lFn, Fn1<? super _8,? extends _8Prime> rFn)
biMapL(lFn).biMapR(rFn)
.biMap
in interface Bifunctor<_7,_8,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>
biMap
in interface BoundedBifunctor<_7,_8,Object,Object,Tuple8<_1,_2,_3,_4,_5,_6,?,?>>
_7Prime
- the new left parameter type_8Prime
- the new right parameter typelFn
- the left parameter mapping functionrFn
- the right parameter mapping functionpublic <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> pure(_8Prime _8Prime)
b
into this applicative functor.pure
in interface Applicative<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
pure
in interface Monad<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
pure
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the type of the returned applicative's parameter_8Prime
- the valuepublic <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> zip(Applicative<Fn1<? super _8,? extends _8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> appFn)
zip
in interface Applicative<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
zip
in interface Monad<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
zip
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the resulting applicative parameter typeappFn
- the other applicative instancepublic <_8Prime> Lazy<Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime>> lazyZip(Lazy<? extends Applicative<Fn1<? super _8,? extends _8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> lazyAppFn)
lazy
instance of this applicative over a mapping function, "zip" the two instances together
using whatever application semantics the current applicative supports. This is useful for applicatives that
support lazy evaluation and early termination.lazyZip
in interface Applicative<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
lazyZip
in interface Monad<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
lazyZip
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the resulting applicative parameter typelazyAppFn
- the lazy other applicative instanceMaybe
,
Either
public <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> discardL(Applicative<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> appB)
Applicative
and appB
, discarding this Applicative's
result and returning appB
. This is generally useful for sequentially performing side-effects.discardL
in interface Applicative<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
discardL
in interface Monad<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
discardL
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the type of the returned Applicative's parameterappB
- the other Applicativepublic <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8> discardR(Applicative<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> appB)
Applicative
and appB
, discarding appB's
result and
returning this Applicative
. This is generally useful for sequentially performing side-effects.discardR
in interface Applicative<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
discardR
in interface Monad<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
discardR
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the type of appB's parameterappB
- the other Applicativepublic <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> flatMap(Fn1<? super _8,? extends Monad<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> f)
public <_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> trampolineM(Fn1<? super _8,? extends MonadRec<RecursiveResult<_8,_8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> fn)
RecursiveResult
inside this MonadRec
, internally trampoline the
operation until it yields a termination
instruction.
Stack-safety depends on implementations guaranteeing that the growth of the call stack is a constant factor independent of the number of invocations of the operation. For various examples of how this can be achieved in stereotypical circumstances, see the referenced types.
trampolineM
in interface MonadRec<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the ultimate resulting carrier typefn
- the function to internally trampolineMonadRec
for a basic implementation
,
for a {@link CoProduct2 coproduct} implementation
,
for an implementation leveraging an already stack-safe {@link Monad#flatMap(Fn1)}
,
for a {@link MonadT monad transformer} implementation
public <_8Prime,App extends Applicative<?,App>,TravB extends Traversable<_8Prime,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>,AppTrav extends Applicative<TravB,App>> AppTrav traverse(Fn1<? super _8,? extends Applicative<_8Prime,App>> fn, Fn1<? super TravB,? extends AppTrav> pure)
fn
to each element of this traversable from left to right, and collapse the results into
a single resulting applicative, potentially with the assistance of the applicative's pure function.traverse
in interface Traversable<_8,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>
_8Prime
- the resulting element typeApp
- the result applicative typeTravB
- this Traversable instance over BAppTrav
- the full inferred resulting type from the traversalfn
- the function to applypure
- the applicative pure functionpublic static <A> Tuple8<A,A,A,A,A,A,A,A> fill(A a)
A
, produced an instance of this tuple with each slot set to that value.A
- the value typea
- the value to fill the tuple withTuple2.fill(A)
public static <_1,_2,_3,_4,_5,_6,_7> Pure<Tuple8<_1,_2,_3,_4,_5,_6,_7,?>> pureTuple(_1 _1, _2 _2, _3 _3, _4 _4, _5 _5, _6 _6, _7 _7)
_1
- the head 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_1
- the head element_2
- the second element_3
- the third element_4
- the fourth element_5
- the fifth element_6
- the sixth element_7
- the seventh elementPure
instance