Class Compose<A>

java.lang.Object
com.jnape.palatable.lambda.monoid.builtin.Compose<A>
Type Parameters:
A - the future parameter type
All Implemented Interfaces:
Fn1<Monoid<A>,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>>, Fn2<Monoid<A>,CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>, Fn3<Monoid<A>,CompletableFuture<A>,CompletableFuture<A>,CompletableFuture<A>>, MonoidFactory<Monoid<A>,CompletableFuture<A>>, SemigroupFactory<Monoid<A>,CompletableFuture<A>>, Applicative<Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<Monoid<A>,?>>, Cartesian<Monoid<A>,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<?,?>>, Cocartesian<Monoid<A>,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<?,?>>, Contravariant<Monoid<A>,Profunctor<?,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<?,?>>>, Functor<Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<Monoid<A>,?>>, Profunctor<Monoid<A>,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<?,?>>, Monad<Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<Monoid<A>,?>>, MonadReader<Monoid<A>,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<Monoid<A>,?>>, MonadRec<Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<Monoid<A>,?>>, MonadWriter<Monoid<A>,Fn1<CompletableFuture<A>,Fn1<CompletableFuture<A>,CompletableFuture<A>>>,Fn1<Monoid<A>,?>>

public final class Compose<A> extends Object implements MonoidFactory<Monoid<A>,CompletableFuture<A>>
A Monoid instance formed by CompletableFuture<A> and a monoid over A. If either CompletableFutures completes exceptionally, the result is also an exceptionally completed future.

Note that this operation only takes as long as the slowest future to complete.

For the Semigroup, see Compose.