Crates.io | jops |
lib.rs | jops |
version | 0.2.0 |
source | src |
created_at | 2023-07-17 17:02:19.09572 |
updated_at | 2023-07-21 09:36:18.087459 |
description | Query and operate with serde_json Values |
homepage | |
repository | https://github.com/marshauf/jops |
max_upload_size | |
id | 918675 |
size | 43,089 |
A collection of tools to help operate on serde_json::Values.
JOPS provides a function for comparing two serde_json::Value.
The partial_cmp function.
use std::cmp::Ordering;
use serde_json::Value;
let a = Value::Null;
let b = Value::Null;
let res : Ordering = jops::partial_cmp(&a, &b);
JsonValue wrapper provides partial_cmp.
use jops;
use serde_json::Value;
let a = jops::JsonValue(&Value::Null);
let b = jops::JsonValue(&Value::Null);
let res = a > b;
An SQLite JSON Path implementation. Access Values inside an Object or Array.
$
represents the root Value.<name>
points to a sub value with key name
inside an Object<name>[<index>]
points to a value inside an Array name
at index
(zero indexed).<name>[#-<offset>]
points to a value inside an Array name
at length of array minus offset.<index>
points to a value inside a root Array at index
(zero indexed).let value = serde_json::json!({ "a": "example", "b": [0,1,2] });
value.path("$"); // Returns a reference to value
value.path("$.a"); // Returns a reference to the String value "example"
value.path("$.b[1]"); // Returns a reference to the Number value 1 inside the array b
value.path("$.b[#-1]"); // Returns a reference to the Number value 1 inside the array b
let value = serde_json::json!([0,2]);
value.path("1"); // Returns a reference to the Number value 2 inside the array
Licensed under either of Apache License, Version 2.0 or MIT license at your option.