From: Wakou Aoyama Date: 1999-12-29T08:18:53+09:00 Subject: [ruby-dev:8756] Re: [ruby-list:19945] Re: array + empty string 青山です。 On Tue, 28 Dec 1999 12:14:32 +0900, matz@netlab.co.jp (Yukihiro Matsumoto) wrote: > (g) str.collect{|s|s}相当(現状) > (h) str が$/を含まないとき [str]、含むときstr.collect{|s|s} > (i) いつも [str] > to_a > オブジェクトを配列に変換します.普通に配列に変換できないよ > う なオブジェクトは自身を含む1要素の配列に変換されます. という事で、マニュアルからすると (i) でも良さそうな気もします。文字列 を普通に配列に変換した物が、行単位の文字列とは言い切れない感じがします ので。 string[n,m] というアクセスもありますから、バイト単位や、文字単位という 分割も有り得そうですし、ちょっと普通に配列に変換できるオブジェクトでは 無いように思えます。 しかし、利便性の為という事であれば、マニュアルに collect{|s|s} 相当、 あるいは、str が$/を... 等の記述を追加するならば、現状ままや、(h) でも 良いかもしれません。 ----- String に関しては素直に(?) string.split() や [string] と記述した方が良 いと思うので、to_a に関しては、マニュアルと挙動が合っていれば、まあ、 どのような動作でも良いような、と、ちょっと思いがいまいち。 そもそも、普通に配列化できない物は (i) という事は、そのような可能性の あるオブジェクトは書く時にわかると思いますし、to_a など使わずに、 [object] と書けばいいような。 Kernel#to_a って、必要なんでしょうかね? -- 青山 和光 Wakou Aoyama