- ベストアンサー
Ruby 文法 ブロックの中で メソッドを呼ぶ
class Hoge def val 'aaa' end def piyo yield end end h=Hoge.new h.piyo do p h.val #<ーここの話 end 上の様に書く時、ブロックの中で、そのクラスのメソッドを呼ぶ時、上の例だと h.val と書いてますが、これself.valなどと書きたいのですがERRになってしまいます。 h.と書くのがとても嫌なのですが、なにか良い書き方あるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
これはどうでしょうか? class Hoge def val "aaa" end def piyo yield(self) end end h=Hoge.new h.piyo do |this| p this.val end
お礼
すばらしい!! ご回答ありがとうございました。