diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | lib/pp.rb | 5 | ||||
-rw-r--r-- | test/test_pp.rb | 1 |
3 files changed, 7 insertions, 4 deletions
@@ -1,3 +1,8 @@ +Sat Nov 7 21:02:57 2009 Tanaka Akira <akr@fsij.org> + + * lib/pp.rb (PP::ObjectMixin#pretty_print): use to_s regardless of + instance variables. + Sat Nov 7 20:59:11 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * vm_insnhelper.c (vm_push_frame): get rid of out-of-bounds @@ -270,7 +270,7 @@ class PP < PrettyPrint module ObjectMixin # 1. specific pretty_print # 2. specific inspect - # 3. specific to_s if instance variable is empty + # 3. specific to_s # 4. generic pretty_print # A default pretty printing method for general objects. @@ -296,8 +296,7 @@ class PP < PrettyPrint q.text self.inspect elsif !inspect_method && self.respond_to?(:inspect) q.text self.inspect - elsif to_s_method && /\(Kernel\)#/ !~ to_s_method.inspect && - instance_variables.empty? + elsif to_s_method && /\(Kernel\)#/ !~ to_s_method.inspect q.text self.to_s elsif !to_s_method && self.respond_to?(:to_s) q.text self.to_s diff --git a/test/test_pp.rb b/test/test_pp.rb index 604cbc509e..fe65287d88 100644 --- a/test/test_pp.rb +++ b/test/test_pp.rb @@ -107,7 +107,6 @@ class PPInspectTest < Test::Unit::TestCase a.instance_eval { @a = nil } result = PP.pp(a, '') assert_equal("#{a.inspect}\n", result) - assert_match(/\A#<Object.*>\n\z/m, result) a = 1.0 a.instance_eval { @a = nil } result = PP.pp(a, '') |