name: monoidal-containers
version: 0.6.7.0
synopsis: Containers with monoidal accumulation
description:
Containers with merging via monoidal accumulation. The 'Monoid' instances
provided by the @containers@ and @unordered-containers@ packages merge
structures in a left-biased manner instead of using the underlying monoidal
structure of the value.
.
This package wraps the types provided by these packages, but provides @Monoid@
instances implemented in terms of the value type's 'mappend'. For instance,
the @Monoid@ @Map@ instance looks like,
.
@
instance (Ord k, Semigroup a) => Monoid (MonoidalMap k a)
@
homepage: http://github.com/bgamari/monoidal-containers
license: BSD3
license-file: LICENSE
author: Ben Gamari
maintainer: ben@smart-cactus.org
copyright: (c) 2014 Ben Gamari
category: Data
build-type: Simple
cabal-version: >=1.10
extra-source-files: Changelog.md
tested-with:
GHC ==8.2 || ==8.4 || ==8.6 || ==8.8 || ==8.10 || ==9.0 || ==9.2 || ==9.4
|| ==9.6 || ==9.10 || ==9.12
source-repository head
type: git
location: https://github.com/bgamari/monoidal-containers
flag split-these
description: Use split these/semialign packages
manual: False
default: True
library
exposed-modules:
Data.HashMap.Monoidal
Data.IntMap.Monoidal
Data.IntMap.Monoidal.Strict
Data.Map.Monoidal
Data.Map.Monoidal.Strict
other-extensions:
CPP
DeriveDataTypeable
DeriveTraversable
GeneralizedNewtypeDeriving
MultiParamTypeClasses
build-depends:
aeson >=1.0 && <2.3
, base >=4.7 && <4.23
, containers >=0.5.9 && <0.9
, deepseq >=1.3 && <1.6
, hashable >=1.2 && <1.6
, lens >=4.4 && <5.4
, newtype >=0.2 && <0.3
, unordered-containers >=0.2 && <0.3
, witherable >=0.4 && <0.6
if flag(split-these)
build-depends:
semialign >=1 && <1.4
, these >=1 && <1.3
else
build-depends: these >=0.7 && <0.9
hs-source-dirs: src
default-language: Haskell2010