8 releases
| 0.3.0 | Jan 9, 2026 |
|---|---|
| 0.2.3 | Mar 26, 2025 |
| 0.2.2 | Oct 22, 2024 |
| 0.1.2 | Mar 27, 2024 |
| 0.1.0 | Oct 15, 2023 |
#455 in Encoding
1,401 downloads per month
Used in emit_otlp
57KB
1.5K
SLoC
sval_protobuf
This library implements a binary encoding for sval::Values that's compatible with the
protobuf wire format.
It doesn't require protoc.
Getting started
Add sval_protobuf and sval to your Cargo.toml:
[dependencies.sval]
version = "2"
[dependencies.sval_derive]
version = "2"
[dependencies.sval_protobuf]
version = "0.3.0"
Derive sval::Value on your types and encode them as protobuf messages:
#[macro_use]
extern crate sval_derive;
#[derive(Value)]
pub struct Record<'a> {
id: i32,
title: &'a str,
data: &'a str,
}
let encoded = sval_protobuf::stream_to_protobuf(Record {
id: 42,
title: "My Message",
data: "Some extra contents",
});
Dependencies
~210KB