Method: Multimap#delete_if

Defined in:
lib/multimap.rb

#delete_ifObject

call-seq:

map.delete_if {| key, value | block }  -> map

Deletes every key-value pair from map for which block evaluates to true.

map = Multimap["a" => 100, "b" => [200, 300]]
map.delete_if {|key, value| value >= 300 }
  #=> Multimap["a" => 100, "b" => 200]


315
316
317
318
319
320
321
322
# File 'lib/multimap.rb', line 315

def delete_if
  each_association do |key, container|
    container.delete_if do |value|
      yield [key, value]
    end
  end
  self
end