foop
Version:
interfaces that describe their intentions.
21 lines (20 loc) • 1.46 kB
JavaScript
/**
* @name negate
* @memberOf conditional
* @since 5.0.0-beta.6
* @see conditional/not
* @param {Function} predicate call this
* @return {Function} call this to call predicate with arguments
*
* @example
* const T = x => true
* const F = negate(t)
* F(true) //=> false
* F(false) //=> true
*/
module.exports = function negate(predicate) {
return function() {
return !predicate.apply(this, arguments)
}
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVnYXRlLmpzIiwic291cmNlcyI6WyJuZWdhdGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbmFtZSBuZWdhdGVcbiAqIEBtZW1iZXJPZiBjb25kaXRpb25hbFxuICogQHNpbmNlIDUuMC4wLWJldGEuNlxuICogQHNlZSBjb25kaXRpb25hbC9ub3RcbiAqIEBwYXJhbSAge0Z1bmN0aW9ufSBwcmVkaWNhdGUgY2FsbCB0aGlzXG4gKiBAcmV0dXJuIHtGdW5jdGlvbn0gY2FsbCB0aGlzIHRvIGNhbGwgcHJlZGljYXRlIHdpdGggYXJndW1lbnRzXG4gKlxuICogQGV4YW1wbGVcbiAqICAgIGNvbnN0IFQgPSB4ID0+IHRydWVcbiAqICAgIGNvbnN0IEYgPSBuZWdhdGUodClcbiAqICAgIEYodHJ1ZSkgICAvLz0+IGZhbHNlXG4gKiAgICBGKGZhbHNlKSAgLy89PiB0cnVlXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gbmVnYXRlKHByZWRpY2F0ZSkge1xuICByZXR1cm4gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICFwcmVkaWNhdGUuYXBwbHkodGhpcywgYXJndW1lbnRzKVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0FBY0EsTUFBTSxDQUFDLE9BQU8sR0FBRyxTQUFTLE1BQU0sQ0FBQyxTQUFTLEVBQUU7RUFDMUMsT0FBTyxXQUFXO0lBQ2hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUM7R0FDekM7Q0FDRjsifQ==