UNPKG

offensive

Version:

Fast and boilerplate-free precondition checks for javascript.

32 lines (31 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createContractFunction = exports.check = exports.contract = void 0; var BuilderFactory_1 = require("./BuilderFactory"); var Registry_1 = require("./Registry"); require("./operators/register"); require("./connectors/register"); var contractFunction = createContractFunction(); function contract(varName, testedValue) { return contractFunction(varName, testedValue); } exports.contract = contract; exports.default = contract; // for backwards compatibility with versions <3 function check(testedValue, varName) { return contract(varName, testedValue); } exports.check = check; /** * This might come in handy in a multi-threaded environment. * * @author Maciej Chałapuk (maciej@chalapuk.pl) */ function createContractFunction() { var _a = Registry_1.Registry.instance.contextProto, assertions = _a.assertions, operators = _a.operators; var factory = new BuilderFactory_1.BuilderFactory(assertions, operators); return function contract(varName, testedValue) { return factory.create(varName, testedValue); }; } exports.createContractFunction = createContractFunction;