ひむろ と申します。

ruby の言語仕様について質問です。

ruby で破壊的メソッドを呼ぶことで、
呼出元の値を変えることができると思います。

------------------------------
def change(x)
	x.sub!("a", "A")
end
str = "abcde"
change(str)

-> str = "Abcde"
------------------------------

しかし、単なる代入だと、呼出元の値は変わりませんよね

------------------------------
def change(x)
	x = "Abcde"
end
str = "abcde"
change(str)

-> str = "abcde"
------------------------------

ruby の言語仕様として、メソッドの中で、"破壊的な代入"
によって呼出元の値を変えることができる方法ってあるのでしょうか?
( ="代入" の破壊的バージョンみたいなものを想定しています)

勿論 return 値を使えば、上記のようなことを考えなくても
困ることはないわけですが、私の疑問は、言語仕様として
できるのか、できないのかが知りたいのです。

初歩的な質問で申し訳ございません。
よろしくお願いします。

-- 
==================================================
  ひむろ うと
  himuro-uto / joy.hi-ho.ne.jp
==================================================