"use strict"; const Promise = require("bluebird"); const preReader = require("./"); const pipe = require("@promistream/pipe"); const rangeNumbers = require("@promistream/range-numbers"); let prereadingPipeline = pipe([ rangeNumbers(0, 3), preReader() ]); return Promise.try(() => { return prereadingPipeline.read(); }).then((result) => { console.log(result); // null return prereadingPipeline.read(); }).then((result) => { console.log(result); // 0 return prereadingPipeline.read(); }).then((result) => { console.log(result); // 1 return prereadingPipeline.read(); }).then((result) => { console.log(result); // 2 return prereadingPipeline.read(); }).catch((err) => { console.error(err); // EndOfStream: There is no more data to read });