class Object

Constants

BOM_LIST_hex

Byte Order Mark

Public Instance Methods

add_bom() click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 12
def add_bom
  raise_if_encoding_does_not_exist encoding

  BOM_LIST_hex[encoding].force_encoding(encoding) + self
end
add_bom!() click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 18
def add_bom!
  replace add_bom
end
encoding_creater(coding) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 55
def encoding_creater coding
  Encoding.find coding
end
encoding_exist?(coding) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 45
def encoding_exist? coding
  !BOM_LIST_hex[encoding_creater coding].nil?
end
raise_if_encoding_does_not_exist(*encoding_array) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 49
def raise_if_encoding_does_not_exist *encoding_array
  encoding_array.each do |coding|
    raise ArgumentError, "Encoding does not exist for #{coding}" unless encoding_exist? coding
  end
end
set_encoding(encoding_to) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 22
def set_encoding(encoding_to)
  raise_if_encoding_does_not_exist encoding_to

  Iconv.conv encoding_to, encoding.to_s, self
end
set_encoding!(encoding_to) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 28
def set_encoding! encoding_to
  replace set_encoding encoding_to
end
set_encoding_and_add_bom(encoding_to) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 4
def set_encoding_and_add_bom encoding_to
  set_encoding(encoding_to).add_bom
end
set_encoding_and_add_bom!(encoding_to) click to toggle source
# File lib/encoding_with_bom/string_ext.rb, line 8
def set_encoding_and_add_bom! encoding_to
  replace set_encoding_and_add_bom encoding_to
end