effect.Data

Types

ChildrenAreTagged type
TaggedEnum type
Transforms a record of variant definitions into a discriminated union type.
UntaggedChildren type

Shared

Class new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ readonly [P in keyof A]: A[P]; }>) => …
Provides a base class for immutable data types.
Error new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ readonly [P in keyof A]: A[P]; }>) => …
Provides a base class for yieldable errors.
TaggedClass <Tag extends string>(tag: Tag) => new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ read…
Provides a base class for immutable data types with a `_tag` discriminator.
TaggedError <Tag extends string>(tag: Tag) => new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ read…
Creates a tagged error class with a `_tag` discriminator.
taggedEnum { <Z extends TaggedEnum.WithGenerics<1 | 2 | 3 | 4>>(): GenericConstructor<Z>; <A extends { readonl…
Creates constructors and matchers for a `TaggedEnum` type.
taggedMatch { <A extends { readonly _tag: string; }, Cases extends { readonly [K in A["_tag"]]: (args: Extract<…