Safe Haskell | None |
---|---|
Language | Haskell2010 |
Example usage of this package:
import UU.UUAGC.Diagrams dia :: AGBackend b => AGDiagram b dia = production ["count", "level"] "Docs" ["html", "count"] [ child ["count", "level"] "hd" ["html", "count"] , child ["count", "level"] "tl" ["html", "count"] ] # agrule shaftL "lhs.count" "hd.count" # agrule shaftL "lhs.level" "hd.level" # agrule shaftR "lhs.level" "tl.level" # agrule shaftL "hd.html" "lhs.html" # agrule shaftR "tl.html" "lhs.html" # agrule shaftR "tl.count" "lhs.count" # agrule shaftT "hd.count" "tl.count"
Synopsis
- production :: AGBackend b => [String] -> String -> [String] -> [Child b] -> AGDiagram b
- child :: AGBackend b => [String] -> String -> [String] -> Child b
- agrule :: AGBackend b => Trail V2 Double -> String -> String -> AGDiagram b -> AGDiagram b
- indrule :: AGBackend b => String -> String -> AGDiagram b -> AGDiagram b
- shaftL :: Trail V2 Double
- shaftR :: Trail V2 Double
- shaftT :: Trail V2 Double
- shaftB :: Trail V2 Double
- shaftD :: Trail V2 Double
- (#) :: a -> (a -> b) -> b
- type AGDiagram b = QDiagram b V2 Double Any
- class (Renderable (Path V2 Double) b, Backend b (V b) Double) => AGBackend b
- data Child b
Documentation
production :: AGBackend b => [String] -> String -> [String] -> [Child b] -> AGDiagram b Source #
Construct a diagram for a full production, given its inherited attributes, name, synthesized attributes and children
child :: AGBackend b => [String] -> String -> [String] -> Child b Source #
Construct a child given its inherited attributes, name and sythesized attributes.
indrule :: AGBackend b => String -> String -> AGDiagram b -> AGDiagram b Source #
Construct an induced dependency arrow between two attributes, similar to
agrule
but with an explicit trial.
(#) :: a -> (a -> b) -> b infixl 8 #
Postfix function application, for conveniently applying
attributes. Unlike ($)
, (#)
has a high precedence (8), so d
# foo # bar
can be combined with other things using operators
like (|||)
or (<>)
without needing parentheses.