Hyperlinkv0.8.0-beta.28

TxHashMap

TxHashMap.entriesconsteffect/TxHashMap.ts:937
<K, V>(self: TxHashMap<K, V>): Effect.Effect<Array<readonly [K, V]>>

Returns an array of all key-value pairs in the TxHashMap.

Example (Reading entries)

import { Effect, TxHashMap } from "effect"

const program = Effect.gen(function*() {
  const config = yield* TxHashMap.make(
    ["host", "localhost"],
    ["port", "3000"],
    ["ssl", "false"]
  )

  const allEntries = yield* TxHashMap.entries(config)
  const sortedEntries = allEntries.toSorted(([left], [right]) => left.localeCompare(right))
  console.log(sortedEntries)
  // [["host", "localhost"], ["port", "3000"], ["ssl", "false"]]

  // Process configuration entries
  for (const [key, value] of sortedEntries) {
    console.log(`${key}=${value}`)
  }
  // host=localhost
  // port=3000
  // ssl=false
})
combinators
export const entries = <K, V>(
  self: TxHashMap<K, V>
): Effect.Effect<Array<readonly [K, V]>> =>
  Effect.gen(function*() {
    const map = yield* TxRef.get(self.ref)
    return HashMap.toEntries(map)
  })
Referenced by 2 symbols