docs: function find(test, cwd, callback, one) {
    var results = []
    var current
  
    test = augment(test)
  
    if (!callback) {
      callback = cwd
      cwd = null
    }
  
    current = cwd ? resolve(cwd) : process.cwd()
  
    once()
  
    // Test a file and check what should be done with the resulting file.
    function handle(filePath) {
      var file = toVFile(filePath)
      var result = test(file)
  
      if (mask(result, INCLUDE)) {
        if (one) {
          callback(null, file)
          return true
        }
  
        results.push(file)
      }
  
      if (mask(result, BREAK)) {
        callback(null, one ? null : results)
        return true
      }
    }
  
    // Check one directory.
    function once(child) {
      if (handle(current) === true) {
        return
      }
  
      readdir(current, onread)
  
      function onread(error, entries) {
        var length = entries ? entries.length : 0
        var index = -1
        var entry
  
        if (error) {
          entries = []
        }
  
        while (++index < length) {
          entry = entries[index]
  
          if (entry !== child && handle(resolve(current, entry)) === true) {
            return
          }
        }
  
        child = current
        current = dirname(current)
  
        if (current === child) {
          callback(null, one ? null : results)
          return
        }
  
        once(basename(child))
      }
    }
  }