Crates.io | serde_json_merge |
lib.rs | serde_json_merge |
version | 0.0.4 |
source | src |
created_at | 2022-09-22 12:11:47.93139 |
updated_at | 2022-09-28 15:16:13.121957 |
description | Merge, index, iterate, and sort a serde_json::Value (recursively) |
homepage | https://github.com/romnn/serde_json_merge |
repository | https://github.com/romnn/serde_json_merge |
max_upload_size | |
id | 671666 |
size | 120,095 |
Merge, index, iterate, and sort a serde_json::Value
(recursively).
This library supports in-place merging and sorting using DFS and BFS traversal unline most implementations out there that use recursion and can stack overflow.
[dependencies]
serde_json_merge = "0"
For usage examples, check the examples and documentation.
cargo run --example async_fs --features async -- --path ./
cargo run --example sync_fs --features sync,rayon -- --path ./
RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --all-features
cargo feature-combinations clippy --fail-fast --pedantic --tests --benches --examples -- -Dclippy::all -Dclippy::pedantic
cargo clippy --tests --benches --examples -- -Dclippy::all -Dclippy::pedantic
cargo install cargo-criterion
# full benchmark suite
cargo criterion --features full
Benchmark reports from CI are published are available here.
After i wrote this crate for another project and decided to publish it, I found json_value_merge.
Looking through it, I added merge_index
inspired by their merge_in
API.
write benchmarks
add globbing iter
add iters for keys and values
implement sorting values with indices
implement bfs
add rayon support using par-dfs
write documentation
add examples in the documentation
DONE: