# File lib/map.rb, line 437
  def delete_if(&block)
    to_delete = []

    each do |key, val|
      args = [key, val]
      to_delete.push(key) if !!Map.bcall(*args, &block)
    end

    to_delete.each{|key| delete(key)}

    self
  end