187件ヒット
[1-100件を表示]
(0.021秒)
別のキーワード
種類
- インスタンスメソッド (99)
- モジュール関数 (44)
- 定数 (22)
- モジュール (11)
- クラス (11)
モジュール
- Marshal (66)
キーワード
-
MAJOR
_ VERSION (11) -
MINOR
_ VERSION (11) - Time (11)
-
_ dump (11) - clone (11)
- dump (22)
- dup (11)
- load (11)
-
marshal
_ dump (44) -
marshal
_ load (22) - restore (11)
検索結果
先頭5件
-
Marshal (38014.0)
-
Ruby オブジェクトをファイル(または文字列)に書き出したり、読み戻したり する機能を提供するモジュール。
...。
大部分のクラスのインスタンスを書き出す事ができますが、書き出しの不可能なクラスも存在します(Marshal.#dump を参照)。
ここで「マーシャルデータ」と言う用語は、Marshal.#dump が出力する文字列
を指すものとします。... -
Marshal
:: MAJOR _ VERSION -> Integer (21030.0) -
Marshal.#dump が出力するデータフォーマットのバージョン番号です。
...
Marshal.#dump が出力するデータフォーマットのバージョン番号です。
Marshal.#load は、メジャーバージョンが異なるか、バージョンの大きな
マーシャルデータを読み込んだとき例外 TypeError を発生させます。
マイナーバージョ......のときには警告メッセージが出力されます
マーシャルされたデータのバージョン番号は以下のようにして取得するこ
とができます。
//emlist[例][ruby]{
obj = Object.new
major, minor = Marshal.dump(obj).unpack("cc")
p [major, minor]
# => [4, 8]
//}... -
Marshal
:: MINOR _ VERSION -> Integer (21030.0) -
Marshal.#dump が出力するデータフォーマットのバージョン番号です。
...
Marshal.#dump が出力するデータフォーマットのバージョン番号です。
Marshal.#load は、メジャーバージョンが異なるか、バージョンの大きな
マーシャルデータを読み込んだとき例外 TypeError を発生させます。
マイナーバージョ......のときには警告メッセージが出力されます
マーシャルされたデータのバージョン番号は以下のようにして取得するこ
とができます。
//emlist[例][ruby]{
obj = Object.new
major, minor = Marshal.dump(obj).unpack("cc")
p [major, minor]
# => [4, 8]
//}... -
Marshal
. # dump(obj , limit = -1) -> String (21020.0) -
obj を指定された出力先に再帰的に出力します。
...フォルト値を求めるブロックを持った Hash は
Proc を間接的に指していることになります。
//emlist[例][ruby]{
p Marshal.dump(Hash.new {})
# => -:1:in `dump': cannot dump hash with default proc (TypeError)
//}
マーシャルの動作を任意に定義することも......オブジェクトをダンプしようとした場合に発生します。
@raise ArgumentError limit 段以上深くリンクしたオブジェクトをダンプしようと
した場合に発生します。
@see Object#marshal_dump, Object#marshal_load... -
Marshal
. # dump(obj , port , limit = -1) -> IO (21020.0) -
obj を指定された出力先に再帰的に出力します。
...フォルト値を求めるブロックを持った Hash は
Proc を間接的に指していることになります。
//emlist[例][ruby]{
p Marshal.dump(Hash.new {})
# => -:1:in `dump': cannot dump hash with default proc (TypeError)
//}
マーシャルの動作を任意に定義することも......オブジェクトをダンプしようとした場合に発生します。
@raise ArgumentError limit 段以上深くリンクしたオブジェクトをダンプしようと
した場合に発生します。
@see Object#marshal_dump, Object#marshal_load... -
Marshal
. # load(port , proc = nil) -> object (21014.0) -
port からマーシャルデータを読み込んで、元のオブジェクトと同 じ状態をもつオブジェクトを生成します。
...合には読み込んだ
オブジェクトを引数にその手続きを呼び出します。
//emlist[例][ruby]{
str = Marshal.dump(["a", 1, 10 ** 10, 1.0, :foo])
p Marshal.load(str, proc {|obj| p obj})
# => "a"
# 1
# 10000000000
# 1.0
# :foo
# ["a", 1, 10000000000, 1.0, :foo]
#... -
Marshal
. # restore(port , proc = nil) -> object (21014.0) -
port からマーシャルデータを読み込んで、元のオブジェクトと同 じ状態をもつオブジェクトを生成します。
...合には読み込んだ
オブジェクトを引数にその手続きを呼び出します。
//emlist[例][ruby]{
str = Marshal.dump(["a", 1, 10 ** 10, 1.0, :foo])
p Marshal.load(str, proc {|obj| p obj})
# => "a"
# 1
# 10000000000
# 1.0
# :foo
# ["a", 1, 10000000000, 1.0, :foo]
#... -
Object
# marshal _ dump -> object (6269.0) -
Marshal.#dump を制御するメソッドです。
...
Marshal.#dump を制御するメソッドです。
Marshal.dump(some) において、出力するオブジェクト some がメソッド marshal_dump を
持つ場合には、その返り値がダンプされたものが Marshal.dump(some) の返り値となります。
marshal_dump/marshal_load......mp/_load ではなく
marshal_dump/marshal_load を使うべきです。
@return 任意のオブジェクトで marshal_load の引数に利用できます。
//emlist[][ruby]{
class Foo
def initialize(arg)
@foo = arg
end
def marshal_dump
@foo
end
def marshal_load(obj)
p obj......'bar'])
p foo #=> #<Foo:0xbaf3b0 @foo=["foo", "bar"]>
dms = Marshal.dump(foo)
p dms #=> "\004\bU:\bFoo[\a\"\bfoo\"\bbar"
result = Marshal.load(dms) #=> ["foo", "bar"] # marshal_load の引数
p result #=> #<Foo:0xbaf2ac @foo=["foo", "bar"]... -
Object
# marshal _ load(obj) -> object (6203.0) -
Marshal.#load を制御するメソッドです。
...
Marshal.#load を制御するメソッドです。
some のダンプ結果(Marshal.dump(some)) をロードする(Marshal.load(Marshal.dump(some)))に
は some がメソッド marshal_load を持っていなければなりません。
このとき、marshal_dump の返り値が marshal_loa......す。
marshal_load 時の self は、生成されたばかり(Class#allocate されたばかり) の状態です。
marshal_dump/marshal_load の仕組みは Ruby 1.8.0 から導入されました。
これから書くプログラムでは _dump/_load ではなく
marshal_dump/marshal_load を......使うべきです。
@param obj marshal_dump の返り値のコピーです。
@return 返り値は無視されます。
@see Object#marshal_dump, Marshal... -
Random
# marshal _ load(array) -> Random (6143.0) -
Random#marshal_dump で得られた配列を基に、Randomオブジェクトを復元します。
...Random#marshal_dump で得られた配列を基に、Randomオブジェクトを復元します。
@param array 三要素以下からなる配列を指定します。
何を指定するかはRandom#marshal_dumpを参考にしてください。
@raise ArgumentError array が3より大......きい場合に発生します。
//emlist[例][ruby]{
r1 = Random.new(1)
a1 = r1.marshal_dump
r2 = Random.new(3)
r3 = r2.marshal_load(a1)
p r1 == r2 # => true
p r1 == r3 # => true
//}
@see Random#marshal_dump...