indexed-traversable: FunctorWithIndex, FoldableWithIndex, TraversableWithIndex
This package provides three useful generalizations:
class Functor f => FunctorWithIndex i f | f -> i where imap :: (i -> a -> b) -> f a -> f b
class Foldable f => FoldableWithIndex i f | f -> i where ifoldMap :: Monoid m => (i -> a -> m) -> f a -> m
class (FunctorWithIndex i t, FoldableWithIndex i t, Traversable t) => TraversableWithIndex i t | t -> i where itraverse :: Applicative f => (i -> a -> f b) -> t a -> f (t b)
This package contains instances for types in GHC boot libraries. For some additional instances see indexed-traversable-instances.
The keys package provides similar functionality,
but uses (associated) TypeFamilies
instead of FunctionalDependencies
.
Versions [faq] | 0.1, 0.1.1 |
---|---|
Change log | Changelog.md |
Dependencies | array (>=0.3.0.2 && <0.6), base (>=4.3 && <4.16), base-orphans (>=0.8.3 && <0.9), containers (>=0.4.0.0 && <0.7), generic-deriving (==1.14.*), ghc-prim, semigroups (>=0.18.4 && <0.20), tagged (>=0.8.5 && <0.9), transformers (>=0.3.0.0 && <0.6), transformers-compat (>=0.6.6 && <0.7), void (>=0.7.2 && <0.8) [details] |
License | BSD-2-Clause |
Author | Edward Kmett |
Maintainer | Oleg Grenrus <oleg.grenrus@iki.fi> |
Category | Data |
Source repo | head: git clone https://github.com/haskellari/indexed-traversable(indexed-traversable) |
Uploaded | by phadej at 2020-12-27T13:09:42Z |
Distributions | Arch:0.1.1, NixOS:0.1.1 |
Downloads | 3404 total (855 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2020-12-27 [all 1 reports] |
Downloads
- indexed-traversable-0.1.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)