5 个版本
0.1.5 | 2024 年 3 月 22 日 |
---|---|
0.1.4 | 2024 年 3 月 21 日 |
0.1.2 | 2023 年 3 月 30 日 |
0.1.1 | 2023 年 2 月 13 日 |
0.1.0 | 2022 年 12 月 19 日 |
1479 在 编码
每月下载量 1,035
40KB
940 行
prost-serde-derive
是一个过程宏,用于使用 Prost 和 Serde 对由 Prost 生成的结构体进行序列化和反序列化。
如何使用
当使用 tonic-build 时,将类型属性添加到结构体/枚举中,如下所示
fn main() {
tonic_build::configure()
.type_attribute("some.proto.SomeStruct", "#[derive(prost_serde_derive::Deserialize, prost_serde_derive::Serialize)]")
// Add following if you have to allow missing non-nullable fields when deserializing (will be filled with the default value)
.type_attribute("some.proto.SomeStruct", "#[prost_serde_derive(use_default_for_missing_fields)]")
// Add following if you have to allow deserializing even if there are type errors
.type_attribute("some.proto.SomeStruct", "#[prost_serde_derive(omit_type_errors)]")
// Serializing/deserializing Prost enumerations are also available
.type_attribute("some.proto.SomeEnum", "#[derive(prost_serde_derive::Deserialize, prost_serde_derive::Serialize)]")
.compile(...);
}
当在您的 proto 中使用 bytes
类型时,请确保将 base64 包含到您的依赖中
依赖项
~2.5MB
~52K SLoC