UnifiedSyntax

final implicit class UnifiedSyntax[-R, +E, A](self: ZRefM[R, R, E, E, A, A]) extends AnyVal
class AnyVal
trait Matchable
class Any

Value members

Concrete methods

def getAndSet(a: A): ZIO[R, E, A]

Writes a new value to the RefM, returning the value immediately before modification.

Writes a new value to the RefM, returning the value immediately before modification.

def getAndUpdate[R1 <: R, E1 >: E](f: A => ZIO[R1, E1, A]): ZIO[R1, E1, A]

Atomically modifies the RefM with the specified function, returning the value immediately before modification.

Atomically modifies the RefM with the specified function, returning the value immediately before modification.

def getAndUpdateSome[R1 <: R, E1 >: E](pf: PartialFunction[A, ZIO[R1, E1, A]]): ZIO[R1, E1, A]

Atomically modifies the RefM with the specified partial function, returning the value immediately before modification. If the function is undefined on the current value it doesn't change it.

Atomically modifies the RefM with the specified partial function, returning the value immediately before modification. If the function is undefined on the current value it doesn't change it.

@silent("unreachable code")
def modify[R1 <: R, E1 >: E, B](f: A => ZIO[R1, E1, (B, A)]): ZIO[R1, E1, B]

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. This is a more powerful version of update.

def modifySome[R1 <: R, E1 >: E, B](default: B)(pf: PartialFunction[A, ZIO[R1, E1, (B, A)]]): ZIO[R1, E1, B]

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.

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.

def update[R1 <: R, E1 >: E](f: A => ZIO[R1, E1, A]): ZIO[R1, E1, Unit]

Atomically modifies the RefM with the specified function.

Atomically modifies the RefM with the specified function.

def updateAndGet[R1 <: R, E1 >: E](f: A => ZIO[R1, E1, A]): ZIO[R1, E1, A]

Atomically modifies the RefM with the specified function, returning the value immediately after modification.

Atomically modifies the RefM with the specified function, returning the value immediately after modification.

def updateSome[R1 <: R, E1 >: E](pf: PartialFunction[A, ZIO[R1, E1, A]]): ZIO[R1, E1, Unit]

Atomically modifies the RefM with the specified partial function. If the function is undefined on the current value it doesn't change it.

Atomically modifies the RefM with the specified partial function. If the function is undefined on the current value it doesn't change it.

def updateSomeAndGet[R1 <: R, E1 >: E](pf: PartialFunction[A, ZIO[R1, E1, A]]): ZIO[R1, E1, A]

Atomically modifies the RefM with the specified partial function. If the function is undefined on the current value it returns the old value without changing it.

Atomically modifies the RefM with the specified partial function. If the function is undefined on the current value it returns the old value without changing it.