From: "NARUSE, Yui" Date: 2010-06-29T10:57:30+09:00 Subject: [ruby-dev:41766] Re: Hash[] の引数が Array の場合の振る舞い 成瀬です。 2010年6月29日0:28 とみたまさひろ : > とみたです。 > > Hash[] の引数が1つの配列で、かつその要素がさらに 1個か2個の要素の配列 > の場合、それをキーと値のペアとみなして(1個の場合は値は nil)、Hash オブ > ジェクトを生成するようです。 > > ary = [[1,2],[3,4],[5]] > Hash[ary] #=> {5=>nil, 1=>2, 3=>4} > > 1.8.7 でも 1.9.2 でも同様です。 > > マニュアル http://doc.okkez.net/static/187/class/Hash.html にはこの用法 > は載っていませんでした。 第一義的には「Ruby のマニュアル」というのは、rdoc のことです。 rdoc には実装と同程度の規範性があり、実装と rdoc が矛盾した場合はその都度 適切な仕様が決定され、両者に反映されます。 また、rdoc にはコミッタの意図が書かれている(ことがある)点で、 ある仕様がどの程度推奨されるものかなどの情報も含むものです。 るりまは以上に述べたようなものではなく、 単純に Ruby ユーザのためのものです。 -- NARUSE, Yui naruse@airemix.jp