福間@福岡 です。

記事 <018901bf3104$43ef7520$0201a8c0 / tinyforest.gr.jp> にて、
"Shigeo Kobayashi" <shigeo / tinyforest.gr.jp> さんは書きました:

> ところで、freezeがあるのならmeltはあるのでしょうか?

いちどfreezeしたオブジェクトそのものを元に戻す手段はありませんが、
dup メソッドを使えば、同じ内容のfreezeされていないオブジェクトを
得ることができます。

  a = [1].freeze
  p a.frozen?     #==> true
  
  b = a.dup
  p b             #==> [1]
  p b.frozen?     #==> false
  
  b[0] = "foo"
  p b             #==> ["foo"]

dup とほぼ同じ働きをするメソッドに clone というのもありますが、こちらは
freezeされたままの状態で複製を作ります:

  c = a.clone
  p c             #==> [1]
  p c.frozen?     #==> true
  
  c[0] = "foo"    #==> error

---
 Yasuhiro Fukuma (福間 康弘) as Yasu.F @ Kitakyushu.Fukuoka.Japan
 Web site: http://www8.big.or.jp/~yasuf/
 PGP fingerprint = 17 25 8A F3 99 E5 7E 19  C0 EA 6E 03 8A C3 CE F0
 “I hate AMERIKA-JIN.”