use reval::prelude::*;
use serde::Serialize;
#[tokio::main]
async fn main() {
#[derive(Serialize)]
struct Data {
age: u16,
}
let rule = r"
// age check
age >= i21
";
let ruleset = ruleset()
.with_rule(Rule::parse(rule).unwrap())
.unwrap()
.build();
let facts = Data { age: 16 };
for outcome in ruleset.evaluate(&facts).await.unwrap() {
assert_eq!(outcome.value.unwrap(), false.into());
}
}