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

ruby-changes:9010

From: tadf <ko1@a...>
Date: Fri, 5 Dec 2008 21:44:24 +0900 (JST)
Subject: [ruby-changes:9010] Ruby:r20546 (trunk): * complex.c: inpsect should not depend on to_s.

tadf	2008-12-05 21:44:06 +0900 (Fri, 05 Dec 2008)

  New Revision: 20546

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

  Log:
    * complex.c: inpsect should not depend on to_s.

  Modified files:
    trunk/ChangeLog
    trunk/complex.c

Index: complex.c
===================================================================
--- complex.c	(revision 20545)
+++ complex.c	(revision 20546)
@@ -910,7 +910,7 @@
 }
 
 static VALUE
-nucomp_to_s(VALUE self)
+nucomp_format(VALUE self, VALUE (*func)(VALUE))
 {
     VALUE s, impos;
 
@@ -918,10 +918,10 @@
 
     impos = f_tpositive_p(dat->imag);
 
-    s = f_to_s(dat->real);
+    s = (*func)(dat->real);
     rb_str_cat2(s, !impos ? "-" : "+");
 
-    rb_str_concat(s, f_to_s(f_abs(dat->imag)));
+    rb_str_concat(s, (*func)(f_abs(dat->imag)));
     if (!rb_isdigit(RSTRING_PTR(s)[RSTRING_LEN(s) - 1]))
 	rb_str_cat2(s, "*");
     rb_str_cat2(s, "i");
@@ -930,12 +930,18 @@
 }
 
 static VALUE
+nucomp_to_s(VALUE self)
+{
+    return nucomp_format(self, f_to_s);
+}
+
+static VALUE
 nucomp_inspect(VALUE self)
 {
     VALUE s;
 
     s = rb_str_new2("(");
-    rb_str_concat(s, nucomp_to_s(self));
+    rb_str_concat(s, nucomp_format(self, f_inspect));
     rb_str_cat2(s, ")");
 
     return s;
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 20545)
+++ ChangeLog	(revision 20546)
@@ -1,3 +1,7 @@
+Fri Dec  5 21:42:44 2008  Tadayoshi Funaba  <tadf@d...>
+
+	* complex.c: inpsect should not depend on to_s.
+
 Fri Dec  5 19:06:04 2008  Tanaka Akira  <akr@f...>
 
 	* lib/open3.rb (Open3.pipeline_start): new method.

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

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