#filter #json #data #multiple #resources #serde-json #github

webql

WebQL 是一个库,允许从多个资源或 JSON 获取数据并过滤结果

1 个不稳定版本

0.1.0 2022 年 10 月 28 日

#170 in #multiple

Apache-2.0

40KB
899

webql

Crates.io CI WebQL 是一个库,允许从多个资源或 JSON 获取数据并过滤结果。

使用说明

[dependencies]
webql = { version = "0.1.0" }

功能标志

  • github 功能标志用于过滤拉取请求数据。

示例

use serde_json::json;
let json = json!({
        "url": "https://github.com/rusty-ferris-club/webql",
        "body": "some example",
        "labels": [
            {
                "name": "label-1",
            },
            {
                "name": "label-2",
            },
        ],
        "user" : {
            "login": "kaplanelad"
        }
    });
    let filters = vec![
        Filter {
            query: r#""user"."login""#.to_string(),
            operation: Operation::Equal,
            values: vec!["kaplanelad".to_string()],
        },
        Filter {
            query: r#""labels"|={"name"}."name""#.to_string(),
            operation: Operation::Equal,
            values: vec!["label-1".to_string()],
        },
        Filter {
            query: r#""body""#.to_string(),
            operation: Operation::Contains,
            values: vec!["example".to_string()],
        },
    ];
    jfilter::is_match_filters(&json, &filters)

所有示例都在这里

感谢

感谢所有 贡献者 - 您使这一切成为可能,感谢!

版权

版权所有 (c) 2022 @kaplanelad。有关更多信息,请参阅 LICENSE

依赖项

~13–27MB
~435K SLoC