1 个不稳定版本
0.1.0 | 2019 年 7 月 13 日 |
---|
#379 in 国际化 (i18n)
54KB
2K SLoC
murdoch-charsets
Murdoch-Charsets
murdoch-charsets
提供由互联网数字分配机构 (IANA) 定义的字符集名称的 API。
在所有设置中,murdoch-charset
提供了 CharacterSet
特性和 InvalidCharacterSetNameError
。
默认设置
默认情况下,murdoch-charsets
提供了与 IANA 定义的字符集相对应的类型,并提供 CharacterSetEnum
来存储其中任何一个。
自定义字符集
您可以通过使用 no_charset
功能来自定义字符集
[dependencies]
murdoch-charsets = { features = [ "no_charset" ] }
然后,murdoch-charsets
导出 character_sets!
宏。
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",],
);
通过像上面一样调用宏,将生成以下类型和特质的实现(Debug
、Display
、Copy
、Clone
、PartialEq
、Eq
、FromStr
、AsRef<str>
、AsRef<[u8]>
)。
pub struct UTF_8;
pub struct UTF_16;
pub struct UTF_32;
pub enum UnicodeCharacterSet
{
UTF_8,
UTF_16,
UTF_32,
}
许可证:MIT