| Copyright | (c) Andy Gill 2001 (c) Oregon Graduate Institute of Science and Technology 2001 |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | ross@soi.city.ac.uk |
| Stability | experimental |
| Portability | non-portable (type families) |
| Safe Haskell | None |
| Language | GHC2021 |
Control.Monad.RWS.Lazy
Description
Lazy RWS monad.
Inspired by the paper /Functional Programming with Overloading and Higher-Order Polymorphism/, Mark P Jones (http://web.cecs.pdx.edu/~mpj/) Advanced School of Functional Programming, 1995.
Synopsis
- type RWS r w s = RWST r w s Identity
- runRWS :: RWS r w s a -> r -> s -> (a, s, w)
- evalRWS :: RWS r w s a -> r -> s -> (a, w)
- execRWS :: RWS r w s a -> r -> s -> (s, w)
- mapRWS :: ((a, s, w) -> (b, s, w')) -> RWS r w s a -> RWS r w' s b
- withRWS :: (r' -> s -> (r, s)) -> RWS r w s a -> RWS r' w s a
- newtype RWST r w s (m :: Type -> Type) a = RWST {
- runRWST :: r -> s -> m (a, s, w)
- evalRWST :: Monad m => RWST r w s m a -> r -> s -> m (a, w)
- execRWST :: Monad m => RWST r w s m a -> r -> s -> m (s, w)
- mapRWST :: (m (a, s, w) -> n (b, s, w')) -> RWST r w s m a -> RWST r w' s n b
- withRWST :: forall r' s r w (m :: Type -> Type) a. (r' -> s -> (r, s)) -> RWST r w s m a -> RWST r' w s m a
- module Control.Monad.RWS.Class
- class Applicative m => Monad (m :: Type -> Type) where
- (=<<) :: Monad m => (a -> m b) -> m a -> m b
- mapM_ :: (Foldable t, Monad m) => (a -> m b) -> t a -> m ()
- sequence_ :: (Foldable t, Monad m) => t (m a) -> m ()
- class Functor (f :: Type -> Type) where
- mapM :: (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)
- sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
- join :: Monad m => m (m a) -> m a
- class (Alternative m, Monad m) => MonadPlus (m :: Type -> Type) where
- class Monad m => MonadFail (m :: Type -> Type) where
- fail :: String -> m a
- ap :: Monad m => m (a -> b) -> m a -> m b
- liftM :: Monad m => (a1 -> r) -> m a1 -> m r
- liftM2 :: Monad m => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
- liftM3 :: Monad m => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r
- liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r
- liftM5 :: Monad m => (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r
- when :: Applicative f => Bool -> f () -> f ()
- (<$!>) :: Monad m => (a -> b) -> m a -> m b
- (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- filterM :: Applicative m => (a -> m Bool) -> [a] -> m [a]
- foldM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b
- foldM_ :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m ()
- forever :: Applicative f => f a -> f b
- mapAndUnzipM :: Applicative m => (a -> m (b, c)) -> [a] -> m ([b], [c])
- mfilter :: MonadPlus m => (a -> Bool) -> m a -> m a
- replicateM :: Applicative m => Int -> m a -> m [a]
- replicateM_ :: Applicative m => Int -> m a -> m ()
- unless :: Applicative f => Bool -> f () -> f ()
- zipWithM :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m [c]
- zipWithM_ :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m ()
- forM_ :: (Foldable t, Monad m) => t a -> (a -> m b) -> m ()
- msum :: (Foldable t, MonadPlus m) => t (m a) -> m a
- void :: Functor f => f a -> f ()
- forM :: (Traversable t, Monad m) => t a -> (a -> m b) -> m (t b)
- guard :: Alternative f => Bool -> f ()
- class Monad m => MonadFix (m :: Type -> Type) where
- mfix :: (a -> m a) -> m a
- fix :: (a -> a) -> a
- module Control.Monad.Trans
- class Semigroup a => Monoid a where
- (<>) :: Semigroup a => a -> a -> a
- newtype Any = Any {
- getAny :: Bool
- newtype Product a = Product {
- getProduct :: a
- newtype Dual a = Dual {
- getDual :: a
- newtype Endo a = Endo {
- appEndo :: a -> a
- newtype Sum a = Sum {
- getSum :: a
- newtype Last a = Last {
- getLast :: Maybe a
- newtype First a = First {
- getFirst :: Maybe a
- newtype All = All {
- getAll :: Bool
- newtype Ap (f :: k -> Type) (a :: k) = Ap {
- getAp :: f a
- newtype Alt (f :: k -> Type) (a :: k) = Alt {
- getAlt :: f a
The RWS monad
The RWST monad transformer
newtype RWST r w s (m :: Type -> Type) a #
Instances
| Monoid w => MonadTrans (RWST r w s) | |||||
Defined in Control.Monad.Trans.RWS.Lazy | |||||
| (Monoid w, MonadIO m) => MonadIO (RWST r w s m) | |||||
Defined in Control.Monad.Trans.RWS.Lazy | |||||
| Contravariant m => Contravariant (RWST r w s m) | |||||
| (Monoid w, Functor m, MonadPlus m) => Alternative (RWST r w s m) | |||||
| (Monoid w, Functor m, Monad m) => Applicative (RWST r w s m) | |||||
Defined in Control.Monad.Trans.RWS.Lazy | |||||
| Functor m => Functor (RWST r w s m) | |||||
| (Monoid w, Monad m) => Monad (RWST r w s m) | |||||
| (Monoid w, MonadPlus m) => MonadPlus (RWST r w s m) | |||||
| (Monoid w, MonadFail m) => MonadFail (RWST r w s m) | |||||
Defined in Control.Monad.Trans.RWS.Lazy | |||||
| (Monoid w, MonadFix m) => MonadFix (RWST r w s m) | |||||
Defined in Control.Monad.Trans.RWS.Lazy | |||||
| (Monoid w, MonadCont m) => MonadCont (RWST r w s m) Source # | |||||
| (Monoid w, MonadError m) => MonadError (RWST r w s m) Source # | |||||
Defined in Control.Monad.Except.Class Associated Types
| |||||
| (Monoid w, Monad m) => MonadRWS (RWST r w s m) Source # | |||||
Defined in Control.Monad.RWS.Class | |||||
| (Monoid w, Monad m) => MonadReader (RWST r w s m) Source # | |||||
Defined in Control.Monad.Reader.Class Associated Types
| |||||
| (Monad m, Monoid w) => MonadState (RWST r w s m) Source # | |||||
| (Monoid w, Monad m) => MonadWriter (RWST r w s m) Source # | |||||
Defined in Control.Monad.Writer.Class Associated Types
| |||||
| Generic (RWST r w s m a) | |||||
Defined in Control.Monad.Trans.RWS.Lazy Associated Types
| |||||
| type ErrorType (RWST r w s m) Source # | |||||
Defined in Control.Monad.Except.Class | |||||
| type EnvType (RWST r w s m) Source # | |||||
Defined in Control.Monad.Reader.Class | |||||
| type StateType (RWST r w s m) Source # | |||||
Defined in Control.Monad.State.Class | |||||
| type WriterType (RWST r w s m) Source # | |||||
Defined in Control.Monad.Writer.Class | |||||
| type Rep (RWST r w s m a) | |||||
Defined in Control.Monad.Trans.RWS.Lazy type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.Lazy" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "runRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> m (a, s, w))))) | |||||
withRWST :: forall r' s r w (m :: Type -> Type) a. (r' -> s -> (r, s)) -> RWST r w s m a -> RWST r' w s m a #
Lazy Reader-writer-state monads
module Control.Monad.RWS.Class
class Applicative m => Monad (m :: Type -> Type) where #
Minimal complete definition
Instances
| Monad Complex | |
| Monad First | |
| Monad Last | |
| Monad Max | |
| Monad Min | |
| Monad NonEmpty | |
| Monad Identity | |
| Monad First | |
| Monad Last | |
| Monad Dual | |
| Monad Product | |
| Monad Sum | |
| Monad Par1 | |
| Monad IO | |
| Monad Maybe | |
| Monad Solo | |
| Monad [] | |
| Monad m => Monad (WrappedMonad m) | |
| ArrowApply a => Monad (ArrowMonad a) | |
| Monad (Either e) | |
| Monad (U1 :: Type -> Type) | |
| Monad m => Monad (MaybeT m) | |
| Monoid a => Monad ((,) a) | |
| Monad m => Monad (Kleisli m a) | |
| Monad f => Monad (Ap f) | |
| Monad f => Monad (Alt f) | |
| Monad f => Monad (Rec1 f) | |
| (Monoid w, Functor m, Monad m) => Monad (AccumT w m) | |
| Monad m => Monad (ExceptT e m) | |
| Monad m => Monad (IdentityT m) | |
| Monad m => Monad (ReaderT r m) | |
| Monad m => Monad (SelectT r m) | |
| Monad m => Monad (StateT s m) | |
| Monad m => Monad (StateT s m) | |
| Monad m => Monad (WriterT w m) | |
| (Monoid w, Monad m) => Monad (WriterT w m) | |
| (Monoid w, Monad m) => Monad (WriterT w m) | |
| Monad m => Monad (Reverse m) | |
| (Monoid a, Monoid b) => Monad ((,,) a b) | |
| (Monad f, Monad g) => Monad (Product f g) | |
| (Monad f, Monad g) => Monad (f :*: g) | |
| Monad (ContT r m) | |
| (Monoid a, Monoid b, Monoid c) => Monad ((,,,) a b c) | |
| Monad ((->) r) | |
| Monad f => Monad (M1 i c f) | |
| Monad m => Monad (RWST r w s m) | |
| (Monoid w, Monad m) => Monad (RWST r w s m) | |
| (Monoid w, Monad m) => Monad (RWST r w s m) | |
class Functor (f :: Type -> Type) where #
Minimal complete definition
Instances
class (Alternative m, Monad m) => MonadPlus (m :: Type -> Type) where #
Minimal complete definition
Nothing
Instances
class Monad m => MonadFail (m :: Type -> Type) where #
Instances
liftM5 :: Monad m => (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r #
mapAndUnzipM :: Applicative m => (a -> m (b, c)) -> [a] -> m ([b], [c]) #
replicateM :: Applicative m => Int -> m a -> m [a] #
replicateM_ :: Applicative m => Int -> m a -> m () #
class Monad m => MonadFix (m :: Type -> Type) where #
Instances
module Control.Monad.Trans
class Semigroup a => Monoid a where #
Instances
| Monoid ByteArray | |
| Monoid All | |
| Monoid Any | |
| Monoid ExceptionContext | |
| Monoid Ordering | |
| Monoid () | |
| Monoid (Comparison a) | |
| Monoid (Equivalence a) | |
| Monoid (Predicate a) | |
| (Ord a, Bounded a) => Monoid (Max a) | |
| (Ord a, Bounded a) => Monoid (Min a) | |
| Monoid m => Monoid (WrappedMonoid m) | |
| Monoid a => Monoid (Identity a) | |
| Monoid (First a) | |
| Monoid (Last a) | |
| Monoid a => Monoid (Dual a) | |
| Monoid (Endo a) | |
| Num a => Monoid (Product a) | |
| Num a => Monoid (Sum a) | |
| (Generic a, Monoid (Rep a ())) => Monoid (Generically a) | |
| Monoid p => Monoid (Par1 p) | |
| Monoid a => Monoid (IO a) | |
| Semigroup a => Monoid (Maybe a) | |
| Monoid a => Monoid (Solo a) | |
| Monoid [a] | |
| Monoid a => Monoid (Op a b) | |
| Monoid (U1 p) | |
| (Monoid a, Monoid b) => Monoid (a, b) | |
| Monoid b => Monoid (a -> b) | |
| (Applicative f, Monoid a) => Monoid (Ap f a) | |
| Alternative f => Monoid (Alt f a) | |
| Monoid (f p) => Monoid (Rec1 f p) | |
| Monoid a => Monoid (Constant a b) | |
| (Monoid a, Monoid b, Monoid c) => Monoid (a, b, c) | |
| (Monoid (f a), Monoid (g a)) => Monoid (Product f g a) | |
| (Monoid (f p), Monoid (g p)) => Monoid ((f :*: g) p) | |
| Monoid c => Monoid (K1 i c p) | |
| (Monoid a, Monoid b, Monoid c, Monoid d) => Monoid (a, b, c, d) | |
| Monoid (f (g a)) => Monoid (Compose f g a) | |
| Monoid (f (g p)) => Monoid ((f :.: g) p) | |
| Monoid (f p) => Monoid (M1 i c f p) | |
| (Monoid a, Monoid b, Monoid c, Monoid d, Monoid e) => Monoid (a, b, c, d, e) | |
Instances
| Monoid Any | |||||
| Semigroup Any | |||||
| Bounded Any | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Generic Any | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Read Any | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Show Any | |||||
| Eq Any | |||||
| Ord Any | |||||
| type Rep Any | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep Any = D1 ('MetaData "Any" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Any" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAny") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) | |||||
Constructors
| Product | |
Fields
| |
Instances
| MonadZip Product | |||||
| Foldable1 Product | |||||
Defined in Data.Foldable1 Methods fold1 :: Semigroup m => Product m -> m foldMap1 :: Semigroup m => (a -> m) -> Product a -> m foldMap1' :: Semigroup m => (a -> m) -> Product a -> m toNonEmpty :: Product a -> NonEmpty a maximum :: Ord a => Product a -> a minimum :: Ord a => Product a -> a foldrMap1 :: (a -> b) -> (a -> b -> b) -> Product a -> b foldlMap1' :: (a -> b) -> (b -> a -> b) -> Product a -> b foldlMap1 :: (a -> b) -> (b -> a -> b) -> Product a -> b foldrMap1' :: (a -> b) -> (a -> b -> b) -> Product a -> b | |||||
| Applicative Product | |||||
| Functor Product | |||||
| Monad Product | |||||
| MonadFix Product | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable Product | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => Product m -> m foldMap :: Monoid m => (a -> m) -> Product a -> m foldMap' :: Monoid m => (a -> m) -> Product a -> m foldr :: (a -> b -> b) -> b -> Product a -> b foldr' :: (a -> b -> b) -> b -> Product a -> b foldl :: (b -> a -> b) -> b -> Product a -> b foldl' :: (b -> a -> b) -> b -> Product a -> b foldr1 :: (a -> a -> a) -> Product a -> a foldl1 :: (a -> a -> a) -> Product a -> a elem :: Eq a => a -> Product a -> Bool maximum :: Ord a => Product a -> a minimum :: Ord a => Product a -> a | |||||
| Traversable Product | |||||
| Generic1 Product | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Num a => Monoid (Product a) | |||||
| Num a => Semigroup (Product a) | |||||
| Bounded a => Bounded (Product a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Generic (Product a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Num a => Num (Product a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Read a => Read (Product a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Show a => Show (Product a) | |||||
| Eq a => Eq (Product a) | |||||
| Ord a => Ord (Product a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| type Rep1 Product | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep1 Product = D1 ('MetaData "Product" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Product" 'PrefixI 'True) (S1 ('MetaSel ('Just "getProduct") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1)) | |||||
| type Rep (Product a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep (Product a) = D1 ('MetaData "Product" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Product" 'PrefixI 'True) (S1 ('MetaSel ('Just "getProduct") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) | |||||
Instances
| MonadZip Dual | |||||
| Foldable1 Dual | |||||
Defined in Data.Foldable1 Methods fold1 :: Semigroup m => Dual m -> m foldMap1 :: Semigroup m => (a -> m) -> Dual a -> m foldMap1' :: Semigroup m => (a -> m) -> Dual a -> m toNonEmpty :: Dual a -> NonEmpty a maximum :: Ord a => Dual a -> a minimum :: Ord a => Dual a -> a foldrMap1 :: (a -> b) -> (a -> b -> b) -> Dual a -> b foldlMap1' :: (a -> b) -> (b -> a -> b) -> Dual a -> b foldlMap1 :: (a -> b) -> (b -> a -> b) -> Dual a -> b foldrMap1' :: (a -> b) -> (a -> b -> b) -> Dual a -> b | |||||
| Applicative Dual | |||||
| Functor Dual | |||||
| Monad Dual | |||||
| MonadFix Dual | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable Dual | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => Dual m -> m foldMap :: Monoid m => (a -> m) -> Dual a -> m foldMap' :: Monoid m => (a -> m) -> Dual a -> m foldr :: (a -> b -> b) -> b -> Dual a -> b foldr' :: (a -> b -> b) -> b -> Dual a -> b foldl :: (b -> a -> b) -> b -> Dual a -> b foldl' :: (b -> a -> b) -> b -> Dual a -> b foldr1 :: (a -> a -> a) -> Dual a -> a foldl1 :: (a -> a -> a) -> Dual a -> a elem :: Eq a => a -> Dual a -> Bool maximum :: Ord a => Dual a -> a | |||||
| Traversable Dual | |||||
| Generic1 Dual | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Monoid a => Monoid (Dual a) | |||||
| Semigroup a => Semigroup (Dual a) | |||||
| Bounded a => Bounded (Dual a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Generic (Dual a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Read a => Read (Dual a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Show a => Show (Dual a) | |||||
| Eq a => Eq (Dual a) | |||||
| Ord a => Ord (Dual a) | |||||
| type Rep1 Dual | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep1 Dual = D1 ('MetaData "Dual" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Dual" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDual") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1)) | |||||
| type Rep (Dual a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep (Dual a) = D1 ('MetaData "Dual" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Dual" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDual") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) | |||||
Instances
| Monoid (Endo a) | |||||
| Semigroup (Endo a) | |||||
| Generic (Endo a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| type Rep (Endo a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep (Endo a) = D1 ('MetaData "Endo" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Endo" 'PrefixI 'True) (S1 ('MetaSel ('Just "appEndo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a -> a)))) | |||||
Instances
| MonadZip Sum | |||||
| Foldable1 Sum | |||||
Defined in Data.Foldable1 Methods fold1 :: Semigroup m => Sum m -> m foldMap1 :: Semigroup m => (a -> m) -> Sum a -> m foldMap1' :: Semigroup m => (a -> m) -> Sum a -> m toNonEmpty :: Sum a -> NonEmpty a maximum :: Ord a => Sum a -> a minimum :: Ord a => Sum a -> a foldrMap1 :: (a -> b) -> (a -> b -> b) -> Sum a -> b foldlMap1' :: (a -> b) -> (b -> a -> b) -> Sum a -> b foldlMap1 :: (a -> b) -> (b -> a -> b) -> Sum a -> b foldrMap1' :: (a -> b) -> (a -> b -> b) -> Sum a -> b | |||||
| Applicative Sum | |||||
| Functor Sum | |||||
| Monad Sum | |||||
| MonadFix Sum | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable Sum | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => Sum m -> m foldMap :: Monoid m => (a -> m) -> Sum a -> m foldMap' :: Monoid m => (a -> m) -> Sum a -> m foldr :: (a -> b -> b) -> b -> Sum a -> b foldr' :: (a -> b -> b) -> b -> Sum a -> b foldl :: (b -> a -> b) -> b -> Sum a -> b foldl' :: (b -> a -> b) -> b -> Sum a -> b foldr1 :: (a -> a -> a) -> Sum a -> a foldl1 :: (a -> a -> a) -> Sum a -> a elem :: Eq a => a -> Sum a -> Bool maximum :: Ord a => Sum a -> a | |||||
| Traversable Sum | |||||
| Generic1 Sum | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Num a => Monoid (Sum a) | |||||
| Num a => Semigroup (Sum a) | |||||
| Bounded a => Bounded (Sum a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Generic (Sum a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Num a => Num (Sum a) | |||||
| Read a => Read (Sum a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Show a => Show (Sum a) | |||||
| Eq a => Eq (Sum a) | |||||
| Ord a => Ord (Sum a) | |||||
| type Rep1 Sum | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep1 Sum = D1 ('MetaData "Sum" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Sum" 'PrefixI 'True) (S1 ('MetaSel ('Just "getSum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1)) | |||||
| type Rep (Sum a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep (Sum a) = D1 ('MetaData "Sum" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Sum" 'PrefixI 'True) (S1 ('MetaSel ('Just "getSum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) | |||||
Instances
| MonadZip Last | |||||
| Applicative Last | |||||
| Functor Last | |||||
| Monad Last | |||||
| MonadFix Last | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable Last | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => Last m -> m foldMap :: Monoid m => (a -> m) -> Last a -> m foldMap' :: Monoid m => (a -> m) -> Last a -> m foldr :: (a -> b -> b) -> b -> Last a -> b foldr' :: (a -> b -> b) -> b -> Last a -> b foldl :: (b -> a -> b) -> b -> Last a -> b foldl' :: (b -> a -> b) -> b -> Last a -> b foldr1 :: (a -> a -> a) -> Last a -> a foldl1 :: (a -> a -> a) -> Last a -> a elem :: Eq a => a -> Last a -> Bool maximum :: Ord a => Last a -> a | |||||
| Traversable Last | |||||
| Generic1 Last | |||||
Defined in GHC.Internal.Data.Monoid Associated Types
| |||||
| Monoid (Last a) | |||||
| Semigroup (Last a) | |||||
| Generic (Last a) | |||||
Defined in GHC.Internal.Data.Monoid Associated Types
| |||||
| Read a => Read (Last a) | |||||
Defined in GHC.Internal.Data.Monoid | |||||
| Show a => Show (Last a) | |||||
| Eq a => Eq (Last a) | |||||
| Ord a => Ord (Last a) | |||||
| type Rep1 Last | |||||
Defined in GHC.Internal.Data.Monoid type Rep1 Last = D1 ('MetaData "Last" "GHC.Internal.Data.Monoid" "ghc-internal" 'True) (C1 ('MetaCons "Last" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLast") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Maybe))) | |||||
| type Rep (Last a) | |||||
Defined in GHC.Internal.Data.Monoid type Rep (Last a) = D1 ('MetaData "Last" "GHC.Internal.Data.Monoid" "ghc-internal" 'True) (C1 ('MetaCons "Last" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLast") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe a)))) | |||||
Instances
| MonadZip First | |||||
| Applicative First | |||||
| Functor First | |||||
| Monad First | |||||
| MonadFix First | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable First | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => First m -> m foldMap :: Monoid m => (a -> m) -> First a -> m foldMap' :: Monoid m => (a -> m) -> First a -> m foldr :: (a -> b -> b) -> b -> First a -> b foldr' :: (a -> b -> b) -> b -> First a -> b foldl :: (b -> a -> b) -> b -> First a -> b foldl' :: (b -> a -> b) -> b -> First a -> b foldr1 :: (a -> a -> a) -> First a -> a foldl1 :: (a -> a -> a) -> First a -> a elem :: Eq a => a -> First a -> Bool maximum :: Ord a => First a -> a | |||||
| Traversable First | |||||
| Generic1 First | |||||
Defined in GHC.Internal.Data.Monoid Associated Types
| |||||
| Monoid (First a) | |||||
| Semigroup (First a) | |||||
| Generic (First a) | |||||
Defined in GHC.Internal.Data.Monoid Associated Types
| |||||
| Read a => Read (First a) | |||||
Defined in GHC.Internal.Data.Monoid | |||||
| Show a => Show (First a) | |||||
| Eq a => Eq (First a) | |||||
| Ord a => Ord (First a) | |||||
| type Rep1 First | |||||
Defined in GHC.Internal.Data.Monoid type Rep1 First = D1 ('MetaData "First" "GHC.Internal.Data.Monoid" "ghc-internal" 'True) (C1 ('MetaCons "First" 'PrefixI 'True) (S1 ('MetaSel ('Just "getFirst") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Maybe))) | |||||
| type Rep (First a) | |||||
Defined in GHC.Internal.Data.Monoid type Rep (First a) = D1 ('MetaData "First" "GHC.Internal.Data.Monoid" "ghc-internal" 'True) (C1 ('MetaCons "First" 'PrefixI 'True) (S1 ('MetaSel ('Just "getFirst") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe a)))) | |||||
Instances
| Monoid All | |||||
| Semigroup All | |||||
| Bounded All | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Generic All | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Read All | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Show All | |||||
| Eq All | |||||
| Ord All | |||||
| type Rep All | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep All = D1 ('MetaData "All" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "All" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAll") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) | |||||
newtype Ap (f :: k -> Type) (a :: k) #
Instances
| Generic1 (Ap f :: k -> Type) | |||||
Defined in GHC.Internal.Data.Monoid Associated Types
| |||||
| Foldable1 f => Foldable1 (Ap f) | |||||
Defined in Data.Foldable1 Methods fold1 :: Semigroup m => Ap f m -> m foldMap1 :: Semigroup m => (a -> m) -> Ap f a -> m foldMap1' :: Semigroup m => (a -> m) -> Ap f a -> m toNonEmpty :: Ap f a -> NonEmpty a maximum :: Ord a => Ap f a -> a minimum :: Ord a => Ap f a -> a foldrMap1 :: (a -> b) -> (a -> b -> b) -> Ap f a -> b foldlMap1' :: (a -> b) -> (b -> a -> b) -> Ap f a -> b foldlMap1 :: (a -> b) -> (b -> a -> b) -> Ap f a -> b foldrMap1' :: (a -> b) -> (a -> b -> b) -> Ap f a -> b | |||||
| Alternative f => Alternative (Ap f) | |||||
| Applicative f => Applicative (Ap f) | |||||
| Functor f => Functor (Ap f) | |||||
| Monad f => Monad (Ap f) | |||||
| MonadPlus f => MonadPlus (Ap f) | |||||
| MonadFail f => MonadFail (Ap f) | |||||
Defined in GHC.Internal.Data.Monoid | |||||
| MonadFix f => MonadFix (Ap f) | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable f => Foldable (Ap f) | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => Ap f m -> m foldMap :: Monoid m => (a -> m) -> Ap f a -> m foldMap' :: Monoid m => (a -> m) -> Ap f a -> m foldr :: (a -> b -> b) -> b -> Ap f a -> b foldr' :: (a -> b -> b) -> b -> Ap f a -> b foldl :: (b -> a -> b) -> b -> Ap f a -> b foldl' :: (b -> a -> b) -> b -> Ap f a -> b foldr1 :: (a -> a -> a) -> Ap f a -> a foldl1 :: (a -> a -> a) -> Ap f a -> a elem :: Eq a => a -> Ap f a -> Bool maximum :: Ord a => Ap f a -> a | |||||
| Traversable f => Traversable (Ap f) | |||||
| (Applicative f, Monoid a) => Monoid (Ap f a) | |||||
| (Applicative f, Semigroup a) => Semigroup (Ap f a) | |||||
| (Applicative f, Bounded a) => Bounded (Ap f a) | |||||
Defined in GHC.Internal.Data.Monoid | |||||
| Enum (f a) => Enum (Ap f a) | |||||
Defined in GHC.Internal.Data.Monoid | |||||
| Generic (Ap f a) | |||||
Defined in GHC.Internal.Data.Monoid Associated Types
| |||||
| (Applicative f, Num a) => Num (Ap f a) | |||||
| Read (f a) => Read (Ap f a) | |||||
Defined in GHC.Internal.Data.Monoid | |||||
| Show (f a) => Show (Ap f a) | |||||
| Eq (f a) => Eq (Ap f a) | |||||
| Ord (f a) => Ord (Ap f a) | |||||
| type Rep1 (Ap f :: k -> Type) | |||||
Defined in GHC.Internal.Data.Monoid type Rep1 (Ap f :: k -> Type) = D1 ('MetaData "Ap" "GHC.Internal.Data.Monoid" "ghc-internal" 'True) (C1 ('MetaCons "Ap" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 f))) | |||||
| type Rep (Ap f a) | |||||
Defined in GHC.Internal.Data.Monoid type Rep (Ap f a) = D1 ('MetaData "Ap" "GHC.Internal.Data.Monoid" "ghc-internal" 'True) (C1 ('MetaCons "Ap" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a)))) | |||||
newtype Alt (f :: k -> Type) (a :: k) #
Instances
| Generic1 (Alt f :: k -> Type) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| MonadZip f => MonadZip (Alt f) | |||||
| Foldable1 f => Foldable1 (Alt f) | |||||
Defined in Data.Foldable1 Methods fold1 :: Semigroup m => Alt f m -> m foldMap1 :: Semigroup m => (a -> m) -> Alt f a -> m foldMap1' :: Semigroup m => (a -> m) -> Alt f a -> m toNonEmpty :: Alt f a -> NonEmpty a maximum :: Ord a => Alt f a -> a minimum :: Ord a => Alt f a -> a foldrMap1 :: (a -> b) -> (a -> b -> b) -> Alt f a -> b foldlMap1' :: (a -> b) -> (b -> a -> b) -> Alt f a -> b foldlMap1 :: (a -> b) -> (b -> a -> b) -> Alt f a -> b foldrMap1' :: (a -> b) -> (a -> b -> b) -> Alt f a -> b | |||||
| Contravariant f => Contravariant (Alt f) | |||||
| Alternative f => Alternative (Alt f) | |||||
| Applicative f => Applicative (Alt f) | |||||
| Functor f => Functor (Alt f) | |||||
| Monad f => Monad (Alt f) | |||||
| MonadPlus f => MonadPlus (Alt f) | |||||
| MonadFix f => MonadFix (Alt f) | |||||
Defined in GHC.Internal.Control.Monad.Fix | |||||
| Foldable f => Foldable (Alt f) | |||||
Defined in GHC.Internal.Data.Foldable Methods fold :: Monoid m => Alt f m -> m foldMap :: Monoid m => (a -> m) -> Alt f a -> m foldMap' :: Monoid m => (a -> m) -> Alt f a -> m foldr :: (a -> b -> b) -> b -> Alt f a -> b foldr' :: (a -> b -> b) -> b -> Alt f a -> b foldl :: (b -> a -> b) -> b -> Alt f a -> b foldl' :: (b -> a -> b) -> b -> Alt f a -> b foldr1 :: (a -> a -> a) -> Alt f a -> a foldl1 :: (a -> a -> a) -> Alt f a -> a elem :: Eq a => a -> Alt f a -> Bool maximum :: Ord a => Alt f a -> a | |||||
| Traversable f => Traversable (Alt f) | |||||
| Alternative f => Monoid (Alt f a) | |||||
| Alternative f => Semigroup (Alt f a) | |||||
| Enum (f a) => Enum (Alt f a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Generic (Alt f a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal Associated Types
| |||||
| Num (f a) => Num (Alt f a) | |||||
| Read (f a) => Read (Alt f a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| Show (f a) => Show (Alt f a) | |||||
| Eq (f a) => Eq (Alt f a) | |||||
| Ord (f a) => Ord (Alt f a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal | |||||
| type Rep1 (Alt f :: k -> Type) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep1 (Alt f :: k -> Type) = D1 ('MetaData "Alt" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Alt" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAlt") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 f))) | |||||
| type Rep (Alt f a) | |||||
Defined in GHC.Internal.Data.Semigroup.Internal type Rep (Alt f a) = D1 ('MetaData "Alt" "GHC.Internal.Data.Semigroup.Internal" "ghc-internal" 'True) (C1 ('MetaCons "Alt" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAlt") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a)))) | |||||