Enumerable#all? と any? が好きすぎる

Ruby のメソッドで、最近はブロックつけた Enumerable#any? と all? が大好き。

なんていうか、この気の利いてる感が。いちいち嬉しくなってしまう。

Enumerable#all?

ブロックの戻り値が全て真なら真を返す。

全て 'hoge' なら真。
irb> ['hoge', 'hoge'].all?{|s| s == 'hoge'}
=> true
irb> ['hoge', 'fuga'].all?{|s| s == 'hoge'}
=> false

Enumerable#any?

ブロックの戻り値のいずれかが真なら真を返す

いずれかが 'hoge' なら真
irb(main):010:0> ['hoge', 'fuga'].any?{|s| s == 'hoge'}
=> true
irb(main):011:0> ['fuga', 'fuga'].any?{|s| s == 'hoge'}
=> false

to_proc と組み合わせる

nil が含まれているかを調べる

irb> [1, 2, nil].any? &:nil?
=> true

空文字が含まれているかを(ry

irb> ['a', 'b', '' ].any? &:empty?
=> true