summaryrefslogtreecommitdiff
path: root/ruby_2_2/lib/rexml/encoding.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ruby_2_2/lib/rexml/encoding.rb')
-rw-r--r--ruby_2_2/lib/rexml/encoding.rb50
1 files changed, 0 insertions, 50 deletions
diff --git a/ruby_2_2/lib/rexml/encoding.rb b/ruby_2_2/lib/rexml/encoding.rb
deleted file mode 100644
index 1c7e79a124..0000000000
--- a/ruby_2_2/lib/rexml/encoding.rb
+++ /dev/null
@@ -1,50 +0,0 @@
-# coding: US-ASCII
-module REXML
- module Encoding
- # ID ---> Encoding name
- attr_reader :encoding
- def encoding=(encoding)
- encoding = encoding.name if encoding.is_a?(Encoding)
- if encoding.is_a?(String)
- original_encoding = encoding
- encoding = find_encoding(encoding)
- unless encoding
- raise ArgumentError, "Bad encoding name #{original_encoding}"
- end
- end
- return false if defined?(@encoding) and encoding == @encoding
- if encoding
- @encoding = encoding.upcase
- else
- @encoding = 'UTF-8'
- end
- true
- end
-
- def encode(string)
- string.encode(@encoding)
- end
-
- def decode(string)
- string.encode(::Encoding::UTF_8, @encoding)
- end
-
- private
- def find_encoding(name)
- case name
- when /\Ashift-jis\z/i
- return "SHIFT_JIS"
- when /\ACP-(\d+)\z/
- name = "CP#{$1}"
- when /\AUTF-8\z/i
- return name
- end
- begin
- ::Encoding::Converter.search_convpath(name, 'UTF-8')
- rescue ::Encoding::ConverterNotFoundError
- return nil
- end
- name
- end
- end
-end