るりまサーチ

最速Rubyリファレンスマニュアル検索!
99件ヒット [1-99件を表示] (0.024秒)

別のキーワード

  1. objectspace each_object
  2. _builtin each_object
  3. object send
  4. object to_enum
  5. object enum_for

ライブラリ

クラス

モジュール

検索結果

Object#_dump(limit) -> String (39207.0)

Marshal.#dump において出力するオブジェクトがメソッド _dump を定義している場合には、そのメソッドの結果が書き出されます。

...がメソッド _dump
を定義している場合には、そのメソッドの結果が書き出されます。

バージョン1.8.0以降ではObject#marshal_dump, Object#marshal_loadの使用
が推奨されます。 Marshal.dump するオブジェクトが _dump と marshal_dump の両方の...
...ソッドを持つ場合は marshal_dump が優先されます。

メソッド _dump は引数として再帰を制限するレベル limit を受
け取り、オブジェクトを文字列化したものを返します。

インスタンスがメソッド _dump を持つクラスは必ず同じ...
...を文字列化したものを返すように定義すべきです。

//emlist[][ruby]{
class Foo
def initialize(arg)
@foo = arg
end
def _dump(limit)
Marshal.dump(@foo, limit)
end
def self._load(obj)
p obj
Foo.new(Marshal.load(obj))
end
end
foo = Foo.new(['foo', 'bar'])...

Object#marshal_dump -> object (27274.0)

Marshal.#dump を制御するメソッドです。

...arshal_dump
持つ場合には、その返り値がダンプされたものが Marshal.dump(some) の返り値となります。

marshal_dump/marshal_load の仕組みは Ruby 1.8.0 から導入されました。
これから書くプログラムでは _dump/_load ではなく
marshal_dump/mars...
...ジェクトで 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:0xbaf...
...定義されていてもマーシャルできるようになります
(特異メソッドの情報が自動的に dump されるようになるわけではなく、
marshal_dump/marshal_load によりそれを実現する余地があるということです)。

@see Object#marshal_load, Marshal...

Object#marshal_load(obj) -> object (21143.0)

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...

Delegator#marshal_dump -> object (6202.0)

シリアライゼーションをサポートするためにDelegator#__getobj__ が返すオブジェクトを返します。

シリアライゼーションをサポートするためにDelegator#__getobj__ が返すオブジェクトを返します。

1.6.8から1.8.0への変更点(まとめ) (426.0)

1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))

...スは特異クラス自身であると定義されました
((<ruby-bugs-ja:313>))。なんだかよくわかりません(^^;

class << Object
p [self.id, self]
class << self
p [self.id, self]
end
end
=> ruby 1.6.7 (2002-03-01) [i5...
...537771634, Class]
[537742484, Class]
=> ruby 1.7.3 (2002-09-05) [i586-linux]
[537771634, #<Class:Object>]
[537771634, #<Class:Object>]

さらに、オブジェクトの特異クラスのスーパークラスの特異クラスと
オブジェクトの特...
...ror/exit_value>)) [new]
: ((<LocalJumpError#reason|LocalJumpError/reason>)) [new]

追加

=== Marshal

: ((<Marshal/Object#marshal_load>)) [new]
: ((<Marshal/Object#marshal_dump>)) [new]

追加 ((<ruby-dev:21016>))

=== MatchData

: ((<MatchData#captures|MatchData/captures>)) [new]

追加...

絞り込み条件を変える

Marshal フォーマット (120.0)

Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。

...:marshal_format#Object 参照)

//emlist[例][ruby]{
class Foo
end
p Marshal.dump(Foo.new).unpack("x2 a a c a*")
# => ["o", ":", 8, "Foo\x00"]
//}

=== 'u'

_dump
、_load を定義していれば 'u' になります。
インスタンス変数は dump されなくなるので、_dump/_load で対応...
...| _dump の結果の長さ(Fixnum形式) | _dump が返す値 |
//}

//emlist[][ruby]{
# coding: ascii-8bit
class Foo
def self._load
end
def _dump(obj)
"hogehoge"
end
end
p Marshal.dump(Foo.new).unpack("x2 a aca3 c a*")
# => ["u", ":", 8, "Foo", 13, "hogehoge"]
//}

=== 'U'

marshal_dump...
...p されなくなるので、marshal_dump/marshal_load
で対応する必要があります。

//emlist{
| 'U' | クラス名(Symbol)の dump | marshal_dump メソッドの戻り値の dump |
//}

//emlist[][ruby]{
# coding: ascii-8bit
class Foo
def marshal_dump
"hogehoge"
end
def marshal...

Delegator#marshal_load(obj) -> object (107.0)

シリアライズされたオブジェクトから、Delegator#__getobj__ が返すオブジェクトを再現します。

...シリアライズされたオブジェクトから、Delegator#__getobj__ が返すオブジェクトを再現します。

@param obj Delegator#marshal_dumpの戻り値のコピー...

Marshal.#dump(obj, limit = -1) -> String (18.0)

obj を指定された出力先に再帰的に出力します。

...オブジェクトをダンプしようとした場合に発生します。

@raise ArgumentError limit 段以上深くリンクしたオブジェクトをダンプしようと
した場合に発生します。

@see Object#marshal_dump, Object#marshal_load...

Marshal.#dump(obj, port, limit = -1) -> IO (18.0)

obj を指定された出力先に再帰的に出力します。

...オブジェクトをダンプしようとした場合に発生します。

@raise ArgumentError limit 段以上深くリンクしたオブジェクトをダンプしようと
した場合に発生します。

@see Object#marshal_dump, Object#marshal_load...