Interface PureIO<R,E,A>
- All Superinterfaces:
Applicable<PureIO<R,,E, ?>, A> Bindable<PureIO<R,,E, ?>, A> Effect<PureIO<R,,E, ?>, A> Kind<PureIO<R,,E, ?>, A> Mappable<PureIO<R,,E, ?>, A> PureIOOf<R,E, A>
- All Known Implementing Classes:
PureIO.AccessM,PureIO.Async,PureIO.Attempt,PureIO.Delay,PureIO.Failure,PureIO.FlatMapped,PureIO.Pure,PureIO.Recover,PureIO.Suspend,PureIO.Throw
public sealed interface PureIO<R,E,A>
extends PureIOOf<R,E,A>, Effect<PureIO<R,E,?>,A>
permits PureIO.Pure<R,E,A>, PureIO.Failure<R,E,A>, PureIO.Throw<R,E,A>, PureIO.FlatMapped<R,E,A,F,B>, PureIO.Delay<R,E,A>, PureIO.Suspend<R,E,A>, PureIO.Async<R,E,A>, PureIO.Attempt<R,E,A>, PureIO.Recover<R,E,A>, PureIO.AccessM<R,E,A>
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classstatic final classPureIO.Async<R,E, A> static final classstatic final classPureIO.Delay<R,E, A> static final classstatic final classstatic final classPureIO.Pure<R,E, A> static final classstatic final classstatic final classPureIO.Throw<R,E, A> Nested classes/interfaces inherited from interface com.github.tonivade.purefun.core.Applicable
Applicable.Map2<F extends Applicable<F,?>, A, B>, Applicable.Map3<F extends Applicable<F, ?>, A, B, C>, Applicable.Map4<F extends Applicable<F, ?>, A, B, C, D>, Applicable.Map5<F extends Applicable<F, ?>, A, B, C, D, E> -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic <R,E, A> PureIO <R, E, A> static <R,E, A> PureIO <R, E, A> static <R,E, A> PureIO <R, E, A> accessM(R env, PureIO.AccessM<R, E, A> accessM) static <R,E, A> PureIO <R, E, A> static <R,E, A extends AutoCloseable, B>
PureIO<R, E, B> bracket(Kind<PureIO<R, E, ?>, ? extends A> acquire, Function1<? super A, ? extends Kind<PureIO<R, E, ?>, ? extends B>> use) static <R,E, A, B>
PureIO<R, E, B> bracket(Kind<PureIO<R, E, ?>, ? extends A> acquire, Function1<? super A, ? extends Kind<PureIO<R, E, ?>, ? extends B>> use, Consumer1<? super A> release) static <R,E, A, B>
PureIO<R, E, B> bracket(Kind<PureIO<R, E, ?>, ? extends A> acquire, Function1<? super A, ? extends Kind<PureIO<R, E, ?>, ? extends B>> use, Function1<? super A, ? extends Kind<PureIO<R, E, ?>, Unit>> release) static <R,E, A> PureIO <R, E, A> cancellable(Function2<R, Consumer1<? super Try<? extends Either<E, ? extends A>>>, PureIO<R, ?, Unit>> consumer) static <R,E, A> PureIO <R, E, A> static <R,E> PureIO <R, E, R> env()exec(CheckedRunnable task) executeAsync(R env, PureIO.Async<R, E, A> current, PureIOConnection connection, Promise<Either<E, A>> promise) foldM(Function1<? super E, ? extends Kind<PureIO<R, F, ?>, ? extends B>> left, Function1<? super A, ? extends Kind<PureIO<R, F, ?>, ? extends B>> right) fork()static <R,E, A> PureIO <R, E, A> fromEither(Producer<Either<E, ? extends A>> task) static <R,E, A> PureIO <R, E, A> fromEither(Either<E, ? extends A> task) fromOption(Producer<Option<? extends A>> task) fromOption(Option<? extends A> task) static <R,E, A> PureIO <R, E, A> fromPromise(Promise<? extends Either<E, ? extends A>> promise) static <R,E, A> PureIO <R, E, A> liftEither(Function1<? super A, ? extends Either<E, ? extends B>> function) liftOption(Function1<? super A, ? extends Option<? extends B>> function) static <R,E, A> PureIO <R, E, A> never()static <R,E, A, B, C>
PureIO<R, E, C> parMap2(Kind<PureIO<R, E, ?>, ? extends A> za, Kind<PureIO<R, E, ?>, ? extends B> zb, Function2<? super A, ? super B, ? extends C> mapper) static <R,E, A, B, C>
PureIO<R, E, C> parMap2(Executor executor, Kind<PureIO<R, E, ?>, ? extends A> za, Kind<PureIO<R, E, ?>, ? extends B> zb, Function2<? super A, ? super B, ? extends C> mapper) default voiddefault voidstatic <R,E, A> PureIO <R, E, A> pure(A value) static <R,E, A, B>
PureIO<R, E, Either<Tuple2<A, Fiber<PureIO<R, E, ?>, B>>, Tuple2<Fiber<PureIO<R, E, ?>, A>, B>>> static <R,E, A> PureIO <R, E, A> raiseError(E error) refineOrDie(Class<X> type) repeat()repeat(int times) private static <R,E, A> PureIO <R, E, A> retry()retry(int maxRetries) private static <R,E, A> PureIO <R, E, A> runAsync(R env, Kind<PureIO<R, E, ?>, A> current, PureIOConnection connection) runAsync(R env, Kind<PureIO<R, E, ?>, A> current, PureIOConnection connection, CallStack<R, E, A> stack, Promise<Either<E, A>> promise) private static <R,E, A> void setCancelToken(R env, PureIO.Async<R, E, A> current, PureIOConnection connection, Promise<Either<E, A>> promise) swap()static <R,E, A> PureIO <R, E, A> throwError(Throwable error) timed()toRIO()toURIO()unit()unwrap(R env, Kind<PureIO<R, E, ?>, A> current, CallStack<R, F, B> stack, Function1<Kind<PureIO<R, E, ?>, ? extends A>, Kind<PureIO<R, F, ?>, ? extends B>> next)
-
Field Details
-
UNIT
-
-
Method Details
-
provide
-
runAsync
-
runAsync
-
provideAsync
-
provideAsync
-
swap
-
map
-
mapError
-
bimap
-
flatMap
-
flatMapError
-
foldM
-
andThen
-
ap
-
fold
-
recover
-
orElse
-
zip
-
zipLeft
-
zipRight
-
zipWith
-
repeat
-
repeat
-
repeat
-
repeat
-
retry
-
retry
-
retry
-
retry
-
timed
-
fork
-
timeout
-
timeout
-
refineOrDie
-
toURIO
-
toRIO
-
toManaged
-
toManaged
-
accessM
-
access
-
env
-
forked
-
parMap2
-
parMap2
-
race
-
race
-
racePair
-
absorb
-
lift
-
liftOption
-
liftTry
-
liftEither
-
fromOption
-
fromOption
-
fromTry
-
fromTry
-
fromEither
-
fromEither
-
fromPromise
-
exec
-
run
-
pure
-
defer
-
task
-
later
-
never
-
async
-
cancellable
-
raiseError
-
throwError
-
redeem
-
sleep
-
sleep
-
traverse
-
traverse
-
bracket
-
bracket
-
bracket
-
unit
-
runAsync
-
runAsync
-
unwrap
-
accessM
-
executeAsync
private static <R,E, Promise<Either<E,A> A>> executeAsync(@Nullable R env, PureIO.Async<R, E, A> current, PureIOConnection connection, Promise<Either<E, A>> promise) -
setCancelToken
private static <R,E, void setCancelTokenA> (@Nullable R env, PureIO.Async<R, E, A> current, PureIOConnection connection, Promise<Either<E, A>> promise) -
repeat
-
retry
-