pub trait ChannelRecv<T> { type Error; // Required method fn recv(&mut self) -> Result<T, Self::Error>; }