1pub trait Writer<T> { 2 fn write(&mut self, data: &T) -> crate::Result<usize>; 3} 4 5#[cfg(feature = "async")] 6pub trait AsyncWriter<T> { 7 fn write(&mut self, data: &T) -> impl std::future::Future<Output = crate::Result<usize>>; 8}