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

ruby-changes:8158

From: naruse <ko1@a...>
Date: Sun, 5 Oct 2008 17:47:15 +0900 (JST)
Subject: [ruby-changes:8158] Ruby:r19686 (trunk): * ext/stringio/stringio.c (strio_set_encoding): defined for

naruse	2008-10-05 17:47:01 +0900 (Sun, 05 Oct 2008)

  New Revision: 19686

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

  Log:
    * ext/stringio/stringio.c (strio_set_encoding): defined for
      StringIO#set_encoding.

  Modified files:
    trunk/ChangeLog
    trunk/ext/stringio/stringio.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 19685)
+++ ChangeLog	(revision 19686)
@@ -1,3 +1,8 @@
+Sun Oct  5 17:39:21 2008  NARUSE, Yui  <naruse@r...>
+
+	* ext/stringio/stringio.c (strio_set_encoding): defined for
+	  StringIO#set_encoding.
+
 Sun Oct  5 11:24:42 2008  NARUSE, Yui  <naruse@r...>
 
 	* eval.c: come back definition of environ.
Index: ext/stringio/stringio.c
===================================================================
--- ext/stringio/stringio.c	(revision 19685)
+++ ext/stringio/stringio.c	(revision 19686)
@@ -1245,6 +1245,23 @@
 }
 
 /*
+ *  call-seq:
+ *     strio.set_encoding(ext_enc)                => strio
+ *
+ *  Tagged with the encoding specified.
+ */
+
+static VALUE
+strio_set_encoding(VALUE self, VALUE ext_enc)
+{
+    rb_encoding* enc;
+    VALUE str = StringIO(self)->string;
+    enc = rb_to_encoding(ext_enc);
+    rb_enc_associate(str, enc);
+    return self;
+}
+
+/*
  * Pseudo I/O on String object.
  */
 void
@@ -1322,4 +1339,5 @@
 
     rb_define_method(StringIO, "external_encoding", strio_external_encoding, 0);
     rb_define_method(StringIO, "internal_encoding", strio_internal_encoding, 0);
+    rb_define_method(StringIO, "set_encoding", strio_set_encoding, 1);
 }

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

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