特定のオブジェクトのコンテキストでirb/pryをネストして実行

ここのところ「メタプログラミングRuby」を読んでいるのですが、p186 に書いてあったirbセッションのネストが眼から鱗でしたので紹介。というかこれ何で今まで知らなかったんだろう、自分大丈夫かと不安になりましたです(苦笑。

スポンサーリンク

irbセッションのネスト

irb は特定のオブジェクトのコンテキストで、ネストした irb セッションを新しく開き、そこでコードを実行できる。これは instance_eval() とよく似ている…

特定のオブジェクトのコンテキストで irb 実行

特定のオブジェクトのコンテキストに移動するには、irb に入った後にさらに、”irb some_object” と入力するだけです。以下 irb の実行例に # でコメントを追加しています。

この機能は、特定のオブジェクトの挙動確認の際などにすごく便利ですね!

pry でも同様に特定のオブジェクトのコンテキストに入れる

私は、Rails 開発で pry-rails(https://github.com/rweng/pry-rails)で pry を実行することが多いです。なので、pry でも同様にできるか確認してみました。

irb の例と同じ操作をしてみましたところ、同様にオブジェクトのコンテキストを移動して操作できました。Ruby や Rails まだまだ知らないことも多いです、驚き最小の原則とは言えど新しい便利な発見があるのは楽しいですね。

スポンサーリンク
私は以下の本で Ruby を覚えました。メタプログラミングRubyは入門を超える内容で難しめです。
スポンサーリンク
 
Twitterを使っていますのでフォローお願いたします!ブログの更新情報もつぶやいてます^^
(英語学習用)

Leave Your Message!