From: nobu.nakada@... Date: 2000-12-17T00:20:10+09:00 Subject: [ruby-list:26559] Re: Hash.new なかだです。 At Sat, 16 Dec 2000 23:11:47 +0900, gotoken@math.sci.hokudai.ac.jp (GOTO Kentaro) wrote: > 個人的にはHashのdefaultが設定されている場合は、Hash#[] で参 > 照したキーに対して代入するように変更して欲しいと思います。 > それと何度か話題に上がっている「Hash.newにブロックを与えたら、 > defaultはそれを評価して返す」というのも採用されないかなぁ。 うーん。こういう感じ? ただ、参照しただけで変更されちゃうって のもなんか…。 class DefaultingHash < Hash def initialize default = proc end def default(&block) if block default = block else super end end def [](key) fetch(key) {store(key, default.call(key))} end end -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦