るりまサーチ

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

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

キーワード

検索結果

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

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

...hal.#load を制御するメソッドです。

some のダンプ結果(Marshal.dump(some)) をロードする(Marshal.load(Marshal.dump(some)))に
は some がメソッド 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...

Object#marshal_dump -> object (128.0)

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_dump を定義...

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

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

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

バージョン1.8.0以降ではObject#marshal_dump, Object#marshal_loadの使用
が推奨されます。 Marshal.dump するオブジェクトが _dump と marshal_dump の両方の
メソッドを持...
...ラスメソッド _load を定義する必要があり
ます。_load はオブジェクトを表現した文字列を受け取り、それ
をオブジェクトに戻したものを返す必要があります。

@
param limit 再帰の制限レベルを表す整数です。
@
return オブジェク...
...

//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'])
p foo #=> #<Foo:0xbaf234 @foo=["foo", "bar"]>...

Object#clone(freeze: nil) -> object (50.0)

オブジェクトの複製を作成して返します。

...bol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。

@
param freeze true を指定すると freeze されたコピーを返します。
false を指定すると freeze されていないコ...
...freeze されていないコピーを返します。
@
raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
obj.taint
def obj.fuga
end
obj.fr...
...obj_d) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@
see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...
...bj_d) #=> true
p(obj_d.tainted?) #=> false
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@
see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...
...freeze されていないコピーを返します。
@
raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
def obj.fuga
end
obj.freeze

p(ob...
...l?(obj_d)) #=> false
p(obj == obj_d) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@
see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...

Object#dup -> object (50.0)

オブジェクトの複製を作成して返します。

...bol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。

@
param freeze true を指定すると freeze されたコピーを返します。
false を指定すると freeze されていないコ...
...freeze されていないコピーを返します。
@
raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
obj.taint
def obj.fuga
end
obj.fr...
...obj_d) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@
see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...
...bj_d) #=> true
p(obj_d.tainted?) #=> false
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@
see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...
...freeze されていないコピーを返します。
@
raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
def obj.fuga
end
obj.freeze

p(ob...
...l?(obj_d)) #=> false
p(obj == obj_d) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@
see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...

絞り込み条件を変える