Skip to main content
Module

x/ts_matches/src/parsers/array-parser.ts

Being able to pattern match in typescript
Go to Latest
File
import { IParser, OnParse } from "./interfaces.ts";import { isObject } from "./utils.ts";
export class ArrayParser implements IParser<unknown, Array<unknown>> { constructor( readonly description = { name: "Array", children: [], extras: [], } as const, ) {} parse<C, D>( a: unknown, onParse: OnParse<unknown, Array<unknown>, C, D>, ): C | D { if (Array.isArray(a)) return onParse.parsed(a);
return onParse.invalid({ value: a, keys: [], parser: this, }); }}