constraint-classes 0.2.0 → 0.3.0
raw patch · 2 files changed
+18/−18 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Control.ConstraintClasses: cfold :: (CFoldable f, CFol f m, Monoid m) => f m -> m
- Control.ConstraintClasses: cfoldMap :: (CFoldable f, CFol f a, CFol f m, Monoid m) => (a -> m) -> f a -> m
- Control.ConstraintClasses: cfoldl :: (CFoldable f, CFol f b) => (a -> b -> a) -> a -> f b -> a
- Control.ConstraintClasses: cfoldl' :: (CFoldable f, CFol f b) => (a -> b -> a) -> a -> f b -> a
- Control.ConstraintClasses: cfoldr :: (CFoldable f, CFol f a) => (a -> b -> b) -> b -> f a -> b
- Control.ConstraintClasses: cfoldr' :: (CFoldable f, CFol f a) => (a -> b -> b) -> b -> f a -> b
- Control.ConstraintClasses: cforM :: (CFoldable f, Monad m, CFol f a, CFol f b) => f a -> (a -> m b) -> m (f b)
- Control.ConstraintClasses: cforM_ :: (CFoldable f, Monad m, CFol f a) => f a -> (a -> m b) -> m ()
- Control.ConstraintClasses: clength :: (CFoldable f, CFol f a) => f a -> Int
- Control.ConstraintClasses: cmap :: (CFunctor f, CFun f a, CFun f b) => (a -> b) -> f a -> f b
- Control.ConstraintClasses: cmapM :: (CFoldable f, Monad m, CFol f a, CFol f b) => (a -> m b) -> f a -> m (f b)
- Control.ConstraintClasses: cmapM_ :: (CFoldable f, Monad m, CFol f a) => (a -> m b) -> f a -> m ()
+ Control.ConstraintClasses: _fmap :: (CFunctor f, CFun f a, CFun f b) => (a -> b) -> f a -> f b
+ Control.ConstraintClasses: _fold :: (CFoldable f, CFol f m, Monoid m) => f m -> m
+ Control.ConstraintClasses: _foldMap :: (CFoldable f, CFol f a, CFol f m, Monoid m) => (a -> m) -> f a -> m
+ Control.ConstraintClasses: _foldl :: (CFoldable f, CFol f b) => (a -> b -> a) -> a -> f b -> a
+ Control.ConstraintClasses: _foldl' :: (CFoldable f, CFol f b) => (a -> b -> a) -> a -> f b -> a
+ Control.ConstraintClasses: _foldr :: (CFoldable f, CFol f a) => (a -> b -> b) -> b -> f a -> b
+ Control.ConstraintClasses: _foldr' :: (CFoldable f, CFol f a) => (a -> b -> b) -> b -> f a -> b
+ Control.ConstraintClasses: _forM :: (CFoldable f, Monad m, CFol f a, CFol f b) => f a -> (a -> m b) -> m (f b)
+ Control.ConstraintClasses: _forM_ :: (CFoldable f, Monad m, CFol f a) => f a -> (a -> m b) -> m ()
+ Control.ConstraintClasses: _length :: (CFoldable f, CFol f a) => f a -> Int
+ Control.ConstraintClasses: _mapM :: (CFoldable f, Monad m, CFol f a, CFol f b) => (a -> m b) -> f a -> m (f b)
+ Control.ConstraintClasses: _mapM_ :: (CFoldable f, Monad m, CFol f a) => (a -> m b) -> f a -> m ()
+ Control.ConstraintClasses: type CFol f a = ();
+ Control.ConstraintClasses: type CFun f a = ();
+ Control.ConstraintClasses: type family CFol f a :: Constraint;
+ Control.ConstraintClasses: }
- Control.ConstraintClasses: class CFoldable f where type family CFol f a :: Constraint CFol f a = () cfold = cfoldMap id cfoldMap f = cfoldr (mappend . f) mempty clength = cfoldl (\ c _ -> c + 1) 0 cforM = flip cmapM cforM_ = flip cmapM_
+ Control.ConstraintClasses: class CFoldable f where type CFol f a :: Constraint type CFol f a = () _fold = _foldMap id _foldMap f = _foldr (mappend . f) mempty _length = _foldl (\ c _ -> c + 1) 0 _forM = flip _mapM _forM_ = flip _mapM_ where {
- Control.ConstraintClasses: class CFunctor f where type family CFun f a :: Constraint CFun f a = ()
+ Control.ConstraintClasses: class CFunctor f where type CFun f a :: Constraint type CFun f a = () where {
Files
- constraint-classes.cabal +1/−1
- src/Control/ConstraintClasses.hs +17/−17
constraint-classes.cabal view
@@ -1,5 +1,5 @@ name: constraint-classes-version: 0.2.0+version: 0.3.0 synopsis: Prelude classes using ConstraintKinds description: Please see README.org homepage: http://github.com/guaraqe/constraint-classes#readme
src/Control/ConstraintClasses.hs view
@@ -13,7 +13,7 @@ type CFun f a :: Constraint type CFun f a = () - cmap :: (CFun f a, CFun f b) => (a -> b) -> f a -> f b+ _fmap :: (CFun f a, CFun f b) => (a -> b) -> f a -> f b ---------------------------------------------------------------------- @@ -22,30 +22,30 @@ type CFol f a :: Constraint type CFol f a = () - cfoldr :: (CFol f a) => (a -> b -> b) -> b -> f a -> b- cfoldr' :: (CFol f a) => (a -> b -> b) -> b -> f a -> b- cfoldl :: (CFol f b) => (a -> b -> a) -> a -> f b -> a- cfoldl' :: (CFol f b) => (a -> b -> a) -> a -> f b -> a+ _foldr :: (CFol f a) => (a -> b -> b) -> b -> f a -> b+ _foldr' :: (CFol f a) => (a -> b -> b) -> b -> f a -> b+ _foldl :: (CFol f b) => (a -> b -> a) -> a -> f b -> a+ _foldl' :: (CFol f b) => (a -> b -> a) -> a -> f b -> a - cfold :: (CFol f m, Monoid m) => f m -> m- cfold = cfoldMap id+ _fold :: (CFol f m, Monoid m) => f m -> m+ _fold = _foldMap id - cfoldMap :: (CFol f a, CFol f m, Monoid m) => (a -> m) -> f a -> m- cfoldMap f = cfoldr (mappend . f) mempty+ _foldMap :: (CFol f a, CFol f m, Monoid m) => (a -> m) -> f a -> m+ _foldMap f = _foldr (mappend . f) mempty - clength :: CFol f a => f a -> Int- clength = cfoldl (\c _ -> c+1) 0+ _length :: CFol f a => f a -> Int+ _length = _foldl (\c _ -> c+1) 0 - cmapM :: (Monad m, CFol f a, CFol f b)+ _mapM :: (Monad m, CFol f a, CFol f b) => (a -> m b) -> f a -> m (f b) - cforM :: (Monad m, CFol f a, CFol f b)+ _forM :: (Monad m, CFol f a, CFol f b) => f a -> (a -> m b) -> m (f b)- cforM = flip cmapM+ _forM = flip _mapM - cmapM_ :: (Monad m, CFol f a)+ _mapM_ :: (Monad m, CFol f a) => (a -> m b) -> f a -> m () - cforM_ :: (Monad m, CFol f a)+ _forM_ :: (Monad m, CFol f a) => f a -> (a -> m b) -> m ()- cforM_ = flip cmapM_+ _forM_ = flip _mapM_