From 3e347e604e1e82377d3d9dd344f7a8da124ff362 Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 7 Sep 2009 03:28:41 +0000 Subject: * lib/irb/inspector.rb (IRB::INSPECTORS.def_inspector): support object without #inspect defined. a patch from Daniel Bovensiepen. [ruby-core:25200] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@24779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ lib/irb/inspector.rb | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 93255c1b1..cb0d906db 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Sep 7 12:26:04 2009 Yukihiro Matsumoto + + * 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 * insns.def (opt_*): add IC operands. diff --git a/lib/irb/inspector.rb b/lib/irb/inspector.rb index c254ab58d..ab5128399 100644 --- a/lib/irb/inspector.rb +++ b/lib/irb/inspector.rb @@ -81,7 +81,13 @@ module IRB 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 -- cgit