encrypt-stuff 0.2.1

Encrypt serializable data
Documentation
use super::{decode::Decoder, encode::Encoder};

#[derive(Default)]
pub struct Bitcode;

impl Encoder for Bitcode {
    fn encode<T: serde::Serialize + ?Sized>(
        t: &T,
    ) -> Result<Vec<u8>, Box<(dyn std::error::Error)>> {
        let res = bitcode::serialize(t)?;
        Ok(res)
    }
}

impl Decoder for Bitcode {
    fn decode<'de, T: serde::Deserialize<'de>>(
        input: &'de [u8],
    ) -> Result<T, Box<(dyn std::error::Error + 'static)>> {
        let res = bitcode::deserialize(input)?;
        Ok(res)
    }
}