Trait native_model::Decode

source ·
pub trait Decode<T> {
    type Error;

    // Required method
    fn decode(data: Vec<u8>) -> Result<T, Self::Error>;
}
Expand description

Decode trait for your own decoding method.

Example:

use bincode_2_rc::{error::DecodeError,serde::decode_from_slice, config::standard};
use serde::Deserialize;
pub struct Bincode;

impl<T: for<'a> Deserialize<'a>> native_model::Decode<T> for Bincode {
    type Error = DecodeError;
    fn decode(data: Vec<u8>) -> Result<T, DecodeError> {
        Ok(decode_from_slice(&data, standard())?.0)
    }
}

Required Associated Types§

Required Methods§

source

fn decode(data: Vec<u8>) -> Result<T, Self::Error>

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T: for<'a> Deserialize<'a>> Decode<T> for Bincode