20 releases
0.10.1 | Jan 24, 2023 |
---|---|
0.9.0 | Apr 25, 2022 |
0.8.5 | Nov 16, 2021 |
0.8.1 | Jul 14, 2021 |
0.5.2 | Mar 23, 2021 |
#736 in Encoding
106 downloads per month
Used in tinychain
74KB
2K
SLoC
destream_json
Rust library for encoding and decoding JSON streams
Example:
let expected = ("one".to_string(), 2.0, vec![3, 4]);
let stream = destream_json::encode(&expected).unwrap();
let actual = destream_json::try_decode((), stream).await;
assert_eq!(expected, actual);
lib.rs
:
Library for decoding and encoding JSON streams.
Example:
# use futures::StreamExt;
# use futures::executor::block_on;
let expected = ("one".to_string(), 2.0, vec![3, 4]);
let stream = destream_json::encode(&expected).unwrap();
let actual = block_on(destream_json::try_decode((), stream)).unwrap();
assert_eq!(expected, actual);
Deviations from the JSON spec:
destream_json
will not error out if asked to decode or encode a non-string key in a JSON object (i.e., it supports a superset of the official JSON spec). This may cause issues when using another JSON library to decode a stream encoded bydestream_json
. This behavior can be altered by using only strings as keys, or adding an explicit check at encoding time.
Dependencies
~1.5–6.5MB
~105K SLoC