reducers-3.12.4: Semigroups, specialized containers and a general map/reduce framework
Copyright(c) Edward Kmett 2009-2011
LicenseBSD-style
Maintainerekmett@gmail.com
Stabilityexperimental
Portabilitynon-portable (MPTCs)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Semigroup.Reducer.With

Description

 
Synopsis

Documentation

newtype WithReducer m c Source #

If m is a c-Reducer, then m is (c WithReducer m)-Reducer This can be used to quickly select a Reducer for use as a FingerTree measure.

Constructors

WithReducer 

Fields

Instances

Instances details
(Monoid m, Reducer c m) => Measured m (WithReducer m c) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

measure :: WithReducer m c -> m

Foldable (WithReducer m) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

fold :: Monoid m0 => WithReducer m m0 -> m0

foldMap :: Monoid m0 => (a -> m0) -> WithReducer m a -> m0

foldMap' :: Monoid m0 => (a -> m0) -> WithReducer m a -> m0

foldr :: (a -> b -> b) -> b -> WithReducer m a -> b

foldr' :: (a -> b -> b) -> b -> WithReducer m a -> b

foldl :: (b -> a -> b) -> b -> WithReducer m a -> b

foldl' :: (b -> a -> b) -> b -> WithReducer m a -> b

foldr1 :: (a -> a -> a) -> WithReducer m a -> a

foldl1 :: (a -> a -> a) -> WithReducer m a -> a

toList :: WithReducer m a -> [a]

null :: WithReducer m a -> Bool

length :: WithReducer m a -> Int

elem :: Eq a => a -> WithReducer m a -> Bool

maximum :: Ord a => WithReducer m a -> a

minimum :: Ord a => WithReducer m a -> a

sum :: Num a => WithReducer m a -> a

product :: Num a => WithReducer m a -> a

Traversable (WithReducer m) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

traverse :: Applicative f => (a -> f b) -> WithReducer m a -> f (WithReducer m b)

sequenceA :: Applicative f => WithReducer m (f a) -> f (WithReducer m a)

mapM :: Monad m0 => (a -> m0 b) -> WithReducer m a -> m0 (WithReducer m b)

sequence :: Monad m0 => WithReducer m (m0 a) -> m0 (WithReducer m a)

Functor (WithReducer m) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

fmap :: (a -> b) -> WithReducer m a -> WithReducer m b

(<$) :: a -> WithReducer m b -> WithReducer m a

Foldable1 (WithReducer m) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

fold1 :: Semigroup m0 => WithReducer m m0 -> m0

foldMap1 :: Semigroup m0 => (a -> m0) -> WithReducer m a -> m0

toNonEmpty :: WithReducer m a -> NonEmpty a

Traversable1 (WithReducer m) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

traverse1 :: Apply f => (a -> f b) -> WithReducer m a -> f (WithReducer m b)

sequence1 :: Apply f => WithReducer m (f b) -> f (WithReducer m b)

Read c => Read (WithReducer m c) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

readsPrec :: Int -> ReadS (WithReducer m c)

readList :: ReadS [WithReducer m c]

readPrec :: ReadPrec (WithReducer m c)

readListPrec :: ReadPrec [WithReducer m c]

Show c => Show (WithReducer m c) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

showsPrec :: Int -> WithReducer m c -> ShowS

show :: WithReducer m c -> String

showList :: [WithReducer m c] -> ShowS

Eq c => Eq (WithReducer m c) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

(==) :: WithReducer m c -> WithReducer m c -> Bool

(/=) :: WithReducer m c -> WithReducer m c -> Bool

Ord c => Ord (WithReducer m c) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

compare :: WithReducer m c -> WithReducer m c -> Ordering

(<) :: WithReducer m c -> WithReducer m c -> Bool

(<=) :: WithReducer m c -> WithReducer m c -> Bool

(>) :: WithReducer m c -> WithReducer m c -> Bool

(>=) :: WithReducer m c -> WithReducer m c -> Bool

max :: WithReducer m c -> WithReducer m c -> WithReducer m c

min :: WithReducer m c -> WithReducer m c -> WithReducer m c

Hashable c => Hashable (WithReducer m c) Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

hashWithSalt :: Int -> WithReducer m c -> Int

hash :: WithReducer m c -> Int

Reducer c m => Reducer (WithReducer m c) m Source # 
Instance details

Defined in Data.Semigroup.Reducer.With

Methods

unit :: WithReducer m c -> m Source #

snoc :: m -> WithReducer m c -> m Source #

cons :: WithReducer m c -> m -> m Source #