blah blah blah

This commit is contained in:
Rowan 2025-10-21 19:30:16 -04:00
parent 7e8bdd9ef3
commit 581c7fcec3
6 changed files with 221 additions and 110 deletions

View file

@ -24,6 +24,7 @@ export class Option {
}
/**
* @template T
* @param {(value: T) => Option<T>} fn
* @param {Option<T>} self
* @returns {Option<T>}
@ -33,7 +34,8 @@ export class Option {
}
/**
* @param {(value: T) => bool} fn
* @template T
* @param {(value: T) => boolean} predicate
* @param {Option<T>} self
* @returns {Option<T>}
*/
@ -42,7 +44,7 @@ export class Option {
}
/**
* @template V
* @template T,V
* @param {(value: T) => V} fn
* @param {Option<T>} self
* @returns {Option<V>}
@ -52,6 +54,7 @@ export class Option {
}
/**
* @template T
* @param {Option<T>} other
* @param {Option<T>} self
* @returns {Option<T>}
@ -61,6 +64,7 @@ export class Option {
}
/**
* @template T
* @param {Option<T>} other
* @param {Option<T>} self
* @returns {Option<T>}
@ -70,6 +74,7 @@ export class Option {
}
/**
* @template T
* @param {Option<T>} other
* @param {Option<T>} self
* @returns {Option<T>}
@ -79,6 +84,7 @@ export class Option {
}
/**
* @template T
* @returns {this is Some<T>}
*/
isSome() {
@ -135,7 +141,7 @@ export class Some extends Option {
}
/**
* @param {Option<T>} other
* @param {Option<T>} _other
* @returns {Option<T>}
*/
or(_other) {
@ -143,7 +149,7 @@ export class Some extends Option {
}
/**
* @param {() => Option<T>} other
* @param {() => Option<T>} _fn
* @returns {Option<T>}
*/
orElse(_fn) {
@ -152,7 +158,7 @@ export class Some extends Option {
/**
* @template T
* @param {(value: T) => bool} predicate
* @param {(value: T) => boolean} predicate
* @returns {Option<T>}
*/
filter(predicate) {
@ -161,7 +167,7 @@ export class Some extends Option {
/**
* @param {Option<T>} other
* @returns {bool}
* @returns {boolean}
*/
equals(other) {
return other.isSome() && this.#value === other.#value
@ -169,7 +175,7 @@ export class Some extends Option {
/**
* @param {Option<T>} other
* @returns {bool}
* @returns {boolean}
*/
lte(other) {
return other.isSome() && this.#value <= other.#value
@ -310,7 +316,7 @@ class _None extends Option {
/**
* @template T
* @template {Option<T>} R
* @param {(value: T) => R} fn
* @param {(value: T) => R} _fn
* @returns {R}
*/
andThen(_fn) {
@ -328,7 +334,7 @@ class _None extends Option {
/**
* @template T
* @param {() => Option<T>} other
* @param {() => Option<T>} fn
* @returns {Option<T>}
*/
orElse(fn) {
@ -337,7 +343,7 @@ class _None extends Option {
/**
* @template T
* @param {(value: T) => bool} _predicate
* @param {(value: T) => boolean} _predicate
* @returns {Option<T>}
*/
filter(_predicate) {
@ -347,7 +353,7 @@ class _None extends Option {
/**
* @template T
* @param {Option<T>} other
* @returns {bool}
* @returns {boolean}
*/
equals(other) {
return other.isNone()
@ -356,7 +362,7 @@ class _None extends Option {
/**
* @template T
* @param {Option<T>} _other
* @returns {bool}
* @returns {boolean}
*/
lte(_other) {
return false
@ -382,9 +388,9 @@ class _None extends Option {
}
/**
* @template V
* @template T, V
* @template {Option<T>} R
* @param {(value: T) => V} fn
* @param {(value: T) => V} _fn
* @returns {R}
*/
map(_fn) {
@ -392,7 +398,7 @@ class _None extends Option {
}
/**
* @template V
* @template T, V
* @param {V} defaultValue
* @param {(value: T) => V} _fn
* @returns {V}
@ -402,7 +408,7 @@ class _None extends Option {
}
/**
* @template V
* @template T, V
* @param {() => V} defaultFn
* @param {(value: T) => V} _fn
* @returns {V}
@ -451,6 +457,7 @@ class _None extends Option {
}
/**
* @template T
* @param {T} value
* @returns {T}
*/

View file

@ -134,7 +134,7 @@ export class Ok extends Result {
}
/**
* @param {Result<T, E>} other
* @param {Result<T, E>} _other
* @returns {Result<T, E>}
*/
or(_other) {
@ -143,7 +143,7 @@ export class Ok extends Result {
/**
* @template F
* @param {(error: E) => Result<T, F>} other
* @param {(error: E) => Result<T, F>} _fn
* @returns {Result<T, F>}
*/
orElse(_fn) {
@ -152,7 +152,7 @@ export class Ok extends Result {
/**
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
equals(other) {
return other.isOk() && this.#value === other.#value
@ -160,7 +160,7 @@ export class Ok extends Result {
/**
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
lte(other) {
return other.isOk() && this.#value <= other.#value
@ -254,7 +254,7 @@ export class Err extends Result {
/** @type E */
#error
/** @param {E} value */
/** @param {E} error */
constructor(error) {
super()
this.#error = error
@ -275,9 +275,8 @@ export class Err extends Result {
}
/**
* @template T
* @template {Result<T, E>} R
* @param {(value: T) => R} fn
* @param {(value: T) => R} _fn
* @returns {R}
*/
andThen(_fn) {
@ -285,7 +284,7 @@ export class Err extends Result {
}
/**
* @template V, E
* @template V
* @template {Result<V, E>} R
* @param {(value: T) => V} _fn
* @returns {R}
@ -334,7 +333,7 @@ export class Err extends Result {
/**
* @template T, F
* @param {(error: E) => Result<T, F>} other
* @param {(error: E) => Result<T, F>} fn
* @returns {Result<T, F>}
*/
orElse(fn) {
@ -344,7 +343,7 @@ export class Err extends Result {
/**
* @template T
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
equals(other) {
return other.isErr() && this.#error === other.#error
@ -353,7 +352,7 @@ export class Err extends Result {
/**
* @template T
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
lte(other) {
return other.isErr() && this.#error <= other.#error
@ -370,7 +369,6 @@ export class Err extends Result {
}
/**
* @template T
* @template {Result<T, E>} R
* @returns {R}
*/

220
types/option.d.ts vendored
View file

@ -11,55 +11,51 @@ export class Option<T> {
/** @returns {None} */
static none(): _None;
/**
* @template T
* @param {(value: T) => Option<T>} fn
* @param {Option<T>} self
* @returns {Option<T>}
*/
static chain(fn: (value: T) => Option<T>, self: Option<T>): Option<T>;
static chain<T_1>(fn: (value: T_1) => Option<T_1>, self: Option<T_1>): Option<T_1>;
/**
* @param {(value: T) => bool} fn
* @template T
* @param {(value: T) => boolean} predicate
* @param {Option<T>} self
* @returns {Option<T>}
*/
static filter(predicate: any, self: Option<T>): Option<T>;
static filter<T_1>(predicate: (value: T_1) => boolean, self: Option<T_1>): Option<T_1>;
/**
* @template V
* @template T,V
* @param {(value: T) => V} fn
* @param {Option<T>} self
* @returns {Option<V>}
*/
static map<V>(fn: (value: T) => V, self: Option<T>): Option<V>;
static map<T_1, V>(fn: (value: T_1) => V, self: Option<T_1>): Option<V>;
/**
* @template T
* @param {Option<T>} other
* @param {Option<T>} self
* @returns {Option<T>}
*/
static alt(other: Option<T>, self: Option<T>): Option<T>;
static alt<T_1>(other: Option<T_1>, self: Option<T_1>): Option<T_1>;
/**
* @template T
* @param {Option<T>} other
* @param {Option<T>} self
* @returns {Option<T>}
*/
static equals(other: Option<T>, self: Option<T>): Option<T>;
static equals<T_1>(other: Option<T_1>, self: Option<T_1>): Option<T_1>;
/**
* @template T
* @param {Option<T>} other
* @param {Option<T>} self
* @returns {Option<T>}
*/
static lte(other: Option<T>, self: Option<T>): Option<T>;
static lte<T_1>(other: Option<T_1>, self: Option<T_1>): Option<T_1>;
/**
* @returns {this is Some<T>}
* @returns {this is Some}
*/
isSome(): this is Some<T>;
/**
* @returns {this is None<T>}
*/
isNone(): this is _None;
}
/** @template T */
export class Some<T> extends Option<any> {
/** @param {T} value */
constructor(value: T);
isSome(): this is Some<any>;
/**
* @param {(value: T) => Option<T>} fn
* @returns {Option<T>}
@ -71,31 +67,31 @@ export class Some<T> extends Option<any> {
*/
and(other: Option<T>): Option<T>;
/**
* @param {Option<T>} other
* @param {Option<T>} _other
* @returns {Option<T>}
*/
or(_other: any): Option<T>;
or(_other: Option<T>): Option<T>;
/**
* @param {() => Option<T>} other
* @param {() => Option<T>} _fn
* @returns {Option<T>}
*/
orElse(_fn: any): Option<T>;
orElse(_fn: () => Option<T>): Option<T>;
/**
* @template T
* @param {(value: T) => bool} predicate
* @param {(value: T) => boolean} predicate
* @returns {Option<T>}
*/
filter<T_1>(predicate: (value: T_1) => bool): Option<T_1>;
filter<T_1>(predicate: (value: T_1) => boolean): Option<T_1>;
/**
* @param {Option<T>} other
* @returns {bool}
* @returns {boolean}
*/
equals(other: Option<T>): bool;
equals(other: Option<T>): boolean;
/**
* @param {Option<T>} other
* @returns {bool}
* @returns {boolean}
*/
lte(other: Option<T>): bool;
lte(other: Option<T>): boolean;
/**
* @template [V=T]
* @param {(acc: V, value: T) => V} reducer
@ -135,11 +131,120 @@ export class Some<T> extends Option<any> {
okOr<E>(_err: E): Result<T, E>;
/**
* @template E
* @template {() => E} F
* @param {F} _err
* @param {() => E} _err
* @returns {Result<T, E>}
*/
okOrElse<E, F extends () => E>(_err: F): Result<T, E>;
okOrElse<E>(_err: () => E): Result<T, E>;
/**
* @param {(value: T) => void} fn
* @returns {this}
*/
inspect(fn: (value: T) => void): this;
/**
* @returns {T}
* @throws {UnwrapError}
*/
unwrap(): T;
/**
* @param {T} _value
* @returns {T}
*/
unwrapOr(_value: T): T;
/**
* @param {() => T} _fn
* @returns {T}
*/
unwrapOrElse(_fn: () => T): T;
#private;
}
/** @template T */
export class Some<T> extends Option<any> {
/** @param {T} value */
constructor(value: T);
/**
* @returns {this is Some}
*/
isSome(): this is Some<any>;
/**
* @param {(value: T) => Option<T>} fn
* @returns {Option<T>}
*/
andThen(fn: (value: T) => Option<T>): Option<T>;
/**
* @param {Option<T>} other
* @returns {Option<T>}
*/
and(other: Option<T>): Option<T>;
/**
* @param {Option<T>} _other
* @returns {Option<T>}
*/
or(_other: Option<T>): Option<T>;
/**
* @param {() => Option<T>} _fn
* @returns {Option<T>}
*/
orElse(_fn: () => Option<T>): Option<T>;
/**
* @template T
* @param {(value: T) => boolean} predicate
* @returns {Option<T>}
*/
filter<T_1>(predicate: (value: T_1) => boolean): Option<T_1>;
/**
* @param {Option<T>} other
* @returns {boolean}
*/
equals(other: Option<T>): boolean;
/**
* @param {Option<T>} other
* @returns {boolean}
*/
lte(other: Option<T>): boolean;
/**
* @template [V=T]
* @param {(acc: V, value: T) => V} reducer
* @param {V} init
* @returns {V}
*/
reduce<V = T>(reducer: (acc: V, value: T) => V, init: V): V;
/**
* @returns {Option<T>}
*/
flatten(): Option<T>;
/**
* @template V
* @param {(value: T) => V} fn
* @returns {Option<V>}
*/
map<V>(fn: (value: T) => V): Option<V>;
/**
* @template V
* @param {V} _default
* @param {(value: T) => V} fn
* @returns {V}
*/
mapOr<V>(_default: V, fn: (value: T) => V): V;
/**
* @template V
* @param {() => V} _defaultFn
* @param {(value: T) => V} fn
* @returns {V}
*/
mapOrElse<V>(_defaultFn: () => V, fn: (value: T) => V): V;
/**
* @template E
* @param {E} _err
* @returns {Result<T, E>}
*/
okOr<E>(_err: E): Result<T, E>;
/**
* @template E
* @param {() => E} _err
* @returns {Result<T, E>}
*/
okOrElse<E>(_err: () => E): Result<T, E>;
/**
* @param {(value: T) => void} fn
* @returns {this}
@ -165,6 +270,10 @@ export class Some<T> extends Option<any> {
export const None: _None;
declare class _None extends Option<any> {
constructor();
/**
* @returns {this is Some}
*/
isSome(): this is Some<any>;
/**
* @template T
* @param {Option<T>} _other
@ -174,10 +283,10 @@ declare class _None extends Option<any> {
/**
* @template T
* @template {Option<T>} R
* @param {(value: T) => R} fn
* @param {(value: T) => R} _fn
* @returns {R}
*/
andThen<T, R extends Option<T>>(_fn: any): R;
andThen<T, R extends Option<T>>(_fn: (value: T) => R): R;
/**
* @template T
* @param {Option<T>} other
@ -186,28 +295,28 @@ declare class _None extends Option<any> {
or<T>(other: Option<T>): Option<T>;
/**
* @template T
* @param {() => Option<T>} other
* @param {() => Option<T>} fn
* @returns {Option<T>}
*/
orElse<T>(fn: any): Option<T>;
orElse<T>(fn: () => Option<T>): Option<T>;
/**
* @template T
* @param {(value: T) => bool} _predicate
* @param {(value: T) => boolean} _predicate
* @returns {Option<T>}
*/
filter<T>(_predicate: (value: T) => bool): Option<T>;
filter<T>(_predicate: (value: T) => boolean): Option<T>;
/**
* @template T
* @param {Option<T>} other
* @returns {bool}
* @returns {boolean}
*/
equals<T>(other: Option<T>): bool;
equals<T>(other: Option<T>): boolean;
/**
* @template T
* @param {Option<T>} _other
* @returns {bool}
* @returns {boolean}
*/
lte<T>(_other: Option<T>): bool;
lte<T>(_other: Option<T>): boolean;
/**
* @template T, [V=T]
* @param {(acc: V, value: T) => V} _reducer
@ -222,26 +331,26 @@ declare class _None extends Option<any> {
*/
flatten<T, R extends Option<T>>(): R;
/**
* @template V
* @template T, V
* @template {Option<T>} R
* @param {(value: T) => V} fn
* @param {(value: T) => V} _fn
* @returns {R}
*/
map<V, R extends Option<T>>(_fn: any): R;
map<T, V, R extends Option<T>>(_fn: (value: T) => V): R;
/**
* @template V
* @template T, V
* @param {V} defaultValue
* @param {(value: T) => V} _fn
* @returns {V}
*/
mapOr<V>(defaultValue: V, _fn: (value: T) => V): V;
mapOr<T, V>(defaultValue: V, _fn: (value: T) => V): V;
/**
* @template V
* @template T, V
* @param {() => V} defaultFn
* @param {(value: T) => V} _fn
* @returns {V}
*/
mapOrElse<V>(defaultFn: () => V, _fn: (value: T) => V): V;
mapOrElse<T, V>(defaultFn: () => V, _fn: (value: T) => V): V;
/**
* @template T, E
* @template {Result<T, E>} R
@ -251,12 +360,10 @@ declare class _None extends Option<any> {
okOr<T, E, R extends Result<T, E>>(err: E): R;
/**
* @template T, E
* @template {Result<T, E>} R
* @template {() => E} F
* @param {F} err
* @param {() => E} err
* @returns {R}
*/
okOrElse<T, E, R extends Result<T, E>, F extends () => E>(err: F): R;
okOrElse<T, E>(err: () => E): Result<T, E>;
/**
* @template T
* @param {(value: T) => void} _fn
@ -270,10 +377,11 @@ declare class _None extends Option<any> {
*/
unwrap<T>(): T;
/**
* @template T
* @param {T} value
* @returns {T}
*/
unwrapOr(value: T): T;
unwrapOr<T>(value: T): T;
/**
* @template T
* @param {() => T} fn
@ -282,5 +390,5 @@ declare class _None extends Option<any> {
unwrapOrElse<T>(fn: () => T): T;
}
import { Result } from './result.js';
export {};
//# sourceMappingURL=option.d.ts.map
export { };
//# sourceMappingURL=option.d.ts.map

View file

@ -1 +1 @@
{"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../src/option.js"],"names":[],"mappings":"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"}
{"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../src/option.js"],"names":[],"mappings":"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"}

46
types/result.d.ts vendored
View file

@ -11,7 +11,7 @@ export class Result<T, E> {
* @template E
* @param {E} error
*/
static err<E_1>(error: E_1): Err<any, any>;
static err<E_1>(error: E_1): Err<any, E_1>;
static chain(fn: any, self: any): any;
static map(fn: any, self: any): any;
static alt(other: any, self: any): any;
@ -64,26 +64,26 @@ export class Ok<T, E> extends Result<any, any> {
*/
and(other: Result<T, E>): Result<T, E>;
/**
* @param {Result<T, E>} other
* @param {Result<T, E>} _other
* @returns {Result<T, E>}
*/
or(_other: any): Result<T, E>;
or(_other: Result<T, E>): Result<T, E>;
/**
* @template F
* @param {(error: E) => Result<T, F>} other
* @param {(error: E) => Result<T, F>} _fn
* @returns {Result<T, F>}
*/
orElse<F>(_fn: any): Result<T, F>;
orElse<F>(_fn: (error: E) => Result<T, F>): Result<T, F>;
/**
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
equals(other: Result<T, E>): bool;
equals(other: Result<T, E>): boolean;
/**
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
lte(other: Result<T, E>): bool;
lte(other: Result<T, E>): boolean;
/**
* @template [V=T]
* @param {(acc: V, value: T) => V} reducer
@ -133,8 +133,8 @@ export class Ok<T, E> extends Result<any, any> {
}
/** @template T, E */
export class Err<T, E> extends Result<any, any> {
/** @param {E} value */
constructor(error: any);
/** @param {E} error */
constructor(error: E);
/**
* @returns {this is Ok<T, E>}
*/
@ -144,19 +144,18 @@ export class Err<T, E> extends Result<any, any> {
*/
isErr(): this is Err<T, E>;
/**
* @template T
* @template {Result<T, E>} R
* @param {(value: T) => R} fn
* @param {(value: T) => R} _fn
* @returns {R}
*/
andThen<T_1, R extends Result<T, E>>(_fn: any): R;
andThen<R extends Result<T, E>>(_fn: (value: T) => R): R;
/**
* @template V, E
* @template V
* @template {Result<V, E>} R
* @param {(value: T) => V} _fn
* @returns {R}
*/
map<V, E_1, R extends Result<V, E>>(_fn: (value: T) => V): R;
map<V, R extends Result<V, E>>(_fn: (value: T) => V): R;
/**
* @template V
* @param {V} defaultValue
@ -185,22 +184,22 @@ export class Err<T, E> extends Result<any, any> {
or<T_1>(other: Result<T_1, E>): Result<T_1, E>;
/**
* @template T, F
* @param {(error: E) => Result<T, F>} other
* @param {(error: E) => Result<T, F>} fn
* @returns {Result<T, F>}
*/
orElse<T_1, F>(fn: any): Result<T_1, F>;
orElse<T_1, F>(fn: (error: E) => Result<T_1, F>): Result<T_1, F>;
/**
* @template T
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
equals<T_1>(other: Result<T_1, E>): bool;
equals<T_1>(other: Result<T_1, E>): boolean;
/**
* @template T
* @param {Result<T, E>} other
* @returns {bool}
* @returns {boolean}
*/
lte<T_1>(other: Result<T_1, E>): bool;
lte<T_1>(other: Result<T_1, E>): boolean;
/**
* @template [V=T]
* @param {(acc: V, value: T) => V} _reducer
@ -209,11 +208,10 @@ export class Err<T, E> extends Result<any, any> {
*/
reduce<V = T>(_reducer: (acc: V, value: T) => V, init: V): V;
/**
* @template T
* @template {Result<T, E>} R
* @returns {R}
*/
flatten<T_1, R extends Result<T, E>>(): R;
flatten<R extends Result<T, E>>(): R;
/**
* @returns {Option<T>}
*/

View file

@ -1 +1 @@
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.js"],"names":[],"mappings":"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"}
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.js"],"names":[],"mappings":"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"}