pub trait Split<Target> {
type Rest;
// Provided methods
fn fit_impl(&mut self) -> &mut Target { ... }
fn fit_rest_impl(&mut self) -> &mut Self::Rest { ... }
fn split_impl(&mut self) -> (&mut Target, &mut Self::Rest) { ... }
}
pub trait Split<Target> {
type Rest;
// Provided methods
fn fit_impl(&mut self) -> &mut Target { ... }
fn fit_rest_impl(&mut self) -> &mut Self::Rest { ... }
fn split_impl(&mut self) -> (&mut Target, &mut Self::Rest) { ... }
}