Reads the value from the Ref
.
Atomically modifies the RefM
with the specified function, which computes
a return value for the modification.
Atomically modifies the RefM
with the specified function, which computes
a return value for the modification. This is a more powerful version of
update
.
Atomically modifies the RefM
with the specified function, which computes
a return value for the modification if the function is defined in the current value
otherwise it returns a default value.
Atomically modifies the RefM
with the specified function, which computes
a return value for the modification if the function is defined in the current value
otherwise it returns a default value.
This is a more powerful version of updateSome
.
Writes a new value to the Ref
, with a guarantee of immediate
consistency (at some cost to performance).
Writes a new value to the Ref
without providing a guarantee of
immediate consistency.
Atomically modifies the RefM
with the specified function, returning the
value immediately after modification.
Atomically modifies the RefM
with the specified partial function.
Atomically modifies the RefM
with the specified partial function.
if the function is undefined in the current value it returns the old value without changing it.
A mutable atomic reference for the
IO
monad. This is theIO
equivalent of a volatilevar
, augmented with atomic effectful operations, which make it useful as a reasonably efficient (if low-level) concurrency primitive.Unlike
Ref
,RefM
allows effects in atomic operations, which makes the structure slower but more powerful thanRef
.