Trait optics::traits::Getter

source ·
pub trait Getter<T>: AffineFold<T>
where Self::View: Sized,
{ // Required method fn view(&self, s: T) -> Self::View; }
Expand description

Getter.

Required Methods§

source

fn view(&self, s: T) -> Self::View

View the value pointed to by a getter.

Implementations on Foreign Types§

source§

impl<L: Getter<T>, T> Getter<T> for &L
where Self::View: Sized,

source§

fn view(&self, s: T) -> L::View

Implementors§

source§

impl<K, L, T> Getter<T> for Compose<K, L>
where K: Getter<T>, K::View: Sized, L: Getter<K::View>, L::View: Sized,

source§

impl<T0> Getter<(T0,)> for _0

source§

impl<T0, T1> Getter<(T0, T1)> for _0

source§

impl<T0, T1> Getter<(T0, T1)> for _1

source§

impl<T0, T1, T2> Getter<(T0, T1, T2)> for _0

source§

impl<T0, T1, T2> Getter<(T0, T1, T2)> for _1

source§

impl<T0, T1, T2> Getter<(T0, T1, T2)> for _2

source§

impl<T0, T1, T2, T3> Getter<(T0, T1, T2, T3)> for _0

source§

impl<T0, T1, T2, T3> Getter<(T0, T1, T2, T3)> for _1

source§

impl<T0, T1, T2, T3> Getter<(T0, T1, T2, T3)> for _2

source§

impl<T0, T1, T2, T3> Getter<(T0, T1, T2, T3)> for _3

source§

impl<T> Getter<T> for Identity

source§

impl<T> Getter<T> for _Identity<T>

source§

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