Hyperlinkv0.8.0-beta.28

Ref

Ref.setconsteffect/Ref.ts:248
<A>(value: A): (self: Ref<A>) => Effect.Effect<void>
<A>(self: Ref<A>, value: A): Effect.Effect<void>

Sets the value of the Ref to the specified value.

When to use

Use to replace the current Ref value with a known value.

Example (Setting a value)

import { Effect, Ref } from "effect"

const program = Effect.gen(function*() {
  const ref = yield* Ref.make(0)
  yield* Ref.set(ref, 42)
  const value = yield* Ref.get(ref)
  console.log(value) // 42
})

// Using multiple operations
const program2 = Effect.gen(function*() {
  const ref = yield* Ref.make(0)
  yield* Ref.set(ref, 100)
  const value = yield* Ref.get(ref)
  console.log(value) // 100
})
Source effect/Ref.ts:2484 lines
export const set = dual<
  <A>(value: A) => (self: Ref<A>) => Effect.Effect<void>,
  <A>(self: Ref<A>, value: A) => Effect.Effect<void>
>(2, <A>(self: Ref<A>, value: A) => Effect.sync(() => MutableRef.set(self.ref, value)))
Referenced by 8 symbols