るりまサーチ

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

別のキーワード

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

ライブラリ

キーワード

検索結果

Object#freeze -> self (18169.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 (6126.0)

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

...数や特異メソッドは変化しません。

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

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

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

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

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

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

Object#dup -> object (3283.0)

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

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

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

clone や dup は浅い(shallow)コピーであることに注...
...@param freeze true を指定すると freeze されたコピーを返します。
false を指定すると freeze されていないコピーを返します。
nil を指定すると、レシーバが freeze されていれば freeze されたコピーを、freeze...
...れていなければ freeze されていないコピーを返します。
@raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
obj.taint
d...
...ブジェクトの複製を作成して返します。

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

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

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

p
(o...

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

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

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

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

clone や dup は浅い(shallow)コピーであることに注...
...@param freeze true を指定すると freeze されたコピーを返します。
false を指定すると freeze されていないコピーを返します。
nil を指定すると、レシーバが freeze されていれば freeze されたコピーを、freeze...
...れていなければ freeze されていないコピーを返します。
@raise ArgumentError TrueClass などの常に freeze されているオブジェクトの freeze されていないコピーを作成しようとしたときに発生します。

//emlist[][ruby]{
obj = "string"
obj.taint
d...
...ブジェクトの複製を作成して返します。

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

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

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

p
(o...

Object#taint -> self (32.0)

このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。

...から deprecated で、Ruby 3.2 で削除予定です。

オブジェクトの「汚染マーク」をセットします。

環境変数(ENVで得られる文字列)など一部のオブジェクトは最初から汚染されています。
オブジェクトの汚染に関してはspec/safel...
..."puts '@&%&(#!'"
p
some.tainted? #=> false
eval(some) #=> @&%&(#!

some.taint
p
some.tainted? #=> true
eval(some) # Insecure operation - eval (SecurityError)

some.untaint
p
some.tainted? #=> false
eval(some) #=> @&%&(#!

p
ENV['OS'].tainted? #=> true
//}

@see Object#tainted?,Object#untaint,Object#...

絞り込み条件を変える

Object#frozen? -> bool (26.0)

オブジェクトが凍結(内容の変更を禁止)されているときに真を返します。

...オブジェクトが凍結(内容の変更を禁止)されているときに真を返します。

//emlist[][ruby]{
obj = "someone"
p
obj.frozen? #=> false
obj.freeze
p
obj.frozen? #=> true
//}

@see Object#freeze...