-- |This module represents a configuration of the Turing machine 'TMType.TM'.
module ConfigType where
    
import TMType

-- |This is type of configurations of the Turing machine.
newtype Configs = Configs [[([Square], State, [Square])]]
    deriving (Configs -> Configs -> Bool
(Configs -> Configs -> Bool)
-> (Configs -> Configs -> Bool) -> Eq Configs
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Configs -> Configs -> Bool
$c/= :: Configs -> Configs -> Bool
== :: Configs -> Configs -> Bool
$c== :: Configs -> Configs -> Bool
Eq, Eq Configs
Eq Configs
-> (Configs -> Configs -> Ordering)
-> (Configs -> Configs -> Bool)
-> (Configs -> Configs -> Bool)
-> (Configs -> Configs -> Bool)
-> (Configs -> Configs -> Bool)
-> (Configs -> Configs -> Configs)
-> (Configs -> Configs -> Configs)
-> Ord Configs
Configs -> Configs -> Bool
Configs -> Configs -> Ordering
Configs -> Configs -> Configs
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 :: Configs -> Configs -> Configs
$cmin :: Configs -> Configs -> Configs
max :: Configs -> Configs -> Configs
$cmax :: Configs -> Configs -> Configs
>= :: Configs -> Configs -> Bool
$c>= :: Configs -> Configs -> Bool
> :: Configs -> Configs -> Bool
$c> :: Configs -> Configs -> Bool
<= :: Configs -> Configs -> Bool
$c<= :: Configs -> Configs -> Bool
< :: Configs -> Configs -> Bool
$c< :: Configs -> Configs -> Bool
compare :: Configs -> Configs -> Ordering
$ccompare :: Configs -> Configs -> Ordering
$cp1Ord :: Eq Configs
Ord, Int -> Configs -> ShowS
[Configs] -> ShowS
Configs -> String
(Int -> Configs -> ShowS)
-> (Configs -> String) -> ([Configs] -> ShowS) -> Show Configs
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Configs] -> ShowS
$cshowList :: [Configs] -> ShowS
show :: Configs -> String
$cshow :: Configs -> String
showsPrec :: Int -> Configs -> ShowS
$cshowsPrec :: Int -> Configs -> ShowS
Show)