Method: Hash#delete_if
- Defined in:
- hash.c
#delete_if {|key, value| ... } ⇒ Hash #delete_if ⇒ Object
Deletes every key-value pair from hsh for which block evaluates to true.
If no block is given, an enumerator is returned instead.
h = { "a" => 100, "b" => 200, "c" => 300 }
h.delete_if {|key, value| key >= "b" } #=> {"a"=>100}
1175 1176 1177 1178 1179 1180 1181 1182 1183 |
# File 'hash.c', line 1175
VALUE
rb_hash_delete_if(VALUE hash)
{
RETURN_SIZED_ENUMERATOR(hash, 0, 0, hash_enum_size);
rb_hash_modify_check(hash);
if (RHASH(hash)->ntbl)
rb_hash_foreach(hash, delete_if_i, hash);
return hash;
}
|