MiniBIOAsync

izumi.functional.bio.impl.MiniBIOAsync
See theMiniBIOAsync companion object
sealed trait MiniBIOAsync[+E, +A]

MiniBIO extended with support for async operations via the Async constructor.

This effect type does not support interruption.

Made for use in distage-testkit. Prefer ZIO or cats-bio in production.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Async[E, A]
class Fail[E]
class FlatMap[E, A, E1, B]
class Redeem[E, A, E1, B]
class Sync[E, A]

Members list

Value members

Concrete methods

final def runOnEC(ec: ExecutionContext): Future[Uninterrupted[E, A]]

Runs the effect on the provided ExecutionContext

Runs the effect on the provided ExecutionContext

Attributes

Note

Even for synchronous effects, execution will be deferred to the EC.

final def runSyncToFirstAsyncBoundary(): Either[Uninterrupted[E, A], ExecutionContext => Future[Uninterrupted[E, A]]]

Runs the effect synchronously until the first async boundary.

Runs the effect synchronously until the first async boundary.

Attributes

Returns

Left if the effect completes synchronously, or Right with a continuation if async execution is needed.

final def runSyncToFirstAsyncBoundaryOrOnEC(ec: ExecutionContext): Future[Uninterrupted[E, A]]

Runs the effect on current thread up to first async boundary and then migrates execution to provided ExecutionContext

Runs the effect on current thread up to first async boundary and then migrates execution to provided ExecutionContext

Attributes

Returns

Completed future if there were no Async nodes, completable future otherwise