るりまサーチ

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

別のキーワード

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

クラス

オブジェクト

キーワード

検索結果

<< 1 2 > >>

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

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

...て返します。

dup はオブジェクトの内容, taint 情報をコピーし、
clone
はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone
や dup は浅い(shallow)コピーであることに注意してください。後述...
...#=> true
p(obj == obj) #=> true
p(obj.tainted?) #=> true
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.tainted?) #=> true
p(o...
...n?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

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

@see Object#initialize_copy...
...#=> true
p(obj == obj) #=> true
p(obj.tainted?) #=> false
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.tainted?) #=> false
p(...
...n?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

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

@see Object#initialize_copy...
...製を作成して返します。

dup はオブジェクトの内容をコピーし、
clone
はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone
や dup は浅い(shallow)コピーであることに注意してください。後述...
...#=> true
p(obj == obj) #=> true
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.frozen?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

ob...
...j_d = obj.dup

p(obj.equal?(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 はオブジェクト自身を複製するだ...

ENV.clone(freeze: true) -> object (18316.0)

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

...3.1 からは複製で環境変数を操作するときに deprecated 警告がでます。

テスト実行中に環境変数を退避する用途には ENV.to_h を使用してください。

//emlist[][ruby]{
saved_env = ENV.to_h
# (テストなど)
ENV.replace(saved_env)
//}

@see Object#clone...
...複製で環境変数を操作するときに deprecated 警告がでます。

テスト実行中に環境変数を退避する用途には ENV.to_h を使用してください。

//emlist[][ruby]{
saved_env = ENV.to_h
# (テストなど)
ENV.replace(saved_env)
//}

@see Object#clone
@see ENV.dup...

Set#clone -> Set (18239.0)

集合を複製して返します。

...す。
clone
は、それに加えて、freeze 情報と特異メソッドをコピーします。
いずれも共通して、内部記憶として保持するハッシュもコピーしますが、
集合の要素そのものはコピーしません。

Set クラスでは、dup と clone に共通...
...し、clone では内部記憶の freeze 情報はコピーされません。
このため、freeze された集合を clone した場合、生成された集合の要素は
変更可能である点に注意してください。

//emlist[][ruby]{
s1 = Set[10, 20]
s2 = s1.dup
s2 << 30
p s1 # => #<Se...
...t: {10, 20}>
p s2 # => #<Set: {10, 20, 30}>
//}

@see Object#clone...

Hash#clone -> Hash (18221.0)

selfと同じ内容を持つ新しいハッシュを返します。

...selfと同じ内容を持つ新しいハッシュを返します。

clone
は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参...
...//emlist[例][ruby]{
h1 = {"have" => "have a","as" => "as a" }
h2 = h1.dup

h2["have"] = "has"
p h2 #=> {"have"=>"has", "as"=>"as a"}
p h1 #=> {"have"=>"have a", "as"=>"as a"}

h2["as"].upcase!
p h2 #=> {"have"=>"has", "as"=>"AS A"}
p h1 #=> {"have"=>"have a", "as"=>"AS A"}
//}

@see Object#clone...
...selfと同じ内容を持つ新しいハッシュを返します。

clone
は frozen singleton-class の情報も含めてコピーしますが、
dup は内容だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照してい...

Object#initialize_clone(obj) -> object (15360.0)

Object#clone がオブジェクトを複製する際に呼び出すメソッドです。

...
Object
#clone がオブジェクトを複製する際に呼び出すメソッドです。

デフォルトでは Object#initialize_copy を呼び出します。

initialize_clone という名前のメソッドは自動的に private に設定されます。

@see Object#initialize_copy, Object#initi...

絞り込み条件を変える

Object#dup -> object (12235.0)

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

...て返します。

dup はオブジェクトの内容, taint 情報をコピーし、
clone
はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone
や dup は浅い(shallow)コピーであることに注意してください。後述...
...#=> true
p(obj == obj) #=> true
p(obj.tainted?) #=> true
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.tainted?) #=> true
p(o...
...n?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

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

@see Object#initialize_copy...
...#=> true
p(obj == obj) #=> true
p(obj.tainted?) #=> false
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.tainted?) #=> false
p(...
...n?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

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

@see Object#initialize_copy...
...製を作成して返します。

dup はオブジェクトの内容をコピーし、
clone
はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone
や dup は浅い(shallow)コピーであることに注意してください。後述...
...#=> true
p(obj == obj) #=> true
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.frozen?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

ob...
...j_d = obj.dup

p(obj.equal?(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#initialize_copy(obj) -> object (9353.0)

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

...elf のインスタンス変数や特異メソッドは変化しません。

デフォルトでは、Object#clone の内部で Object#initialize_clone から、
また Object#dup の内部で Object#initialize_dup から呼ばれます。

initialize_copy は、Ruby インタプリタが知り得...
...そういった内部情
報を initialize_copy でコピーするよう定義しておくことで、dup や clone
を再定義する必要がなくなります。

デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソ...
...freeze されているか、obj のクラスがレシーバ
のクラスと異なる場合に発生します。
@see Object#clone,Object#dup

以下に例として、dup や clone がこのメソッドをどのように利用しているかを示します。

obj.dup は、新たに生成した...

Object#initialize_dup(obj) -> object (9243.0)

Object#dup がオブジェクトを複製する際に呼び出すメソッドです。

...
Object
#dup がオブジェクトを複製する際に呼び出すメソッドです。

デフォルトでは Object#initialize_copy を呼び出します。

initialize_dup という名前のメソッドは自動的に private に設定されます。

@see Object#initialize_copy, Object#initializ...
...e_clone...

Set#dup -> Set (3139.0)

集合を複製して返します。

...す。
clone
は、それに加えて、freeze 情報と特異メソッドをコピーします。
いずれも共通して、内部記憶として保持するハッシュもコピーしますが、
集合の要素そのものはコピーしません。

Set クラスでは、dup と clone に共通...
...し、clone では内部記憶の freeze 情報はコピーされません。
このため、freeze された集合を clone した場合、生成された集合の要素は
変更可能である点に注意してください。

//emlist[][ruby]{
s1 = Set[10, 20]
s2 = s1.dup
s2 << 30
p s1 # => #<Se...
...t: {10, 20}>
p s2 # => #<Set: {10, 20, 30}>
//}

@see Object#clone...

Hash#dup -> Hash (3121.0)

selfと同じ内容を持つ新しいハッシュを返します。

...selfと同じ内容を持つ新しいハッシュを返します。

clone
は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参...
...//emlist[例][ruby]{
h1 = {"have" => "have a","as" => "as a" }
h2 = h1.dup

h2["have"] = "has"
p h2 #=> {"have"=>"has", "as"=>"as a"}
p h1 #=> {"have"=>"have a", "as"=>"as a"}

h2["as"].upcase!
p h2 #=> {"have"=>"has", "as"=>"AS A"}
p h1 #=> {"have"=>"have a", "as"=>"AS A"}
//}

@see Object#clone...
...selfと同じ内容を持つ新しいハッシュを返します。

clone
は frozen singleton-class の情報も含めてコピーしますが、
dup は内容だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照してい...

絞り込み条件を変える

<< 1 2 > >>