Trait optics::traits::GetterMut

source ·
pub trait GetterMut<'a, T: ?Sized>: AffineFoldMut<'a, T>
where Self::View: 'a,
{ // Required method fn view_mut(&self, s: &'a mut T) -> &'a mut Self::View; }
Expand description

Getter, with mutable references.

Required Methods§

source

fn view_mut(&self, s: &'a mut T) -> &'a mut Self::View

Get a mutable reference to the value pointed to by a getter.

Implementations on Foreign Types§

source§

impl<'a, L: GetterMut<'a, T>, T: ?Sized + 'a> GetterMut<'a, T> for &L
where L::View: 'a,

source§

fn view_mut(&self, s: &'a mut T) -> &'a mut L::View

Implementors§

source§

impl<'a, T0> GetterMut<'a, (T0,)> for _0
where T0: 'a,

source§

impl<'a, T0, T1> GetterMut<'a, (T0, T1)> for _0
where T0: 'a,

source§

impl<'a, T0, T1> GetterMut<'a, (T0, T1)> for _1
where T1: 'a,

source§

impl<'a, T0, T1, T2> GetterMut<'a, (T0, T1, T2)> for _0
where T0: 'a,

source§

impl<'a, T0, T1, T2> GetterMut<'a, (T0, T1, T2)> for _1
where T1: 'a,

source§

impl<'a, T0, T1, T2> GetterMut<'a, (T0, T1, T2)> for _2
where T2: 'a,

source§

impl<'a, T0, T1, T2, T3> GetterMut<'a, (T0, T1, T2, T3)> for _0
where T0: 'a,

source§

impl<'a, T0, T1, T2, T3> GetterMut<'a, (T0, T1, T2, T3)> for _1
where T1: 'a,

source§

impl<'a, T0, T1, T2, T3> GetterMut<'a, (T0, T1, T2, T3)> for _2
where T2: 'a,

source§

impl<'a, T0, T1, T2, T3> GetterMut<'a, (T0, T1, T2, T3)> for _3
where T3: 'a,

source§

impl<'a, T> GetterMut<'a, T> for Identity
where T: 'a,

source§

impl<'a, T: ?Sized + 'a> GetterMut<'a, T> for _Identity<T>

source§

impl<'a, T: ?Sized, K, L> GetterMut<'a, T> for Compose<K, L>
where K: GetterMut<'a, T>, K::View: 'a, L: GetterMut<'a, K::View>, L::View: 'a,

source§

impl<'a, T: ?Sized, L: GetterMut<'a, T>, S, F, E, G> GetterMut<'a, T> for MapFallible<L, F, G>
where F: Fn(L::Success) -> S, G: Fn(L::Error) -> E, L::View: 'a,