ruby-changes:13034
From: matz <ko1@a...>
Date: Mon, 7 Sep 2009 12:33:49 +0900 (JST)
Subject: [ruby-changes:13034] Ruby:r24779 (trunk): * lib/irb/inspector.rb (IRB::INSPECTORS.def_inspector): support
matz 2009-09-07 12:28:41 +0900 (Mon, 07 Sep 2009) New Revision: 24779 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=24779 Log: * lib/irb/inspector.rb (IRB::INSPECTORS.def_inspector): support object without #inspect defined. a patch from Daniel Bovensiepen. [ruby-core:25200] Modified files: trunk/ChangeLog trunk/lib/irb/inspector.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 24778) +++ ChangeLog (revision 24779) @@ -1,3 +1,9 @@ +Mon Sep 7 12:26:04 2009 Yukihiro Matsumoto <matz@r...> + + * lib/irb/inspector.rb (IRB::INSPECTORS.def_inspector): support + object without #inspect defined. a patch from Daniel + Bovensiepen. [ruby-core:25200] + Mon Sep 7 05:38:34 2009 Koichi Sasada <ko1@a...> * insns.def (opt_*): add IC operands. Index: lib/irb/inspector.rb =================================================================== --- lib/irb/inspector.rb (revision 24778) +++ lib/irb/inspector.rb (revision 24779) @@ -81,7 +81,13 @@ end INSPECTORS.def_inspector([false, :to_s, :raw]){|v| v.to_s} - INSPECTORS.def_inspector([true, :p, :inspect]){|v| v.inspect} + INSPECTORS.def_inspector([true, :p, :inspect]){|v| + begin + v.inspect + rescue NoMethodError + puts "(Object doesn't support #inspect)" + end + } INSPECTORS.def_inspector([:pp, :pretty_inspect], proc{require "pp"}){|v| v.pretty_inspect.chomp} INSPECTORS.def_inspector([:yaml, :YAML], proc{require "yaml"}){|v| begin -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/