Skip to content
Effect Days 2026 Get your ticket

Traversable

4 exports Added in v0.24.0 Source

Other

sequence

Added in v0.24.0 Source

Returns a default sequence implementation.

Signature

declare function sequence<T extends TypeLambda>(T: Traversable<T>): <F extends TypeLambda>(F: Applicative<F>) => <TR, TO, TE, R, O, E, A>(self: Kind<T, TR, TO, TE, Kind<F, R, O, E, A>>) => Kind<F, R, O, E, Kind<T, TR, TO, TE, A>>

Returns a default binary traverse composition.

Signature

declare function traverseComposition<T extends TypeLambda, G extends TypeLambda>(T: Traversable<T>, G: Traversable<G>): <F extends TypeLambda>(F: Applicative<F>) => <TR, TO, TE, GR, GO, GE, A, R, O, E, B>(self: Kind<T, TR, TO, TE, Kind<G, GR, GO, GE, A>>, f: (a: A) => Kind<F, R, O, E, B>) => Kind<F, R, O, E, Kind<T, TR, TO, TE, Kind<G, GR, GO, GE, B>>>

traverseTap

Added in v0.24.0 Source

Given a function which returns a F effect, thread this effect through the running of this function on all the values in T, returning an T<A> in a F context, ignoring the values returned by the provided function.

Signature

declare function traverseTap<T extends TypeLambda>(T: Traversable<T>): <F extends TypeLambda>(F: Applicative<F>) => {
<A, R, O, E, B>(f: (a: A) => Kind<F, R, O, E, B>): <TR, TO, TE>(self: Kind<T, TR, TO, TE, A>) => Kind<F, R, O, E, Kind<T, TR, TO, TE, A>>;
<TR, TO, TE, A, R, O, E, B>(self: Kind<T, TR, TO, TE, A>, f: (a: A) => Kind<F, R, O, E, B>): Kind<F, R, O, E, Kind<T, TR, TO, TE, A>>;
}

Type Class

Traversable interface

Added in v0.24.0 Source

Signature

interface Traversable<T extends TypeLambda> extends TypeClass<T> {
readonly traverse: <F extends TypeLambda>(F: Applicative<F>) => {
<A, R, O, E, B>(f: (a: A) => Kind<F, R, O, E, B>): <TR, TO, TE>(self: Kind<T, TR, TO, TE, A>) => Kind<F, R, O, E, Kind<T, TR, TO, TE, B>>;
<TR, TO, TE, A, R, O, E, B>(self: Kind<T, TR, TO, TE, A>, f: (a: A) => Kind<F, R, O, E, B>): Kind<F, R, O, E, Kind<T, TR, TO, TE, B>>;
};
}