From: nobu.nakada@... Date: 2003-10-14T16:56:18+09:00 Subject: [ruby-list:38552] Re: marshal_dump (was Re: ) なかだです。 At Tue, 14 Oct 2003 13:33:04 +0900, Yukihiro Matsumoto wrote: > |marshal_dumpされたものだけでなくてすべてについてreadResolveして > |くれると、古いバージョンでダンプしたFile::Statなんかもそのまま > |ロードできるようになるんじゃないかなぁ、と思いました。 > > もうちょっと説明していただけませんか? ruby 1.4まではFile#statの戻り値がStruct::Statだったため、単純に dump(やpstore)できていましたが、1.6以降は独自クラスになったため にできなくなりました。もしFile::Stat#_{dump,load}_dataを追加し たとしても、1.4までのデータはTYPE_STRUCTになっているので、ロー ドしてできるのはやはりStruct::Stat(定義してあるとしても)であっ てFile::Statとは何の関係もありません。readResolveかなにかで、ロー ド後にオブジェクトの置き換えができれば、なんとかできるかな、と。 Struct::Statがなくなったのはかなり前のことなので、すでに必要性 は薄いかも知れませんが、バージョン移行の一つの例ということで。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦