Expand description
Provide a unified interface for encoders and decoders, and a default implementation for some encodings.
If it is necessary to provide a custom decoder for XML processor, a type implementing
the Decoder trait can be registered using the register_decoder function.
By default, the encoding name provided to the register_encoder or register_decoder
function is used to search for encoders and decoders.
If it is necessary to assign multiple names to a single encoder or decoder,
it is possible to set aliases for encoding names using register_encoding_alias.
The default encoding names and aliases are based on IANA registrations.
Structs§
- EUCDecoder
- EUCEncoder
- EUCJP
Decoder - Decoder for EUC-JP.
- EUCJP
Encoder - Encoder for EUC-JP.
- EUCKR
Decoder - Decoder for EUC-KR.
- EUCKR
Encoder - Encoder for EUC-KR.
- IBM037
Decoder - Decoder for IBM037.
- IBM037
Encoder - Encoder for IBM037.
- IBM273
Decoder - Decoder for IBM273.
- IBM273
Encoder - Encoder for IBM273.
- IBM274
Decoder - Decoder for IBM274.
- IBM274
Encoder - Encoder for IBM274.
- IBM275
Decoder - Decoder for IBM275.
- IBM275
Encoder - Encoder for IBM275.
- IBM277
Decoder - Decoder for IBM277.
- IBM277
Encoder - Encoder for IBM277.
- IBM278
Decoder - Decoder for IBM278.
- IBM278
Encoder - Encoder for IBM278.
- IBM280
Decoder - Decoder for IBM280.
- IBM280
Encoder - Encoder for IBM280.
- IBM284
Decoder - Decoder for IBM284.
- IBM284
Encoder - Encoder for IBM284.
- IBM285
Decoder - Decoder for IBM285.
- IBM285
Encoder - Encoder for IBM285.
- IBM290
Decoder - Decoder for IBM290.
- IBM290
Encoder - Encoder for IBM290.
- IBM297
Decoder - Decoder for IBM297.
- IBM297
Encoder - Encoder for IBM297.
- IBM420
Decoder - Decoder for IBM420.
- IBM420
Encoder - Encoder for IBM420.
- IBM423
Decoder - Decoder for IBM423.
- IBM423
Encoder - Encoder for IBM423.
- IBM424
Decoder - Decoder for IBM424.
- IBM424
Encoder - Encoder for IBM424.
- IBM437
Decoder - Decoder for IBM437.
- IBM437
Encoder - Encoder for IBM437.
- IBM500
Decoder - Decoder for IBM500.
- IBM500
Encoder - Encoder for IBM500.
- IBM850
Decoder - Decoder for IBM850.
- IBM850
Encoder - Encoder for IBM850.
- IBM851
Decoder - Decoder for IBM851.
- IBM851
Encoder - Encoder for IBM851.
- IBM852
Decoder - Decoder for IBM852.
- IBM852
Encoder - Encoder for IBM852.
- IBM855
Decoder - Decoder for IBM855.
- IBM855
Encoder - Encoder for IBM855.
- IBM857
Decoder - Decoder for IBM857.
- IBM857
Encoder - Encoder for IBM857.
- IBM860
Decoder - Decoder for IBM860.
- IBM860
Encoder - Encoder for IBM860.
- IBM861
Decoder - Decoder for IBM861.
- IBM861
Encoder - Encoder for IBM861.
- IBM862
Decoder - Decoder for IBM862.
- IBM862
Encoder - Encoder for IBM862.
- IBM863
Decoder - Decoder for IBM863.
- IBM863
Encoder - Encoder for IBM863.
- IBM864
Decoder - Decoder for IBM864.
- IBM864
Encoder - Encoder for IBM864.
- IBM865
Decoder - Decoder for IBM865.
- IBM865
Encoder - Encoder for IBM865.
- IBM868
Decoder - Decoder for IBM868.
- IBM868
Encoder - Encoder for IBM868.
- IBM869
Decoder - Decoder for IBM869.
- IBM869
Encoder - Encoder for IBM869.
- IBM870
Decoder - Decoder for IBM870.
- IBM870
Encoder - Encoder for IBM870.
- IBM871
Decoder - Decoder for IBM871.
- IBM871
Encoder - Encoder for IBM871.
- IBM880
Decoder - Decoder for IBM880.
- IBM880
Encoder - Encoder for IBM880.
- IBM891
Decoder - Decoder for IBM891.
- IBM891
Encoder - Encoder for IBM891.
- IBM903
Decoder - Decoder for IBM903.
- IBM903
Encoder - Encoder for IBM903.
- IBM904
Decoder - Decoder for IBM904.
- IBM904
Encoder - Encoder for IBM904.
- IBM905
Decoder - Decoder for IBM905.
- IBM905
Encoder - Encoder for IBM905.
- IBM918
Decoder - Decoder for IBM918.
- IBM918
Encoder - Encoder for IBM918.
- IBM1026
Decoder - Decoder for IBM1026.
- IBM1026
Encoder - Encoder for IBM1026.
- ISO8859_
1Decoder - Decoder for ISO-8859-1.
- ISO8859_
1Encoder - Encoder for ISO-8859-1.
- ISO8859_
2Decoder - Decoder for ISO_8859-2.
- ISO8859_
2Encoder - Encoder for ISO_8859-2.
- ISO8859_
3Decoder - Decoder for ISO_8859-3.
- ISO8859_
3Encoder - Encoder for ISO_8859-3.
- ISO8859_
4Decoder - Decoder for ISO_8859-4.
- ISO8859_
4Encoder - Encoder for ISO_8859-4.
- ISO8859_
5Decoder - Decoder for ISO_8859-5.
- ISO8859_
5Encoder - Encoder for ISO_8859-5.
- ISO8859_
6Decoder - Decoder for ISO_8859-6.
- ISO8859_
6Encoder - Encoder for ISO_8859-6.
- ISO8859_
7Decoder - Decoder for ISO_8859-7.
- ISO8859_
7Encoder - Encoder for ISO_8859-7.
- ISO8859_
8Decoder - Decoder for ISO_8859-8.
- ISO8859_
8Encoder - Encoder for ISO_8859-8.
- ISO8859_
9Decoder - Decoder for ISO_8859-9.
- ISO8859_
9Encoder - Encoder for ISO_8859-9.
- ISO8859_
10Decoder - Decoder for ISO-8859-10.
- ISO8859_
10Encoder - Encoder for ISO-8859-10.
- ISO8859_
11Decoder - Decoder for ISO-8859-11.
- ISO8859_
11Encoder - Encoder for ISO-8859-11.
- ISO8859_
13Decoder - Decoder for ISO-8859-13.
- ISO8859_
13Encoder - Encoder for ISO-8859-13.
- ISO8859_
14Decoder - Decoder for ISO-8859-14.
- ISO8859_
14Encoder - Encoder for ISO-8859-14.
- ISO8859_
15Decoder - Decoder for ISO-8859-15.
- ISO8859_
15Encoder - Encoder for ISO-8859-15.
- ISO8859_
16Decoder - Decoder for ISO-8859-16.
- ISO8859_
16Encoder - Encoder for ISO-8859-16.
- ShiftJIS
Decoder - Decoder for Shift_JIS.
- ShiftJIS
Encoder - Encoder for Shift_JIS.
- UCS4
Unusual2143 Decoder - UCS4
Unusual2143 Encoder - UCS4
Unusual3412 Decoder - UCS4
Unusual3412 Encoder - USASCII
Decoder - Decoder for US-ASCII.
- USASCII
Encoder - Encoder for US-ASCII.
- UTF8
Decoder - Decoder for UTF-8.
- UTF8
Encoder - Encoder for UTF-8.
- UTF16BE
Decoder - Decoder for UTF-16BE.
- UTF16BE
Encoder - Encoder for UTF-16BE.
- UTF16
Decoder - Decoder for UTF-16.
- UTF16
Encoder - Encoder for UTF-16.
- UTF16LE
Decoder - Decoder for UTF-16LE.
- UTF16LE
Encoder - Encoder for UTF-16LE.
- UTF32BE
Decoder - Decoder for UTF-32BE.
- UTF32BE
Encoder - Encoder for UTF-32BE.
- UTF32
Decoder - Decoder for UTF-32.
- UTF32
Encoder - Encoder for UTF-32.
- UTF32LE
Decoder - Decoder for UTF-32LE.
- UTF32LE
Encoder - Encoder for UTF-32LE.
Enums§
- Decode
Error - Decode error.
- Encode
Error - Encode error.
Constants§
- DEFAULT_
SUPPORTED_ ENCODINGS - Supported encodings.
- EUCJP_
NAME - Encoding name for EUC-JP.
- EUCKR_
NAME - Encoding name for EUC-KR.
- IBM037
- Encoding name for IBM037.
- IBM273
- Encoding name for IBM273.
- IBM274
- Encoding name for IBM274.
- IBM275
- Encoding name for IBM275.
- IBM277
- Encoding name for IBM277.
- IBM278
- Encoding name for IBM278.
- IBM280
- Encoding name for IBM280.
- IBM284
- Encoding name for IBM284.
- IBM285
- Encoding name for IBM285.
- IBM290
- Encoding name for IBM290.
- IBM297
- Encoding name for IBM297.
- IBM420
- Encoding name for IBM420.
- IBM423
- Encoding name for IBM423.
- IBM424
- Encoding name for IBM424.
- IBM437
- Encoding name for IBM437.
- IBM500
- Encoding name for IBM500.
- IBM850
- Encoding name for IBM850.
- IBM851
- Encoding name for IBM851.
- IBM852
- Encoding name for IBM852.
- IBM855
- Encoding name for IBM855.
- IBM857
- Encoding name for IBM857.
- IBM860
- Encoding name for IBM860.
- IBM861
- Encoding name for IBM861.
- IBM862
- Encoding name for IBM862.
- IBM863
- Encoding name for IBM863.
- IBM864
- Encoding name for IBM864.
- IBM865
- Encoding name for IBM865.
- IBM868
- Encoding name for IBM868.
- IBM869
- Encoding name for IBM869.
- IBM870
- Encoding name for IBM870.
- IBM871
- Encoding name for IBM871.
- IBM880
- Encoding name for IBM880.
- IBM891
- Encoding name for IBM891.
- IBM903
- Encoding name for IBM903.
- IBM904
- Encoding name for IBM904.
- IBM905
- Encoding name for IBM905.
- IBM918
- Encoding name for IBM918.
- IBM1026
- Encoding name for IBM1026.
- ISO_
8859_ 1_ NAME - Encoding name for ISO-8859-1.
- ISO_
8859_ 2_ NAME - Encoding name for ISO_8859-2.
- ISO_
8859_ 3_ NAME - Encoding name for ISO_8859-3.
- ISO_
8859_ 4_ NAME - Encoding name for ISO_8859-4.
- ISO_
8859_ 5_ NAME - Encoding name for ISO_8859-5.
- ISO_
8859_ 6_ NAME - Encoding name for ISO_8859-6.
- ISO_
8859_ 7_ NAME - Encoding name for ISO_8859-7.
- ISO_
8859_ 8_ NAME - Encoding name for ISO_8859-8.
- ISO_
8859_ 9_ NAME - Encoding name for ISO_8859-9.
- ISO_
8859_ 10_ NAME - Encoding name for ISO-8859-10.
- ISO_
8859_ 11_ NAME - Encoding name for ISO-8859-11.
- ISO_
8859_ 13_ NAME - Encoding name for ISO-8859-13.
- ISO_
8859_ 14_ NAME - Encoding name for ISO-8859-14.
- ISO_
8859_ 15_ NAME - Encoding name for ISO-8859-15.
- ISO_
8859_ 16_ NAME - Encoding name for ISO-8859-16.
- SHIFT_
JIS_ NAME - Encoding name for Shift_JIS.
- US_
ASCII_ NAME - Encoding name for US-ASCII.
- UTF8_
NAME - Encoding name for UTF-8.
- UTF16BE_
NAME - Encoding name for UTF-16BE.
- UTF16LE_
NAME - Encoding name for UTF-16LE.
- UTF16_
NAME - Encoding name for UTF-16.
- UTF32BE_
NAME - Encoding name for UTF-32BE.
- UTF32LE_
NAME - Encoding name for UTF-32LE.
- UTF32_
NAME - Encoding name for UTF-32.
Statics§
- DECODER_
TABLE - ENCODER_
TABLE - ENCODING_
ALIASES - Manage aliases for encoding names.
Traits§
Functions§
- find_
decoder - find_
encoder - register_
decoder - register_
encoder - register_
encoding_ alias - Register
aliasas an alias for the encoding namereal.
Ifaliasis already an alias for another encoding name, overwrite it and return the encoding name before the overwrite. - resolve_
encoding_ alias - Retrieve the encoding name from
alias, which is an alias for a certain encoding name.
If retrieval fails, returnsNone. - unregister_
decoder - unregister_
encoder - unregister_
encoding_ alias - Unregister
aliasif it is registerd as an alias for an encoding name.
If successfully removed, return the real name.