-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Convert FGL graphs to dot (graphviz) files
--   
--   Convert FGL graphs to dot files for easy visualization using the
--   <a>dot</a> tool. Other visualizations might follow but there are no
--   immediate plans (patches welcome).
@package fgl-visualize
@version 0.1.0.1


-- | FGL To Dot is an automatic translation and labeling of FGL graphs (see
--   the <a>Graph</a> class) to graphviz Dot format that can be written out
--   to a file and displayed.
--   
--   <pre>
--   let dot = showDot (fglToDot graph)
--   writeFile "file.dot" dot
--   system("dot -Tpng -ofile.png file.dot")
--   </pre>
module Data.Graph.Inductive.Dot

-- | Generate a Dot graph using the show instances of the node and edge
--   labels as displayed graph labels
fglToDot :: (Show a, Show b, Graph gr) => gr a b -> Dot ()

-- | Generate a Dot graph using the Node and Edge strings as labels
fglToDotString :: Graph gr => gr String String -> Dot ()

-- | Generate a Dot graph without any edge or node labels
fglToDotUnlabeled :: Graph gr => gr a b -> Dot ()

-- | Generate a Dot graph using the provided functions to mutate the node
--   labels, edge labels and list of attributes.
fglToDotGeneric :: Graph gr => gr a b -> (a -> String) -> (b -> String) -> ([(String, String)] -> [(String, String)]) -> Dot ()
showDot :: Dot a -> String
