UNPKG

mathball

Version:

A JavaScript library for Competitive Programming

63 lines (56 loc) 1.8 kB
'use strict'; function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } /* Function: pipe() */ var validate = require('../validation/pipe'), _add = require('../add'), _sub = require('../subtract'), _mul = require('../multiply'), _div = require('../divide'), _abs = require('../absolute'), _sum = require('../sum'); module.exports = function (arg) { validate(arg, 'pipe'); var cache = arg; var pipe = { add: function add() { for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } cache = _add.apply(undefined, [cache].concat(_toConsumableArray(args))); return this; }, sub: function sub() { for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } cache = _sub.apply(undefined, [cache].concat(_toConsumableArray(args))); return this; }, mul: function mul() { for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { args[_key3] = arguments[_key3]; } cache = _mul.apply(undefined, [cache].concat(_toConsumableArray(args))); return this; }, div: function div() { for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { args[_key4] = arguments[_key4]; } cache = _div.apply(undefined, [cache].concat(_toConsumableArray(args))); return this; }, abs: function abs() { cache = _abs(cache); return this; }, sum: function sum() { cache = _sum(cache); return this; }, done: function done() { return cache; } }; return pipe; };