From: Akinori MUSHA Date: 2007-02-14T14:10:10+09:00 Subject: [ruby-dev:30331] Re: ShiftJIS環境でのglobingを改善するパッチ  ちょっと検討に時間が掛かりました。 At Fri, 9 Feb 2007 00:55:46 +0900, U.Nakamura wrote: > In message "[ruby-dev:30305] ShiftJIS環境でのglobingを改善するパッチ" > on Feb.09,2007 00:06:54, wrote: > | 表題のパッチを作成しました。 > | 2007-2-7時点の stable-snapshot のソースに対する差分になっています。 > > 大変な力作ありがとうございます。 > 想像してたよりもずっと大きい変更でした...  ぜひ取り込みたいと思います。 > 以下、1.8に取り込むにあたって、気になった部分を列挙します。 > それぞれどうしたもんですかね。 > > | ruby_glob: 変更 呼び出す関数がglob_helperからruby_glob0に > | ruby_globi: 削除 > > ※ruby.hで公開されているAPI。 > 公開されているAPIがなくなったら困る人がいるかもしれません。 > > とはいえ、使っている人がいるとしても、ruby_glob()と合わせて、 > DOSISHならruby_globi()を、そうでないならruby_glob()を呼ぶ、と > いう処理にしているであろうことが推測されるので、単にruby_glob() > を呼ぶだけのruby_globi()を用意しておくだけでいいかもしれませ > ん。 > # ついでにDEPRECATED()にしておけばばっちり... って1.8にあった > # っけ?  それでいいでしょう。インタプリタを操作する関数を除き、 ruby_ を プレフィクスとする関数は基本的に公開APIではないですし。  この ruby_glob*() も、 win32/win32.c で使うために外に出しただけ だったと思います。 > | dir_s_aref: 変更 引数の種類や戻り値に変更あり? 要注意 > | dir_s_glob: 変更 戻り値に変更あり? 要注意 > > ※Dir[] と Dir.glob の実体。 > 1.9で行われた、引数に文字列以外に配列を受け取ることができると > いう仕様追加が含まれています。 > 純粋な仕様追加で上位互換になると思うので問題はないんじゃない > かとは思います。  問題ないと思います。"{#{array.join(",")}}" から解放されますね。 > あとはほぼ内部実装の変更になるので、たぶん大丈夫だろうと推測 > します。  テストがほしいです。とりあえず trunk から test_fnmatch.rb を 持ってきますか。 -- / /__ __ Akinori.org / MUSHA.org / ) ) ) ) / FreeBSD.org / Ruby-lang.org Akinori MUSHA aka / (_ / ( (__( @ iDaemons.org / and.or.jp "Different eyes see different things, Different hearts beat on different strings -- But there are times for you and me when all such things agree"