diff options
Diffstat (limited to 'lib/rexml/encodings/ISO-8859-1.rb')
-rw-r--r-- | lib/rexml/encodings/ISO-8859-1.rb | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/lib/rexml/encodings/ISO-8859-1.rb b/lib/rexml/encodings/ISO-8859-1.rb index 0cb9afd147..5beefbd408 100644 --- a/lib/rexml/encodings/ISO-8859-1.rb +++ b/lib/rexml/encodings/ISO-8859-1.rb @@ -1,23 +1,25 @@ module REXML - module Encoding - # Convert from UTF-8 - def encode content - array_utf8 = content.unpack('U*') - array_enc = [] - array_utf8.each do |num| - if num <= 0xFF - array_enc << num - else - # Numeric entity (&#nnnn;); shard by Stefan Scholl - array_enc.concat "&\##{num};".unpack('C*') - end - end - array_enc.pack('C*') - end + module Encoding + @@__REXML_encoding_methods =<<-EOL + # Convert from UTF-8 + def encode content + array_utf8 = content.unpack('U*') + array_enc = [] + array_utf8.each do |num| + if num <= 0xFF + array_enc << num + else + # Numeric entity (&#nnnn;); shard by Stefan Scholl + array_enc.concat "&\##{num};".unpack('C*') + end + end + array_enc.pack('C*') + end - # Convert to UTF-8 - def decode(str) - str.unpack('C*').pack('U*') - end - end + # Convert to UTF-8 + def decode(str) + str.unpack('C*').pack('U*') + end + EOL + end end |