variable / @typed/fx/RefIterable

filterMap

Filter and map values in place.

Package version
2.0.0-beta.13
Category
State updates
Since
1.18.0

Import

import { filterMap } from "@typed/fx/RefIterable";

Signatures

export declare const filterMap: {
    <A>(f: (a: A, index: number) => Option.Option<A>): <E, R>(ref: RefIterable<A, E, R>) => Effect.Effect<Iterable<A>, E, R>;
    <A, E, R>(ref: RefIterable<A, E, R>, f: (a: A, index: number) => Option.Option<A>): Effect.Effect<Iterable<A>, E, R>;
};

Why

Applies filterMap to the committed Iterable through RefSubject.update and publishes one coherent replacement; this is a mutation, not a read-only Computed projection.

Ownership and lifetime

The Effect starts when run, participates in the source ref’s serialized update boundary, and acquires no resource. It returns the committed Iterable and retains the ref’s E and R channels.

Other public imports

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

Source