blob: 04c68e5b3ed75b5ec53d8c2fe50ee1348728465c [file] [log] [blame]
var _forceReduced =
/*#__PURE__*/
require("./_forceReduced");
var _isArrayLike =
/*#__PURE__*/
require("./_isArrayLike");
var _reduce =
/*#__PURE__*/
require("./_reduce");
var _xfBase =
/*#__PURE__*/
require("./_xfBase");
var preservingReduced = function (xf) {
return {
'@@transducer/init': _xfBase.init,
'@@transducer/result': function (result) {
return xf['@@transducer/result'](result);
},
'@@transducer/step': function (result, input) {
var ret = xf['@@transducer/step'](result, input);
return ret['@@transducer/reduced'] ? _forceReduced(ret) : ret;
}
};
};
var _flatCat = function _xcat(xf) {
var rxf = preservingReduced(xf);
return {
'@@transducer/init': _xfBase.init,
'@@transducer/result': function (result) {
return rxf['@@transducer/result'](result);
},
'@@transducer/step': function (result, input) {
return !_isArrayLike(input) ? _reduce(rxf, result, [input]) : _reduce(rxf, result, input);
}
};
};
module.exports = _flatCat;