- Companion:
- class
Type members
Classlikes
Value members
Concrete methods
Submerges the error case of an Either
into the STM
. The inverse
operation of STM.either
.
Submerges the error case of an Either
into the STM
. The inverse
operation of STM.either
.
Accesses the environment of the transaction to perform a transaction.
Accesses the environment of the transaction to perform a transaction.
Atomically performs a batch of operations in a single transaction.
Atomically performs a batch of operations in a single transaction.
Checks the condition, and if it's true, returns unit, otherwise, retries.
Checks the condition, and if it's true, returns unit, otherwise, retries.
Evaluate each effect in the structure from left to right, collecting the the successful values and discarding the empty cases.
Evaluate each effect in the structure from left to right, collecting the the successful values and discarding the empty cases.
Collects all the transactional effects in a collection, returning a single transactional effect that produces a collection of values.
Collects all the transactional effects in a collection, returning a single transactional effect that produces a collection of values.
Collects all the transactional effects in a set, returning a single transactional effect that produces a set of values.
Collects all the transactional effects in a set, returning a single transactional effect that produces a set of values.
Collects all the transactional effects, returning a single transactional
effect that produces Unit
.
Collects all the transactional effects, returning a single transactional
effect that produces Unit
.
Equivalent to collectAll(i).unit
, but without the cost of building the
list of results.
Collects the first element of the Iterable[A]
for which the effectual
function f
returns Some
.
Collects the first element of the Iterable[A]
for which the effectual
function f
returns Some
.
Similar to Either.cond, evaluate the predicate, return the given A as success if predicate returns true, and the given E as error otherwise
Similar to Either.cond, evaluate the predicate, return the given A as success if predicate returns true, and the given E as error otherwise
Kills the fiber running the effect with a RuntimeException
that contains
the specified message.
Kills the fiber running the effect with a RuntimeException
that contains
the specified message.
Determines whether any element of the Iterable[A]
satisfies the effectual
predicate f
.
Determines whether any element of the Iterable[A]
satisfies the effectual
predicate f
.
Returns a value that models failure in the transaction.
Returns a value that models failure in the transaction.
Filters the collection using the specified effectual predicate.
Filters the collection using the specified effectual predicate.
Filters the set using the specified effectual predicate.
Filters the set using the specified effectual predicate.
Filters the collection using the specified effectual predicate, removing all elements that satisfy the predicate.
Filters the collection using the specified effectual predicate, removing all elements that satisfy the predicate.
Filters the set using the specified effectual predicate, removing all elements that satisfy the predicate.
Filters the set using the specified effectual predicate, removing all elements that satisfy the predicate.
Returns an effectful function that extracts out the first element of a tuple.
Returns an effectful function that extracts out the first element of a tuple.
Returns an effect that first executes the outer effect, and then executes the inner effect, returning the value from the inner effect, and effectively flattening a nested effect.
Returns an effect that first executes the outer effect, and then executes the inner effect, returning the value from the inner effect, and effectively flattening a nested effect.
Folds an Iterable[A] using an effectual function f, working sequentially from left to right.
Folds an Iterable[A] using an effectual function f, working sequentially from left to right.
Folds an Iterable[A] using an effectual function f, working sequentially from right to left.
Folds an Iterable[A] using an effectual function f, working sequentially from right to left.
Determines whether all elements of the Iterable[A]
satisfy the effectual
predicate f
.
Determines whether all elements of the Iterable[A]
satisfy the effectual
predicate f
.
Applies the function f
to each element of the Collection[A]
and returns
a transactional effect that produces a new Collection[B]
.
Applies the function f
to each element of the Collection[A]
and returns
a transactional effect that produces a new Collection[B]
.
Applies the function f
to each element of the Set[A]
and returns a
transactional effect that produces a new Set[B]
.
Applies the function f
to each element of the Set[A]
and returns a
transactional effect that produces a new Set[B]
.
Applies the function f
to each element of the Iterable[A]
and returns a
transactional effect that produces Unit
.
Applies the function f
to each element of the Iterable[A]
and returns a
transactional effect that produces Unit
.
Equivalent to foreach(as)(f).unit
, but without the cost of building the
list of results.
Lifts an effectful function whose effect requires no environment into an effect that requires the input to the function.
Lifts an effectful function whose effect requires no environment into an effect that requires the input to the function.
Returns the identity effectful function, which performs no effects
Returns the identity effectful function, which performs no effects
Runs onTrue
if the result of b
is true
and onFalse
otherwise.
Runs onTrue
if the result of b
is true
and onFalse
otherwise.
Iterates with the specified transactional function. The moral equivalent of:
Iterates with the specified transactional function. The moral equivalent of:
var s = initial
while (cont(s)) {
s = body(s)
}
s
Returns an effect with the value on the left part.
Returns an effect with the value on the left part.
Loops with the specified transactional function, collecting the results into a list. The moral equivalent of:
Loops with the specified transactional function, collecting the results into a list. The moral equivalent of:
var s = initial
var as = List.empty[A]
while (cont(s)) {
as = body(s) :: as
s = inc(s)
}
as.reverse
Loops with the specified transactional function purely for its transactional effects. The moral equivalent of:
Loops with the specified transactional function purely for its transactional effects. The moral equivalent of:
var s = initial
while (cont(s)) {
body(s)
s = inc(s)
}
Sequentially zips the specified effects using the specified combiner function.
Sequentially zips the specified effects using the specified combiner function.
Sequentially zips the specified effects using the specified combiner function.
Sequentially zips the specified effects using the specified combiner function.
Sequentially zips the specified effects using the specified combiner function.
Sequentially zips the specified effects using the specified combiner function.
Merges an Iterable[ZSTM]
to a single ZSTM, working sequentially.
Merges an Iterable[ZSTM]
to a single ZSTM, working sequentially.
Creates an STM
value from a partial (but pure) function.
Creates an STM
value from a partial (but pure) function.
Feeds elements of type A
to a function f
that returns an effect.
Collects all successes and failures in a tupled fashion.
Feeds elements of type A
to a function f
that returns an effect.
Collects all successes and failures in a tupled fashion.
Reduces an Iterable[ZSTM]
to a single ZSTM
, working sequentially.
Reduces an Iterable[ZSTM]
to a single ZSTM
, working sequentially.
Replicates the given effect n times. If 0 or negative numbers are given, an
empty Iterable
will return.
Replicates the given effect n times. If 0 or negative numbers are given, an
empty Iterable
will return.
Performs this transaction the specified number of times and collects the results.
Performs this transaction the specified number of times and collects the results.
Performs this transaction the specified number of times, discarding the results.
Performs this transaction the specified number of times, discarding the results.
Requires that the given ZSTM[R, E, Option[A]]
contain a value. If there
is no value, then the specified error will be raised.
Requires that the given ZSTM[R, E, Option[A]]
contain a value. If there
is no value, then the specified error will be raised.
Returns an effect with the value on the right part.
Returns an effect with the value on the right part.
Returns an effectful function that extracts out the second element of a tuple.
Returns an effectful function that extracts out the second element of a tuple.
Accesses the specified service in the environment of the effect.
Accesses the specified service in the environment of the effect.
Effectfully accesses the specified service in the environment of the effect.
Effectfully accesses the specified service in the environment of the effect.
Accesses the specified services in the environment of the effect.
Accesses the specified services in the environment of the effect.
Accesses the specified services in the environment of the effect.
Accesses the specified services in the environment of the effect.
Accesses the specified services in the environment of the effect.
Accesses the specified services in the environment of the effect.
Returns an STM
effect that succeeds with the specified value.
Returns an STM
effect that succeeds with the specified value.
Suspends creation of the specified transaction lazily.
Suspends creation of the specified transaction lazily.
Returns an effectful function that merely swaps the elements in a Tuple2
.
Returns an effectful function that merely swaps the elements in a Tuple2
.
The moral equivalent of if (!p) exp
when p
has side-effects
The moral equivalent of if (!p) exp
when p
has side-effects
Feeds elements of type A
to f
and accumulates all errors in error
channel or successes in success channel.
Feeds elements of type A
to f
and accumulates all errors in error
channel or successes in success channel.
This combinator is lossy meaning that if there are errors all successes will be lost. To retain all information please use partition.
Feeds elements of type A
to f
and accumulates all errors in error
channel or successes in success channel.
Feeds elements of type A
to f
and accumulates all errors in error
channel or successes in success channel.
This combinator is lossy meaning that if there are errors all successes will be lost. To retain all information please use partition.
Feeds elements of type A
to f
until it succeeds. Returns first success
or the accumulation of all errors.
Feeds elements of type A
to f
until it succeeds. Returns first success
or the accumulation of all errors.
Runs an effect when the supplied PartialFunction
matches for the given
value, otherwise does nothing.
Runs an effect when the supplied PartialFunction
matches for the given
value, otherwise does nothing.
Concrete fields
Returns the fiber id of the fiber committing the transaction.
Returns the fiber id of the fiber committing the transaction.