[][src]Struct daemon_engine::codecs::json::JsonCodec

pub struct JsonCodec<Enc, Dec, E> { /* fields omitted */ }

A codec for JSON encoding and decoding Enc is the type to encode, Dec is the type to decode, E is the error type to be returned for both operations

Methods

impl<Enc, Dec, E> JsonCodec<Enc, Dec, E> where
    Dec: Deserialize<'de> + Clone + Send + 'static,
    Enc: Serialize + Clone + Send + 'static,
    E: From<Error> + From<Error> + 'static, 
[src]

New builds an empty codec with associated types

pub fn new() -> JsonCodec<Enc, Dec, E>[src]

Creates a new JsonCodec for shipping around raw bytes.

Trait Implementations

impl<Enc: PartialEq, Dec: PartialEq, E: PartialEq> PartialEq<JsonCodec<Enc, Dec, E>> for JsonCodec<Enc, Dec, E>[src]

impl<Enc, Dec, E> Clone for JsonCodec<Enc, Dec, E> where
    Dec: Deserialize<'de> + Clone + Send + 'static,
    Enc: Serialize + Clone + Send + 'static,
    E: From<Error> + From<Error> + 'static, 
[src]

Clone impl required for use with connections

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<Enc: Debug, Dec: Debug, E: Debug> Debug for JsonCodec<Enc, Dec, E>[src]

impl<Enc, Dec, E> Decoder for JsonCodec<Enc, Dec, E> where
    Dec: Deserialize<'de> + Clone + Send + 'static,
    Enc: Serialize + Clone + Send + 'static,
    E: From<Error> + From<Error> + 'static, 
[src]

Decoder impl parses json objects from bytes

type Item = Dec

The type of decoded frames.

type Error = E

The type of unrecoverable frame decoding errors. Read more

fn decode_eof(
    &mut self,
    buf: &mut BytesMut
) -> Result<Option<Self::Item>, Self::Error>
[src]

A default method available to be called when there are no more bytes available to be read from the underlying I/O. Read more

fn framed<T>(self, io: T) -> Framed<T, Self> where
    Self: Encoder,
    T: AsyncRead + AsyncWrite
[src]

Provides a Stream and Sink interface for reading and writing to this Io object, using Decode and Encode to read and write the raw data. Read more

impl<Enc, Dec, E> Encoder for JsonCodec<Enc, Dec, E> where
    Dec: Deserialize<'de> + Clone + Send + 'static,
    Enc: Serialize + Clone + Send + 'static,
    E: From<Error> + From<Error> + 'static, 
[src]

Encoder impl encodes object streams to bytes

type Item = Enc

The type of items consumed by the Encoder

type Error = E

The type of encoding errors. Read more

Auto Trait Implementations

impl<Enc, Dec, E> Send for JsonCodec<Enc, Dec, E> where
    Dec: Send,
    E: Send,
    Enc: Send

impl<Enc, Dec, E> Sync for JsonCodec<Enc, Dec, E> where
    Dec: Sync,
    E: Sync,
    Enc: Sync

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Erased for T