Ruby: Object#tap、Object#then を使ってみよう

令和元年最初の年末です。いかがお過ごしでしょうか。私は年末進行まっただ中です😢 今回は聞いたことあるけどあんまり使う機会のなさそうな #tap、#yield_self、#then の話をしてみたいと思います。 Object#tap 仕様としてはAPIリファレンスを参照すると self を引数としてブロックを評価し、self を返します。 ということなので、疑似実装としては以下のようになると思います。 class Object def tap(&block) yield self self end end #tap は古くから存在するメソッドで、1.8.3の頃から存在するようです。 Object#yield … 続きを読む Ruby: Object#tap、Object#then を使ってみよう