こんにちは。ikedaです。 以前ご紹介したgem Faradayの実装例で、blockを解説することがあったのですが blockを利用した書き方について触れていなかったので書いていきたいと思います。完全に小ネタです。 blockの書き方ですが、引数にblock宣言することと、yieldを利用する2通りあります。 ブロックを引数で持つ場合 class Hoge def initialize(&block) block.call end end Hoge.new do p "Hello" end # => "Hello" # => #<Hoge:0x007ff4f480cca8> Hoge.new { p "Hello" } # 上記と同じ意味です。 # => "Hello" # => #<Hoge:0x007ff4f480cca8> Hoge.new # ブロックを渡していないのでエラー
![blockの利用例 Ruby|TechRacho by BPS株式会社](https://cdn-ak-scissors.b.st-hatena.com/image/square/44f3510a5581cf9630e8065bcdc9a63598141e21/height=288;version=1;width=512/https%3A%2F%2Ftechracho.bpsinc.jp%2Fwp-content%2Fuploads%2F2013%2F02%2Flogo2.gif)