stm-hamt-1.2.2: stm-hamt.cabal
cabal-version: 3.0
name: stm-hamt
version: 1.2.2
synopsis: STM-specialised Hash Array Mapped Trie
description:
A low-level data-structure,
which can be used to implement higher-level interfaces like
hash-map and hash-set.
Such implementations are presented by the
<http://hackage.haskell.org/package/stm-containers stm-containers>.
category: Data Structures, STM, Concurrency
homepage: https://github.com/nikita-volkov/stm-hamt
bug-reports: https://github.com/nikita-volkov/stm-hamt/issues
author: Nikita Volkov <nikita.y.volkov@mail.ru>
maintainer: Nikita Volkov <nikita.y.volkov@mail.ru>
copyright: (c) 2016, Nikita Volkov
license: MIT
license-file: LICENSE
common base
default-language: Haskell2010
default-extensions:
Arrows
BangPatterns
BinaryLiterals
ConstraintKinds
DataKinds
DefaultSignatures
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveTraversable
EmptyDataDecls
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
GeneralizedNewtypeDeriving
LambdaCase
LiberalTypeSynonyms
MagicHash
MultiParamTypeClasses
MultiWayIf
NoImplicitPrelude
NoMonomorphismRestriction
OverloadedStrings
ParallelListComp
PatternGuards
QuasiQuotes
RankNTypes
RecordWildCards
ScopedTypeVariables
StandaloneDeriving
TemplateHaskell
TupleSections
TypeFamilies
TypeOperators
UnboxedTuples
library
import: base
hs-source-dirs: library
exposed-modules:
StmHamt.Hamt
StmHamt.SizedHamt
other-modules:
StmHamt.Constructors.Branch
StmHamt.Focuses
StmHamt.IntOps
StmHamt.ListT
StmHamt.Prelude
StmHamt.Types
StmHamt.UnfoldlM
build-depends:
base >=4.9 && <5,
deferred-folds >=0.9 && <0.10,
focus >=1 && <1.1,
hashable >=1.4.0.0 && <2,
list-t >=1.0.1 && <1.1,
primitive >=0.7 && <0.10,
primitive-extras >=0.10.2 && <0.11,
transformers >=0.5 && <0.7,
test-suite test
import: base
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Main.hs
other-modules:
Main.Gens
Main.Transaction
build-depends:
QuickCheck >=2.8.1 && <3,
deferred-folds,
focus,
quickcheck-instances >=0.3.11 && <0.4,
rerebase <2,
stm-hamt,
tasty >=0.12 && <2,
tasty-hunit >=0.9 && <0.11,
tasty-quickcheck >=0.9 && <0.12,
benchmark concurrent-insertion-bench
import: base
type: exitcode-stdio-1.0
hs-source-dirs: concurrent-insertion-bench
ghc-options:
-O2
-threaded
-with-rtsopts=-N
main-is: Main.hs
build-depends:
async >=2.0 && <3,
criterion >=1.5 && <1.7,
focus,
free >=4.5 && <6,
random >=1.2 && <2,
rebase <2,
stm-hamt,