packages feed

dual-tree-0.2.2: dual-tree.cabal

name:                dual-tree
version:             0.2.2
synopsis:            Rose trees with cached and accumulating monoidal annotations
description:         Rose (n-ary) trees with both upwards- (/i.e./
                     cached) and downwards-traveling (/i.e./
                     accumulating) monoidal annotations.  This is used
                     as the core data structure underlying
                     the @diagrams@ framework
                     (<http://projects.haskell.org/diagrams>), but
                     potentially has other applications as well.
                     .
                     Abstractly, a DUALTree is a rose (n-ary) tree
                     with data (of type @l@) at leaves, data (of type
                     @a@) at internal nodes, and two types of monoidal
                     annotations, one (of type @u@) travelling \"up\"
                     the tree and one (of type @d@) traveling
                     \"down\".
                     .
                     See "Data.Tree.DUAL" for full documentation.
                     "Data.Tree.DUAL" provides a public API which
                     should suffice for most purposes.
                     "Data.Tree.DUAL.Internal" exports more of the
                     internal implementation---use it at your own
                     risk.
license:             BSD3
license-file:        LICENSE
extra-source-files:  CHANGES
author:              Brent Yorgey
maintainer:          diagrams-discuss@googlegroups.com
category:            Data
build-type:          Simple
cabal-version:       >=1.10
bug-reports:         https://github.com/diagrams/dual-tree/issues
tested-with:         GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.2
source-repository head
  type: git
  location: https://github.com/diagrams/dual-tree.git

library
  default-language:  Haskell2010
  exposed-modules:   Data.Tree.DUAL
                     Data.Tree.DUAL.Internal
  build-depends:     base >= 4.3 && < 4.12,
                     semigroups >= 0.8 && < 0.19,
                     newtype-generics >= 0.5 && < 0.6,
                     monoid-extras >= 0.2 && < 0.6
  hs-source-dirs:    src
  other-extensions:  GeneralizedNewtypeDeriving,
                     MultiParamTypeClasses,
                     FlexibleInstances,
                     DeriveFunctor,
                     TypeOperators,
                     FlexibleContexts,
                     DeriveDataTypeable
test-suite test
  default-language:  Haskell2010
  type:              exitcode-stdio-1.0
  main-is:           Test.hs
  hs-source-dirs:    test
  build-depends:     base,
                     QuickCheck,
                     testing-feat,
                     monoid-extras,
                     semigroups,
                     dual-tree