seuil 0.1.1

A complete, safe JSONata implementation in Rust — JSON query, transform, and expression evaluation
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use seuil::Seuil;

fn main() -> seuil::Result<()> {
    let expr = Seuil::compile("orders[status='paid'].amount ~> $sum()")?;
    let data = serde_json::json!({
        "orders": [
            {"status": "paid", "amount": 100},
            {"status": "pending", "amount": 50},
            {"status": "paid", "amount": 200}
        ]
    });
    let result = expr.evaluate(&data)?;
    println!("Total paid: {}", result);
    Ok(())
}