2 个版本

0.2.1 2024年6月6日
0.2.0 2024年2月9日

#556 in 编码

MIT 许可证

30KB
730

JSONFilter

jsonfilter 是一个 Rust 库,旨在根据指定的标准过滤和比较 JSON 值。它提供了比较 JSON 值、对 JSON 对象应用过滤器以及确定过滤器是否匹配给定 JSON 对象的功能。可以将它与 MongoDB 的 find() 函数相比,但它是一个过滤器函数。有关完整语法指南,请参阅 过滤器文档

用法

要使用 jsonfilter,将其添加到您的 Cargo.toml 并将以下内容添加到您的 Rust 代码中

use jsonfilter::{order, matches};

比较 JSON 值

您可以使用 order 函数比较两个 JSON 值

use serde_json::json;
use std::cmp::Ordering;
use jsonfilter::order;

let a = json!(10);
let b = json!(5);
assert_eq!(order(&a, &b), Ordering::Greater);

匹配过滤器

要检查 JSON 对象是否匹配过滤器,请使用 matches 函数

use serde_json::json;
use jsonfilter::matches;

let filter = json!({"name": "John", "age": 30});
let obj = json!({"name": "John", "age": 30, "city": "New York"});

assert!(matches(&filter, &obj));

依赖项

~2.6–4MB
~74K SLoC