UNPKG

mjdapi

Version:
22 lines (21 loc) 834 B
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. // This module is browser compatible. /** * All internal non-test code, that is files that do not have `test` or `bench` in the name, must use the assertion functions within `_utils/asserts.ts` and not `testing/asserts.ts`. This is to create a separation of concerns between internal and testing assertions. */ export class DenoStdInternalError extends Error { constructor(message) { super(message); this.name = "DenoStdInternalError"; } } /** Make an assertion, if not `true`, then throw. */ export function assert(expr, msg = "") { if (!expr) { throw new DenoStdInternalError(msg); } } /** Use this to assert unreachable code. */ export function unreachable() { throw new DenoStdInternalError("unreachable"); }