[WIP] esyn

github crates.io docs.rs build status

Rusty Config File Parser.

Example

```rust fn main() { #[derive(Debug, PartialEq, EsynDe)] enum Map { Up, Down, }

#[derive(Debug, PartialEq, EsynDe)]
struct Window {
    borderless: bool,
    topmost: bool,
}

#[derive(Debug, PartialEq, EsynDe)]
struct Config {
    name: String,
    map: Map,
    invert_mouse: bool,
    font: Option<String>,
    window: Window,
}

let esyn = esyn::Esyn::from_file("./full.rs").unwrap();
let list = esyn.get::<Config>("test_example").unwrap();
let a = &list[0];

assert_eq!(a.name, "bala".to_string());
assert_eq!(a.map, Map::Down);
assert_eq!(a.font, None);

assert_eq!(a.window.borderless, true);
assert_eq!(a.window.topmost, true);

dbg!(a);

}

```

Supported Types

```rust u8 u16 u32 u64 u128 usize i8 i16 i32 i64 i128 isize f32 f64 bool char String

Option Vec Box

Named Struct Unit Enum Unnamed Enum Named Enum

// TODO: // (T, .., T) // Tuple // // StructUnnamed // StructEmpty // EnumEmpty

```