Ruby で tap を使ってみる
Ruby
Published: 2019-07-14

やったこと

Ruby で tap を使ってみます。

確認環境

$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17]

調査

メソッドチェインの途中で直ちに操作結果を表示するために メソッドチェインに “入り込む” ことが、このメソッドの主目的です。

$ irb
irb(main):001:0> (1..10).tap {|x| puts "original: #{x}" }.
irb(main):002:0* to_a.tap {|x| puts "array: #{x}"}.
irb(main):003:0* select {|x| x.even? }.tap {|x| puts "evens: #{x}"}
original: 1..10
array: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
evens: [2, 4, 6, 8, 10]
=> [2, 4, 6, 8, 10]

参考