use std::io;
use serde::{de::DeserializeOwned, Serialize};
pub use error::*;
#[cfg(feature = "json")]
pub use json::*;
#[cfg(feature = "yaml")]
pub use yaml::*;
mod error;
#[cfg(feature = "json")]
mod json;
#[cfg(feature = "yaml")]
mod yaml;
pub trait Serializer {
fn serialize<T, W>(writer: W, value: &T) -> Result<()>
where T: Serialize + DeserializeOwned,
W: io::Write;
fn deserialize<T, R>(reader: R) -> Result<T>
where T: Serialize + DeserializeOwned,
R: io::Read;
}