Safe Haskell  None 

Language  Haskell2010 
Synopsis
 class MappingOptic k f g s t a b where
 type MappedOptic k
 mapping :: "mapping" `AcceptsEmptyIndices` is => Optic k is s t a b > Optic (MappedOptic k) is (f s) (g t) (f a) (g b)
Documentation
class MappingOptic k f g s t a b where Source #
type MappedOptic k Source #
Type family that maps an optic to the optic kind produced by
mapping
using it.
mapping :: "mapping" `AcceptsEmptyIndices` is => Optic k is s t a b > Optic (MappedOptic k) is (f s) (g t) (f a) (g b) Source #
Instances
(Functor f, f ~ g, s ~ t, a ~ b) => MappingOptic A_Review f g s t a b Source #  
Defined in Optics.Mapping type MappedOptic A_Review :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic A_Review is s t a b > Optic (MappedOptic A_Review) is (f s) (g t) (f a) (g b) Source #  
(Functor f, f ~ g, s ~ t, a ~ b) => MappingOptic A_ReversedLens f g s t a b Source #  
Defined in Optics.Mapping type MappedOptic A_ReversedLens :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic A_ReversedLens is s t a b > Optic (MappedOptic A_ReversedLens) is (f s) (g t) (f a) (g b) Source #  
(Functor f, f ~ g, s ~ t, a ~ b) => MappingOptic A_Getter f g s t a b Source # 

Defined in Optics.Mapping type MappedOptic A_Getter :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic A_Getter is s t a b > Optic (MappedOptic A_Getter) is (f s) (g t) (f a) (g b) Source #  
(Functor f, f ~ g, s ~ t, a ~ b) => MappingOptic A_ReversedPrism f g s t a b Source #  
Defined in Optics.Mapping type MappedOptic A_ReversedPrism :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic A_ReversedPrism is s t a b > Optic (MappedOptic A_ReversedPrism) is (f s) (g t) (f a) (g b) Source #  
(Functor f, f ~ g, s ~ t, a ~ b) => MappingOptic A_Prism f g s t a b Source #  
Defined in Optics.Mapping type MappedOptic A_Prism :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic A_Prism is s t a b > Optic (MappedOptic A_Prism) is (f s) (g t) (f a) (g b) Source #  
(Functor f, f ~ g, s ~ t, a ~ b) => MappingOptic A_Lens f g s t a b Source #  
Defined in Optics.Mapping type MappedOptic A_Lens :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic A_Lens is s t a b > Optic (MappedOptic A_Lens) is (f s) (g t) (f a) (g b) Source #  
(Functor f, Functor g) => MappingOptic An_Iso f g s t a b Source #  
Defined in Optics.Mapping type MappedOptic An_Iso :: Type Source # mapping :: AcceptsEmptyIndices "mapping" is => Optic An_Iso is s t a b > Optic (MappedOptic An_Iso) is (f s) (g t) (f a) (g b) Source # 