Hyperlinkv0.8.0-beta.28

TxHashSet

TxHashSet.emptyconsteffect/TxHashSet.ts:176
<V = never>(): Effect.Effect<TxHashSet<V>>

Creates an empty TxHashSet.

Example (Creating an empty transactional hash set)

import { Effect, TxHashSet } from "effect"

const program = Effect.gen(function*() {
  const txSet = yield* TxHashSet.empty<string>()

  console.log(yield* TxHashSet.size(txSet)) // 0
  console.log(yield* TxHashSet.isEmpty(txSet)) // true

  // Add some values
  yield* TxHashSet.add(txSet, "hello")
  yield* TxHashSet.add(txSet, "world")
  console.log(yield* TxHashSet.size(txSet)) // 2
})
constructors
export const empty = <V = never>(): Effect.Effect<TxHashSet<V>> =>
  Effect.gen(function*() {
    const ref = yield* TxRef.make(HashSet.empty<V>())
    return makeTxHashSet(ref)
  })