effect-io-ai

Package: effect
Module: SynchronizedRef

SynchronizedRef.getAndUpdateEffect

Runs an effectful update atomically while holding the ref’s semaphore, sets the new value if the effect succeeds, and returns the previous value.

When to use

Use when you need an effectful SynchronizedRef state transition to return the previous stored value.

See

Signature

declare const getAndUpdateEffect: { <A, R, E>(f: (a: A) => Effect.Effect<A, E, R>): (self: SynchronizedRef<A>) => Effect.Effect<A, E, R>; <A, R, E>(self: SynchronizedRef<A>, f: (a: A) => Effect.Effect<A, E, R>): Effect.Effect<A, E, R>; }

Source

Since v2.0.0