[#19449] new keyword once — "K.Kosako" <kosako@...>
String#indexにKarp-Rabinアルゴリズムを導入しても、それほど速くならないのは、
[#19457] equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、
まつもと ゆきひろです
In article <1044245817.592933.31973.nullmailer@picachu.netlab.jp>,
In article <1044245817.592933.31973.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044329220.257740.28127.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044331431.138035.28173.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044332948.099873.28206.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044338964.502066.28474.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
まつもと ゆきひろです
さらに気が付いたのですが、
まつもと ゆきひろです
あー、言葉が足りなかったことに気がつきました。
まつもと ゆきひろです
[#19463] Re: [ruby-cvs] ruby: * re.c (rb_memsearch): algolithm body of String#index. — "Akinori MUSHA" <knu@...>
At Mon, 3 Feb 2003 05:34:15 +0000,
[#19494] [Oniguruma] Version 1.7 — "K.Kosako" <kosako@...>
ftp.ruby-lang.orgに、onigd20030204.tar.gzを置きました。
[#19498] cpp in mkmf (Re: Problems building mysql ruby 2.4.4 on 1.8) — nobu.nakada@...
なかだです。
[#19510] define_method+super causes replacing self — Minero Aoki <aamine@...>
あおきです。
[#19514] [Oniguruma] Version 1.7.1 — "K.Kosako" <kosako@...>
ftp.ruby-lang.orgに、onigd20030207.tar.gzを置きました。
MoonWolfです。
MoonWolfです。
[#19539] FileUtils.pwd — Tanaka Akira <akr@...17n.org>
ふと気が付いたのですが、ChangeLog の
[#19548] [PATCH] file.c for (PR#389) and (PR#390) — nobu.nakada@...
なかだです。
まつもと ゆきひろです
From: nobu.nakada@nifty.ne.jp
なかだです。
From: nobu.nakada@nifty.ne.jp
From: pegacorn@jcom.home.ne.jp
[#19562] Fw: Ruby 1.8.0 bugs — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
MoonWolfです。
[#19578] target host type と RUBY_PLATFORM — pegacorn@...
cygwin 環境で
まつもと ゆきひろです
From: matz@ruby-lang.org (Yukihiro Matsumoto)
まつもと ゆきひろです
From: matz@ruby-lang.org (Yukihiro Matsumoto)
まつもと ゆきひろです
[#19603] 1.6.8でprotected/privateなメソッドがスコープ外から見えてしまう — NISHI Takao <zophos@...9.com>
にし@おかやまです。
[#19617] module A::B — "K.Kosako" <kosako@...>
現在の実装で、class A::Bの場合に、Aをcref環境に積まないのは、
[#19626] Re: [ruby-cvs] ruby: * eval.c (rb_thread_remove): thread may die in the process of — nobu.nakada@...
なかだです。
[#19638] [Oniguruma] Version 1.8.0 — "K.Kosako" <kosako@...>
ftp.ruby-lang.orgに、onigd20030222.tar.gzを置きました。
[#19648] Re: SEGV at search_method in eval.c (PR#400) — nobu.nakada@...
なかだです。
[#19655] Fw: Debugger Not Working — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#19665] Custom node — Shinya Hayakawa <tetryl@...>
はじめまして。早川と申します。
[#19668] File.chomp — Shin-ichiro HARA <sinara@...>
原です。
なかだです。
こんにちは、なかむら(う)です。
わたなべです。
[ruby-dev:19528] String#index with offset
なかだです。
"hello".index("l", 3)が0を返します。それとrb_memsearch()もlong
を返すようにしたほうがいいような気がします。引数もlongだし。
Index: intern.h
===================================================================
RCS file: /cvs/ruby/src/ruby/intern.h,v
retrieving revision 1.110
diff -u -2 -p -r1.110 intern.h
--- intern.h 3 Feb 2003 05:34:14 -0000 1.110
+++ intern.h 7 Feb 2003 05:40:52 -0000
@@ -331,5 +331,5 @@ VALUE rb_length_by_each _((VALUE));
int rb_memcmp _((char*,char*,long));
int rb_memcicmp _((char*,char*,long));
-int rb_memsearch _((char*,long,char*,long));
+long rb_memsearch _((char*,long,char*,long));
VALUE rb_reg_nth_defined _((int, VALUE));
VALUE rb_reg_nth_match _((int, VALUE));
Index: re.c
===================================================================
RCS file: /cvs/ruby/src/ruby/re.c,v
retrieving revision 1.98
diff -u -2 -p -r1.98 re.c
--- re.c 6 Feb 2003 10:06:47 -0000 1.98
+++ re.c 7 Feb 2003 05:40:34 -0000
@@ -97,5 +97,5 @@ rb_memcmp(p1, p2, len)
}
-int
+long
rb_memsearch(x0, m, y0, n)
char *x0, *y0;
Index: string.c
===================================================================
RCS file: /cvs/ruby/src/ruby/string.c,v
retrieving revision 1.140
diff -u -2 -p -w -r1.140 string.c
--- string.c 6 Feb 2003 08:25:12 -0000 1.140
+++ string.c 7 Feb 2003 05:41:45 -0000
@@ -840,4 +840,6 @@ rb_str_index(str, sub, offset)
long offset;
{
+ long pos;
+
if (offset < 0) {
offset += RSTRING(str)->len;
@@ -846,6 +848,8 @@ rb_str_index(str, sub, offset)
if (RSTRING(str)->len - offset < RSTRING(sub)->len) return -1;
if (RSTRING(sub)->len == 0) return offset;
- return rb_memsearch(RSTRING(sub)->ptr, RSTRING(sub)->len,
+ pos = rb_memsearch(RSTRING(sub)->ptr, RSTRING(sub)->len,
RSTRING(str)->ptr+offset, RSTRING(str)->len-offset);
+ if (pos < 0) return pos;
+ return pos + offset;
}
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦