blob: 7529e7942f1e30a385c71777231ce6744d6c18bc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
.\" marshal.doc - -*- Indented-Text -*- created at: Tue May 16 12:18:08 JST 1995
** Marshal(モジュール)
rubyオブジェクトをファイルに書き出したり,読みも度したりする機能を提供
するモジュール.大部分のクラスのインスタンスを書き出す事ができるが,ファ
イルへの不可能なクラスも存在し(例:IO),そのようなクラスを書き出そうと
すると例外を発生させる.
Methods:
Single Methods:
dump(obj, port[, limit])
objを再帰的にファイルに書き出す.ファイルに書き出せないクラスのイ
ンスタンスをファイルに書き出そうとすると例外を発生させる.ファイル
に書き出せないクラスは以下の通り.
Class, Module, Data
また,これらのクラスを間接的に指すクラス(例えばIOのサブクラス)など
も書き出せない.portはIO(またはそのサブクラス)のインスタンスを指定
する.
出力するオブジェクトがメソッド`_dump_to'を定義している場合には,ファ
イル出力はそのメソッドを使って行われる.メソッド`_dump_to'は引数と
して出力先のファイルオブジェクトを受け取る.インスタンスがメソッド
`_dump_to'を持つクラスは必ず同じフォーマットを読み戻す特異メソッド
`_load_from'を定義する必要がある.
limitを指定した場合,limit段以上深くリンクしたオブジェクトをダンプ
できない(デフォルトは100レベル)。負のlimitを指定すると深さチェック
を行わない。
dumps(obj)
dump()がファイルに書き出すのと同じ内容を含む文字列を返す.
load(port)
portからオブジェクトを読み込んで来て,元のオブジェクトと同じ状態を
もつオブジェクトを生成する.portは文字列かIO(またはそのサブクラス)
のインスタンスである.
-------------------------------------------------------
Local variables:
fill-column: 70
end:
|