# forma_sif
[SIF (Structured Interchange Format)](https://github.com/scalecode-solutions/sif-parser)
serializer and deserializer for the
[forma](https://crates.io/crates/forma) serialization framework.
**Most users should use `forma` with the `sif` feature instead of depending on
this crate directly:**
```toml
[dependencies]
forma = { version = "0.1", features = ["derive", "sif"] }
```
## Quick Example
```rust
use forma_sif::{to_string, from_str};
use forma_derive::{Serialize, Deserialize};
#[derive(Serialize, Deserialize, Debug, PartialEq)]
struct Row {
id: u64,
name: String,
active: bool,
}
let rows = vec![
Row { id: 1, name: "alice".into(), active: true },
Row { id: 2, name: "bob".into(), active: false },
];
let sif = to_string(&rows).unwrap();
let back: Vec<Row> = from_str(&sif).unwrap();
assert_eq!(back, rows);
```
SIF is a tabular, schema-aware text format designed for structured data
interchange. See the
[SIF specification](https://github.com/scalecode-solutions/sif-parser) for
details.
## License
Licensed under either of Apache License, Version 2.0 or MIT License at your
option.