pub trait Split: RingBuffer { type Prod: Producer; type Cons: Consumer; // Required method fn split(self) -> (Self::Prod, Self::Cons); }