Beispiel #1
0
module.exports = function (compare) {
  var source = Source()

  var sink = collect(function (err, ary) {
    if (err) {
      return source.resolve(error(err))
    }

    source.resolve(values(ary.sort(compare)))
  })

  return function (read) {
    sink(read)
    return source
  }
}
Beispiel #2
0
module.exports = function pullReadStream (options, makeData) {
  var stream = defer()

  stream.setIterator = function (iterator) {
    stream.resolve(function (end, cb) {
      if(!end) iterator.next(function (err, key, value) {
                if(err) return cb(err)
                if(key === undefined || value === undefined)
                        return cb(true)
                cb(null, makeData(key, value))
      })
      else
        iterator.end(cb)
    })
  }

  return stream
}