The dual-tree package

[Tags:bsd3, library]

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.

Properties

Versions 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.1.0.4, 0.1.0.5, 0.2, 0.2.0.1, 0.2.0.2, 0.2.0.3, 0.2.0.4, 0.2.0.5, 0.2.0.6, 0.2.0.7, 0.2.0.8, 0.2.0.9
Change log CHANGES
Dependencies base (>=4.3 && <4.7), monoid-extras (==0.2.*), newtype (==0.2.*), semigroups (>=0.8 && <0.10) [details]
License BSD3
Author Brent Yorgey
Maintainer diagrams-discuss@googlegroups.com
Stability Unknown
Category Data
Bug tracker https://github.com/diagrams/dual-tree/issues
Source repository head: git clone https://github.com/diagrams/dual-tree.git
Uploaded Mon Jan 7 21:22:50 UTC 2013 by BrentYorgey
Distributions Debian:0.2.0.8, LTSHaskell:0.2.0.9, NixOS:0.2.0.9, Stackage:0.2.0.9, Tumbleweed:0.2.0.9
Downloads 22710 total (33 in the last 30 days)
Votes
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees