Method: Multimap#delete

Defined in:
lib/multimap.rb

#delete(key, value = nil) ⇒ Object

call-seq:

map.delete(key, value)  => value
map.delete(key)         => value

Deletes and returns a key-value pair from map. If only key is given, all the values matching that key will be deleted.

map = Multimap["a" => 100, "b" => [200, 300]]
map.delete("b", 300) #=> 300
map.delete("a")      #=> [100]


126
127
128
129
130
131
132
# File 'lib/multimap.rb', line 126

def delete(key, value = nil)
  if value
    @hash[key].delete(value)
  else
    @hash.delete(key)
  end
end