UNPKG

hoff

Version:

A collection of higher order functions you may find useful

41 lines (28 loc) 1.11 kB
// function sequencing // compose(f, g)(x) = f(g(x)) 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var _wrap = require('./wrap'); var _wrap2 = _interopRequireDefault(_wrap); var _unwrap = require('./unwrap'); var _unwrap2 = _interopRequireDefault(_unwrap); var _identity = require('./identity'); var _identity2 = _interopRequireDefault(_identity); var _accumulate = require('./accumulate'); var _accumulate2 = _interopRequireDefault(_accumulate); var sequence = function sequence() { for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { funcs[_key] = arguments[_key]; } return function () { for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } return (0, _unwrap2['default'])((0, _accumulate2['default'])(_wrap2['default'], args).apply(undefined, funcs)); }; }; exports['default'] = sequence; module.exports = exports['default'];