packages feed

stm-hamt-1: stm-hamt.cabal

name:
  stm-hamt
version:
  1
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

source-repository head
  type:
    git
  location:
    git://github.com/nikita-volkov/stm-hamt.git

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.Accessors.Hash
    StmHamt.Constructors.Branch
    StmHamt.Constructors.Hash
    StmHamt.Focuses
    StmHamt.Prelude
    StmHamt.Types
    StmHamt.UnfoldMs
  build-depends:
    base >=4.6 && <5,
    deferred-folds >=0.6.5 && <0.7,
    focus >=1 && <1.1,
    hashable <2,
    primitive >=0.6.4 && <0.7,
    primitive-extras >=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:
    criterion ==1.5.*,
    mwc-random >=0.13 && <0.15,
    mwc-random-monad ==0.7.*,
    -- data:
    list-t,
    focus,
    stm-hamt,
    -- general:
    free >=4.5 && <6,
    async >=2.0 && <3,
    rebase <2