# File lib/core/facets/enumerable/compact_map.rb, line 17
  def compact_map(&block)
    y = []
    if block_given?
      each do |*a|
        r = yield(*a)
        y << r unless r.nil?
      end
    else
      each do |r|
        y << r unless r.nil?
      end
    end
    y
  end