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/