     # TODO:
     #  adapt to use emit to send them instead of gathering it all up into arrays
     #  only when there *are* listeners. otherwise, return all the arrays.
-    #  combine ops as in node-paths ...?
 
     # hold all results info in this as we do all the work
     results = found: {}, rejected: paths:0, strings:0

    # if they listen to events for a mode, add that mode to what we do.
    switch event
      when 'done'          then @async = true
      when 'file', 'files' then @only.push 'files'
      when 'dir',  'dirs'  then @only.push 'dirs'
      when 'path', 'paths' then @only.push 'paths'

    # always perform the on() operation
    super event, listener

          results.found?.dirs += 1 if results.found?.dirs?

          # only add this directory to our workload if `recurse` is on
          dirArray[dirArray.length] = path if @recurse

          # add directory to our results only if we're tracking them
          results?.dirs?.push path
