1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
pub trait FromRef<T> {
fn from_ref(_: &T) -> Self;
}
impl<T, U> FromRef<T> for U
where
T: Clone,
U: From<T>,
{
fn from_ref(value: &T) -> Self {
Self::from(value.clone())
}
}
pub trait Into<T> {
fn into(self) -> T;
}