pull-markable

a pull-stream that can read ahead and then revert

pull-markable

A pull-stream that you can mark, read ahead, and then jump back to the marked point.

Used in [regular-stream] (https://github.com/dominictarr/regular-stream)

var markable = require('pull-markable')
 
var read = pull.values([1, 2, 3]).pipe(markable)
 
var revert = read.mark()
 
read(null, function (enddata) {
  console.log(data) //=> 1 
   //data = 1 
  read(null, function (enddata) {
    console.log(data) //=> 2 
    //revert takes us back to 1! 
    revert()
    read(null, function (enddata) {
      console.log(data) //=> 1 ! 
    })
  })
})
 

release old marks, and probably also capture groups.

MIT