[前][次][番号順一覧][スレッド一覧]

ruby-changes:24649

From: eregon <ko1@a...>
Date: Tue, 14 Aug 2012 19:22:31 +0900 (JST)
Subject: [ruby-changes:24649] eregon:r36700 (trunk): update PP with recent Kernel#inspect change. Patch by Yusuke Endoh.

eregon	2012-08-14 19:21:04 +0900 (Tue, 14 Aug 2012)

  New Revision: 36700

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=36700

  Log:
    update PP with recent Kernel#inspect change. Patch by Yusuke Endoh.
    
    * lib/pp.rb (class PP): do not call #to_s anymore, as #inspect no more does.
    * test/test_pp.rb (class PPInspectTest): remove related assertion.
      [ruby-core:43238][Feature #6130]

  Modified files:
    trunk/ChangeLog
    trunk/lib/pp.rb
    trunk/test/test_pp.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 36699)
+++ ChangeLog	(revision 36700)
@@ -1,3 +1,11 @@
+Tue Aug 14 19:19:10 2012  Benoit Daloze  <eregontp@g...>
+
+	update PP with recent Kernel#inspect change. Patch by Yusuke Endoh.
+
+	* lib/pp.rb (class PP): do not call #to_s anymore, as #inspect no more does.
+	* test/test_pp.rb (class PPInspectTest): remove related assertion.
+	  [ruby-core:43238][Feature #6130]
+
 Tue Aug 14 19:09:38 2012  Benoit Daloze  <eregontp@g...>
 
 	Kernel#inspect: improve consistency and do not call #to_s.
Index: lib/pp.rb
===================================================================
--- lib/pp.rb	(revision 36699)
+++ lib/pp.rb	(revision 36700)
@@ -265,8 +265,7 @@
   module ObjectMixin
     # 1. specific pretty_print
     # 2. specific inspect
-    # 3. specific to_s
-    # 4. generic pretty_print
+    # 3. generic pretty_print
 
     # A default pretty printing method for general objects.
     # It calls #pretty_print_instance_variables to list instance variables.
@@ -283,18 +282,10 @@
         inspect_method = method_method.call(:inspect)
       rescue NameError
       end
-      begin
-        to_s_method = method_method.call(:to_s)
-      rescue NameError
-      end
       if inspect_method && /\(Kernel\)#/ !~ inspect_method.inspect
         q.text self.inspect
       elsif !inspect_method && self.respond_to?(:inspect)
         q.text self.inspect
-      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
       else
         q.pp_object(self)
       end
Index: test/test_pp.rb
===================================================================
--- test/test_pp.rb	(revision 36699)
+++ test/test_pp.rb	(revision 36700)
@@ -118,7 +118,6 @@
     def a.to_s() "aaa" end
     result = PP.pp(a, '')
     assert_equal("#{a.inspect}\n", result)
-    assert_equal("aaa\n", result)
   end
 end
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]