chain-able
Version:
interfaces that describe their intentions.
7 lines (6 loc) • 1.26 kB
JavaScript
module.exports = function (specification) { return function (call) { return function (onInvalid, onValid) { return function (a, b, c) {
var result = call(a, b, c)
if (specification(result)) { return onInvalid(result) }
else { return onValid(result) }
}; }; }; }
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aFNwZWNpZmljYXRpb24uanMiLCJzb3VyY2VzIjpbIndpdGhTcGVjaWZpY2F0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gc3BlY2lmaWNhdGlvbiA9PiBjYWxsID0+IChvbkludmFsaWQsIG9uVmFsaWQpID0+IChhLCBiLCBjKSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IGNhbGwoYSwgYiwgYylcbiAgaWYgKHNwZWNpZmljYXRpb24ocmVzdWx0KSkgcmV0dXJuIG9uSW52YWxpZChyZXN1bHQpXG4gIGVsc2UgcmV0dXJuIG9uVmFsaWQocmVzdWx0KVxufVxuIl0sIm5hbWVzIjpbImNvbnN0Il0sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsT0FBTyxHQUFHLFVBQUEsYUFBYSxDQUFBLENBQUMsQUFBRyxTQUFBLFVBQUEsSUFBSSxDQUFBLENBQUMsQUFBRyxTQUFBLFNBQUEsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEFBQUcsU0FBQSxTQUFBLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBRztFQUM3RUEsR0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7RUFDNUIsSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBQSxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBQTtPQUM5QyxFQUFBLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFBO0NBQzVCLFNBQUE7In0=