UNPKG

perlica

Version:

<h1 align="center">Perlica</h1>

49 lines (48 loc) 2.93 kB
import { type Option } from "../Option"; import { type Result } from "../Result"; import type { Task } from "./Task"; /** * |-----------------------|-------------------| * | Rust methods | Perlica | * |-----------------------|-------------------| * | and | and | * | and_then | flatMap | * | expect | expect | * | filter | filter | * | flatten | flatten | * | inspect | inspect | * | map | map | * | map_or | mapOr | * | map_or_else | mapOrElse | * | ok_or | okOr | * | ok_or_else | okOrElse | * | or | or | * | or_else | orElse | * | unwrap | unwrap | * | unwrap_or | unwrapOr | * | unwrap_or_else | unwrapOrElse | * | | toResult | * | | of | * | | safeRun | * |-----------------------|-------------------| */ export declare const of: <T>(value: T) => Task<T>; export declare const map: <A, B>(f: (a: A) => B) => (task: Task<A>) => Task<B>; export declare const flatMap: <A, B>(f: (a: A) => Task<B>) => (task: Task<A>) => Task<B>; export declare const flatten: <T>(task: Task<Task<T>>) => Task<T>; export declare const okOr: <E>(error: E) => <T>(task: Task<T>) => Task<Result<T, E>>; export declare const okOrElse: <E>(f: () => E) => <T>(task: Task<T>) => Task<Result<T, E>>; export declare const and: <B>(that: Task<B>) => <A>(task: Task<A>) => Task<B>; export declare const expect: (msg: string) => <T>(task: Task<T>) => Task<T>; export declare const filter: <T>(f: (v: T) => boolean) => (task: Task<T>) => Task<Option<T>>; export declare const inspect: <T>(f: (v: T) => void) => (task: Task<T>) => Task<T>; export declare const mapOr: <A, B>(def: B, f: (a: A) => B) => (task: Task<A>) => Task<B>; export declare const mapOrElse: <A, B>(d: () => B, f: (a: A) => B) => (task: Task<A>) => Task<B>; export declare const or: <A>(that: Task<A>) => (task: Task<A>) => Task<A>; export declare const orElse: <A>(f: () => Task<A>) => (task: Task<A>) => Task<A>; export declare const unwrap: <T>(task: Task<T>) => Task<T>; export declare const unwrapOr: <A>(def: A) => (task: Task<A>) => Task<A>; export declare const unwrapOrElse: <A>(f: () => A) => (task: Task<A>) => Task<A>; export declare const toResult: <T>(task: Task<T>) => Task<Result<T, unknown>>; export declare const safeRun: <T>(task: Task<T>) => Promise<Result<T, unknown>>; export declare const bind: <T extends Task<any>, R>(fn: () => Generator<T, R>) => Task<R>;