2 个版本
0.1.1 | 2022 年 5 月 5 日 |
---|---|
0.1.0 | 2022 年 5 月 5 日 |
#350 in 电子邮件
555KB
10K SLoC
telestes
欢迎!
Telestes 提供了媒体类型的实现;也被称为 MIME 类型。此 crate 强调性能和正确性;以及能够在 const
上下文中解析的能力。它是 no_std
启用的。
要开始,请查看 MediaType
和 Essence
类型。
可选功能
alloc
- 启用使用alloc
crate 中的类型serde
- 启用使用serde
进行序列化/反序列化db
- 启用 IANA 媒体类型的const
数据库
术语
此 crate 的术语应遵循 RFC 或其他著名文档中广泛使用的术语;有一个例外。由于媒体类型的 type
术语与 Rust 的 type
关键字冲突,我们选择了 genus
和 species
术语来分别替换 type
和 subtype
术语。
示例
use telestes::MediaType;
let mt = MediaType::new("text/plain; charset=UTF-8").unwrap();
assert_eq!(mt, "text/plain; charset=UTF-8");
assert_eq!(mt.essence(), "text/plain");
assert_eq!(mt.essence().genus(), "text");
assert_eq!(mt.essence().species(), "plain");
assert_eq!(mt.parameters().get("charset"), Some("UTF-8"));
命名
此 crate 以古希腊悲剧《七将攻忒拜》中的角色 Telestes 命名。这个角色可能是历史上最早记录的哑剧演员。
许可证:Apache-2.0