names=keep_if,select!
visibility=public
kind=defined

--- keep_if {|key, value| ... } -> self
--- select! {|key, value| ... } -> self | nil
--- keep_if -> Enumerator
--- select! -> Enumerator

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
[[c:Enumerator]] オブジェクトを返します。

@see [[m:Hash#select]], [[m:Hash#delete_if]],[[m:Hash#reject!]]
