UNPKG

@the-little-books/little

Version:

10 lines (9 loc) 458 B
import * as Pattern from "../pattern"; import * as Node from "../node"; export declare type Cases<A> = Array<[Pattern.Pattern, (result: Pattern.MatchResult) => A] | ["default", A] | ["default-gen", () => A] | ((data: Node.Node) => A)>; export declare function cases<A>(node: Node.Node, cases: Cases<A>): A; export declare class PatternMismatch<A> extends Error { node: Node.Node; cases: Cases<A>; constructor(node: Node.Node, cases: Cases<A>); }