[#38470] ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...>

青木です。

25 messages 2003/10/07
[#38475] Re: ruby-dev summary 21403-21530 (draft) — maili31s@... (SugHimsi==SUGIHARA Hiroshi) 2003/10/07

すぎむし。

[#38480] Re: ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...> 2003/10/08

青木です。

[#38481] marshal_dump (was Re: ) — m_seki@... 2003/10/08

[#38484] Re: marshal_dump (was Re: ) — matz@... (Yukihiro Matsumoto) 2003/10/09

まつもと ゆきひろです

[#38486] Re: marshal_dump (was Re: ) — Masatoshi Seki <m_seki@...> 2003/10/09

咳といいます

[#38489] exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to>

<http://www.unixuser.org/~ysjj/diary/?200310a&to=200310082#200310082>

29 messages 2003/10/09
[#38490] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/09

新井です。

[#38503] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/10

In Message-Id: <20031010.082218.74733862.JCA02266@nifty.ne.jp>

[#38505] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/10

新井です。

[#38507] Re: exit status on exit! — matz@... (Yukihiro Matsumoto) 2003/10/11

まつもと ゆきひろです

[#38514] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/11

In Message-Id: <1065883639.405037.23137.nullmailer@picachu.netlab.jp>

[#38515] Re: exit status on exit! — WATANABE Hirofumi <eban@...> 2003/10/11

わたなべです。

[ruby-list:38481] marshal_dump (was Re: )

From: m_seki@...
Date: 2003-10-08 22:06:43 UTC
List: ruby-list #38481
咳といいます。

From: Minero Aoki <aamine@loveruby.net>
Subject: [ruby-list:38480] Re: ruby-dev summary 21403-21530 (draft)
Date: Thu, 9 Oct 2003 06:17:13 +0900
Message-ID: <20031009061711N.aamine@loveruby.net>

> ちょっとややこしいのでタイムテーブルを作りました。
> 
> 1.8 ブランチ (main trunk)
>   |
>   |
> 1.8.0 リリース  2003-08-04  marshal.c:1.95
>   |
>   |    2003-08-09  marshal.c:1.98
>   |--- marshal_dump が定義されていても IO を自動マーシャルして
>   |    エラーになってしまう問題 (*1) を回避するため、
>   |    marshal_dump が定義されているときはインスタンス変数を
>   |    ダンプしないことになった
>   |    …… つまり、実行例はこのころの ruby でなければならない
>   |
>   |    2003-08-11  [ruby-dev:21176]
>   |--- Time#_dump があるので Time のインスタンス変数が
>   |    マーシャライズされないという報告
>   |    (該当スレッドのルート)
>   |
>   |    2003-10-02  marshal.c:1.100
>   |--- 再度 generic インスタンス変数をダンプするようになる
>   |    ついでにインスタンス変数はすべてダンプするようになる
>   |
>   |    2003-10-03  [ruby-dev:21475]
>   |--- (*1) の問題が復活しているという指摘
>   |
>   |    2003-10-04  marshal.c:1.101
>   |--- ダンプできないものがあったらエラーではなく無視するように変更
>   |
>   |    その後、細々とバグフィックスが入る
>   ↓
> CVS HEAD  2003-10-08    marshal.c:1.103

おお。青木さんのタイムテーブルでやっと状況を把握できそうです。

2003-10-02にてインスタンス変数はすべてダンプするように
なっていますが、どうしてこうなったんでしたっけ?

Marshalのカスタマイズって、出力するオブジェクトを制御するんですよね。
一般的な目的って

 * あるインスタンス変数は出力したくない。
   (たとえばキャッシュデータとか)
   * そんで、別のオブジェクトを出力しておいたりもする。

だと思うんですがどうでしょう。



現状の作戦は、入力するオブジェクトを制御せよ、ってとこですか?

 dump
 * なんでも出力
 * 追加情報も出力

 load
 * なんでも復元
 * 追加情報も復元
   * これを使って復元してしまって出力したくなかったものを置き換え!?


どっちが使いやすいのかよくわからないのですが、現状の作戦って
すこし奇妙(なんていうの?びっくり??)な感じがします。


ところで、ダンプできないものがあったことを知れないのが
なんとなく不安です。



In This Thread