1 2 3 4 5 6 7 8 9 10 11 12 13
use super::*; use std::marker::PhantomData; /// Wrapper type for stateless mapping #[repr(transparent)] pub struct Mapped<E,T,U,FRef,FMut,FInto> where FRef: for<'a> MapFun<&'a T,&'a U> { inner: T, _p: PhantomData<(E,U,FRef,FMut,FInto)>, } pub trait MapFun<T,U> { fn mapfun(v: T) -> U; }