ts-cast
Version:
Runtime typechecking
13 lines (12 loc) • 590 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var throw_type_error_1 = require("./throw-type-error");
var defValue = function (casterFn, defaultValue) {
var defaultCaster = function (value, context, reportError) {
if (reportError === void 0) { reportError = throw_type_error_1.throwTypeError; }
return (value !== undefined ? casterFn(value, context, reportError) : defaultValue);
};
Object.defineProperty(defaultCaster, 'name', { value: casterFn.name.replace(/\?$/, '') });
return defaultCaster;
};
exports.default = defValue;