Package: effect
Module: SubscriptionRef
Updates the value of the SubscriptionRef with the result of applying an
effectful function and returns the new value, notifying subscribers of the
change.
Example (Updating with an effect and reading the new value)
import { Effect, SubscriptionRef } from "effect"
const program = Effect.gen(function*() {
const ref = yield* SubscriptionRef.make(10)
const newValue = yield* SubscriptionRef.updateAndGetEffect(
ref,
(n) => Effect.succeed(n + 5)
)
console.log("New value:", newValue)
})
Signature
declare const updateAndGetEffect: { <A, E, R>(update: (a: A) => Effect.Effect<A, E, R>): (self: SubscriptionRef<A>) => Effect.Effect<A, E, R>; <A, E, R>(self: SubscriptionRef<A>, update: (a: A) => Effect.Effect<A, E, R>): Effect.Effect<A, E, R>; }
Since v2.0.0