gnablib
Version:
A lean, zero dependency library to provide a useful base for your project.
2 lines • 622 B
JavaScript
/*! Copyright 2025 the gnablib contributors MPL-1.1 */
export const safe={num(r,e=!1){const t=typeof r;if("number"==t)return r;if(!e||void 0!==r)throw new TypeError(`Expecting number, got ${t}=${r}`)},int(r,e=!1){const t=typeof r;if("number"==t){if(Number.isInteger(r))return r}else if(e&&void 0===r)return;throw new TypeError(`Expecting integer, got ${t}=${r}`)},str(r,e=!1){const t=typeof r;if("string"==t)return r;if(!e||void 0!==r)throw new TypeError(`Expecting string, got ${t}=${r}`)},bool(r,e=!1){const t=typeof r;if("boolean"==t)return r;if(!e||void 0!==r)throw new TypeError(`Expecting boolean, got ${t}=${r}`)}};