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

ruby-changes:7239

From: akr <ko1@a...>
Date: Fri, 22 Aug 2008 02:27:22 +0900 (JST)
Subject: [ruby-changes:7239] Ruby:r18758 (trunk): * iseq.c (iseq_inspect): don't raise on uninitialized object.

akr	2008-08-22 02:25:43 +0900 (Fri, 22 Aug 2008)

  New Revision: 18758

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

  Log:
    * iseq.c (iseq_inspect): don't raise on uninitialized object.
      show real class name.

  Modified files:
    trunk/ChangeLog
    trunk/iseq.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 18757)
+++ ChangeLog	(revision 18758)
@@ -1,3 +1,8 @@
+Fri Aug 22 02:25:04 2008  Tanaka Akira  <akr@f...>
+
+	* iseq.c (iseq_inspect): don't raise on uninitialized object.
+	  show real class name.
+
 Fri Aug 22 02:08:58 2008  Tanaka Akira  <akr@f...>
 
 	* io.c (rb_io_initialize): accept hash argument.
Index: iseq.c
===================================================================
--- iseq.c	(revision 18757)
+++ iseq.c	(revision 18758)
@@ -548,9 +548,14 @@
 static VALUE
 iseq_inspect(VALUE self)
 {
-    rb_iseq_t *iseq = iseq_check(self);
+    rb_iseq_t *iseq;
+    GetISeqPtr(self, iseq);
+    if (!iseq->name) {
+        return rb_sprintf("#<%s: uninitialized>", rb_obj_classname(self));
+    }
 
-    return rb_sprintf("<ISeq:%s@%s>",
+    return rb_sprintf("<%s:%s@%s>",
+                      rb_obj_classname(self),
 		      RSTRING_PTR(iseq->name), RSTRING_PTR(iseq->filename));
 }
 

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

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