diff options
Diffstat (limited to 'tools/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js')
-rw-r--r-- | tools/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/tools/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js b/tools/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js new file mode 100644 index 0000000000..7af0b1974e --- /dev/null +++ b/tools/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js @@ -0,0 +1,45 @@ +// Generated by LiveScript 1.2.0 +var apply, curry, flip, fix, over; +apply = curry$(function(f, list){ + return f.apply(null, list); +}); +curry = function(f){ + return curry$(f); +}; +flip = curry$(function(f, x, y){ + return f(y, x); +}); +fix = function(f){ + return function(g){ + return function(){ + return f(g(g)).apply(null, arguments); + }; + }(function(g){ + return function(){ + return f(g(g)).apply(null, arguments); + }; + }); +}; +over = curry$(function(f, g, x, y){ + return f(g(x), g(y)); +}); +module.exports = { + curry: curry, + flip: flip, + fix: fix, + apply: apply, + over: over +}; +function curry$(f, bound){ + var context, + _curry = function(args) { + return f.length > 1 ? function(){ + var params = args ? args.concat() : []; + context = bound ? context || this : this; + return params.push.apply(params, arguments) < + f.length && arguments.length ? + _curry.call(context, params) : f.apply(context, params); + } : f; + }; + return _curry(); +}
\ No newline at end of file |