# Żasą
<a href="https://oql.avris.it/license/v1.1" target="_blank" rel="noopener"><img src="https://badgers.space/badge/License/OQL/pink" alt="License: OQL" style="vertical-align: middle;"/></a>
It's just own json parser writen only in rust, with 0 external dependencies, as part of my "No dependncies" series of projects.
## Usage
Easiest way to use this library is to use it with `Normalize` macro, however it's still pretty unstable, but it works for basic stuff. Currently it supports String, f64 and bool types
```
use zasa::parser::Parser;
use zasa::value::normalize;
use zasa::Normalize;
#[derive(Debug, Normalize)]
struct Example {
name: String,
size: f64,
active: bool
}
fn main() {
let json_string = "{\"name\": \"test\", \"size\": 45.0, \"active\": true}";
let parsed = Parser::new(json_string.chars()).parse().unwrap();
let normalized: Example = normalize(parsed).unwrap();
dbg!(normalized);
}
```
it will result in
```
normalized = Example {
name: "test",
size: 45.0,
active: true,
}
```