rest-rewrite-0.4.3: Rewriting library with online termination checking
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.REST.Dot

Description

This module contains functionality for generating GraphViz graphs

Synopsis

Documentation

mkGraph :: String -> DiGraph -> IO () Source #

mkGraph name graph generates the .dot file for graph, and renders the resulting graph to a png file using the dot utility

data DiGraph Source #

A GraphViz directed graph

Constructors

DiGraph 

Fields

data Edge Source #

Constructors

Edge 

Instances

Instances details
Generic Edge Source # 
Instance details

Defined in Language.REST.Dot

Associated Types

type Rep Edge :: Type -> Type #

Methods

from :: Edge -> Rep Edge x #

to :: Rep Edge x -> Edge #

Show Edge Source # 
Instance details

Defined in Language.REST.Dot

Methods

showsPrec :: Int -> Edge -> ShowS #

show :: Edge -> String #

showList :: [Edge] -> ShowS #

Eq Edge Source # 
Instance details

Defined in Language.REST.Dot

Methods

(==) :: Edge -> Edge -> Bool #

(/=) :: Edge -> Edge -> Bool #

Ord Edge Source # 
Instance details

Defined in Language.REST.Dot

Methods

compare :: Edge -> Edge -> Ordering #

(<) :: Edge -> Edge -> Bool #

(<=) :: Edge -> Edge -> Bool #

(>) :: Edge -> Edge -> Bool #

(>=) :: Edge -> Edge -> Bool #

max :: Edge -> Edge -> Edge #

min :: Edge -> Edge -> Edge #

Hashable Edge Source # 
Instance details

Defined in Language.REST.Dot

Methods

hashWithSalt :: Int -> Edge -> Int #

hash :: Edge -> Int #

type Rep Edge Source # 
Instance details

Defined in Language.REST.Dot

data GraphType Source #

The way the graph will be rendered

Constructors

Tree

Standard representation

Dag

In Dag, If two equal terms n steps from the root are the same, they are represented by the same node, even if they were reached via different paths

Min

Each unique term is represented by the same node

Instances

Instances details
Read GraphType Source # 
Instance details

Defined in Language.REST.Dot

data Node Source #

A GraphViz node

Constructors

Node 

Instances

Instances details
Generic Node Source # 
Instance details

Defined in Language.REST.Dot

Associated Types

type Rep Node :: Type -> Type #

Methods

from :: Node -> Rep Node x #

to :: Rep Node x -> Node #

Show Node Source # 
Instance details

Defined in Language.REST.Dot

Methods

showsPrec :: Int -> Node -> ShowS #

show :: Node -> String #

showList :: [Node] -> ShowS #

Eq Node Source # 
Instance details

Defined in Language.REST.Dot

Methods

(==) :: Node -> Node -> Bool #

(/=) :: Node -> Node -> Bool #

Ord Node Source # 
Instance details

Defined in Language.REST.Dot

Methods

compare :: Node -> Node -> Ordering #

(<) :: Node -> Node -> Bool #

(<=) :: Node -> Node -> Bool #

(>) :: Node -> Node -> Bool #

(>=) :: Node -> Node -> Bool #

max :: Node -> Node -> Node #

min :: Node -> Node -> Node #

Hashable Node Source # 
Instance details

Defined in Language.REST.Dot

Methods

hashWithSalt :: Int -> Node -> Int #

hash :: Node -> Int #

type Rep Node Source # 
Instance details

Defined in Language.REST.Dot

type Rep Node = D1 ('MetaData "Node" "Language.REST.Dot" "rest-rewrite-0.4.3-L4CHsmDzf4PMYNf7CqgfF" 'False) (C1 ('MetaCons "Node" 'PrefixI 'True) ((S1 ('MetaSel ('Just "nodeID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 NodeID) :*: S1 ('MetaSel ('Just "label") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "nodeStyle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "labelColor") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))