* lib/pp.rb (PP::ObjectMixin#pretty_print): use to_s regardless of
instance variables. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
52ebc24487
commit
4319b48ab6
@ -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>
|
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
|
* vm_insnhelper.c (vm_push_frame): get rid of out-of-bounds
|
||||||
|
@ -270,7 +270,7 @@ class PP < PrettyPrint
|
|||||||
module ObjectMixin
|
module ObjectMixin
|
||||||
# 1. specific pretty_print
|
# 1. specific pretty_print
|
||||||
# 2. specific inspect
|
# 2. specific inspect
|
||||||
# 3. specific to_s if instance variable is empty
|
# 3. specific to_s
|
||||||
# 4. generic pretty_print
|
# 4. generic pretty_print
|
||||||
|
|
||||||
# A default pretty printing method for general objects.
|
# A default pretty printing method for general objects.
|
||||||
@ -296,8 +296,7 @@ class PP < PrettyPrint
|
|||||||
q.text self.inspect
|
q.text self.inspect
|
||||||
elsif !inspect_method && self.respond_to?(:inspect)
|
elsif !inspect_method && self.respond_to?(:inspect)
|
||||||
q.text self.inspect
|
q.text self.inspect
|
||||||
elsif to_s_method && /\(Kernel\)#/ !~ to_s_method.inspect &&
|
elsif to_s_method && /\(Kernel\)#/ !~ to_s_method.inspect
|
||||||
instance_variables.empty?
|
|
||||||
q.text self.to_s
|
q.text self.to_s
|
||||||
elsif !to_s_method && self.respond_to?(:to_s)
|
elsif !to_s_method && self.respond_to?(:to_s)
|
||||||
q.text self.to_s
|
q.text self.to_s
|
||||||
|
@ -107,7 +107,6 @@ class PPInspectTest < Test::Unit::TestCase
|
|||||||
a.instance_eval { @a = nil }
|
a.instance_eval { @a = nil }
|
||||||
result = PP.pp(a, '')
|
result = PP.pp(a, '')
|
||||||
assert_equal("#{a.inspect}\n", result)
|
assert_equal("#{a.inspect}\n", result)
|
||||||
assert_match(/\A#<Object.*>\n\z/m, result)
|
|
||||||
a = 1.0
|
a = 1.0
|
||||||
a.instance_eval { @a = nil }
|
a.instance_eval { @a = nil }
|
||||||
result = PP.pp(a, '')
|
result = PP.pp(a, '')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user