Hi there! Are you looking for the official Deno documentation? Try docs.deno.com for all your Deno learning needs.

Composable

import type { Composable } from "https://github.gh-proxy.cn/raw.githubusercontent.com/baetheus/fun/main/composable.ts";

Composable is a structure that allows the composition of two algebraic structures that have in and out fields. It also allows for the initialization of algebraic structures, in effect identity. In other functional libraries this is called a Category.

interface Composable <U extends Kind> extends Hold<U> {
readonly compose: <A = unknown, E = unknown, I = never, J = never, K = never>(second: $<U, [I, J, K], [A], [E]>) => <B = never, C = never, D = unknown>(first: $<U, [A, B, C], [D], [E]>) => $<U, [I, J | B, K | C], [D], [E]>;
readonly id: <A = never, B = never, C = never>() => $<U, [A, B, C], [A], [A]>;
}

§Type Parameters

§
U extends Kind
[src]

§Extends

§Properties

§
readonly compose: <A = unknown, E = unknown, I = never, J = never, K = never>(second: $<U, [I, J, K], [A], [E]>) => <B = never, C = never, D = unknown>(first: $<U, [A, B, C], [D], [E]>) => $<U, [I, J | B, K | C], [D], [E]>
[src]
§
readonly id: <A = never, B = never, C = never>() => $<U, [A, B, C], [A], [A]>
[src]