Struct bytecodec::json_codec::JsonDecoder[][src]

pub struct JsonDecoder<T>(_)
where
    T: for<'de> Deserialize<'de>
;
Expand description

JSON decoder.

Note that this decodes items monolithically so very large items may impair real-time property of the system.

Examples

use bytecodec::{Decode, Eos};
use bytecodec::json_codec::JsonDecoder;
use serde_json::Value;

let mut decoder = JsonDecoder::<Value>::new();

decoder.decode(b"[1, 2", Eos::new(false)).unwrap();
decoder.decode(b", 3]", Eos::new(true)).unwrap();
let json = decoder.finish_decoding().unwrap();

assert_eq!(json.to_string(), "[1,2,3]");

Implementations

Makes a new JsonDecoder instance.

Trait Implementations

Formats the value using the given formatter. Read more

The type of items to be decoded.

Consumes the given buffer (a part of a byte sequence), and proceeds the decoding process. Read more

Finishes the current decoding process and returns the decoded item. Read more

Returns the lower bound of the number of bytes needed to decode the next item. Read more

Returns true if there are no items to be decoded by the decoder at the next invocation of decode method, otherwise false. Read more

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Consumes bytes from the given read buffer and proceeds the decoding process.

Decodes an item from the given reader. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.