immutable_json/lib.rs
1//! With this crate, JSON objects and arrays can be transformed in an immutable way, which means
2//! that every "change" leads to a new value. Persistent collections are used internally to make
3//! changes and cloning cheap. Conversions from and to values in the
4//! [`serde_json`](https://docs.rs/serde_json/latest/serde_json/) crate are provided.
5//!
6//! The crate feature `jaq` enables the transformation of JSON with the
7//! [jq language](https://jqlang.org). It is powered by the
8//! [jaq engine](https://github.com/01mf02/jaq).
9//!
10//! The crate feature `patch` enables working with JSON patches. It uses the `json-patch` crate.
11pub mod api;
12pub mod array;
13pub mod error;
14#[cfg(feature = "jaq")]
15pub mod jaq;
16pub mod object;
17#[cfg(feature = "patch")]
18pub mod patch;
19pub mod pointer;
20pub mod serde;