ライブラリ
- ビルトイン (3)
検索結果
-
Object
# freeze -> self (13) -
オブジェクトを凍結(内容の変更を禁止)します。
...バル変数なら Kernel.#trace_var が使えます。
@return self を返します。
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"
a2 = "foo".freeze
a2.replace("bar")# can't modify frozen string (TypeError)
凍結を解除することはできませんが、Object#dup を使えば......ます。
a = [1].freeze
p a.frozen? #=> true
a[0] = "foo"
p a # can't modify frozen array (TypeError)
b = a.dup
p b #=> [1]
p b.frozen? #=> false
b[0] = "foo"
p b #=> ["foo"]
@see Object#frozen?,Object#dup,Kernel.#trace_var......ル変数なら Kernel.#trace_var が使えます。
@return self を返します。
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"
a2 = "foo".freeze
a2.replace("bar")# can't modify frozen string (RuntimeError)
凍結を解除することはできませんが、Object#dup を使えば......す。
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...
