Skip to main content

Crate anyxml_encoding

Crate anyxml_encoding 

Source
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
EUCJPDecoder
Decoder for EUC-JP.
EUCJPEncoder
Encoder for EUC-JP.
EUCKRDecoder
Decoder for EUC-KR.
EUCKREncoder
Encoder for EUC-KR.
IBM037Decoder
Decoder for IBM037.
IBM037Encoder
Encoder for IBM037.
IBM273Decoder
Decoder for IBM273.
IBM273Encoder
Encoder for IBM273.
IBM274Decoder
Decoder for IBM274.
IBM274Encoder
Encoder for IBM274.
IBM275Decoder
Decoder for IBM275.
IBM275Encoder
Encoder for IBM275.
IBM277Decoder
Decoder for IBM277.
IBM277Encoder
Encoder for IBM277.
IBM278Decoder
Decoder for IBM278.
IBM278Encoder
Encoder for IBM278.
IBM280Decoder
Decoder for IBM280.
IBM280Encoder
Encoder for IBM280.
IBM284Decoder
Decoder for IBM284.
IBM284Encoder
Encoder for IBM284.
IBM285Decoder
Decoder for IBM285.
IBM285Encoder
Encoder for IBM285.
IBM290Decoder
Decoder for IBM290.
IBM290Encoder
Encoder for IBM290.
IBM297Decoder
Decoder for IBM297.
IBM297Encoder
Encoder for IBM297.
IBM420Decoder
Decoder for IBM420.
IBM420Encoder
Encoder for IBM420.
IBM423Decoder
Decoder for IBM423.
IBM423Encoder
Encoder for IBM423.
IBM424Decoder
Decoder for IBM424.
IBM424Encoder
Encoder for IBM424.
IBM437Decoder
Decoder for IBM437.
IBM437Encoder
Encoder for IBM437.
IBM500Decoder
Decoder for IBM500.
IBM500Encoder
Encoder for IBM500.
IBM850Decoder
Decoder for IBM850.
IBM850Encoder
Encoder for IBM850.
IBM851Decoder
Decoder for IBM851.
IBM851Encoder
Encoder for IBM851.
IBM852Decoder
Decoder for IBM852.
IBM852Encoder
Encoder for IBM852.
IBM855Decoder
Decoder for IBM855.
IBM855Encoder
Encoder for IBM855.
IBM857Decoder
Decoder for IBM857.
IBM857Encoder
Encoder for IBM857.
IBM860Decoder
Decoder for IBM860.
IBM860Encoder
Encoder for IBM860.
IBM861Decoder
Decoder for IBM861.
IBM861Encoder
Encoder for IBM861.
IBM862Decoder
Decoder for IBM862.
IBM862Encoder
Encoder for IBM862.
IBM863Decoder
Decoder for IBM863.
IBM863Encoder
Encoder for IBM863.
IBM864Decoder
Decoder for IBM864.
IBM864Encoder
Encoder for IBM864.
IBM865Decoder
Decoder for IBM865.
IBM865Encoder
Encoder for IBM865.
IBM868Decoder
Decoder for IBM868.
IBM868Encoder
Encoder for IBM868.
IBM869Decoder
Decoder for IBM869.
IBM869Encoder
Encoder for IBM869.
IBM870Decoder
Decoder for IBM870.
IBM870Encoder
Encoder for IBM870.
IBM871Decoder
Decoder for IBM871.
IBM871Encoder
Encoder for IBM871.
IBM880Decoder
Decoder for IBM880.
IBM880Encoder
Encoder for IBM880.
IBM891Decoder
Decoder for IBM891.
IBM891Encoder
Encoder for IBM891.
IBM903Decoder
Decoder for IBM903.
IBM903Encoder
Encoder for IBM903.
IBM904Decoder
Decoder for IBM904.
IBM904Encoder
Encoder for IBM904.
IBM905Decoder
Decoder for IBM905.
IBM905Encoder
Encoder for IBM905.
IBM918Decoder
Decoder for IBM918.
IBM918Encoder
Encoder for IBM918.
IBM1026Decoder
Decoder for IBM1026.
IBM1026Encoder
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.
ShiftJISDecoder
Decoder for Shift_JIS.
ShiftJISEncoder
Encoder for Shift_JIS.
UCS4Unusual2143Decoder
UCS4Unusual2143Encoder
UCS4Unusual3412Decoder
UCS4Unusual3412Encoder
USASCIIDecoder
Decoder for US-ASCII.
USASCIIEncoder
Encoder for US-ASCII.
UTF8Decoder
Decoder for UTF-8.
UTF8Encoder
Encoder for UTF-8.
UTF16BEDecoder
Decoder for UTF-16BE.
UTF16BEEncoder
Encoder for UTF-16BE.
UTF16Decoder
Decoder for UTF-16.
UTF16Encoder
Encoder for UTF-16.
UTF16LEDecoder
Decoder for UTF-16LE.
UTF16LEEncoder
Encoder for UTF-16LE.
UTF32BEDecoder
Decoder for UTF-32BE.
UTF32BEEncoder
Encoder for UTF-32BE.
UTF32Decoder
Decoder for UTF-32.
UTF32Encoder
Encoder for UTF-32.
UTF32LEDecoder
Decoder for UTF-32LE.
UTF32LEEncoder
Encoder for UTF-32LE.

Enums§

DecodeError
Decode error.
EncodeError
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§

Decoder
Encoder

Functions§

find_decoder
find_encoder
register_decoder
register_encoder
register_encoding_alias
Register alias as an alias for the encoding name real.
If alias is 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, returns None.
unregister_decoder
unregister_encoder
unregister_encoding_alias
Unregister alias if it is registerd as an alias for an encoding name.
If successfully removed, return the real name.

Type Aliases§

DecoderFactory
EncoderFactory