Module Documentation
Module Optic.At
At
class (Index m a b) <= At m a b where
at :: a -> LensP m (Maybe b)
atIdentity
instance atIdentity :: At (Identity a) Unit a
atMaybe
instance atMaybe :: At (Maybe a) Unit a
atSet
instance atSet :: (Ord v) => At (S.Set v) v Unit
atMap
instance atMap :: (Ord k) => At (M.Map k v) k v
atStrMap
instance atStrMap :: At (SM.StrMap v) String v
Module Optic.Contains
Contains
class (IndexKey m a) <= Contains m a where
contains :: a -> LensP m Boolean
containsSet
instance containsSet :: (Ord k) => Contains (Set k) k
Module Optic.Index
Index
class (IndexKey m a, IndexValue m b) <= Index m a b where
ix :: a -> TraversalP m b
indexArr
instance indexArr :: (Eq e) => Index (e -> a) e a
indexMaybe
instance indexMaybe :: Index (Maybe a) Unit a
indexIdentity
instance indexIdentity :: Index (Identity a) Unit a
indexArray
instance indexArray :: Index [a] Number a
indexSet
instance indexSet :: (Ord a) => Index (S.Set a) a Unit
indexMap
instance indexMap :: (Ord k) => Index (M.Map k v) k v
indexStrMap
instance indexStrMap :: Index (SM.StrMap v) String v
Module Optic.Index.Class
IndexKey
IndexValue
class IndexValue m v where
indexKeyArr
instance indexKeyArr :: IndexKey (a -> b) a
indexKeyArray
instance indexKeyArray :: IndexKey [a] Number
indexKeyIdentity
instance indexKeyIdentity :: IndexKey (Identity a) Unit
indexKeyMap
instance indexKeyMap :: IndexKey (M.Map k v) k
indexKeyMaybe
instance indexKeyMaybe :: IndexKey (Maybe a) Unit
indexKeySet
instance indexKeySet :: IndexKey (S.Set k) k
indexKeyStrMap
instance indexKeyStrMap :: IndexKey (SM.StrMap v) String
indexValueArr
instance indexValueArr :: IndexValue (a -> b) b
indexValueArray
instance indexValueArray :: IndexValue [a] a
indexValueIdentity
instance indexValueIdentity :: IndexValue (Identity a) a
indexValueMap
instance indexValueMap :: IndexValue (M.Map k v) v
indexValueMaybe
instance indexValueMaybe :: IndexValue (Maybe a) a
indexValueSet
instance indexValueSet :: IndexValue (S.Set k) Unit
indexValueStrMap
instance indexValueStrMap :: IndexValue (SM.StrMap v) v
Module Optic.Index.Types
LensP
type LensP s a = forall f. (Functor f) => (a -> f a) -> s -> f s
TraversalP
type TraversalP s a = forall f. (Applicative f) => (a -> f a) -> s -> f s