class Siba::EncodingHelper

Constants

EXTERNAL_ENCODING
INTERNAL_ENCODING

Public Class Methods

encode_to_external(value) click to toggle source
# File lib/siba/helpers/encoding_helper.rb, line 9
def encode_to_external(value)
  encode value, EXTERNAL_ENCODING, INTERNAL_ENCODING
end

Protected Class Methods

encode(value, dst_encoding, src_encoding=nil) click to toggle source
# File lib/siba/helpers/encoding_helper.rb, line 15
def encode(value, dst_encoding, src_encoding=nil)
  return encode_str value, dst_encoding, src_encoding if value.instance_of? String
  return encode_array value, dst_encoding, src_encoding if value.instance_of? Array
  value
end
encode_array(array, dst_encoding, src_encoding=nil) click to toggle source
# File lib/siba/helpers/encoding_helper.rb, line 30
def encode_array(array, dst_encoding, src_encoding=nil)
  return nil if array.nil?
  return array unless array.instance_of? Array
  array.map {|a| encode_str a, dst_encoding, src_encoding}
end
encode_str(str, dst_encoding, src_encoding=nil) click to toggle source
# File lib/siba/helpers/encoding_helper.rb, line 21
def encode_str(str, dst_encoding, src_encoding=nil)
  return nil if str.nil?
  return str unless str.instance_of? String
  if str.encoding != dst_encoding
    str = str.encode(dst_encoding, src_encoding, {:invalid => :replace, :undef => :replace}) 
  end
  str
end