{-# LANGUAGE CPP #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE TypeFamilies #-}
module Data.MonoTraversable.Unprefixed where
import Data.Int (Int64)
import Data.MonoTraversable
import Data.Semigroup (Semigroup)
import Data.Monoid (Monoid)
import Control.Applicative (Applicative)
foldMap :: (MonoFoldable mono, Data.Monoid.Monoid m) => (Element mono -> m) -> mono -> m
foldMap = ofoldMap
foldr :: MonoFoldable mono => (Element mono -> b -> b) -> b -> mono -> b
foldr = ofoldr
foldl' :: MonoFoldable mono => (a -> Element mono -> a) -> a -> mono -> a
foldl' = ofoldl'
toList :: MonoFoldable mono => mono -> [Element mono]
toList = otoList
all :: MonoFoldable mono => (Element mono -> Bool) -> mono -> Bool
all = oall
any :: MonoFoldable mono => (Element mono -> Bool) -> mono -> Bool
any = oany
null :: MonoFoldable mono => mono -> Bool
null = onull
length :: MonoFoldable mono => mono -> Int
length = olength
length64 :: MonoFoldable mono => mono -> Int64
length64 = olength64
compareLength :: (MonoFoldable mono, Integral i) => mono -> i -> Ordering
compareLength = ocompareLength
traverse_ :: (MonoFoldable mono, Control.Applicative.Applicative f) => (Element mono -> f b) -> mono -> f ()
traverse_ = otraverse_
for_ :: (MonoFoldable mono, Applicative f) => mono -> (Element mono -> f b) -> f ()
for_ = ofor_
#if MIN_VERSION_base(4,8,0)
mapM_ :: (MonoFoldable mono, Applicative m)
=> (Element mono -> m ()) -> mono -> m ()
#else
mapM_ :: (MonoFoldable mono, Monad m)
=> (Element mono -> m ()) -> mono -> m ()
#endif
mapM_ = omapM_
#if MIN_VERSION_base(4,8,0)
forM_ :: (MonoFoldable mono, Applicative m)
=> mono -> (Element mono -> m ()) -> m ()
#else
forM_ :: (MonoFoldable mono, Monad m)
=> mono -> (Element mono -> m ()) -> m ()
#endif
forM_ = oforM_
foldlM :: (MonoFoldable mono, Monad m)
=> (a -> Element mono -> m a)
-> a
-> mono
-> m a
foldlM = ofoldlM
foldMap1Ex :: (MonoFoldable mono, Semigroup m)
=> (Element mono -> m)
-> mono
-> m
foldMap1Ex = ofoldMap1Ex
foldr1Ex :: MonoFoldable mono
=> (Element mono -> Element mono -> Element mono)
-> mono
-> Element mono
foldr1Ex = ofoldr1Ex
foldl1Ex' :: MonoFoldable mono
=> (Element mono -> Element mono -> Element mono)
-> mono
-> Element mono
foldl1Ex' = ofoldl1Ex'
sum :: (MonoFoldable mono, Num (Element mono)) => mono -> Element mono
sum = osum
product :: (MonoFoldable mono, Num (Element mono)) => mono -> Element mono
product = oproduct
and :: (MonoFoldable mono, Element mono ~ Bool) => mono -> Bool
and = oand
or :: (MonoFoldable mono, Element mono ~ Bool) => mono -> Bool
or = oor
concatMap :: (MonoFoldable mono, Monoid m) => (Element mono -> m) -> mono -> m
concatMap = oconcatMap
elem :: (MonoFoldable mono, Eq (Element mono)) => Element mono -> mono -> Bool
elem = oelem
notElem :: (MonoFoldable mono, Eq (Element mono)) => Element mono -> mono -> Bool
notElem = onotElem
point :: MonoPointed mono => Element mono -> mono
point = opoint
intercalate :: (MonoFoldable mono, Monoid (Element mono))
=> Element mono -> mono -> Element mono
intercalate = ointercalate
fold :: (MonoFoldable mono, Monoid (Element mono)) => mono -> Element mono
fold = ofold
concat :: (MonoFoldable mono, Monoid (Element mono)) => mono -> Element mono
concat = oconcat
foldM :: (MonoFoldable mono, Monad m) => (a -> Element mono -> m a) -> a -> mono -> m a
foldM = ofoldM
#if MIN_VERSION_base(4,8,0)
sequence_ :: (Applicative m, MonoFoldable mono, Element mono ~ (m ())) => mono -> m ()
#else
sequence_ :: (Monad m, MonoFoldable mono, Element mono ~ (m ())) => mono -> m ()
#endif
sequence_ = osequence_