#shim #serde #enum-primitive

无需std enum_primitive_serde_shim

社区驱动的Serde适配器

4个版本

使用旧Rust 2015

0.2.3 2023年1月1日
0.2.2 2019年12月19日
0.2.1 2018年11月22日
0.2.0 2018年11月22日

#1598编码

Download history 59/week @ 2024-04-02 37/week @ 2024-04-09 31/week @ 2024-04-16 11/week @ 2024-04-23 1/week @ 2024-05-07 1/week @ 2024-05-21 2/week @ 2024-05-28 11/week @ 2024-06-04 3/week @ 2024-06-11

131 每月下载量
用于 serde_shims

MIT 协议

7KB
55

serde_shims 构建状态

社区驱动的Serde适配器

文档

许多crate更喜欢避免在原生提供Serde集成,因为它可能在将来不稳定,维护起来麻烦,或者如果有Serde的竞争对手,会抑制创新。

然而,在我的项目中追踪数十或数百行的自定义适配器函数,证明与直接将这些功能添加到那些crate中一样令人沮丧。在二进制或库之间共享代码的能力尤其痛苦。

因此,作为折衷方案,我提出这个crate作为为没有原生Serde实现的crate提供 serialize_with/deserialize_with 函数或实现宏的方式。

要启用这些适配器,只需将crate添加到您的 Cargo.toml

[dependencies]
bitflags_serde_shim = "0.2"
enum_primitive_serde_shim = "0.2"
mime_serde_shim = "0.2"
std_serde_shims = "0.2"

或使用元crate的基于旧功能的导入

[dependencies]
serde_shims = { version = "0.2", features = ["std", "mime"] }

如果您想要一个具有Serde适配器的crate,或者想贡献自己的适配器,请随时打开问题或拉取请求!

依赖关系

~350–590KB
~11K SLoC