# File lib/core/facets/array/traverse.rb, line 16
  def traverse(&block)
    if block_given?
      map do |e|
        if e.respond_to?(:to_ary)
          e.to_ary.traverse(&block)
        else
          block.call(e)
        end
      end
    else
      to_enum(:traverse)
    end
  end