cabal-version: 2.4 name: typerep-map version: 0.3.3.0 synopsis: Efficient implementation of a dependent map with types as keys description: A dependent map from type representations to values of these types. . Here is an illustration of such a map: . > TMap > --------------- > Int -> 5 > Bool -> True > Char -> 'x' . In addition to @TMap@, we provide @TypeRepMap@ parametrized by a @vinyl@-style interpretation. This data structure is equivalent to @DMap TypeRep@, but with significantly more efficient lookups. homepage: https://github.com/kowainik/typerep-map bug-reports: https://github.com/kowainik/typerep-map/issues license: MPL-2.0 license-file: LICENSE author: Veronika Romashkina, Vladislav Zavialov, Dmitrii Kovanikov maintainer: Kowainik copyright: 2017-2020 Kowainik category: Data, Data Structures, Types build-type: Simple extra-doc-files: README.md , CHANGELOG.md tested-with: GHC == 8.2.2 , GHC == 8.4.4 , GHC == 8.6.5 , GHC == 8.8.3 , GHC == 8.10.1 source-repository head type: git location: https://github.com/kowainik/typerep-map.git common common-options build-depends: base >= 4.10 && < 4.15 default-language: Haskell2010 default-extensions: BangPatterns DerivingStrategies OverloadedStrings RecordWildCards ScopedTypeVariables TypeApplications ghc-options: -Wall -Wcompat -Widentities -Wincomplete-uni-patterns -Wincomplete-record-updates if impl(ghc >= 8.0) ghc-options: -Wredundant-constraints if impl(ghc >= 8.2) ghc-options: -fhide-source-paths if impl(ghc >= 8.4) ghc-options: -Wmissing-export-lists -Wpartial-fields if impl(ghc >= 8.8) ghc-options: -Wmissing-deriving-strategies -Werror=missing-deriving-strategies if impl(ghc >= 8.10) ghc-options: -Wunused-packages library import: common-options hs-source-dirs: src exposed-modules: Data.TMap Data.TypeRepMap Data.TypeRepMap.Internal build-depends: containers >= 0.5.10.2 && < 0.7 , ghc-prim >= 0.5.1.1 && < 0.7 , primitive ^>= 0.7.0 , deepseq ^>= 1.4 library typerep-extra-impls import: common-options hs-source-dirs: typerep-extra-impls exposed-modules: Data.TypeRep.CMap Data.TypeRep.OptimalVector Data.TypeRep.Vector build-depends: containers >= 0.5.10.2 && < 0.7 , vector ^>= 0.12.0.1 , deepseq ^>= 1.4 test-suite typerep-map-test import: common-options type: exitcode-stdio-1.0 hs-source-dirs: test main-is: Test.hs other-modules: Test.TypeRep.CMap , Test.TypeRep.TypeRepMap , Test.TypeRep.TypeRepMapProperty , Test.TypeRep.Vector , Test.TypeRep.VectorOpt build-depends: ghc-typelits-knownnat >= 0.4.2 && < 0.8 , hedgehog ^>= 1.0 , hspec ^>= 2.7.1 , hspec-hedgehog ^>= 0.0.1 , typerep-map , typerep-extra-impls ghc-options: -threaded -rtsopts -with-rtsopts=-N benchmark typerep-map-benchmark import: common-options type: exitcode-stdio-1.0 hs-source-dirs: benchmark main-is: Main.hs other-modules: CMap , CacheMap , DMap , Spec , Vector , OptimalVector build-depends: criterion >= 1.4.1.0 && < 1.6 , deepseq ^>= 1.4.3.0 , dependent-map >= 0.2.4.0 && < 0.5 , dependent-sum >= 0.5 && < 0.8 , ghc-typelits-knownnat >= 0.4.2 && < 0.8 , typerep-map , typerep-extra-impls ghc-options: -O2 -threaded -rtsopts -with-rtsopts=-N -freduction-depth=0