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

ruby-changes:4093

From: ko1@a...
Date: Sat, 23 Feb 2008 20:18:27 +0900 (JST)
Subject: [ruby-changes:4093] naruse - Ruby:r15583 (trunk): * string.c (str_sublen): removed.

naruse	2008-02-23 20:18:07 +0900 (Sat, 23 Feb 2008)

  New Revision: 15583

  Modified files:
    trunk/ChangeLog
    trunk/string.c

  Log:
    * string.c (str_sublen): removed.
    
    * string.c (rb_str_reverse, rb_str_reverse_bang): use 
      single_byte_optimizable.

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/string.c?r1=15583&r2=15582&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=15583&r2=15582&diff_format=u

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 15582)
+++ ChangeLog	(revision 15583)
@@ -1,3 +1,10 @@
+Sat Feb 23 20:16:05 2008  NARUSE, Yui  <naruse@r...>
+
+	* string.c (str_sublen): removed.
+
+	* string.c (rb_str_reverse, rb_str_reverse_bang): use 
+	  single_byte_optimizable.
+
 Sat Feb 23 19:25:18 2008  NARUSE, Yui  <naruse@r...>
 
 	* string.c (rb_enc_cr_str_copy_for_substr): renamed from
Index: string.c
===================================================================
--- string.c	(revision 15582)
+++ string.c	(revision 15583)
@@ -1165,23 +1165,17 @@
 }
 #endif
 
-static long
-str_sublen(VALUE str, long pos, rb_encoding *enc)
+long
+rb_str_sublen(VALUE str, long pos)
 {
-    if (rb_enc_mbmaxlen(enc) == 1 || pos < 0)
+    if (single_byte_optimizable(str) || pos < 0)
         return pos;
     else {
 	char *p = RSTRING_PTR(str);
-        return rb_enc_strlen(p, p + pos, enc);
+        return rb_enc_strlen(p, p + pos, STR_ENC_GET(str));
     }
 }
 
-int
-rb_str_sublen(VALUE str, int len)
-{
-    return str_sublen(str, len, STR_ENC_GET(str));
-}
-
 VALUE
 rb_str_subseq(VALUE str, long beg, long len)
 {
@@ -3480,7 +3474,7 @@
     p = RSTRING_END(obj);
 
     if (RSTRING_LEN(str) > 1) {
-	if (rb_enc_mbmaxlen(enc) == 1) {
+	if (single_byte_optimizable(str)) {
 	    while (s < e) {
 		*--p = *s++;
 	    }
@@ -3521,7 +3515,7 @@
 	s = RSTRING_PTR(str);
 	e = RSTRING_END(str) - 1;
 
-	if (rb_enc_mbmaxlen(enc) == 1) {
+	if (single_byte_optimizable(str)) {
 	    while (s < e) {
 		c = *s;
 		*s++ = *e;

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

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