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