variable / @typed/fx/RefArray

rotate

Rotate the values of a RefArray by n places. Helpful for things like carousels.

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

Import

import { rotate } from "@typed/fx/RefArray";

Signatures

export declare const rotate: {
    (n: number): <A, E, R>(ref: RefArray<A, E, R>) => Effect.Effect<ReadonlyArray<A>, E, R>;
    <A, E, R>(ref: RefArray<A, E, R>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>;
};

Why

Derives the reordered array through its Effect collection operation while retaining RefSubject equality and version tracking.

Ownership and lifetime

Running rotate performs one serialized array transition and resolves with its committed value. It acquires no resource; failures and services remain those of the source ref.

Other public imports

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

Source