name: dual-tree version: 0.2.3.1 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 (), 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 ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.4 || ==9.4.1 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.18, semigroups >= 0.8 && < 0.21, monoid-extras >= 0.6 && < 0.7 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