pub struct Map<A, T, F> { /* private fields */ }Expand description
An adaptor to provide access to a part of larger structure.
This is the active part of this module. Use the module documentation for the details.
Implementations
sourceimpl<A, T, F> Map<A, T, F>
 
impl<A, T, F> Map<A, T, F>
sourcepub fn new<R>(access: A, projection: F) -> Self where
    F: Fn(&T) -> &R + Clone, 
 
pub fn new<R>(access: A, projection: F) -> Self where
    F: Fn(&T) -> &R + Clone, 
Creates a new instance.
Parameters
access: Access to the bigger structure. This is usually something likeArc<ArcSwap>or&ArcSwap. It is technically possible to use any otherAccesshere, though, for example to sub-delegate into even smaller structure from aMap(or genericAccess).projection: A function (or closure) responsible to providing a reference into the bigger bigger structure, selecting just subset of it. In general, it is expected to be cheap (like only taking reference).
Trait Implementations
impl<A: Copy, T: Copy, F: Copy> Copy for Map<A, T, F>
Auto Trait Implementations
impl<A, T, F> RefUnwindSafe for Map<A, T, F> where
    A: RefUnwindSafe,
    F: RefUnwindSafe, 
impl<A, T, F> Send for Map<A, T, F> where
    A: Send,
    F: Send, 
impl<A, T, F> Sync for Map<A, T, F> where
    A: Sync,
    F: Sync, 
impl<A, T, F> Unpin for Map<A, T, F> where
    A: Unpin,
    F: Unpin, 
impl<A, T, F> UnwindSafe for Map<A, T, F> where
    A: UnwindSafe,
    F: UnwindSafe, 
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
    T: ?Sized, 
 
impl<T> BorrowMut<T> for T where
    T: ?Sized, 
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T, A> DynAccess<T> for A where
    A: Access<T>,
    <A as Access<T>>::Guard: 'static, 
 
impl<T, A> DynAccess<T> for A where
    A: Access<T>,
    <A as Access<T>>::Guard: 'static, 
sourcefn load(&self) -> DynGuard<T>
 
fn load(&self) -> DynGuard<T>
The equivalent of Access::load.