import type { Nullable } from './types.js'; import { NotNullExpected } from "./error.js"; export function must(result: Nullable): T { if (result === null || result === undefined) { throw new NotNullExpected(); } return result; } export function must_any(result: Nullable): T { if (result === null || result === undefined) { throw new NotNullExpected(); } return result as T; } type ErrType = { new(msg?: string): T } export function must_err(result: Nullable, errType: ErrType, errMsg?: string): T { if (result === null || result === undefined) { throw new errType(errMsg); } return result; }