6个版本
0.1.1 | 2024年6月19日 |
---|---|
0.1.0 | 2021年1月31日 |
0.0.4 | 2020年3月27日 |
0.0.2 | 2020年1月12日 |
#2365 in 编码
560 monthly downloads
用于 6 个crates (3 直接)
18KB
305 行
serde-indexed
通过数值索引替换结构体键的Serialize
和Deserialize
的推导。
主要用例是处理CTAP CBOR消息,特别是对
skip_serializing_if
可选键的支持- 可配置的索引
offset
示例
#[derive(Clone, Debug, PartialEq, SerializeIndexed, DeserializeIndexed)]
#[serde_indexed(offset = 1)]
pub struct SomeKeys {
pub number: i32,
#[serde(skip_serializing_if = "Option::is_none")]
pub option: Option<u8>,
pub bytes: [u8; 7],
}
这是一个学习proc-macros的好机会,我大致遵循了serde-repr
。
要查看一些生成的代码,运行cargo expand --test basics
。
许可证
serde-indexed
采用Apache License, Version 2.0或MIT License中的一个,供您选择。
除非您明确表示,否则根据Apache-2.0许可证的定义,您有意提交的任何贡献,都将按照上述方式双许可,而无需任何额外条款或条件。
依赖项
~285–740KB
~18K SLoC