{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_HADDOCK hide #-}
module Data.GraphViz.Commands.Available where
import Data.GraphViz.Parsing
import Data.GraphViz.Printing
data GraphvizCommand = Dot
| Neato
| TwoPi
| Circo
| Fdp
| Sfdp
| Osage
| Patchwork
deriving (GraphvizCommand -> GraphvizCommand -> Bool
(GraphvizCommand -> GraphvizCommand -> Bool)
-> (GraphvizCommand -> GraphvizCommand -> Bool)
-> Eq GraphvizCommand
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GraphvizCommand -> GraphvizCommand -> Bool
$c/= :: GraphvizCommand -> GraphvizCommand -> Bool
== :: GraphvizCommand -> GraphvizCommand -> Bool
$c== :: GraphvizCommand -> GraphvizCommand -> Bool
Eq, Eq GraphvizCommand
Eq GraphvizCommand =>
(GraphvizCommand -> GraphvizCommand -> Ordering)
-> (GraphvizCommand -> GraphvizCommand -> Bool)
-> (GraphvizCommand -> GraphvizCommand -> Bool)
-> (GraphvizCommand -> GraphvizCommand -> Bool)
-> (GraphvizCommand -> GraphvizCommand -> Bool)
-> (GraphvizCommand -> GraphvizCommand -> GraphvizCommand)
-> (GraphvizCommand -> GraphvizCommand -> GraphvizCommand)
-> Ord GraphvizCommand
GraphvizCommand -> GraphvizCommand -> Bool
GraphvizCommand -> GraphvizCommand -> Ordering
GraphvizCommand -> GraphvizCommand -> GraphvizCommand
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: GraphvizCommand -> GraphvizCommand -> GraphvizCommand
$cmin :: GraphvizCommand -> GraphvizCommand -> GraphvizCommand
max :: GraphvizCommand -> GraphvizCommand -> GraphvizCommand
$cmax :: GraphvizCommand -> GraphvizCommand -> GraphvizCommand
>= :: GraphvizCommand -> GraphvizCommand -> Bool
$c>= :: GraphvizCommand -> GraphvizCommand -> Bool
> :: GraphvizCommand -> GraphvizCommand -> Bool
$c> :: GraphvizCommand -> GraphvizCommand -> Bool
<= :: GraphvizCommand -> GraphvizCommand -> Bool
$c<= :: GraphvizCommand -> GraphvizCommand -> Bool
< :: GraphvizCommand -> GraphvizCommand -> Bool
$c< :: GraphvizCommand -> GraphvizCommand -> Bool
compare :: GraphvizCommand -> GraphvizCommand -> Ordering
$ccompare :: GraphvizCommand -> GraphvizCommand -> Ordering
$cp1Ord :: Eq GraphvizCommand
Ord, GraphvizCommand
GraphvizCommand -> GraphvizCommand -> Bounded GraphvizCommand
forall a. a -> a -> Bounded a
maxBound :: GraphvizCommand
$cmaxBound :: GraphvizCommand
minBound :: GraphvizCommand
$cminBound :: GraphvizCommand
Bounded, Int -> GraphvizCommand
GraphvizCommand -> Int
GraphvizCommand -> [GraphvizCommand]
GraphvizCommand -> GraphvizCommand
GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
GraphvizCommand
-> GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
(GraphvizCommand -> GraphvizCommand)
-> (GraphvizCommand -> GraphvizCommand)
-> (Int -> GraphvizCommand)
-> (GraphvizCommand -> Int)
-> (GraphvizCommand -> [GraphvizCommand])
-> (GraphvizCommand -> GraphvizCommand -> [GraphvizCommand])
-> (GraphvizCommand -> GraphvizCommand -> [GraphvizCommand])
-> (GraphvizCommand
-> GraphvizCommand -> GraphvizCommand -> [GraphvizCommand])
-> Enum GraphvizCommand
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: GraphvizCommand
-> GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
$cenumFromThenTo :: GraphvizCommand
-> GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
enumFromTo :: GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
$cenumFromTo :: GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
enumFromThen :: GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
$cenumFromThen :: GraphvizCommand -> GraphvizCommand -> [GraphvizCommand]
enumFrom :: GraphvizCommand -> [GraphvizCommand]
$cenumFrom :: GraphvizCommand -> [GraphvizCommand]
fromEnum :: GraphvizCommand -> Int
$cfromEnum :: GraphvizCommand -> Int
toEnum :: Int -> GraphvizCommand
$ctoEnum :: Int -> GraphvizCommand
pred :: GraphvizCommand -> GraphvizCommand
$cpred :: GraphvizCommand -> GraphvizCommand
succ :: GraphvizCommand -> GraphvizCommand
$csucc :: GraphvizCommand -> GraphvizCommand
Enum, Int -> GraphvizCommand -> ShowS
[GraphvizCommand] -> ShowS
GraphvizCommand -> String
(Int -> GraphvizCommand -> ShowS)
-> (GraphvizCommand -> String)
-> ([GraphvizCommand] -> ShowS)
-> Show GraphvizCommand
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GraphvizCommand] -> ShowS
$cshowList :: [GraphvizCommand] -> ShowS
show :: GraphvizCommand -> String
$cshow :: GraphvizCommand -> String
showsPrec :: Int -> GraphvizCommand -> ShowS
$cshowsPrec :: Int -> GraphvizCommand -> ShowS
Show, ReadPrec [GraphvizCommand]
ReadPrec GraphvizCommand
Int -> ReadS GraphvizCommand
ReadS [GraphvizCommand]
(Int -> ReadS GraphvizCommand)
-> ReadS [GraphvizCommand]
-> ReadPrec GraphvizCommand
-> ReadPrec [GraphvizCommand]
-> Read GraphvizCommand
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GraphvizCommand]
$creadListPrec :: ReadPrec [GraphvizCommand]
readPrec :: ReadPrec GraphvizCommand
$creadPrec :: ReadPrec GraphvizCommand
readList :: ReadS [GraphvizCommand]
$creadList :: ReadS [GraphvizCommand]
readsPrec :: Int -> ReadS GraphvizCommand
$creadsPrec :: Int -> ReadS GraphvizCommand
Read)
instance PrintDot GraphvizCommand where
unqtDot :: GraphvizCommand -> DotCode
unqtDot Dot = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "dot"
unqtDot Neato = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "neato"
unqtDot TwoPi = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "twopi"
unqtDot Circo = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "circo"
unqtDot Fdp = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "fdp"
unqtDot Sfdp = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "sfdp"
unqtDot Osage = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "osage"
unqtDot Patchwork = Text -> DotCode
forall (m :: * -> *). Applicative m => Text -> m Doc
text "patchwork"
instance ParseDot GraphvizCommand where
parseUnqt :: Parse GraphvizCommand
parseUnqt = [(String, GraphvizCommand)] -> Parse GraphvizCommand
forall a. [(String, a)] -> Parse a
stringValue [ ("dot", GraphvizCommand
Dot)
, ("neato", GraphvizCommand
Neato)
, ("twopi", GraphvizCommand
TwoPi)
, ("circo", GraphvizCommand
Circo)
, ("fdp", GraphvizCommand
Fdp)
, ("sfdp", GraphvizCommand
Sfdp)
, ("osage", GraphvizCommand
Osage)
, ("patchwork", GraphvizCommand
Patchwork)
]