るりまサーチ

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

別のキーワード

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

ライブラリ

クラス

検索結果

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

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

...ェクトの複製を作成して返します。

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

clone
dup は浅い(shallow)コピーであることに注...
...reeze されていないコピーを返します。
@raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
obj.taint
def obj.fuga
end
obj.fre...
...j.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(obj_c.frozen?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

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

obj_d = obj.dup

p(obj.equal?(obj_d)) #=> false
p(obj...
...オブジェクトの複製を作成して返します。

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

clone
dup は浅い(shallow)コピーであることに注意し...
...reeze されていないコピーを返します。
@raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

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

p(obj...
...#=> 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

obj_d = obj.dup

p(obj.equal?(obj_d)) #=> false
p(obj == obj_d)...

Object#dup -> object (18199.0)

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

...ェクトの複製を作成して返します。

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

clone
dup は浅い(shallow)コピーであることに注...
...reeze されていないコピーを返します。
@raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
obj.taint
def obj.fuga
end
obj.fre...
...j.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(obj_c.frozen?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

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

obj_d = obj.dup

p(obj.equal?(obj_d)) #=> false
p(obj...
...オブジェクトの複製を作成して返します。

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

clone
dup は浅い(shallow)コピーであることに注意し...
...reeze されていないコピーを返します。
@raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

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

p(obj...
...#=> 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

obj_d = obj.dup

p(obj.equal?(obj_d)) #=> false
p(obj == obj_d)...

IO#clone -> IO (18185.0)

レシーバと同じ IO を参照する新しい IO オブジェクトを返します。 参照しているファイル記述子は dup(2) されます。

...ァイル記述子は dup(2) されます。

clone
の際に self は一旦 IO#flush されます。
フリーズした IO の clone は同様にフリーズされた IO を返しますが、
dup
は内容の等しいフリーズされていない IO を返します。

@raise IOError 既に close...
...されていた場合に発生します。

//emlist[例][ruby]{
clone
_io = nil
IO.write("testfile", "test")
File.open("testfile") do |io|
clone
_io = io.clone
end
clone
_io.read # => "test"
clone
_io.close
//}...

IO#dup -> IO (18185.0)

レシーバと同じ IO を参照する新しい IO オブジェクトを返します。 参照しているファイル記述子は dup(2) されます。

...ァイル記述子は dup(2) されます。

clone
の際に self は一旦 IO#flush されます。
フリーズした IO の clone は同様にフリーズされた IO を返しますが、
dup
は内容の等しいフリーズされていない IO を返します。

@raise IOError 既に close...
...されていた場合に発生します。

//emlist[例][ruby]{
clone
_io = nil
IO.write("testfile", "test")
File.open("testfile") do |io|
clone
_io = io.clone
end
clone
_io.read # => "test"
clone
_io.close
//}...

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

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

...メソッドは変化しません。

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

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

デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェッ...
...的に private に設定されます。

@raise TypeError レシーバが freeze されているか、obj のクラスがレシーバ
のクラスと異なる場合に発生します。
@see Object#clone,Object#dup

以下に例として、dup clone がこのメソッドをどのように利...

絞り込み条件を変える