jetro-core 0.5.10

jetro-core: parser, compiler, and VM for the Jetro JSON query language
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#[test]
fn test_has_arr_lit() {
    use jetro_core::Jetro;
    let doc = r#"{"obj":{"a":1,"b":2,"c":3,"d":4}}"#;
    let j = Jetro::from_bytes(doc.as_bytes()).unwrap();
    let queries = [
        r#"$.obj.filter_keys(["a","c"] has @)"#,
        r#"$.obj.filter_keys(lambda k: ["a","c"] has k)"#,
        r#"$.obj.filter_keys(@ has "a")"#,
    ];
    for q in &queries {
        let r: Result<serde_json::Value, _> = j.collect(q);
        match r {
            Ok(v) => eprintln!("OK  {} => {}", q, v),
            Err(e) => eprintln!("ERR {} => {:?}", q, e),
        }
    }
}