use serde::{de::DeserializeOwned, Serialize};
use crate::error::CachekitError;
pub fn serialize<T: Serialize>(value: &T) -> Result<Vec<u8>, CachekitError> {
rmp_serde::to_vec_named(value).map_err(|e| CachekitError::Serialization(e.to_string()))
}
pub fn deserialize<T: DeserializeOwned>(bytes: &[u8]) -> Result<T, CachekitError> {
rmp_serde::from_slice(bytes).map_err(|e| CachekitError::Serialization(e.to_string()))
}