packages feed

yesod-paginator 1.1.0.1 → 1.1.0.2

raw patch · 3 files changed

+102/−5 lines, 3 filesdep +QuickCheckdep +quickcheck-classesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: QuickCheck, quickcheck-classes

API changes (from Hackage documentation)

+ Yesod.Paginator.Pages: instance Data.Foldable.Foldable Yesod.Paginator.Pages.Page
+ Yesod.Paginator.Pages: instance Data.Foldable.Foldable Yesod.Paginator.Pages.Pages
+ Yesod.Paginator.Pages: instance Data.Traversable.Traversable Yesod.Paginator.Pages.Page
+ Yesod.Paginator.Pages: instance Data.Traversable.Traversable Yesod.Paginator.Pages.Pages
+ Yesod.Paginator.Pages: instance GHC.Base.Functor Yesod.Paginator.Pages.Page
+ Yesod.Paginator.Pages: instance GHC.Base.Functor Yesod.Paginator.Pages.Pages
+ Yesod.Paginator.Prelude: infixl 1 >>
+ Yesod.Paginator.Prelude: infixl 6 -
+ Yesod.Paginator.Prelude: infixl 7 *
+ Yesod.Paginator.Prelude: infixr 6 <>
- Yesod.Paginator.Prelude: ($!) :: () => a -> b -> a -> b
+ Yesod.Paginator.Prelude: ($!) :: () => (a -> b) -> a -> b
- Yesod.Paginator.Prelude: ($) :: () => a -> b -> a -> b
+ Yesod.Paginator.Prelude: ($) :: () => (a -> b) -> a -> b
- Yesod.Paginator.Prelude: (.) :: () => b -> c -> a -> b -> a -> c
+ Yesod.Paginator.Prelude: (.) :: () => (b -> c) -> (a -> b) -> a -> c
- Yesod.Paginator.Prelude: (<$!>) :: Monad m => a -> b -> m a -> m b
+ Yesod.Paginator.Prelude: (<$!>) :: Monad m => (a -> b) -> m a -> m b
- Yesod.Paginator.Prelude: (<$>) :: Functor f => a -> b -> f a -> f b
+ Yesod.Paginator.Prelude: (<$>) :: Functor f => (a -> b) -> f a -> f b
- Yesod.Paginator.Prelude: (<*>) :: Applicative f => f a -> b -> f a -> f b
+ Yesod.Paginator.Prelude: (<*>) :: Applicative f => f (a -> b) -> f a -> f b
- Yesod.Paginator.Prelude: (<=<) :: Monad m => b -> m c -> a -> m b -> a -> m c
+ Yesod.Paginator.Prelude: (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- Yesod.Paginator.Prelude: (=<<) :: Monad m => a -> m b -> m a -> m b
+ Yesod.Paginator.Prelude: (=<<) :: Monad m => (a -> m b) -> m a -> m b
- Yesod.Paginator.Prelude: (>=>) :: Monad m => a -> m b -> b -> m c -> a -> m c
+ Yesod.Paginator.Prelude: (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- Yesod.Paginator.Prelude: (>>=) :: Monad m => m a -> a -> m b -> m b
+ Yesod.Paginator.Prelude: (>>=) :: Monad m => m a -> (a -> m b) -> m b
- Yesod.Paginator.Prelude: all :: Foldable t => a -> Bool -> t a -> Bool
+ Yesod.Paginator.Prelude: all :: Foldable t => (a -> Bool) -> t a -> Bool
- Yesod.Paginator.Prelude: any :: Foldable t => a -> Bool -> t a -> Bool
+ Yesod.Paginator.Prelude: any :: Foldable t => (a -> Bool) -> t a -> Bool
- Yesod.Paginator.Prelude: ap :: Monad m => m a -> b -> m a -> m b
+ Yesod.Paginator.Prelude: ap :: Monad m => m (a -> b) -> m a -> m b
- Yesod.Paginator.Prelude: break :: () => a -> Bool -> [a] -> ([a], [a])
+ Yesod.Paginator.Prelude: break :: () => (a -> Bool) -> [a] -> ([a], [a])
- Yesod.Paginator.Prelude: class Functor f => Applicative (f :: * -> *)
+ Yesod.Paginator.Prelude: class Functor f => Applicative (f :: Type -> Type)
- Yesod.Paginator.Prelude: class Foldable (t :: * -> *)
+ Yesod.Paginator.Prelude: class Foldable (t :: Type -> Type)
- Yesod.Paginator.Prelude: class Functor (f :: * -> *)
+ Yesod.Paginator.Prelude: class Functor (f :: Type -> Type)
- Yesod.Paginator.Prelude: class Applicative m => Monad (m :: * -> *)
+ Yesod.Paginator.Prelude: class Applicative m => Monad (m :: Type -> Type)
- Yesod.Paginator.Prelude: class (Alternative m, Monad m) => MonadPlus (m :: * -> *)
+ Yesod.Paginator.Prelude: class (Alternative m, Monad m) => MonadPlus (m :: Type -> Type)
- Yesod.Paginator.Prelude: class (Functor t, Foldable t) => Traversable (t :: * -> *)
+ Yesod.Paginator.Prelude: class (Functor t, Foldable t) => Traversable (t :: Type -> Type)
- Yesod.Paginator.Prelude: concatMap :: Foldable t => a -> [b] -> t a -> [b]
+ Yesod.Paginator.Prelude: concatMap :: Foldable t => (a -> [b]) -> t a -> [b]
- Yesod.Paginator.Prelude: curry :: () => (a, b) -> c -> a -> b -> c
+ Yesod.Paginator.Prelude: curry :: () => ((a, b) -> c) -> a -> b -> c
- Yesod.Paginator.Prelude: deleteBy :: () => a -> a -> Bool -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: deleteBy :: () => (a -> a -> Bool) -> a -> [a] -> [a]
- Yesod.Paginator.Prelude: deleteFirstsBy :: () => a -> a -> Bool -> [a] -> [a] -> [a]
+ Yesod.Paginator.Prelude: deleteFirstsBy :: () => (a -> a -> Bool) -> [a] -> [a] -> [a]
- Yesod.Paginator.Prelude: dropWhile :: () => a -> Bool -> [a] -> [a]
+ Yesod.Paginator.Prelude: dropWhile :: () => (a -> Bool) -> [a] -> [a]
- Yesod.Paginator.Prelude: dropWhileEnd :: () => a -> Bool -> [a] -> [a]
+ Yesod.Paginator.Prelude: dropWhileEnd :: () => (a -> Bool) -> [a] -> [a]
- Yesod.Paginator.Prelude: either :: () => a -> c -> b -> c -> Either a b -> c
+ Yesod.Paginator.Prelude: either :: () => (a -> c) -> (b -> c) -> Either a b -> c
- Yesod.Paginator.Prelude: filter :: () => a -> Bool -> [a] -> [a]
+ Yesod.Paginator.Prelude: filter :: () => (a -> Bool) -> [a] -> [a]
- Yesod.Paginator.Prelude: filterM :: Applicative m => a -> m Bool -> [a] -> m [a]
+ Yesod.Paginator.Prelude: filterM :: Applicative m => (a -> m Bool) -> [a] -> m [a]
- Yesod.Paginator.Prelude: find :: Foldable t => a -> Bool -> t a -> Maybe a
+ Yesod.Paginator.Prelude: find :: Foldable t => (a -> Bool) -> t a -> Maybe a
- Yesod.Paginator.Prelude: findIndex :: () => a -> Bool -> [a] -> Maybe Int
+ Yesod.Paginator.Prelude: findIndex :: () => (a -> Bool) -> [a] -> Maybe Int
- Yesod.Paginator.Prelude: findIndexJust :: () => a -> Bool -> [a] -> Int
+ Yesod.Paginator.Prelude: findIndexJust :: () => (a -> Bool) -> [a] -> Int
- Yesod.Paginator.Prelude: findIndexJustDef :: () => Int -> a -> Bool -> [a] -> Int
+ Yesod.Paginator.Prelude: findIndexJustDef :: () => Int -> (a -> Bool) -> [a] -> Int
- Yesod.Paginator.Prelude: findIndexJustNote :: Partial => String -> a -> Bool -> [a] -> Int
+ Yesod.Paginator.Prelude: findIndexJustNote :: Partial => String -> (a -> Bool) -> [a] -> Int
- Yesod.Paginator.Prelude: findIndices :: () => a -> Bool -> [a] -> [Int]
+ Yesod.Paginator.Prelude: findIndices :: () => (a -> Bool) -> [a] -> [Int]
- Yesod.Paginator.Prelude: findJust :: () => a -> Bool -> [a] -> a
+ Yesod.Paginator.Prelude: findJust :: () => (a -> Bool) -> [a] -> a
- Yesod.Paginator.Prelude: findJustDef :: () => a -> a -> Bool -> [a] -> a
+ Yesod.Paginator.Prelude: findJustDef :: () => a -> (a -> Bool) -> [a] -> a
- Yesod.Paginator.Prelude: findJustNote :: Partial => String -> a -> Bool -> [a] -> a
+ Yesod.Paginator.Prelude: findJustNote :: Partial => String -> (a -> Bool) -> [a] -> a
- Yesod.Paginator.Prelude: flip :: () => a -> b -> c -> b -> a -> c
+ Yesod.Paginator.Prelude: flip :: () => (a -> b -> c) -> b -> a -> c
- Yesod.Paginator.Prelude: fmap :: Functor f => a -> b -> f a -> f b
+ Yesod.Paginator.Prelude: fmap :: Functor f => (a -> b) -> f a -> f b
- Yesod.Paginator.Prelude: foldM :: (Foldable t, Monad m) => b -> a -> m b -> b -> t a -> m b
+ Yesod.Paginator.Prelude: foldM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b
- Yesod.Paginator.Prelude: foldM_ :: (Foldable t, Monad m) => b -> a -> m b -> b -> t a -> m ()
+ Yesod.Paginator.Prelude: foldM_ :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m ()
- Yesod.Paginator.Prelude: foldMap :: (Foldable t, Monoid m) => a -> m -> t a -> m
+ Yesod.Paginator.Prelude: foldMap :: (Foldable t, Monoid m) => (a -> m) -> t a -> m
- Yesod.Paginator.Prelude: foldl :: Foldable t => b -> a -> b -> b -> t a -> b
+ Yesod.Paginator.Prelude: foldl :: Foldable t => (b -> a -> b) -> b -> t a -> b
- Yesod.Paginator.Prelude: foldl' :: Foldable t => b -> a -> b -> b -> t a -> b
+ Yesod.Paginator.Prelude: foldl' :: Foldable t => (b -> a -> b) -> b -> t a -> b
- Yesod.Paginator.Prelude: foldl1 :: Foldable t => a -> a -> a -> t a -> a
+ Yesod.Paginator.Prelude: foldl1 :: Foldable t => (a -> a -> a) -> t a -> a
- Yesod.Paginator.Prelude: foldl1' :: () => a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldl1' :: () => (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: foldl1Def :: () => a -> a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldl1Def :: () => a -> (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: foldl1Def' :: () => a -> a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldl1Def' :: () => a -> (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: foldl1May :: () => a -> a -> a -> [a] -> Maybe a
+ Yesod.Paginator.Prelude: foldl1May :: () => (a -> a -> a) -> [a] -> Maybe a
- Yesod.Paginator.Prelude: foldl1May' :: () => a -> a -> a -> [a] -> Maybe a
+ Yesod.Paginator.Prelude: foldl1May' :: () => (a -> a -> a) -> [a] -> Maybe a
- Yesod.Paginator.Prelude: foldl1Note :: Partial => String -> a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldl1Note :: Partial => String -> (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: foldl1Note' :: Partial => String -> a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldl1Note' :: Partial => String -> (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: foldr :: Foldable t => a -> b -> b -> b -> t a -> b
+ Yesod.Paginator.Prelude: foldr :: Foldable t => (a -> b -> b) -> b -> t a -> b
- Yesod.Paginator.Prelude: foldr1 :: Foldable t => a -> a -> a -> t a -> a
+ Yesod.Paginator.Prelude: foldr1 :: Foldable t => (a -> a -> a) -> t a -> a
- Yesod.Paginator.Prelude: foldr1Def :: () => a -> a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldr1Def :: () => a -> (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: foldr1May :: () => a -> a -> a -> [a] -> Maybe a
+ Yesod.Paginator.Prelude: foldr1May :: () => (a -> a -> a) -> [a] -> Maybe a
- Yesod.Paginator.Prelude: foldr1Note :: Partial => String -> a -> a -> a -> [a] -> a
+ Yesod.Paginator.Prelude: foldr1Note :: Partial => String -> (a -> a -> a) -> [a] -> a
- Yesod.Paginator.Prelude: forM :: (Traversable t, Monad m) => t a -> a -> m b -> m t b
+ Yesod.Paginator.Prelude: forM :: (Traversable t, Monad m) => t a -> (a -> m b) -> m (t b)
- Yesod.Paginator.Prelude: forM_ :: (Foldable t, Monad m) => t a -> a -> m b -> m ()
+ Yesod.Paginator.Prelude: forM_ :: (Foldable t, Monad m) => t a -> (a -> m b) -> m ()
- Yesod.Paginator.Prelude: groupBy :: () => a -> a -> Bool -> [a] -> [[a]]
+ Yesod.Paginator.Prelude: groupBy :: () => (a -> a -> Bool) -> [a] -> [[a]]
- Yesod.Paginator.Prelude: insertBy :: () => a -> a -> Ordering -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: insertBy :: () => (a -> a -> Ordering) -> a -> [a] -> [a]
- Yesod.Paginator.Prelude: interact :: String -> String -> IO ()
+ Yesod.Paginator.Prelude: interact :: (String -> String) -> IO ()
- Yesod.Paginator.Prelude: intersectBy :: () => a -> a -> Bool -> [a] -> [a] -> [a]
+ Yesod.Paginator.Prelude: intersectBy :: () => (a -> a -> Bool) -> [a] -> [a] -> [a]
- Yesod.Paginator.Prelude: iterate :: () => a -> a -> a -> [a]
+ Yesod.Paginator.Prelude: iterate :: () => (a -> a) -> a -> [a]
- Yesod.Paginator.Prelude: iterate' :: () => a -> a -> a -> [a]
+ Yesod.Paginator.Prelude: iterate' :: () => (a -> a) -> a -> [a]
- Yesod.Paginator.Prelude: join :: Monad m => m m a -> m a
+ Yesod.Paginator.Prelude: join :: Monad m => m (m a) -> m a
- Yesod.Paginator.Prelude: liftM :: Monad m => a1 -> r -> m a1 -> m r
+ Yesod.Paginator.Prelude: liftM :: Monad m => (a1 -> r) -> m a1 -> m r
- Yesod.Paginator.Prelude: liftM2 :: Monad m => a1 -> a2 -> r -> m a1 -> m a2 -> m r
+ Yesod.Paginator.Prelude: liftM2 :: Monad m => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
- Yesod.Paginator.Prelude: liftM3 :: Monad m => a1 -> a2 -> a3 -> r -> m a1 -> m a2 -> m a3 -> m r
+ Yesod.Paginator.Prelude: liftM3 :: Monad m => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r
- Yesod.Paginator.Prelude: liftM4 :: Monad m => a1 -> a2 -> a3 -> a4 -> r -> m a1 -> m a2 -> m a3 -> m a4 -> m r
+ Yesod.Paginator.Prelude: liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r
- Yesod.Paginator.Prelude: liftM5 :: Monad m => a1 -> a2 -> a3 -> a4 -> a5 -> r -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r
+ Yesod.Paginator.Prelude: liftM5 :: Monad m => (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r
- Yesod.Paginator.Prelude: map :: () => a -> b -> [a] -> [b]
+ Yesod.Paginator.Prelude: map :: () => (a -> b) -> [a] -> [b]
- Yesod.Paginator.Prelude: mapAccumL :: Traversable t => a -> b -> (a, c) -> a -> t b -> (a, t c)
+ Yesod.Paginator.Prelude: mapAccumL :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c)
- Yesod.Paginator.Prelude: mapAccumR :: Traversable t => a -> b -> (a, c) -> a -> t b -> (a, t c)
+ Yesod.Paginator.Prelude: mapAccumR :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c)
- Yesod.Paginator.Prelude: mapAndUnzipM :: Applicative m => a -> m (b, c) -> [a] -> m ([b], [c])
+ Yesod.Paginator.Prelude: mapAndUnzipM :: Applicative m => (a -> m (b, c)) -> [a] -> m ([b], [c])
- Yesod.Paginator.Prelude: mapM :: (Traversable t, Monad m) => a -> m b -> t a -> m t b
+ Yesod.Paginator.Prelude: mapM :: (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)
- Yesod.Paginator.Prelude: mapM_ :: (Foldable t, Monad m) => a -> m b -> t a -> m ()
+ Yesod.Paginator.Prelude: mapM_ :: (Foldable t, Monad m) => (a -> m b) -> t a -> m ()
- Yesod.Paginator.Prelude: mapMaybe :: () => a -> Maybe b -> [a] -> [b]
+ Yesod.Paginator.Prelude: mapMaybe :: () => (a -> Maybe b) -> [a] -> [b]
- Yesod.Paginator.Prelude: maximumBy :: Foldable t => a -> a -> Ordering -> t a -> a
+ Yesod.Paginator.Prelude: maximumBy :: Foldable t => (a -> a -> Ordering) -> t a -> a
- Yesod.Paginator.Prelude: maximumByDef :: () => a -> a -> a -> Ordering -> [a] -> a
+ Yesod.Paginator.Prelude: maximumByDef :: () => a -> (a -> a -> Ordering) -> [a] -> a
- Yesod.Paginator.Prelude: maximumByMay :: () => a -> a -> Ordering -> [a] -> Maybe a
+ Yesod.Paginator.Prelude: maximumByMay :: () => (a -> a -> Ordering) -> [a] -> Maybe a
- Yesod.Paginator.Prelude: maximumByNote :: Partial => String -> a -> a -> Ordering -> [a] -> a
+ Yesod.Paginator.Prelude: maximumByNote :: Partial => String -> (a -> a -> Ordering) -> [a] -> a
- Yesod.Paginator.Prelude: maybe :: () => b -> a -> b -> Maybe a -> b
+ Yesod.Paginator.Prelude: maybe :: () => b -> (a -> b) -> Maybe a -> b
- Yesod.Paginator.Prelude: mfilter :: MonadPlus m => a -> Bool -> m a -> m a
+ Yesod.Paginator.Prelude: mfilter :: MonadPlus m => (a -> Bool) -> m a -> m a
- Yesod.Paginator.Prelude: minimumBy :: Foldable t => a -> a -> Ordering -> t a -> a
+ Yesod.Paginator.Prelude: minimumBy :: Foldable t => (a -> a -> Ordering) -> t a -> a
- Yesod.Paginator.Prelude: minimumByDef :: () => a -> a -> a -> Ordering -> [a] -> a
+ Yesod.Paginator.Prelude: minimumByDef :: () => a -> (a -> a -> Ordering) -> [a] -> a
- Yesod.Paginator.Prelude: minimumByMay :: () => a -> a -> Ordering -> [a] -> Maybe a
+ Yesod.Paginator.Prelude: minimumByMay :: () => (a -> a -> Ordering) -> [a] -> Maybe a
- Yesod.Paginator.Prelude: minimumByNote :: Partial => String -> a -> a -> Ordering -> [a] -> a
+ Yesod.Paginator.Prelude: minimumByNote :: Partial => String -> (a -> a -> Ordering) -> [a] -> a
- Yesod.Paginator.Prelude: msum :: (Foldable t, MonadPlus m) => t m a -> m a
+ Yesod.Paginator.Prelude: msum :: (Foldable t, MonadPlus m) => t (m a) -> m a
- Yesod.Paginator.Prelude: nubBy :: () => a -> a -> Bool -> [a] -> [a]
+ Yesod.Paginator.Prelude: nubBy :: () => (a -> a -> Bool) -> [a] -> [a]
- Yesod.Paginator.Prelude: partition :: () => a -> Bool -> [a] -> ([a], [a])
+ Yesod.Paginator.Prelude: partition :: () => (a -> Bool) -> [a] -> ([a], [a])
- Yesod.Paginator.Prelude: scanl :: () => b -> a -> b -> b -> [a] -> [b]
+ Yesod.Paginator.Prelude: scanl :: () => (b -> a -> b) -> b -> [a] -> [b]
- Yesod.Paginator.Prelude: scanl' :: () => b -> a -> b -> b -> [a] -> [b]
+ Yesod.Paginator.Prelude: scanl' :: () => (b -> a -> b) -> b -> [a] -> [b]
- Yesod.Paginator.Prelude: scanl1 :: () => a -> a -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: scanl1 :: () => (a -> a -> a) -> [a] -> [a]
- Yesod.Paginator.Prelude: scanl1Def :: () => [a] -> a -> a -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: scanl1Def :: () => [a] -> (a -> a -> a) -> [a] -> [a]
- Yesod.Paginator.Prelude: scanl1May :: () => a -> a -> a -> [a] -> Maybe [a]
+ Yesod.Paginator.Prelude: scanl1May :: () => (a -> a -> a) -> [a] -> Maybe [a]
- Yesod.Paginator.Prelude: scanl1Note :: Partial => String -> a -> a -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: scanl1Note :: Partial => String -> (a -> a -> a) -> [a] -> [a]
- Yesod.Paginator.Prelude: scanr :: () => a -> b -> b -> b -> [a] -> [b]
+ Yesod.Paginator.Prelude: scanr :: () => (a -> b -> b) -> b -> [a] -> [b]
- Yesod.Paginator.Prelude: scanr1 :: () => a -> a -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: scanr1 :: () => (a -> a -> a) -> [a] -> [a]
- Yesod.Paginator.Prelude: scanr1Def :: () => [a] -> a -> a -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: scanr1Def :: () => [a] -> (a -> a -> a) -> [a] -> [a]
- Yesod.Paginator.Prelude: scanr1May :: () => a -> a -> a -> [a] -> Maybe [a]
+ Yesod.Paginator.Prelude: scanr1May :: () => (a -> a -> a) -> [a] -> Maybe [a]
- Yesod.Paginator.Prelude: scanr1Note :: Partial => String -> a -> a -> a -> [a] -> [a]
+ Yesod.Paginator.Prelude: scanr1Note :: Partial => String -> (a -> a -> a) -> [a] -> [a]
- Yesod.Paginator.Prelude: sequence :: (Traversable t, Monad m) => t m a -> m t a
+ Yesod.Paginator.Prelude: sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
- Yesod.Paginator.Prelude: sequenceA :: (Traversable t, Applicative f) => t f a -> f t a
+ Yesod.Paginator.Prelude: sequenceA :: (Traversable t, Applicative f) => t (f a) -> f (t a)
- Yesod.Paginator.Prelude: sequence_ :: (Foldable t, Monad m) => t m a -> m ()
+ Yesod.Paginator.Prelude: sequence_ :: (Foldable t, Monad m) => t (m a) -> m ()
- Yesod.Paginator.Prelude: sortBy :: () => a -> a -> Ordering -> [a] -> [a]
+ Yesod.Paginator.Prelude: sortBy :: () => (a -> a -> Ordering) -> [a] -> [a]
- Yesod.Paginator.Prelude: sortOn :: Ord b => a -> b -> [a] -> [a]
+ Yesod.Paginator.Prelude: sortOn :: Ord b => (a -> b) -> [a] -> [a]
- Yesod.Paginator.Prelude: span :: () => a -> Bool -> [a] -> ([a], [a])
+ Yesod.Paginator.Prelude: span :: () => (a -> Bool) -> [a] -> ([a], [a])
- Yesod.Paginator.Prelude: takeWhile :: () => a -> Bool -> [a] -> [a]
+ Yesod.Paginator.Prelude: takeWhile :: () => (a -> Bool) -> [a] -> [a]
- Yesod.Paginator.Prelude: traverse :: (Traversable t, Applicative f) => a -> f b -> t a -> f t b
+ Yesod.Paginator.Prelude: traverse :: (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
- Yesod.Paginator.Prelude: uncurry :: () => a -> b -> c -> (a, b) -> c
+ Yesod.Paginator.Prelude: uncurry :: () => (a -> b -> c) -> (a, b) -> c
- Yesod.Paginator.Prelude: unfoldr :: () => b -> Maybe (a, b) -> b -> [a]
+ Yesod.Paginator.Prelude: unfoldr :: () => (b -> Maybe (a, b)) -> b -> [a]
- Yesod.Paginator.Prelude: unionBy :: () => a -> a -> Bool -> [a] -> [a] -> [a]
+ Yesod.Paginator.Prelude: unionBy :: () => (a -> a -> Bool) -> [a] -> [a] -> [a]
- Yesod.Paginator.Prelude: until :: () => a -> Bool -> a -> a -> a -> a
+ Yesod.Paginator.Prelude: until :: () => (a -> Bool) -> (a -> a) -> a -> a
- Yesod.Paginator.Prelude: zipWith :: () => a -> b -> c -> [a] -> [b] -> [c]
+ Yesod.Paginator.Prelude: zipWith :: () => (a -> b -> c) -> [a] -> [b] -> [c]
- Yesod.Paginator.Prelude: zipWith3 :: () => a -> b -> c -> d -> [a] -> [b] -> [c] -> [d]
+ Yesod.Paginator.Prelude: zipWith3 :: () => (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
- Yesod.Paginator.Prelude: zipWith4 :: () => a -> b -> c -> d -> e -> [a] -> [b] -> [c] -> [d] -> [e]
+ Yesod.Paginator.Prelude: zipWith4 :: () => (a -> b -> c -> d -> e) -> [a] -> [b] -> [c] -> [d] -> [e]
- Yesod.Paginator.Prelude: zipWith5 :: () => a -> b -> c -> d -> e -> f -> [a] -> [b] -> [c] -> [d] -> [e] -> [f]
+ Yesod.Paginator.Prelude: zipWith5 :: () => (a -> b -> c -> d -> e -> f) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f]
- Yesod.Paginator.Prelude: zipWith6 :: () => a -> b -> c -> d -> e -> f -> g -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g]
+ Yesod.Paginator.Prelude: zipWith6 :: () => (a -> b -> c -> d -> e -> f -> g) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g]
- Yesod.Paginator.Prelude: zipWith7 :: () => a -> b -> c -> d -> e -> f -> g -> h -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] -> [h]
+ Yesod.Paginator.Prelude: zipWith7 :: () => (a -> b -> c -> d -> e -> f -> g -> h) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] -> [h]
- Yesod.Paginator.Prelude: zipWithM :: Applicative m => a -> b -> m c -> [a] -> [b] -> m [c]
+ Yesod.Paginator.Prelude: zipWithM :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m [c]
- Yesod.Paginator.Prelude: zipWithM_ :: Applicative m => a -> b -> m c -> [a] -> [b] -> m ()
+ Yesod.Paginator.Prelude: zipWithM_ :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m ()

Files

src/Yesod/Paginator/Pages.hs view
@@ -57,6 +57,21 @@     }     deriving (Eq, Show) +setPageItems :: Page a -> [b] -> Page b+setPageItems page items = page { pageItems = items }++overPageItems :: ([a] -> [b]) -> Page a -> Page b+overPageItems f page = setPageItems page $ f $ pageItems page++instance Functor Page where+    fmap f = overPageItems $ fmap f++instance Foldable Page where+    foldMap f = foldMap f . pageItems++instance Traversable Page where+    traverse f page = setPageItems page <$> traverse f (pageItems page)+ -- | @'Page'@ constructor toPage :: [a] -> PageNumber -> Page a toPage = Page@@ -68,6 +83,21 @@     , pagesLast :: PageNumber     }     deriving (Eq, Show)++setPagesCurrent :: Pages a -> Page b -> Pages b+setPagesCurrent pages current = pages { pagesCurrent = current }++overPagesCurrent :: (Page a -> Page b) -> Pages a -> Pages b+overPagesCurrent f pages = setPagesCurrent pages $ f $ pagesCurrent pages++instance Functor Pages where+    fmap f = overPagesCurrent $ fmap f++instance Foldable Pages where+    foldMap f = foldMap f . pagesCurrent++instance Traversable Pages where+    traverse f pages = setPagesCurrent pages <$> traverse f (pagesCurrent pages)  -- | Take previous pages, going back from current --
+ test/Yesod/Paginator/PagesSpec.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}++module Yesod.Paginator.PagesSpec+    ( spec+    )+where++import Data.Foldable (traverse_)+import Data.Functor.Classes (Eq1(..), Show1(..))+import Data.Proxy+import Test.Hspec+import Test.QuickCheck+import Test.QuickCheck.Classes+import Yesod.Paginator.Pages++instance Arbitrary a => Arbitrary (Page a) where+    arbitrary = (`toPage` 1) <$> arbitrary++instance Arbitrary a => Arbitrary (Pages a) where+    arbitrary = toPages 1 5 100 <$> arbitrary++instance Eq1 Page where+    liftEq f a b = liftEq f (pageItems a) (pageItems b)++instance Show1 Page where+    liftShowsPrec f g h = liftShowsPrec f g h . pageItems++instance Arbitrary1 Page where+    liftArbitrary = fmap (`toPage` 1) . liftArbitrary++instance Eq1 Pages where+    liftEq f a b = liftEq f (pagesCurrent a) (pagesCurrent b)++instance Show1 Pages where+    liftShowsPrec f g h = liftShowsPrec f g h . pagesCurrent++instance Arbitrary1 Pages where+    liftArbitrary = fmap (toPages 1 5 100) . liftArbitrary++spec :: Spec+spec = do+    describe "Page" $ do+        let proxyPage :: Proxy Page+            proxyPage = Proxy++        itPreserves $ functorLaws proxyPage+        itPreserves $ foldableLaws proxyPage+        itPreserves $ traversableLaws proxyPage++    describe "Pages" $ do+        let proxyPages :: Proxy Pages+            proxyPages = Proxy++        itPreserves $ functorLaws proxyPages+        itPreserves $ foldableLaws proxyPages+        itPreserves $ traversableLaws proxyPages++itPreserves :: Laws -> Spec+itPreserves Laws {..} = mkContext $ traverse_ (uncurry mkIt) lawsProperties+  where+    mkContext = context $ lawsTypeclass <> " laws"+    mkIt name = it $ "preserves " <> name
yesod-paginator.cabal view
@@ -1,11 +1,13 @@--- This file has been generated from package.yaml by hpack version 0.28.2.+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.31.1. -- -- see: https://github.com/sol/hpack ----- hash: d114fc955427bbe8caa75c10f5898d5fbb49e54e90b280a34b9720af0a92c592+-- hash: c412aee17c1ede253c8e371db6af5b8e8618b2b0a835c5410cf4b90cd566aaeb  name:           yesod-paginator-version:        1.1.0.1+version:        1.1.0.2 synopsis:       A pagination approach for yesod description:    Paginate a list showing a per-item widget and links to other pages category:       Web, Yesod@@ -15,7 +17,6 @@ license:        BSD3 license-file:   LICENSE build-type:     Simple-cabal-version:  >= 1.10  source-repository head   type: git@@ -85,14 +86,17 @@   main-is: Spec.hs   other-modules:       SpecHelper+      Yesod.Paginator.PagesSpec       Yesod.Paginator.WidgetsSpec       Paths_yesod_paginator   hs-source-dirs:       test   ghc-options: -Wall   build-depends:-      base >4.8.0 && <5+      QuickCheck+    , base >4.8.0 && <5     , hspec+    , quickcheck-classes     , yesod-core     , yesod-paginator     , yesod-test