UNPKG

@fpjs/overture

Version:
18 lines (17 loc) 596 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.traverse = exports.sequence = exports.isTraversable = void 0; var _base = require("@fpjs/overture/base"); const isTraversable = x => "fantasy-land/traverse" in x; exports.isTraversable = isTraversable; const traverse = F => ab => x => { const op = x["fantasy-land/traverse"]; if (op === undefined) { throw TypeError(`'${(0, _base.type)(x)}' is not Traversable.`); } return op.call(x, F, ab); }; exports.traverse = traverse; const sequence = exports.sequence = (0, _base.flip)(traverse)(_base.id);