1 unstable release
0.1.0 | Dec 19, 2018 |
---|
#14 in #nan
1,366 downloads per month
9KB
134 lines
python-json-read-adapter
This crate implements a Read
adapter that converts the invalid JSON
tokens NaN
and Infinity
into other tokens without otherwise distorting
the stream. It achieves this by converting NaN
and Infinity
into 0.0
.
This is useful because the Python JSON library traditionally emits invalid
JSON if NaN
and Infinity
values are encountered. If you have to support
clients like this, this wrapper can be used to still deserialize such a
JSON document.
This is just a way to get this to parse and 0.0
is the only value that can
be inserted in a standardized way that fits without changing any of the
positions.
lib.rs
:
This crate implements a Read
adapter that converts the invalid JSON
tokens NaN
and Infinity
into other tokens without otherwise distorting
the stream. It achieves this by converting NaN
and Infinity
into 0.0
.
This is useful because the Python JSON library traditionally emits invalid
JSON if NaN
and Infinity
values are encountered. If you have to support
clients like this, this wrapper can be used to still deserialize such a
JSON document.
This is just a way to get this to parse and 0.0
is the only value that can
be inserted in a standardized way that fits without changing any of the
positions.
Example Conversion
The following JSON document:
{"nan":NaN,"inf":Infinity,"-inf":-Infinity}
is thus converted to:
{"nan":0.0,"inf":0.0 ,"-inf":-0.0 }
serde support
If the serde
feature is enabled then the crate provides some basic
wrappers around serde_json
to deserialize quickly and also by running
the conversions.
Dependencies
~0–290KB