Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class (i ~ TIndex a rs, b ~ Lookup a rs) => IxElem a rs i b where
- rlensBy' :: Functor g => Proxy# a -> (f b -> g (f b)) -> Rec (TaggedFunctor f) rs -> g (Rec (TaggedFunctor f) rs)
- rgetBy' :: Proxy# a -> Rec (TaggedFunctor f) rs -> f b
- rmodifyBy' :: Proxy# a -> (f b -> f b) -> Rec (TaggedFunctor f) rs -> Rec (TaggedFunctor f) rs
- rsetBy' :: IxElem k rs i v => Proxy# k -> f v -> Rec (TaggedFunctor f) rs -> Rec (TaggedFunctor f) rs
Documentation
class (i ~ TIndex a rs, b ~ Lookup a rs) => IxElem a rs i b where Source
This is a typeclass in the spirit of RElem
that provides
a lens for Rec
whose values a tagged by an additional
marker (often a Symbol
). The methods in this typeclass
are not intended to be used directly. Instead, import one
of the four submodules, and use the functions it provides.
rlensBy' :: Functor g => Proxy# a -> (f b -> g (f b)) -> Rec (TaggedFunctor f) rs -> g (Rec (TaggedFunctor f) rs) Source
rgetBy' :: Proxy# a -> Rec (TaggedFunctor f) rs -> f b Source
rmodifyBy' :: Proxy# a -> (f b -> f b) -> Rec (TaggedFunctor f) rs -> Rec (TaggedFunctor f) rs Source
rsetBy' :: IxElem k rs i v => Proxy# k -> f v -> Rec (TaggedFunctor f) rs -> Rec (TaggedFunctor f) rs Source