'use strict' function id (e) { return e } var prop = require('../util/prop') var drain = require('./drain') module.exports = function find (test, cb) { var ended = false if(!cb) cb = test, test = id else test = prop(test) || id return drain(function (data) { if(test(data)) { ended = true cb(null, data) return false } }, function (err) { if(ended) return //already called back cb(err === true ? null : err, null) }) }