lens-4.15.3: Lenses, Folds and Traversals

Copyright | (C) 2012-2016 Edward Kmett
License | BSD-style (see the file LICENSE)
Maintainer | Edward Kmett <ekmett@gmail.com>
Stability | provisional
Portability | non-portable
Safe Haskell | Safe
Language | Haskell98

Control.Lens.Internal.Getter

Description

Synopsis

- noEffect :: (Contravariant f, Applicative f) => f a
- newtype AlongsideLeft f b a = AlongsideLeft {
  - getAlongsideLeft :: f (a, b)
  }
- newtype AlongsideRight f a b = AlongsideRight {
  - getAlongsideRight :: f (a, b)
  }

# Documentation

noEffect :: (Contravariant f, Applicative f) => f a #

The `mempty` equivalent for a `Contravariant` `Applicative` `Functor`.

newtype AlongsideLeft f b a #

Constructors

AlongsideLeft |
Fields getAlongsideLeft :: f (a, b)

Instances

Functor f => Bifunctor (AlongsideLeft f) # |
Methods bimap :: (a -> b) -> (c -> d) -> AlongsideLeft f a c -> AlongsideLeft f b d # first :: (a -> b) -> AlongsideLeft f a c -> AlongsideLeft f b c # second :: (b -> c) -> AlongsideLeft f a b -> AlongsideLeft f a c #
Traversable f => Bitraversable (AlongsideLeft f) # |
Methods bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> AlongsideLeft f a b -> f (AlongsideLeft f c d) #
Foldable f => Bifoldable (AlongsideLeft f) # |
Methods bifold :: Monoid m => AlongsideLeft f m m -> m # bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> AlongsideLeft f a b -> m # bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> AlongsideLeft f a b -> c # bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> AlongsideLeft f a b -> c #
Functor f => Functor (AlongsideLeft f b) # |
Methods fmap :: (a -> b) -> AlongsideLeft f b a -> AlongsideLeft f b b # (<$) :: a -> AlongsideLeft f b b -> AlongsideLeft f b a #
Foldable f => Foldable (AlongsideLeft f b) # |
Methods fold :: Monoid m => AlongsideLeft f b m -> m # foldMap :: Monoid m => (a -> m) -> AlongsideLeft f b a -> m # foldr :: (a -> b -> b) -> b -> AlongsideLeft f b a -> b # foldr' :: (a -> b -> b) -> b -> AlongsideLeft f b a -> b # foldl :: (b -> a -> b) -> b -> AlongsideLeft f b a -> b # foldl' :: (b -> a -> b) -> b -> AlongsideLeft f b a -> b # foldr1 :: (a -> a -> a) -> AlongsideLeft f b a -> a # foldl1 :: (a -> a -> a) -> AlongsideLeft f b a -> a # toList :: AlongsideLeft f b a -> [a] # null :: AlongsideLeft f b a -> Bool # length :: AlongsideLeft f b a -> Int # elem :: Eq a => a -> AlongsideLeft f b a -> Bool # maximum :: Ord a => AlongsideLeft f b a -> a # minimum :: Ord a => AlongsideLeft f b a -> a # sum :: Num a => AlongsideLeft f b a -> a # product :: Num a => AlongsideLeft f b a -> a #
Traversable f => Traversable (AlongsideLeft f b) # |
Methods traverse :: Applicative f => (a -> f b) -> AlongsideLeft f b a -> f (AlongsideLeft f b b) # sequenceA :: Applicative f => AlongsideLeft f b (f a) -> f (AlongsideLeft f b a) # mapM :: Monad m => (a -> m b) -> AlongsideLeft f b a -> m (AlongsideLeft f b b) # sequence :: Monad m => AlongsideLeft f b (m a) -> m (AlongsideLeft f b a) #
Contravariant f => Contravariant (AlongsideLeft f b) # |
Methods contramap :: (a -> b) -> AlongsideLeft f b b -> AlongsideLeft f b a # (>$) :: b -> AlongsideLeft f b b -> AlongsideLeft f b a #
Traversable1 f => Traversable1 (AlongsideLeft f b) # |
Methods traverse1 :: Apply f => (a -> f b) -> AlongsideLeft f b a -> f (AlongsideLeft f b b) # sequence1 :: Apply f => AlongsideLeft f b (f b) -> f (AlongsideLeft f b b) #
Foldable1 f => Foldable1 (AlongsideLeft f b) # |
Methods fold1 :: Semigroup m => AlongsideLeft f b m -> m # foldMap1 :: Semigroup m => (a -> m) -> AlongsideLeft f b a -> m #
Read (f (a, b)) => Read (AlongsideLeft f b a) # |
Methods readsPrec :: Int -> ReadS (AlongsideLeft f b a) # readList :: ReadS [AlongsideLeft f b a] # readPrec :: ReadPrec (AlongsideLeft f b a) # readListPrec :: ReadPrec [AlongsideLeft f b a] #
Show (f (a, b)) => Show (AlongsideLeft f b a) # |
Methods showsPrec :: Int -> AlongsideLeft f b a -> ShowS # show :: AlongsideLeft f b a -> String # showList :: [AlongsideLeft f b a] -> ShowS #

newtype AlongsideRight f a b #

Constructors

AlongsideRight |
Fields getAlongsideRight :: f (a, b)

Instances

Functor f => Bifunctor (AlongsideRight f) # |
Methods bimap :: (a -> b) -> (c -> d) -> AlongsideRight f a c -> AlongsideRight f b d # first :: (a -> b) -> AlongsideRight f a c -> AlongsideRight f b c # second :: (b -> c) -> AlongsideRight f a b -> AlongsideRight f a c #
Traversable f => Bitraversable (AlongsideRight f) # |
Methods bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> AlongsideRight f a b -> f (AlongsideRight f c d) #
Foldable f => Bifoldable (AlongsideRight f) # |
Methods bifold :: Monoid m => AlongsideRight f m m -> m # bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> AlongsideRight f a b -> m # bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> AlongsideRight f a b -> c # bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> AlongsideRight f a b -> c #
Functor f => Functor (AlongsideRight f a) # |
Methods fmap :: (a -> b) -> AlongsideRight f a a -> AlongsideRight f a b # (<$) :: a -> AlongsideRight f a b -> AlongsideRight f a a #
Foldable f => Foldable (AlongsideRight f a) # |
Methods fold :: Monoid m => AlongsideRight f a m -> m # foldMap :: Monoid m => (a -> m) -> AlongsideRight f a a -> m # foldr :: (a -> b -> b) -> b -> AlongsideRight f a a -> b # foldr' :: (a -> b -> b) -> b -> AlongsideRight f a a -> b # foldl :: (b -> a -> b) -> b -> AlongsideRight f a a -> b # foldl' :: (b -> a -> b) -> b -> AlongsideRight f a a -> b # foldr1 :: (a -> a -> a) -> AlongsideRight f a a -> a # foldl1 :: (a -> a -> a) -> AlongsideRight f a a -> a # toList :: AlongsideRight f a a -> [a] # null :: AlongsideRight f a a -> Bool # length :: AlongsideRight f a a -> Int # elem :: Eq a => a -> AlongsideRight f a a -> Bool # maximum :: Ord a => AlongsideRight f a a -> a # minimum :: Ord a => AlongsideRight f a a -> a # sum :: Num a => AlongsideRight f a a -> a # product :: Num a => AlongsideRight f a a -> a #
Traversable f => Traversable (AlongsideRight f a) # |
Methods traverse :: Applicative f => (a -> f b) -> AlongsideRight f a a -> f (AlongsideRight f a b) # sequenceA :: Applicative f => AlongsideRight f a (f a) -> f (AlongsideRight f a a) # mapM :: Monad m => (a -> m b) -> AlongsideRight f a a -> m (AlongsideRight f a b) # sequence :: Monad m => AlongsideRight f a (m a) -> m (AlongsideRight f a a) #
Contravariant f => Contravariant (AlongsideRight f a) # |
Methods contramap :: (a -> b) -> AlongsideRight f a b -> AlongsideRight f a a # (>$) :: b -> AlongsideRight f a b -> AlongsideRight f a a #
Traversable1 f => Traversable1 (AlongsideRight f a) # |
Methods traverse1 :: Apply f => (a -> f b) -> AlongsideRight f a a -> f (AlongsideRight f a b) # sequence1 :: Apply f => AlongsideRight f a (f b) -> f (AlongsideRight f a b) #
Foldable1 f => Foldable1 (AlongsideRight f a) # |
Methods fold1 :: Semigroup m => AlongsideRight f a m -> m # foldMap1 :: Semigroup m => (a -> m) -> AlongsideRight f a a -> m #
Read (f (a, b)) => Read (AlongsideRight f a b) # |
Methods readsPrec :: Int -> ReadS (AlongsideRight f a b) # readList :: ReadS [AlongsideRight f a b] # readPrec :: ReadPrec (AlongsideRight f a b) # readListPrec :: ReadPrec [AlongsideRight f a b] #
Show (f (a, b)) => Show (AlongsideRight f a b) # |
Methods showsPrec :: Int -> AlongsideRight f a b -> ShowS # show :: AlongsideRight f a b -> String # showList :: [AlongsideRight f a b] -> ShowS #