core/encoding.rbs in rbs-3.2.2 vs core/encoding.rbs in rbs-3.3.0.pre.1
- old
+ new
@@ -25,22 +25,48 @@
# Encoding::ASCII_8BIT is a special-purpose encoding that is usually used for a
# string of bytes, not a string of characters. But as the name indicates, its
# characters in the ASCII range are considered as ASCII characters. This is
# useful when you use other ASCII-compatible encodings.
#
-class Encoding < Object
+class Encoding
+ def self._load: [T] (T) -> T
+
# <!--
# rdoc-file=encoding.c
+ # - Encoding.locale_charmap -> string
+ # -->
+ # Returns the locale charmap name. It returns nil if no appropriate information.
+ #
+ # Debian GNU/Linux
+ # LANG=C
+ # Encoding.locale_charmap #=> "ANSI_X3.4-1968"
+ # LANG=ja_JP.EUC-JP
+ # Encoding.locale_charmap #=> "EUC-JP"
+ #
+ # SunOS 5
+ # LANG=C
+ # Encoding.locale_charmap #=> "646"
+ # LANG=ja
+ # Encoding.locale_charmap #=> "eucJP"
+ #
+ # The result is highly platform dependent. So
+ # Encoding.find(Encoding.locale_charmap) may cause an error. If you need some
+ # encoding object even for unknown locale, Encoding.find("locale") can be used.
+ #
+ def self.locale_charmap: () -> String
+
+ # <!--
+ # rdoc-file=encoding.c
# - Encoding.aliases -> {"alias1" => "orig1", "alias2" => "orig2", ...}
# -->
# Returns the hash of available encoding alias and original encoding name.
#
# Encoding.aliases
# #=> {"BINARY"=>"ASCII-8BIT", "ASCII"=>"US-ASCII", "ANSI_X3.4-1968"=>"US-ASCII",
# "SJIS"=>"Windows-31J", "eucJP"=>"EUC-JP", "CP932"=>"Windows-31J"}
#
- def self.aliases: () -> ::Hash[String, String]
+ def self.aliases: () -> Hash[String, String]
# <!--
# rdoc-file=encoding.c
# - Encoding.compatible?(obj1, obj2) -> enc or nil
# -->
@@ -106,12 +132,12 @@
# use `ruby -E` to invoke ruby with the correct default_external.
#
# See Encoding::default_external for information on how the default external
# encoding is used.
#
- def self.default_external=: (String arg0) -> String
- | (Encoding arg0) -> Encoding
+ def self.default_external=: (Encoding enc) -> Encoding
+ | [T < _ToStr] (T enc) -> T
# <!--
# rdoc-file=encoding.c
# - Encoding.default_internal -> enc
# -->
@@ -153,13 +179,13 @@
# ruby with the correct default_internal.
#
# See Encoding::default_internal for information on how the default internal
# encoding is used.
#
- def self.default_internal=: (String arg0) -> String?
- | (Encoding arg0) -> Encoding?
- | (nil arg0) -> nil
+ def self.default_internal=: (Encoding enc) -> Encoding
+ | [T < _ToStr] (T enc) -> T
+ | (nil) -> nil
# <!--
# rdoc-file=encoding.c
# - Encoding.find(string) -> enc
# -->
@@ -182,11 +208,11 @@
#
# An ArgumentError is raised when no encoding with *name*. Only
# `Encoding.find("internal")` however returns nil when no encoding named
# "internal", in other words, when Ruby has no default internal encoding.
#
- def self.find: (String | Encoding arg0) -> Encoding
+ def self.find: (encoding enc) -> Encoding?
# <!--
# rdoc-file=encoding.c
# - Encoding.list -> [enc1, enc2, ...]
# -->
@@ -201,11 +227,11 @@
#
# Encoding.list
# #=> [#<Encoding:ASCII-8BIT>, #<Encoding:UTF-8>,
# #<Encoding:US-ASCII>, #<Encoding:ISO-2022-JP (dummy)>]
#
- def self.list: () -> ::Array[Encoding]
+ def self.list: () -> Array[Encoding]
# <!--
# rdoc-file=encoding.c
# - Encoding.name_list -> ["enc1", "enc2", ...]
# -->
@@ -215,11 +241,11 @@
# #=> ["US-ASCII", "ASCII-8BIT", "UTF-8",
# "ISO-8859-1", "Shift_JIS", "EUC-JP",
# "Windows-31J",
# "BINARY", "CP932", "eucJP"]
#
- def self.name_list: () -> ::Array[String]
+ def self.name_list: () -> Array[String]
# <!--
# rdoc-file=encoding.c
# - enc.ascii_compatible? -> true or false
# -->
@@ -267,452 +293,420 @@
# -->
# Returns the list of name and aliases of the encoding.
#
# Encoding::WINDOWS_31J.names #=> ["Windows-31J", "CP932", "csWindows31J", "SJIS", "PCK"]
#
- def names: () -> ::Array[String]
+ def names: () -> Array[String]
# <!--
# rdoc-file=encoding.c
- # - enc.replicate(name) -> encoding
- # -->
- # Returns a replicated encoding of *enc* whose name is *name*. The new encoding
- # should have the same byte structure of *enc*. If *name* is used by another
- # encoding, raise ArgumentError.
- #
- def replicate: (String name) -> Encoding
-
- # <!--
- # rdoc-file=encoding.c
# - enc.name -> string
# - enc.to_s -> string
# -->
# Returns the name of the encoding.
#
# Encoding::UTF_8.name #=> "UTF-8"
#
- def to_s: () -> String
-end
+ alias to_s name
-Encoding::ANSI_X3_4_1968: Encoding
+ ANSI_X3_4_1968: Encoding
+ ASCII: Encoding
+ ASCII_8BIT: Encoding
+ BIG5: Encoding
+ BIG5_HKSCS: Encoding
+ BIG5_HKSCS_2008: Encoding
+ BIG5_UAO: Encoding
+ BINARY: Encoding
+ Big5: Encoding
+ Big5_HKSCS: Encoding
+ Big5_HKSCS_2008: Encoding
+ Big5_UAO: Encoding
+ CESU_8: Encoding
+ CP1250: Encoding
+ CP1251: Encoding
+ CP1252: Encoding
+ CP1253: Encoding
+ CP1254: Encoding
+ CP1255: Encoding
+ CP1256: Encoding
+ CP1257: Encoding
+ CP1258: Encoding
+ CP437: Encoding
+ CP50220: Encoding
+ CP50221: Encoding
+ CP51932: Encoding
+ CP65000: Encoding
+ CP65001: Encoding
+ CP737: Encoding
+ CP775: Encoding
+ CP850: Encoding
+ CP852: Encoding
+ CP855: Encoding
+ CP857: Encoding
+ CP860: Encoding
+ CP861: Encoding
+ CP862: Encoding
+ CP863: Encoding
+ CP864: Encoding
+ CP865: Encoding
+ CP866: Encoding
+ CP869: Encoding
+ CP874: Encoding
+ CP878: Encoding
+ CP932: Encoding
+ CP936: Encoding
+ CP949: Encoding
+ CP950: Encoding
+ CP951: Encoding
+ CSWINDOWS31J: Encoding
+ CsWindows31J: Encoding
+ EBCDIC_CP_US: Encoding
+ EMACS_MULE: Encoding
+ EUCCN: Encoding
+ EUCJP: Encoding
+ EUCJP_MS: Encoding
+ EUCKR: Encoding
+ EUCTW: Encoding
+ EUC_CN: Encoding
+ EUC_JISX0213: Encoding
+ EUC_JIS_2004: Encoding
+ EUC_JP: Encoding
+ EUC_JP_MS: Encoding
+ EUC_KR: Encoding
+ EUC_TW: Encoding
+ Emacs_Mule: Encoding
+ EucCN: Encoding
+ EucJP: Encoding
+ EucJP_ms: Encoding
+ EucKR: Encoding
+ EucTW: Encoding
+ GB12345: Encoding
+ GB18030: Encoding
+ GB1988: Encoding
+ GB2312: Encoding
+ GBK: Encoding
+ IBM037: Encoding
+ IBM437: Encoding
+ IBM737: Encoding
+ IBM720: Encoding
+ CP720: Encoding
+ IBM775: Encoding
+ IBM850: Encoding
+ IBM852: Encoding
+ IBM855: Encoding
+ IBM857: Encoding
+ IBM860: Encoding
+ IBM861: Encoding
+ IBM862: Encoding
+ IBM863: Encoding
+ IBM864: Encoding
+ IBM865: Encoding
+ IBM866: Encoding
+ IBM869: Encoding
+ ISO2022_JP: Encoding
+ ISO2022_JP2: Encoding
+ ISO8859_1: Encoding
+ ISO8859_10: Encoding
+ ISO8859_11: Encoding
+ ISO8859_13: Encoding
+ ISO8859_14: Encoding
+ ISO8859_15: Encoding
+ ISO8859_16: Encoding
+ ISO8859_2: Encoding
+ ISO8859_3: Encoding
+ ISO8859_4: Encoding
+ ISO8859_5: Encoding
+ ISO8859_6: Encoding
+ ISO8859_7: Encoding
+ ISO8859_8: Encoding
+ ISO8859_9: Encoding
+ ISO_2022_JP: Encoding
+ ISO_2022_JP_2: Encoding
+ ISO_2022_JP_KDDI: Encoding
+ ISO_8859_1: Encoding
+ ISO_8859_10: Encoding
+ ISO_8859_11: Encoding
+ ISO_8859_13: Encoding
+ ISO_8859_14: Encoding
+ ISO_8859_15: Encoding
+ ISO_8859_16: Encoding
+ ISO_8859_2: Encoding
+ ISO_8859_3: Encoding
+ ISO_8859_4: Encoding
+ ISO_8859_5: Encoding
+ ISO_8859_6: Encoding
+ ISO_8859_7: Encoding
+ ISO_8859_8: Encoding
+ ISO_8859_9: Encoding
+ KOI8_R: Encoding
+ KOI8_U: Encoding
+ MACCENTEURO: Encoding
+ MACCROATIAN: Encoding
+ MACCYRILLIC: Encoding
+ MACGREEK: Encoding
+ MACICELAND: Encoding
+ MACJAPAN: Encoding
+ MACJAPANESE: Encoding
+ MACROMAN: Encoding
+ MACROMANIA: Encoding
+ MACTHAI: Encoding
+ MACTURKISH: Encoding
+ MACUKRAINE: Encoding
+ MacCentEuro: Encoding
+ MacCroatian: Encoding
+ MacCyrillic: Encoding
+ MacGreek: Encoding
+ MacIceland: Encoding
+ MacJapan: Encoding
+ MacJapanese: Encoding
+ MacRoman: Encoding
+ MacRomania: Encoding
+ MacThai: Encoding
+ MacTurkish: Encoding
+ MacUkraine: Encoding
+ PCK: Encoding
+ SHIFT_JIS: Encoding
+ SJIS: Encoding
+ SJIS_DOCOMO: Encoding
+ SJIS_DoCoMo: Encoding
+ SJIS_KDDI: Encoding
+ SJIS_SOFTBANK: Encoding
+ SJIS_SoftBank: Encoding
+ STATELESS_ISO_2022_JP: Encoding
+ STATELESS_ISO_2022_JP_KDDI: Encoding
+ Shift_JIS: Encoding
+ Stateless_ISO_2022_JP: Encoding
+ Stateless_ISO_2022_JP_KDDI: Encoding
+ TIS_620: Encoding
+ UCS_2BE: Encoding
+ UCS_4BE: Encoding
+ UCS_4LE: Encoding
+ US_ASCII: Encoding
+ UTF8_DOCOMO: Encoding
+ UTF8_DoCoMo: Encoding
+ UTF8_KDDI: Encoding
+ UTF8_MAC: Encoding
+ UTF8_SOFTBANK: Encoding
+ UTF8_SoftBank: Encoding
+ UTF_16: Encoding
+ UTF_16BE: Encoding
+ UTF_16LE: Encoding
+ UTF_32: Encoding
+ UTF_32BE: Encoding
+ UTF_32LE: Encoding
+ UTF_7: Encoding
+ UTF_8: Encoding
+ UTF_8_HFS: Encoding
+ UTF_8_MAC: Encoding
+ WINDOWS_1250: Encoding
+ WINDOWS_1251: Encoding
+ WINDOWS_1252: Encoding
+ WINDOWS_1253: Encoding
+ WINDOWS_1254: Encoding
+ WINDOWS_1255: Encoding
+ WINDOWS_1256: Encoding
+ WINDOWS_1257: Encoding
+ WINDOWS_1258: Encoding
+ WINDOWS_31J: Encoding
+ WINDOWS_874: Encoding
+ Windows_1250: Encoding
+ Windows_1251: Encoding
+ Windows_1252: Encoding
+ Windows_1253: Encoding
+ Windows_1254: Encoding
+ Windows_1255: Encoding
+ Windows_1256: Encoding
+ Windows_1257: Encoding
+ Windows_1258: Encoding
+ Windows_31J: Encoding
+ Windows_874: Encoding
-Encoding::ASCII: Encoding
+ # <!-- rdoc-file=error.c -->
+ # Raised by Encoding and String methods when the source encoding is incompatible
+ # with the target encoding.
+ #
+ class CompatibilityError < EncodingError
+ end
-Encoding::ASCII_8BIT: Encoding
+ # <!-- rdoc-file=transcode.c -->
+ # Raised by transcoding methods when a named encoding does not correspond with a
+ # known converter.
+ #
+ class ConverterNotFoundError < EncodingError
+ end
-Encoding::BIG5: Encoding
+ # <!-- rdoc-file=transcode.c -->
+ # Raised by Encoding and String methods when the string being transcoded
+ # contains a byte invalid for the either the source or target encoding.
+ #
+ class InvalidByteSequenceError < EncodingError
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.destination_encoding -> string
+ # -->
+ # Returns the destination encoding as an encoding object.
+ #
+ def destination_encoding: () -> Encoding
-Encoding::BIG5_HKSCS: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.destination_encoding_name -> string
+ # -->
+ # Returns the destination encoding name as a string.
+ #
+ def destination_encoding_name: () -> String
-Encoding::BIG5_HKSCS_2008: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.error_bytes -> string
+ # -->
+ # Returns the discarded bytes when Encoding::InvalidByteSequenceError occurs.
+ #
+ # ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
+ # begin
+ # ec.convert("abc\xA1\xFFdef")
+ # rescue Encoding::InvalidByteSequenceError
+ # p $! #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "\xFF" on EUC-JP>
+ # puts $!.error_bytes.dump #=> "\xA1"
+ # puts $!.readagain_bytes.dump #=> "\xFF"
+ # end
+ #
+ def error_bytes: () -> String
-Encoding::BIG5_UAO: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.incomplete_input? -> true or false
+ # -->
+ # Returns true if the invalid byte sequence error is caused by premature end of
+ # string.
+ #
+ # ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
+ #
+ # begin
+ # ec.convert("abc\xA1z")
+ # rescue Encoding::InvalidByteSequenceError
+ # p $! #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "z" on EUC-JP>
+ # p $!.incomplete_input? #=> false
+ # end
+ #
+ # begin
+ # ec.convert("abc\xA1")
+ # ec.finish
+ # rescue Encoding::InvalidByteSequenceError
+ # p $! #=> #<Encoding::InvalidByteSequenceError: incomplete "\xA1" on EUC-JP>
+ # p $!.incomplete_input? #=> true
+ # end
+ #
+ def incomplete_input?: () -> bool
-Encoding::BINARY: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.readagain_bytes -> string
+ # -->
+ # Returns the bytes to be read again when Encoding::InvalidByteSequenceError
+ # occurs.
+ #
+ def readagain_bytes: () -> String
-Encoding::Big5: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.source_encoding -> encoding
+ # -->
+ # Returns the source encoding as an encoding object.
+ #
+ # Note that the result may not be equal to the source encoding of the encoding
+ # converter if the conversion has multiple steps.
+ #
+ # ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP") # ISO-8859-1 -> UTF-8 -> EUC-JP
+ # begin
+ # ec.convert("\xa0") # NO-BREAK SPACE, which is available in UTF-8 but not in EUC-JP.
+ # rescue Encoding::UndefinedConversionError
+ # p $!.source_encoding #=> #<Encoding:UTF-8>
+ # p $!.destination_encoding #=> #<Encoding:EUC-JP>
+ # p $!.source_encoding_name #=> "UTF-8"
+ # p $!.destination_encoding_name #=> "EUC-JP"
+ # end
+ #
+ def source_encoding: () -> Encoding
-Encoding::Big5_HKSCS: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.source_encoding_name -> string
+ # -->
+ # Returns the source encoding name as a string.
+ #
+ def source_encoding_name: () -> String
+ end
-Encoding::Big5_HKSCS_2008: Encoding
+ # <!-- rdoc-file=transcode.c -->
+ # Raised by Encoding and String methods when a transcoding operation fails.
+ #
+ class UndefinedConversionError < EncodingError
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.destination_encoding -> string
+ # -->
+ # Returns the destination encoding as an encoding object.
+ #
+ def destination_encoding: () -> Encoding
-Encoding::Big5_UAO: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.destination_encoding_name -> string
+ # -->
+ # Returns the destination encoding name as a string.
+ #
+ def destination_encoding_name: () -> String
-Encoding::CESU_8: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.error_char -> string
+ # -->
+ # Returns the one-character string which cause
+ # Encoding::UndefinedConversionError.
+ #
+ # ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP")
+ # begin
+ # ec.convert("\xa0")
+ # rescue Encoding::UndefinedConversionError
+ # puts $!.error_char.dump #=> "\xC2\xA0"
+ # p $!.error_char.encoding #=> #<Encoding:UTF-8>
+ # end
+ #
+ def error_char: () -> String
-Encoding::CP1250: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.source_encoding -> encoding
+ # -->
+ # Returns the source encoding as an encoding object.
+ #
+ # Note that the result may not be equal to the source encoding of the encoding
+ # converter if the conversion has multiple steps.
+ #
+ # ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP") # ISO-8859-1 -> UTF-8 -> EUC-JP
+ # begin
+ # ec.convert("\xa0") # NO-BREAK SPACE, which is available in UTF-8 but not in EUC-JP.
+ # rescue Encoding::UndefinedConversionError
+ # p $!.source_encoding #=> #<Encoding:UTF-8>
+ # p $!.destination_encoding #=> #<Encoding:EUC-JP>
+ # p $!.source_encoding_name #=> "UTF-8"
+ # p $!.destination_encoding_name #=> "EUC-JP"
+ # end
+ #
+ def source_encoding: () -> Encoding
-Encoding::CP1251: Encoding
+ # <!--
+ # rdoc-file=transcode.c
+ # - ecerr.source_encoding_name -> string
+ # -->
+ # Returns the source encoding name as a string.
+ #
+ def source_encoding_name: () -> String
+ end
+end
-Encoding::CP1252: Encoding
-
-Encoding::CP1253: Encoding
-
-Encoding::CP1254: Encoding
-
-Encoding::CP1255: Encoding
-
-Encoding::CP1256: Encoding
-
-Encoding::CP1257: Encoding
-
-Encoding::CP1258: Encoding
-
-Encoding::CP437: Encoding
-
-Encoding::CP50220: Encoding
-
-Encoding::CP50221: Encoding
-
-Encoding::CP51932: Encoding
-
-Encoding::CP65000: Encoding
-
-Encoding::CP65001: Encoding
-
-Encoding::CP737: Encoding
-
-Encoding::CP775: Encoding
-
-Encoding::CP850: Encoding
-
-Encoding::CP852: Encoding
-
-Encoding::CP855: Encoding
-
-Encoding::CP857: Encoding
-
-Encoding::CP860: Encoding
-
-Encoding::CP861: Encoding
-
-Encoding::CP862: Encoding
-
-Encoding::CP863: Encoding
-
-Encoding::CP864: Encoding
-
-Encoding::CP865: Encoding
-
-Encoding::CP866: Encoding
-
-Encoding::CP869: Encoding
-
-Encoding::CP874: Encoding
-
-Encoding::CP878: Encoding
-
-Encoding::CP932: Encoding
-
-Encoding::CP936: Encoding
-
-Encoding::CP949: Encoding
-
-Encoding::CP950: Encoding
-
-Encoding::CP951: Encoding
-
-Encoding::CSWINDOWS31J: Encoding
-
-Encoding::CsWindows31J: Encoding
-
-Encoding::EBCDIC_CP_US: Encoding
-
-Encoding::EMACS_MULE: Encoding
-
-Encoding::EUCCN: Encoding
-
-Encoding::EUCJP: Encoding
-
-Encoding::EUCJP_MS: Encoding
-
-Encoding::EUCKR: Encoding
-
-Encoding::EUCTW: Encoding
-
-Encoding::EUC_CN: Encoding
-
-Encoding::EUC_JISX0213: Encoding
-
-Encoding::EUC_JIS_2004: Encoding
-
-Encoding::EUC_JP: Encoding
-
-Encoding::EUC_JP_MS: Encoding
-
-Encoding::EUC_KR: Encoding
-
-Encoding::EUC_TW: Encoding
-
-Encoding::Emacs_Mule: Encoding
-
-Encoding::EucCN: Encoding
-
-Encoding::EucJP: Encoding
-
-Encoding::EucJP_ms: Encoding
-
-Encoding::EucKR: Encoding
-
-Encoding::EucTW: Encoding
-
-Encoding::GB12345: Encoding
-
-Encoding::GB18030: Encoding
-
-Encoding::GB1988: Encoding
-
-Encoding::GB2312: Encoding
-
-Encoding::GBK: Encoding
-
-Encoding::IBM037: Encoding
-
-Encoding::IBM437: Encoding
-
-Encoding::IBM737: Encoding
-
-Encoding::IBM775: Encoding
-
-Encoding::IBM850: Encoding
-
-Encoding::IBM852: Encoding
-
-Encoding::IBM855: Encoding
-
-Encoding::IBM857: Encoding
-
-Encoding::IBM860: Encoding
-
-Encoding::IBM861: Encoding
-
-Encoding::IBM862: Encoding
-
-Encoding::IBM863: Encoding
-
-Encoding::IBM864: Encoding
-
-Encoding::IBM865: Encoding
-
-Encoding::IBM866: Encoding
-
-Encoding::IBM869: Encoding
-
-Encoding::ISO2022_JP: Encoding
-
-Encoding::ISO2022_JP2: Encoding
-
-Encoding::ISO8859_1: Encoding
-
-Encoding::ISO8859_10: Encoding
-
-Encoding::ISO8859_11: Encoding
-
-Encoding::ISO8859_13: Encoding
-
-Encoding::ISO8859_14: Encoding
-
-Encoding::ISO8859_15: Encoding
-
-Encoding::ISO8859_16: Encoding
-
-Encoding::ISO8859_2: Encoding
-
-Encoding::ISO8859_3: Encoding
-
-Encoding::ISO8859_4: Encoding
-
-Encoding::ISO8859_5: Encoding
-
-Encoding::ISO8859_6: Encoding
-
-Encoding::ISO8859_7: Encoding
-
-Encoding::ISO8859_8: Encoding
-
-Encoding::ISO8859_9: Encoding
-
-Encoding::ISO_2022_JP: Encoding
-
-Encoding::ISO_2022_JP_2: Encoding
-
-Encoding::ISO_2022_JP_KDDI: Encoding
-
-Encoding::ISO_8859_1: Encoding
-
-Encoding::ISO_8859_10: Encoding
-
-Encoding::ISO_8859_11: Encoding
-
-Encoding::ISO_8859_13: Encoding
-
-Encoding::ISO_8859_14: Encoding
-
-Encoding::ISO_8859_15: Encoding
-
-Encoding::ISO_8859_16: Encoding
-
-Encoding::ISO_8859_2: Encoding
-
-Encoding::ISO_8859_3: Encoding
-
-Encoding::ISO_8859_4: Encoding
-
-Encoding::ISO_8859_5: Encoding
-
-Encoding::ISO_8859_6: Encoding
-
-Encoding::ISO_8859_7: Encoding
-
-Encoding::ISO_8859_8: Encoding
-
-Encoding::ISO_8859_9: Encoding
-
-Encoding::KOI8_R: Encoding
-
-Encoding::KOI8_U: Encoding
-
-Encoding::MACCENTEURO: Encoding
-
-Encoding::MACCROATIAN: Encoding
-
-Encoding::MACCYRILLIC: Encoding
-
-Encoding::MACGREEK: Encoding
-
-Encoding::MACICELAND: Encoding
-
-Encoding::MACJAPAN: Encoding
-
-Encoding::MACJAPANESE: Encoding
-
-Encoding::MACROMAN: Encoding
-
-Encoding::MACROMANIA: Encoding
-
-Encoding::MACTHAI: Encoding
-
-Encoding::MACTURKISH: Encoding
-
-Encoding::MACUKRAINE: Encoding
-
-Encoding::MacCentEuro: Encoding
-
-Encoding::MacCroatian: Encoding
-
-Encoding::MacCyrillic: Encoding
-
-Encoding::MacGreek: Encoding
-
-Encoding::MacIceland: Encoding
-
-Encoding::MacJapan: Encoding
-
-Encoding::MacJapanese: Encoding
-
-Encoding::MacRoman: Encoding
-
-Encoding::MacRomania: Encoding
-
-Encoding::MacThai: Encoding
-
-Encoding::MacTurkish: Encoding
-
-Encoding::MacUkraine: Encoding
-
-Encoding::PCK: Encoding
-
-Encoding::SHIFT_JIS: Encoding
-
-Encoding::SJIS: Encoding
-
-Encoding::SJIS_DOCOMO: Encoding
-
-Encoding::SJIS_DoCoMo: Encoding
-
-Encoding::SJIS_KDDI: Encoding
-
-Encoding::SJIS_SOFTBANK: Encoding
-
-Encoding::SJIS_SoftBank: Encoding
-
-Encoding::STATELESS_ISO_2022_JP: Encoding
-
-Encoding::STATELESS_ISO_2022_JP_KDDI: Encoding
-
-Encoding::Shift_JIS: Encoding
-
-Encoding::Stateless_ISO_2022_JP: Encoding
-
-Encoding::Stateless_ISO_2022_JP_KDDI: Encoding
-
-Encoding::TIS_620: Encoding
-
-Encoding::UCS_2BE: Encoding
-
-Encoding::UCS_4BE: Encoding
-
-Encoding::UCS_4LE: Encoding
-
-Encoding::US_ASCII: Encoding
-
-Encoding::UTF8_DOCOMO: Encoding
-
-Encoding::UTF8_DoCoMo: Encoding
-
-Encoding::UTF8_KDDI: Encoding
-
-Encoding::UTF8_MAC: Encoding
-
-Encoding::UTF8_SOFTBANK: Encoding
-
-Encoding::UTF8_SoftBank: Encoding
-
-Encoding::UTF_16: Encoding
-
-Encoding::UTF_16BE: Encoding
-
-Encoding::UTF_16LE: Encoding
-
-Encoding::UTF_32: Encoding
-
-Encoding::UTF_32BE: Encoding
-
-Encoding::UTF_32LE: Encoding
-
-Encoding::UTF_7: Encoding
-
-Encoding::UTF_8: Encoding
-
-Encoding::UTF_8_HFS: Encoding
-
-Encoding::UTF_8_MAC: Encoding
-
-Encoding::WINDOWS_1250: Encoding
-
-Encoding::WINDOWS_1251: Encoding
-
-Encoding::WINDOWS_1252: Encoding
-
-Encoding::WINDOWS_1253: Encoding
-
-Encoding::WINDOWS_1254: Encoding
-
-Encoding::WINDOWS_1255: Encoding
-
-Encoding::WINDOWS_1256: Encoding
-
-Encoding::WINDOWS_1257: Encoding
-
-Encoding::WINDOWS_1258: Encoding
-
-Encoding::WINDOWS_31J: Encoding
-
-Encoding::WINDOWS_874: Encoding
-
-Encoding::Windows_1250: Encoding
-
-Encoding::Windows_1251: Encoding
-
-Encoding::Windows_1252: Encoding
-
-Encoding::Windows_1253: Encoding
-
-Encoding::Windows_1254: Encoding
-
-Encoding::Windows_1255: Encoding
-
-Encoding::Windows_1256: Encoding
-
-Encoding::Windows_1257: Encoding
-
-Encoding::Windows_1258: Encoding
-
-Encoding::Windows_31J: Encoding
-
-Encoding::Windows_874: Encoding
-
# <!-- rdoc-file=transcode.c -->
# Encoding conversion class.
#
class Encoding::Converter < Object
type encoding = String | Encoding
@@ -1395,193 +1389,5 @@
# XML_TEXT_DECORATOR
#
# Escape as XML CharData
#
Encoding::Converter::XML_TEXT_DECORATOR: Integer
-
-# <!-- rdoc-file=error.c -->
-# Raised by Encoding and String methods when the source encoding is incompatible
-# with the target encoding.
-#
-class Encoding::CompatibilityError < EncodingError
-end
-
-# <!-- rdoc-file=transcode.c -->
-# Raised by transcoding methods when a named encoding does not correspond with a
-# known converter.
-#
-class Encoding::ConverterNotFoundError < EncodingError
-end
-
-# <!-- rdoc-file=transcode.c -->
-# Raised by Encoding and String methods when the string being transcoded
-# contains a byte invalid for the either the source or target encoding.
-#
-class Encoding::InvalidByteSequenceError < EncodingError
- public
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.destination_encoding -> string
- # -->
- # Returns the destination encoding as an encoding object.
- #
- def destination_encoding: () -> Encoding
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.destination_encoding_name -> string
- # -->
- # Returns the destination encoding name as a string.
- #
- def destination_encoding_name: () -> String
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.error_bytes -> string
- # -->
- # Returns the discarded bytes when Encoding::InvalidByteSequenceError occurs.
- #
- # ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
- # begin
- # ec.convert("abc\xA1\xFFdef")
- # rescue Encoding::InvalidByteSequenceError
- # p $! #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "\xFF" on EUC-JP>
- # puts $!.error_bytes.dump #=> "\xA1"
- # puts $!.readagain_bytes.dump #=> "\xFF"
- # end
- #
- def error_bytes: () -> String
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.incomplete_input? -> true or false
- # -->
- # Returns true if the invalid byte sequence error is caused by premature end of
- # string.
- #
- # ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
- #
- # begin
- # ec.convert("abc\xA1z")
- # rescue Encoding::InvalidByteSequenceError
- # p $! #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "z" on EUC-JP>
- # p $!.incomplete_input? #=> false
- # end
- #
- # begin
- # ec.convert("abc\xA1")
- # ec.finish
- # rescue Encoding::InvalidByteSequenceError
- # p $! #=> #<Encoding::InvalidByteSequenceError: incomplete "\xA1" on EUC-JP>
- # p $!.incomplete_input? #=> true
- # end
- #
- def incomplete_input?: () -> bool
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.readagain_bytes -> string
- # -->
- # Returns the bytes to be read again when Encoding::InvalidByteSequenceError
- # occurs.
- #
- def readagain_bytes: () -> String
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.source_encoding -> encoding
- # -->
- # Returns the source encoding as an encoding object.
- #
- # Note that the result may not be equal to the source encoding of the encoding
- # converter if the conversion has multiple steps.
- #
- # ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP") # ISO-8859-1 -> UTF-8 -> EUC-JP
- # begin
- # ec.convert("\xa0") # NO-BREAK SPACE, which is available in UTF-8 but not in EUC-JP.
- # rescue Encoding::UndefinedConversionError
- # p $!.source_encoding #=> #<Encoding:UTF-8>
- # p $!.destination_encoding #=> #<Encoding:EUC-JP>
- # p $!.source_encoding_name #=> "UTF-8"
- # p $!.destination_encoding_name #=> "EUC-JP"
- # end
- #
- def source_encoding: () -> Encoding
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.source_encoding_name -> string
- # -->
- # Returns the source encoding name as a string.
- #
- def source_encoding_name: () -> String
-end
-
-# <!-- rdoc-file=transcode.c -->
-# Raised by Encoding and String methods when a transcoding operation fails.
-#
-class Encoding::UndefinedConversionError < EncodingError
- public
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.destination_encoding -> string
- # -->
- # Returns the destination encoding as an encoding object.
- #
- def destination_encoding: () -> Encoding
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.destination_encoding_name -> string
- # -->
- # Returns the destination encoding name as a string.
- #
- def destination_encoding_name: () -> String
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.error_char -> string
- # -->
- # Returns the one-character string which cause
- # Encoding::UndefinedConversionError.
- #
- # ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP")
- # begin
- # ec.convert("\xa0")
- # rescue Encoding::UndefinedConversionError
- # puts $!.error_char.dump #=> "\xC2\xA0"
- # p $!.error_char.encoding #=> #<Encoding:UTF-8>
- # end
- #
- def error_char: () -> String
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.source_encoding -> encoding
- # -->
- # Returns the source encoding as an encoding object.
- #
- # Note that the result may not be equal to the source encoding of the encoding
- # converter if the conversion has multiple steps.
- #
- # ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP") # ISO-8859-1 -> UTF-8 -> EUC-JP
- # begin
- # ec.convert("\xa0") # NO-BREAK SPACE, which is available in UTF-8 but not in EUC-JP.
- # rescue Encoding::UndefinedConversionError
- # p $!.source_encoding #=> #<Encoding:UTF-8>
- # p $!.destination_encoding #=> #<Encoding:EUC-JP>
- # p $!.source_encoding_name #=> "UTF-8"
- # p $!.destination_encoding_name #=> "EUC-JP"
- # end
- #
- def source_encoding: () -> Encoding
-
- # <!--
- # rdoc-file=transcode.c
- # - ecerr.source_encoding_name -> string
- # -->
- # Returns the source encoding name as a string.
- #
- def source_encoding_name: () -> String
-end