Christian Cantrell
2/13/2006 4:17:00 AM
For those interested, I was passing in an instance of Text rather
than a string. Oops. Calling to_s solved the problem.
Christian
On Feb 12, 2006, at 1:14 PM, Christian Cantrell wrote:
> I'm trying to use the unnormalize method of the Text class in the
> REXML module to un-escape some XML, but I'm getting this error:
>
> /usr/local/lib/ruby/1.8/rexml/text.rb:304:in `unnormalize': private
> method `gsub!' called for #<REXML::Text:0x10aeb80> (NoMethodError)
>
> The code for the unnormalize method looks like this:
>
> def Text::unnormalize( string, doctype=nil, filter=nil, illegal=nil )
> rv = string.clone
> rv.gsub!( /\r\n?/, "\n" )
> ...
>
> Any ideas as to why Ruby thinks gsub! is private, and why I can't
> call the method?
>
> Thanks,
> Christian
>