module Data.PQueue.Internals.Foldable
( Foldr (..)
, Foldl (..)
, FoldMap (..)
, Foldl' (..)
, IFoldr (..)
, IFoldl (..)
, IFoldMap (..)
, IFoldl' (..)
) where
class Foldr t where
foldr_ :: (a -> b -> b) -> b -> t a -> b
class IFoldr t where
foldrWithKey_ :: (k -> a -> b -> b) -> b -> t k a -> b
class Foldl t where
foldl_ :: (b -> a -> b) -> b -> t a -> b
class IFoldl t where
foldlWithKey_ :: (b -> k -> a -> b) -> b -> t k a -> b
class FoldMap t where
foldMap_ :: Monoid m => (a -> m) -> t a -> m
class IFoldMap t where
foldMapWithKey_ :: Monoid m => (k -> a -> m) -> t k a -> m
class Foldl' t where
foldl'_ :: (b -> a -> b) -> b -> t a -> b
class IFoldl' t where
foldlWithKey'_ :: (b -> k -> a -> b) -> b -> t k a -> b