Newer
Older
#[macro_export]
macro_rules! deref_as {
($outer:ty => $inner:ty) => {
impl ::std::ops::Deref for $outer {
type Target = $inner;
fn deref(&self) -> &Self::Target {
&self.0
}
}
};
(mut $outer:ty => $inner:ty) => {
deref_as!($outer => $inner);
impl ::std::ops::DerefMut for $outer {
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
}
}