UNPKG

@beenotung/tslib

Version:
37 lines 1.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ensureNumber = exports.ensureString = exports.ensureNumberInRange = exports.ensureDefined = void 0; const lang_1 = require("./lang"); function ensureDefined(a) { if (lang_1.notDefined(a)) { throw new TypeError('data is not defined'); } return a; } exports.ensureDefined = ensureDefined; /** * inclusively * */ function ensureNumberInRange(a, lower, higher) { const res = lang_1.toNumber(a); if (lower <= res && res <= higher) { return res; } throw new TypeError(`number not in range, value: ${a}, lower: ${lower}, higher: ${higher}`); } exports.ensureNumberInRange = ensureNumberInRange; function ensureString(s) { if (typeof s !== 'string') { throw new TypeError('expect string, but got ' + typeof s); } return s; } exports.ensureString = ensureString; function ensureNumber(x) { if (typeof x !== 'number') { throw new TypeError('expect number, but got ' + typeof x); } return x; } exports.ensureNumber = ensureNumber; //# sourceMappingURL=strict-type.js.map