るりまサーチ

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

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. matrix p
  5. kernel p

ライブラリ

クラス

モジュール

キーワード

検索結果

<< 1 2 > >>

Object#freeze -> self (18168.0)

オブジェクトを凍結(内容の変更を禁止)します。

...クトであり、変数ではありません。代入などで変数の指す
オブジェクトが変化してしまうことは freeze では防げません。 freeze が防ぐのは、
`破壊的な操作' と呼ばれるもの一般です。変数への参照自体を凍結したい
場合は...
...lf を返します。

//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p
a1 #=> "bar"

a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (RuntimeError)
//}

凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジ...
...ます。

//emlist[][ruby]{
a = [1].freeze
p
a.frozen? #=> true

a[0] = "foo"
p
a # can't modify frozen Array (RuntimeError)

b = a.dup
p
b #=> [1]
p
b.frozen? #=> false

b[0] = "foo"
p
b #=> ["foo"]
//}

@see Object#frozen?,Object#dup,Kernel.#trace_var...
...lf を返します。

//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p
a1 #=> "bar"

a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (FrozenError)
//}

凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジ...
...ます。

//emlist[][ruby]{
a = [1].freeze
p
a.frozen? #=> true

a[0] = "foo"
p
a # can't modify frozen Array (FrozenError)

b = a.dup
p
b #=> [1]
p
b.frozen? #=> false

b[0] = "foo"
p
b #=> ["foo"]
//}

@see Object#frozen?,Object#dup,Kernel.#trace_var...

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

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

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

initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C...
...lize_copy でコピーするよう定義しておくことで、dup や clone
を再定義する必要がなくなります。

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

initialize_copy と...
...のメソッドは
自動的に private に設定されます。

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

以下に例として、dup や clone がこのメソッ...

Rake::Cloneable#dup -> object (6107.0)

自身と同じクラスのオブジェクトを作成後、自身のインスタンス変数を 全て新たに作成したオブジェクトにコピーします。

...//emlist[][ruby]{
# Rakefile での記載例とする

task default: :test_rake_app
task :test_rake_app do
file_list = FileList['a.c', 'b.c']
file_list.freeze
dup = file_list.dup
clone = file_list.clone
dup.exclude("a.c") # => ["b.c"]
clone.exclude("a.c") # => can't modify frozen Rak...

Object#dup -> object (3252.0)

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

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

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

clone や dup は浅い(shallow)コピーであることに注...
...はなくインスタンス自身を返します。

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

p
(obj.equal?(obj)) #=> 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_...
...obj.freeze

p
(obj.equal?(obj)) #=> 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_...
...ブジェクトの複製を作成して返します。

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

clone や dup は浅い(shallow)コピーであることに注意して...
...freeze

p
(obj.equal?(obj)) #=> 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.resp...

String#dedup -> String | self (3155.0)

self が freeze されている文字列の場合、self を返します。 freeze されていない場合は元の文字列の freeze された (できる限り既存の) 複製を返します。

...self が freeze されている文字列の場合、self を返します。
freeze
されていない場合は元の文字列の freeze された (できる限り既存の) 複製を返します。

//emlist[例][ruby]{
# frozen_string_literal: false

original_text = "text"
frozen_text = -original_...
...en? # => true
original_text == frozen_text # => true
original_text.equal?(frozen_text) # => false

original_text = "text".freeze
frozen_text = -original_text
frozen_text.frozen? # => true
original_text == frozen_text # => true
original_text.equal?(froz...

絞り込み条件を変える

Set#dup -> Set (3131.0)

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

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

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

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

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

@see Object#clone...

ThreadGroup#enclosed? -> bool (3037.0)

自身が enclose されているなら true を返します。そうでないなら false を返します。デフォルトは false です。

...se です。

freeze
された ThreadGroup には Thread の追加/削除ができませんが、enclosed? は false を返します。

thg = ThreadGroup.new
p
thg.enclosed? # => false
thg.enclose
p
thg.enclosed? # => true

thg = ThreadGroup.new
p
thg.enclose...
...d? # => false
thg.freeze
p
thg.enclosed? # => false

@see ThreadGroup#enclose...

OpenStruct#modifiable -> Hash (3013.0)

このメソッドは内部的に使用されます。

...このメソッドは内部的に使用されます。

自身が Object#freeze されている場合にこのメソッドを呼び出すと例外が発生します。

@raise TypeError 自身が Object#freeze されている場合に発生します。...

ThreadGroup#add(thread) -> self (3013.0)

スレッド thread が属するグループを自身に変更します。

...を自身に変更します。

@param thread 自身に加えたいスレッドを指定します。

@raise ThreadError 自身が freeze されているか enclose されている場合に、発生します。また引数 thread が属する ThreadGroup freeze されているか enclose され...
...ruby]{
p
uts "Initial group is #{ThreadGroup::Default.list}"
# => Initial group is [#<Thread:0x4a49168 run>]

tg = ThreadGroup.new
t1 = Thread.new { sleep }
t2 = Thread.new { sleep }
p
uts "t1 is #{t1}" # => t1 is #<Thread:0x50bef60>
p
uts "t2 is #{t2}" # => t2 is #<Thread:0x50beed0>
tg.add(t1)
p
uts "I...
...nitial group now #{ThreadGroup::Default.list}"
# => Initial group now [#<Thread:0x3039168 run>, #<Thread:0x50beed0 run>]
p
uts "tg group now #{tg.list}"
# => tg group now [#<Thread:0x50bef60 run>]
//}...

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

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

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

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

clone や dup は浅い(shallow)コピーであることに注...
...はなくインスタンス自身を返します。

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

p
(obj.equal?(obj)) #=> 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_...
...obj.freeze

p
(obj.equal?(obj)) #=> 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_...
...ブジェクトの複製を作成して返します。

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

clone や dup は浅い(shallow)コピーであることに注意して...
...freeze

p
(obj.equal?(obj)) #=> 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.resp...

絞り込み条件を変える

<< 1 2 > >>