Hyperlinkv0.8.0-beta.28

TxQueue

TxQueue.isFullconsteffect/TxQueue.ts:1105
(self: TxQueueState): Effect.Effect<boolean>

Checks whether the queue is at capacity.

Example (Checking whether a queue is full)

import { Effect, TxQueue } from "effect"

const program = Effect.gen(function*() {
  const queue = yield* TxQueue.bounded<number>(2)

  const full = yield* TxQueue.isFull(queue)
  console.log(full) // false

  yield* TxQueue.offerAll(queue, [1, 2])
  const nowFull = yield* TxQueue.isFull(queue)
  console.log(nowFull) // true
})
combinators
export const isFull = (self: TxQueueState): Effect.Effect<boolean> =>
  self.capacity === Number.POSITIVE_INFINITY
    ? Effect.succeed(false)
    : Effect.map(size(self), (currentSize) => currentSize >= self.capacity)
Referenced by 1 symbols