1 2 3 4 5 6 7 8 9 10 11
pub trait Provider { type Provided; fn provide(&self) -> Self::Provided; } pub trait ProviderMut { type Provided; fn provide(&mut self) -> Self::Provided; }