るりまサーチ

最速Rubyリファレンスマニュアル検索!
31件ヒット [1-31件を表示] (0.015秒)
トップページ > クラス:Object[x] > クエリ:TRUE[x] > クエリ:clone[x]

別のキーワード

  1. object true
  2. _builtin true
  3. rb_true
  4. true
  5. true object

ライブラリ

キーワード

検索結果

Object#clone(freeze: true) -> object (18293.0)

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

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

clone
や dup は浅い(shallow)コピーであることに注意してください。後述。

True
Class, FalseClass, NilClass, Symbol, そ...
...se ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

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

p(obj.equal?(obj)) #=> true
p(obj == obj)...
...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_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...
...ジェクトの内容をコピーし、
clone
はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone
や dup は浅い(shallow)コピーであることに注意してください。後述。

True
Class, FalseClass, NilClass, Symbol, そ...
...or TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

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

p(obj.equal?(obj)) #=> true
p(obj == obj) #=> true
p...
...c) #=> true
p(obj_c.frozen?) #=> 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.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@see Object#initialize_copy...

Object#dup -> object (3093.0)

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

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

clone
や dup は浅い(shallow)コピーであることに注意してください。後述。

True
Class, FalseClass, NilClass, Symbol, そ...
...se ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

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

p(obj.equal?(obj)) #=> true
p(obj == obj)...
...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_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...
...ジェクトの内容をコピーし、
clone
はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone
や dup は浅い(shallow)コピーであることに注意してください。後述。

True
Class, FalseClass, NilClass, Symbol, そ...
...or TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

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

p(obj.equal?(obj)) #=> true
p(obj == obj) #=> true
p...
...c) #=> true
p(obj_c.frozen?) #=> 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.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@see Object#initialize_copy...

Object#initialize_copy(obj) -> object (49.0)

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

...は self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object
#clone, Object#dupの内部で使われています。

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

デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソ...
....taint

check Object.new.send(:initialize_copy, obj)
#=> instance variables: #<Object:0x4019c9d4>
# tainted?: false
# singleton methods: #<NoMethodError: ...>
check obj.dup
#=> instance variables: #<Object:0x4019c9c0 @foo=1>
# tainted?: true
#...