# bare-rs
`bare-rs` is a proc-macro that implements a parser-generator for the
[BARE message format](https://datatracker.ietf.org/doc/draft-devault-bare/).
It relies on [`serde`](https://serde.rs/) using
[`serde_bare`](https://git.sr.ht/~tdeo/serde_bare) to implement serialization.
## Usage
Define you BARE schema in a .bare file:
```
type User struct {
name: str
key: data[128]
id: uint
}
```
Then in a corresponding Rust file:
```rust
bare_schema!("schema.bare");
```
which will expand roughly the following:
```rust
#[derive(Serialize, Deserialize, PartialEq, Eq, Debug)]
struct User {
name: String,
key: [u8; 128],
id: u64,
}
```
## License
`bare-rs` is licensed under MIT.