simple/
simple.rs

1extern crate evaluator_rs;
2
3use std::collections::HashMap;
4
5use evaluator_rs::{evaluate, parse_expr_from_str, Value};
6
7fn main() {
8    let expr = parse_expr_from_str("{a} + 2 + 3").unwrap();
9    let parameters = HashMap::from([("a", Value::from(1))]);
10    let rs = evaluate(&expr, &parameters).unwrap();
11    assert_eq!(rs, Value::from(6));
12
13    let expr = parse_expr_from_str("{a} >= 1").unwrap();
14    let parameters = HashMap::from([("a", Value::from(1))]);
15    let rs = evaluate(&expr, &parameters).unwrap();
16    assert_eq!(rs, Value::from(true));
17
18    let expr = parse_expr_from_str("{a} in [1, 2 , 3]").unwrap();
19    let parameters = HashMap::from([("a", Value::from(1))]);
20    let rs = evaluate(&expr, &parameters).unwrap();
21    assert_eq!(rs, Value::from(true));
22}