[][src]Crate murdoch_charsets

Murdoch-Charsets

murdoch-charsets provides API for name of character sets defined by Internet Assigned Numbers Authority (IANA).

In all settings, murdoch-charset provides CharacterSet traits and InvalidCharacterSetNameError.

Default Setting

By default, murdoch-charsets provides types corresponding character sets defined by IANA, and CharacterSetEnum to hold any of them.

Custom Character-Sets

You can customize the character sets by using no_charset feature

[dependencies]
murdoch-charsets = { features = [ "no_charset" ] }

then murdoch-charsets exports character_sets! macro.

character_sets!(
    UnicodeCharacterSet,
    UTF_8,                           // character-set type/variant name
    None,                            // preferred_mime_name
    "UTF-8",                         // name
    ["UTF8", "UTF_8",],              // aliases
    ["UTF-8", "UTF8", "UTF_8",],     // uppercase set of names (for FromStr)
    UTF_16,
    None,
    "UTF-16",
    ["UTF16", "UTF_16",],
    ["UTF-16", "UTF16", "UTF_16",],
    UTF_32,
    None,
    "UTF-32",
    ["UTF32", "UTF_32",],
    ["UTF-32", "UTF32", "UTF_32",],
);

By calling the macro as above, the following types and implementations of traits (Debug, Display, Copy, Clone, PartialEq, Eq, FromStr, AsRef<str>, AsRef<[u8]>) are generated.

pub struct UTF_8;
pub struct UTF_16;
pub struct UTF_32;
pub enum UnicodeCharacterSet
{
    UTF_8,
    UTF_16,
    UTF_32,
}

Structs

ADOBE_STANDARD_ENCODING
ADOBE_SYMBOL_ENCODING
AMIGA_1251
ANSI_X3_110_1983
ASMO_449
BIG5
BIG5_HKSCS
BOCU_1
BRF
BS_4730
BS_VIEWDATA
CESU_8
CP50220
CP51932
CSA_Z243_4_1985_GR
CSA_Z243_4_1985_1
CSA_Z243_4_1985_2
CSN_369103
DEC_MCS
DIN_66003
DK_US
DS_2089
EBCDIC_AT_DE
EBCDIC_AT_DE_A
EBCDIC_CA_FR
EBCDIC_DK_NO
EBCDIC_DK_NO_A
EBCDIC_ES
EBCDIC_ES_A
EBCDIC_ES_S
EBCDIC_FI_SE
EBCDIC_FI_SE_A
EBCDIC_FR
EBCDIC_IT
EBCDIC_PT
EBCDIC_UK
EBCDIC_US
ECMA_CYRILLIC
ES
ES2
EUC_KR
EXTENDED_UNIX_CODE_FIXED_WIDTH_FOR_JAPANESE
EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE
GB2312
GB18030
GBK
GB_1988_80
GB_2312_80
GOST_19768_74
GREEK7_OLD
GREEK7
GREEK_CCITT
HP_DESKTOP
HP_LEGAL
HP_MATH8
HP_PI_FONT
HP_ROMAN8
HZ_GB_2312
IBM037
IBM038
IBM273
IBM274
IBM275
IBM277
IBM278
IBM280
IBM281
IBM284
IBM285
IBM290
IBM297
IBM420
IBM423
IBM424
IBM437
IBM500
IBM775
IBM850
IBM851
IBM852
IBM855
IBM857
IBM00858
IBM860
IBM861
IBM862
IBM863
IBM864
IBM865
IBM866
IBM868
IBM869
IBM870
IBM871
IBM880
IBM891
IBM903
IBM904
IBM905
IBM918
IBM00924
IBM1026
IBM1047
IBM01140
IBM01141
IBM01142
IBM01143
IBM01144
IBM01145
IBM01146
IBM01147
IBM01148
IBM01149
IBM_SYMBOLS
IBM_THAI
IEC_P27_1
INIS
INIS_8
INIS_CYRILLIC
INVARIANT
ISO_2022_KR
ISO_2022_JP
ISO_2022_CN
ISO_2022_CN_EXT
ISO_5427
ISO_8859_SUPP
ISO_10367_BOX
ISO_10646_UCS_BASIC
ISO_10646_J_1
ISO_10646_UCS_2
ISO_10646_UCS_4
ISO_10646_UNICODE_LATIN1
ISO_10646_UTF_1
ISO_11548_1
ISO_2022_JP_2
ISO_2033_1983
ISO_5427_1981
ISO_5428_1980
ISO_646_BASIC_1983
ISO_646_IRV_1983
ISO_6937_2_ADD
ISO_6937_2_25
ISO_8859_6_E
ISO_8859_6_I
ISO_8859_8_E
ISO_8859_8_I
ISO_8859_10
ISO_8859_13
ISO_8859_14
ISO_8859_15
ISO_8859_16
ISO_8859_1_1987
ISO_8859_1_WINDOWS_3_0_LATIN_1
ISO_8859_1_WINDOWS_3_1_LATIN_1
ISO_8859_2_1987
ISO_8859_2_WINDOWS_LATIN_2
ISO_8859_3_1988
ISO_8859_4_1988
ISO_8859_5_1988
ISO_8859_6_1987
ISO_8859_7_1987
ISO_8859_8_1988
ISO_8859_9_1989
ISO_8859_9_WINDOWS_LATIN_5
ISO_IR_90
ISO_UNICODE_IBM_1261
ISO_UNICODE_IBM_1264
ISO_UNICODE_IBM_1265
ISO_UNICODE_IBM_1268
ISO_UNICODE_IBM_1276
IT
InvalidCharacterSetNameError
JIS_C6220_1969_JP
JIS_C6220_1969_RO
JIS_C6226_1978
JIS_C6226_1983
JIS_C6229_1984_A
JIS_C6229_1984_B
JIS_C6229_1984_B_ADD
JIS_C6229_1984_HAND
JIS_C6229_1984_HAND_ADD
JIS_C6229_1984_KANA
JIS_ENCODING
JIS_X0201
JIS_X0212_1990
JUS_I_B1_002
JUS_I_B1_003_SERB
JUS_I_B1_003_MAC
KOI7_SWITCHED
KOI8_R
KOI8_U
KSC5636
KS_C_5601_1987
KZ_1048
LATIN_GREEK
LATIN_GREEK_1
LATIN_LAP
MACINTOSH
MICROSOFT_PUBLISHING
MNEM
MNEMONIC
MSZ_7795_3
NATS_DANO
NATS_DANO_ADD
NATS_SEFI
NATS_SEFI_ADD
NC_NC00_10_81
NF_Z_62_010
NF_Z_62_010_1973
NS_4551_1
NS_4551_2
OSD_EBCDIC_DF03_IRV
OSD_EBCDIC_DF04_1
OSD_EBCDIC_DF04_15
PC8_DANISH_NORWEGIAN
PC8_TURKISH
PT
PT2
PTCP154
SCSU
SEN_850200_C
SEN_850200_B
SHIFT_JIS
TIS_620
TSCII
T_101_G2
T_61_7BIT
T_61_8BIT
UNICODE_1_1
UNICODE_1_1_UTF_7
UNKNOWN_8BIT
US_ASCII
US_DK
UTF_7
UTF_8
UTF_16BE
UTF_16LE
UTF_16
UTF_32
UTF_32BE
UTF_32LE
VENTURA_INTERNATIONAL
VENTURA_MATH
VENTURA_US
VIDEOTEX_SUPPL
VIQR
VISCII
WINDOWS_31J
WINDOWS_874
WINDOWS_1250
WINDOWS_1251
WINDOWS_1252
WINDOWS_1253
WINDOWS_1254
WINDOWS_1255
WINDOWS_1256
WINDOWS_1257
WINDOWS_1258

Enums

CharacterSetEnum

Traits

CharacterSet