Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data OpenEdge a v where
- OpenEdge :: BackFun u v -> OpenEndpoint a u -> OpenEdge a v
- data OpenEndpoint a v where
- OpenSourceNode :: OpenEndpoint a a
- OpenInnerNode :: OpenKey v -> OpenEndpoint a v
- data OpenNode a v = BasicVector v => OpenNode [OpenEdge a v]
- data OpenGraph a z = OpenGraph (OpenNode a z) (OpenMap (OpenNode a))
- recoverSharing :: forall a z. BasicVector z => [Term a z] -> IO (OpenGraph a z)
Documentation
data OpenEndpoint a v where Source #
OpenSourceNode :: OpenEndpoint a a | |
OpenInnerNode :: OpenKey v -> OpenEndpoint a v |
Computational graph under construction. Open refers to the set of the nodes – new nodes can be
added to this graph. Once the graph is complete the set of nodes will be frozen
and the type of the graph will become Graph
(Downhill.Internal.Graph module).
recoverSharing :: forall a z. BasicVector z => [Term a z] -> IO (OpenGraph a z) Source #
Collects duplicate nodes in Expr
tree and converts it to a graph.