umka 0.1.0

high level bindings for umka
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use std::{fs::File, io::BufReader, path::Path};

use umka::Umka;

fn main() -> anyhow::Result<()> {
    let umka = Umka::new(file_reader("greet.um")?, "greet.um")?;
    umka.compile()?;

    umka.function("greet")?.str_arg(c"rust").call_void()?;

    Ok(())
}

fn file_reader(name: &str) -> anyhow::Result<BufReader<File>> {
    let file = File::open(Path::new("umka/examples").join(name))?;
    Ok(BufReader::new(file))
}