♻️ Share the Matchable universe between both matchers
This commit is contained in:
1 parent
d88a4eeb45
commit
6228b4922d
4 files changed
+24
-17
No files matched your search
@@ -8,6 +8,12 @@ import type { ValueOf } from "type-fest";
|
||||
// A handler: one universe member in, one return value out.
|
||||
export type UnaryFn<T, R> = (shape: T) => R;
|
||||
|
||||
// The primitive universe a matcher can discriminate. The primitive-union matcher
|
||||
// uses it directly; the tagged-union matcher uses it as the set of allowed
|
||||
// discriminant (`Tag`) values. `boolean` is admitted as the pair `true | false`;
|
||||
// see README § Caveats for the unsupported members.
|
||||
export type Matchable = string | number | boolean | null | undefined;
|
||||
|
||||
// `boolean`, `null` and `undefined` cannot be property keys, so a mapped type
|
||||
// over a universe that includes one keys each such member by its
|
||||
// stringification. `PatternParam` inverts that projection, so a handler callback
|
||||
|
||||
Reference in new issue
Block a user