120件ヒット
[1-100件を表示]
(0.075秒)
別のキーワード
種類
- インスタンスメソッド (72)
- 文書 (24)
- モジュール関数 (24)
ライブラリ
- ビルトイン (72)
- delegate (12)
-
rubygems
/ version (12)
クラス
- Delegator (12)
-
Gem
:: Version (12) - Object (36)
- Random (12)
モジュール
- Marshal (24)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - Marshal フォーマット (12)
-
_ dump (12) - dump (24)
-
marshal
_ dump (12)
検索結果
先頭5件
-
Object
# marshal _ load(obj) -> object (18149.0) -
Marshal.#load を制御するメソッドです。
...ド marshal_load を持っていなければなりません。
このとき、marshal_dump の返り値が marshal_load の引数に利用されます。
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 (18125.0) -
Random#marshal_dump で得られた配列を基に、Randomオブジェクトを復元します。
...れた配列を基に、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... -
Gem
:: Version # marshal _ load(array) -> nil (18113.0) -
ダンプされた情報をロードし、自身を破壊的に変更します。
...ダンプされた情報をロードし、自身を破壊的に変更します。
//emlist[][ruby]{
version = Gem::Version.new('')
version.marshal_load(["1.2.0a"])
p version # => #<Gem::Version "1.2.0a">
//}
@param array バージョン情報を含む配列を指定します。... -
Delegator
# marshal _ load(obj) -> object (18107.0) -
シリアライズされたオブジェクトから、Delegator#__getobj__ が返すオブジェクトを再現します。
...シリアライズされたオブジェクトから、Delegator#__getobj__ が返すオブジェクトを再現します。
@param obj Delegator#marshal_dumpの戻り値のコピー... -
Object
# marshal _ dump -> object (102.0) -
Marshal.#dump を制御するメソッドです。
...なります。
marshal_dump/marshal_load の仕組みは Ruby 1.8.0 から導入されました。
これから書くプログラムでは _dump/_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
@foo = obj
end
end
foo = Foo.new(['foo', '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"]>
//}
インスタンス変数の情報は普通マーシャルデータに含まれるので、
上例のよ... -
Marshal フォーマット (60.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
...lass Foo < Array # (or String, Regexp, Hash)
def initialize(obj)
@foo = false
super(obj)
end
end
p Marshal.dump(Foo.new([true])).unpack("x2 a a a c a3 aca caca4 a")
# => ["I", "C", ":", 8, "Foo", "[", 6, "T", 6, ":", 9, "@foo", "F"]
//}
==== その他
実装上内部構造が異なる......a*")
# => ["u", ":", 8, "Foo", 13, "hogehoge"]
//}
=== 'U'
marshal_dump、marshal_load を定義していれば 'U' になります。
インスタンス変数は dump されなくなるので、marshal_dump/marshal_load
で対応する必要があります。
//emlist{
| 'U' | クラス名(Symb......shal_dump メソッドの戻り値の dump |
//}
//emlist[][ruby]{
# coding: ascii-8bit
class Foo
def marshal_dump
"hogehoge"
end
def marshal_load(obj)
end
end
p Marshal.dump(Foo.new).unpack("x2 a aca3 a c a*")
# => ["U", ":", 8, "Foo", "\"", 13, "hogehoge"]
//}
===[a:Object] Object... -
Marshal
. # dump(obj , limit = -1) -> String (54.0) -
obj を指定された出力先に再帰的に出力します。
...ーシャルの動作を任意に定義することもできます。
@param obj ダンプする対象のオブジェクトを指定します。
@param port IO かそのサブクラスのインスタンスを指定します。
@param limit 指定した場合、limit 段以上深くリンクした......ェックを行いません。
デフォルトは -1 です。
@return port を省略すると、obj をダンプした String を返します。
port を指定すると port を返します。
@raise TypeError ファイルに書き出せないオブジェクトをファ......オブジェクトをダンプしようとした場合に発生します。
@raise ArgumentError limit 段以上深くリンクしたオブジェクトをダンプしようと
した場合に発生します。
@see Object#marshal_dump, Object#marshal_load... -
Marshal
. # dump(obj , port , limit = -1) -> IO (54.0) -
obj を指定された出力先に再帰的に出力します。
...ーシャルの動作を任意に定義することもできます。
@param obj ダンプする対象のオブジェクトを指定します。
@param port IO かそのサブクラスのインスタンスを指定します。
@param limit 指定した場合、limit 段以上深くリンクした......ェックを行いません。
デフォルトは -1 です。
@return port を省略すると、obj をダンプした String を返します。
port を指定すると port を返します。
@raise TypeError ファイルに書き出せないオブジェクトをファ......オブジェクトをダンプしようとした場合に発生します。
@raise ArgumentError limit 段以上深くリンクしたオブジェクトをダンプしようと
した場合に発生します。
@see Object#marshal_dump, Object#marshal_load... -
Object
# _ dump(limit) -> String (48.0) -
Marshal.#dump において出力するオブジェクトがメソッド _dump を定義している場合には、そのメソッドの結果が書き出されます。
...している場合には、そのメソッドの結果が書き出されます。
バージョン1.8.0以降ではObject#marshal_dump, Object#marshal_loadの使用
が推奨されます。 Marshal.dump するオブジェクトが _dump と marshal_dump の両方の
メソッドを持つ場合は ma......あります。
@param limit 再帰の制限レベルを表す整数です。
@return オブジェクトを文字列化したものを返すように定義すべきです。
//emlist[][ruby]{
class Foo
def initialize(arg)
@foo = arg
end
def _dump(limit)
Marshal.dump(@foo, limit)
en......#=> #<Foo:0xbaf234 @foo=["foo", "bar"]>
dms = Marshal.dump(foo)
p dms #=> "\004\bu:\bFoo\023\004\b[\a\"\bfoo\"\bbar"
result = Marshal.load(dms) #=> "\004\b[\a\"\bfoo\"\bbar" # self._load の引数
p result #=> #<Foo:0xbaf07c @foo=["foo", "bar"]>
//}...