to_procすげー
- March 10, 2006 20:48:46
- Comments (0)
- Trackbacks (0)
Ruby
くまくまーさんのエントリにあったSymbol#to_procが 便利そう。
[1, 2, 3].collect{|i| i.to_s }
#=> ["1", "2", "3"]
と書いていたものが、
[1, 2, 3].collect(&:to_s) #=> ["1", "2", "3"]
となる。いいねぇ。各要素にto_sを作用させるってのがより直接的に表現できてる感じがしないでもない。
引数を! シンボル渡して呼び出すメソッドに引数を渡したいです!!
こうかな?
class Array
def to_proc
Proc.new{|obj| obj.send(*self) }
end
end
[1, 2, 3].collect(&[:+, 1])
#=> [2, 3, 4]
%w(Tokyo Nagoya Kyoto).select(&[:=~, /kyo/i])
#=> ["Tokyo", "Kyoto"]
each_with_indexみたいなときはどうしたらいいかな。
Trackbacks
Trackback Ping URL: http://fg-180.katamayu.net/trackback/267
