Safe Haskell | Safe-Inferred |
---|

- exhaustively :: Eq a => (a -> a) -> a -> a
- exhaustivelyBy :: (a -> a -> Bool) -> (a -> a) -> a -> a
- exhaustivelyM :: (Eq a, Monad m) => (a -> m a) -> a -> m a
- exhaustivelyByM :: Monad m => (a -> a -> Bool) -> (a -> m a) -> a -> m a
- uniqSort :: Ord a => [a] -> [a]
- aggregateBy :: (a -> a -> Ordering) -> [a] -> [[a]]
- aggregate :: Ord a => [a] -> [[a]]
- aggregateAL :: Ord a => [(a, b)] -> [(a, [b])]
- tr :: Eq a => a -> a -> [a] -> [a]

# Documentation

exhaustively :: Eq a => (a -> a) -> a -> aSource

Apply a function exhaustively.

exhaustivelyBy :: (a -> a -> Bool) -> (a -> a) -> a -> aSource

Apply a function exhaustively.

exhaustivelyM :: (Eq a, Monad m) => (a -> m a) -> a -> m aSource

Apply a monad function exhaustively.

exhaustivelyByM :: Monad m => (a -> a -> Bool) -> (a -> m a) -> a -> m aSource

Apply a monad function exhaustively.

uniqSort :: Ord a => [a] -> [a]Source

Sort a list and leave out duplicates. Like `nub . sort`

but faster.

aggregateBy :: (a -> a -> Ordering) -> [a] -> [[a]]Source

Sort, then group

aggregateAL :: Ord a => [(a, b)] -> [(a, [b])]Source

Aggregate an association list, such that keys become unique.

(c)