pub trait UnwrapRef<T> {
fn unwrap_ref(&self) -> &T;
}
impl<T> UnwrapRef<T> for Option<T> {
fn unwrap_ref(&self) -> &T {
match self {
Some(e) => &e,
_ => {panic!()}
}
}
}
impl<T, U> UnwrapRef<T> for Result<T, U> {
fn unwrap_ref(&self) -> &T {
match self {
Ok(e) => &e,
_ => {panic!()}
}
}
}