#deserialize-json #json #streaming-json #struct #direct #modern #serialization-deserialization

nop-json

JSON serialization/deserialization (full-featured, modern, optimal, streaming, direct into struct, binary-ready)

16 stable releases

2.0.5 Sep 12, 2021
2.0.4 Mar 16, 2021
1.0.9 Jan 24, 2021
1.0.5 Dec 7, 2020
0.0.4 Dec 30, 2019

#1236 in Encoding

Download history 6/week @ 2024-08-10 30/week @ 2024-09-21 1/week @ 2024-09-28

57 downloads per month

MIT license

150KB
3K SLoC

nop-json

Documentation crates.io

This is full-featured modern JSON implementation according to ECMA-404 standard.

This crate allows deserialization of JSON Iterator<u8> stream into primitive types (bool, i32, etc.), Strings and any other types that implement special trait called TryFromJson, which can be implemented automatically through #[derive(TryFromJson)] for your structs and enums.

And serialization back to JSON through DebugToJson trait, that acts like Debug, allowing to print your objects with println!() and such. Or through WriteToJson trait that allows to write to a io::Write stream.

This crate allows to read whitespece-separated JSON values from stream in sequence. It also allows to pipe blob strings to a writer.

Documentation

Read on crates.io

Dependencies

~1.5MB
~38K SLoC