Copyright | (c) Adam Conner-Sax 2019 |
---|---|
License | BSD-3-Clause |
Maintainer | adam_conner_sax@yahoo.com |
Stability | experimental |
Safe Haskell | None |
Language | Haskell2010 |
map-reduce engine (fold builder) using Vector
as its intermediate type.
Synopsis
- vectorEngine :: (Foldable g, Functor g) => (Vector (k, c) -> Vector (k, g c)) -> MapReduceFold y k c Vector x d
- vectorEngineM :: (Monad m, Traversable g) => (Vector (k, c) -> Vector (k, g c)) -> MapReduceFoldM m y k c Vector x d
- groupByHashableKey :: forall k c. (Hashable k, Eq k) => Vector (k, c) -> Vector (k, Seq c)
- groupByOrderedKey :: forall k c. Ord k => Vector (k, c) -> Vector (k, Seq c)
- toList :: Vector a -> [a]
Engines
vectorEngine :: (Foldable g, Functor g) => (Vector (k, c) -> Vector (k, g c)) -> MapReduceFold y k c Vector x d Source #
map-reduce-fold builder, using Vector
, returning a Vector
result
vectorEngineM :: (Monad m, Traversable g) => (Vector (k, c) -> Vector (k, g c)) -> MapReduceFoldM m y k c Vector x d Source #
effectful map-reduce-fold builder, using Vector
, returning an effectful Vector
result
groupBy functions
groupByHashableKey :: forall k c. (Hashable k, Eq k) => Vector (k, c) -> Vector (k, Seq c) Source #
group the mapped and assigned values by key using a Data.HashMap.Strict
groupByOrderedKey :: forall k c. Ord k => Vector (k, c) -> Vector (k, Seq c) Source #
group the mapped and assigned values by key using a Data.Map.Strict