From: Harry Kakueki Date: 2007-06-05T21:33:00+09:00 Subject: Re: Writing method "change!" for String On 6/5/07, Mike wrote: > Hi, > > I'm trying to write simple method to change internal value of > String class: > > class String > def change! > self="0" if self.downcase=="myvalue1" > self="1" if self.downcase=="myvalue2" > self > end > end > > test="myvalue1" > test.change! > p test > > It should just change value of string to what I want. But I get error: > "Can't change the value of self". > How do I proceed? > > Thanks. > > > Do not try to change self. Try this. class String def change! val="0" if self.downcase=="myvalue1" val="1" if self.downcase=="myvalue2" val end end test="myvalue1" p test.change! p test Harry -- A Look into Japanese Ruby List in English http://www.kakueki.com/