UNPKG

wonka

Version:

A fast push & pull stream library for Reason, loosely following the [callbag spec](https://github.com/callbag/callbag)

28 lines (24 loc) 884 B
'use strict'; var Block = require("bs-platform/lib/js/block.js"); var Curry = require("bs-platform/lib/js/curry.js"); function scan(f, seed) { return (function (source) { return (function (sink) { var acc = /* record */[/* contents */seed]; return Curry._1(source, (function (signal) { var tmp; if (typeof signal === "number") { tmp = /* End */0; } else if (signal.tag) { acc[0] = f(acc[0], signal[0]); tmp = /* Push */Block.__(1, [acc[0]]); } else { tmp = /* Start */Block.__(0, [signal[0]]); } return sink(tmp); })); }); }); } exports.scan = scan; /* No side effect */