packages feed

stm-hamt-1.2: stm-hamt.cabal

name: stm-hamt
version: 1.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
  <http://hackage.haskell.org/package/stm-containers the "stm-containers" library>.
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
build-type: Simple
cabal-version: >=1.10

library
  hs-source-dirs: library
  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, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
  default-language: Haskell2010
  exposed-modules:
    StmHamt.Hamt
    StmHamt.SizedHamt
  other-modules:
    StmHamt.IntOps
    StmHamt.Constructors.Branch
    StmHamt.Focuses
    StmHamt.Prelude
    StmHamt.Types
    StmHamt.UnfoldlM
    StmHamt.ListT
  build-depends:
    base >=4.9 && <5,
    deferred-folds >=0.7 && <0.8,
    focus >=1 && <1.1,
    hashable <2,
    list-t >=1.0.1 && <1.1,
    primitive >=0.6.4 && <0.7,
    primitive-extras >=0.7 && <0.8,
    transformers >=0.5 && <0.6

test-suite test
  type: exitcode-stdio-1.0
  hs-source-dirs: test
  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, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
  default-language: Haskell2010
  main-is: Main.hs
  other-modules:
    Main.Gens
    Main.Transaction
  build-depends:
    deferred-folds,
    focus,
    QuickCheck >=2.8.1 && <3,
    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.11

benchmark concurrent-insertion-bench
  type: exitcode-stdio-1.0
  hs-source-dirs: concurrent-insertion-bench
  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, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
  default-language: Haskell2010
  ghc-options: -O2 -threaded "-with-rtsopts=-N"
  main-is: Main.hs
  build-depends:
    async >=2.0 && <3,
    criterion ==1.5.*,
    focus,
    free >=4.5 && <6,
    list-t,
    mwc-random >=0.13 && <0.15,
    mwc-random-monad ==0.7.*,
    rebase <2,
    stm-hamt