Fire Protobuf

A library to encode and decode data in the protobuf format. Supports derive.

Example

```rust use fireprotobuf::{EncodeMessage, DecodeMessage, fromslice, to_vec};

[derive(Debug, PartialEq, Eq, EncodeMessage, DecodeMessage)]

struct MyData { #[field(1)] s: String, #[field(5)] items: Vec }

[derive(Debug, PartialEq, Eq, EncodeMessage, DecodeMessage)]

struct Item { #[field(1)] name: String, #[field(2)] value: u32 }

// get the data as bytes let mut data = MyData { s: "data".into(), items: vec![ Item { name: "1".into(), value: 1 }, Item { name: "2".into(), value: 2 } ] };

let bytes = tovec(&mut data).unwrap(); let ndata = fromslice(&bytes).unwrap(); asserteq!(data, n_data); ```