interface / @typed/fx

Sink.Bounds

Zero-based skip count and maximum take count used by slice.

Package version
2.0.0-beta.13
Category
Operator options
Since
1.0.0
Member of
Sink

Import

import { Sink } from "@typed/fx";

Access Sink.Bounds through the imported Sink export. Its declaration below describes the member.

This public exposure is a re-export. Its import path is supported; declaration documentation is shared with the other public exposures below.

Signatures

export interface Bounds {
    readonly skip: number;
    readonly take: number;
}

Why

A named bound makes the consumer’s two independent limits explicit.

Ownership and lifetime

Bounds are immutable values and acquire no resources. Each slice execution copies their counts into private mutable counters.

Property: skip

Number of initial successful values to discard.

Property: skip: Why

A separate skip count allows bounded windows to begin after an ignored prefix.

Property: skip: Ownership and lifetime

This immutable number acquires no resources; slice copies it into invocation-local state.

Property: take

Maximum number of later successful values to forward before early exit.

Property: take: Why

A take count bounds downstream work and gives slice its normal completion point.

Property: take: Ownership and lifetime

This immutable number acquires no resources; slice copies it into invocation-local state.

Examples

import type { Bounds } from "@typed/fx/Sink"
const secondAndThird: Bounds = { skip: 1, take: 2 }

Other public imports

These import paths expose the same declaration. Each page retains its own public name and signature.

Source