HaLeX-1.2.2: HaLeX enables modelling, manipulation and animation of regular languages

Safe HaskellNone
LanguageHaskell98

Language.HaLex.DfaMonad

Documentation

data Dfa m st sy Source #

Constructors

Dfa [sy] [st] st [st] (st -> sy -> m st) 

dfawalk :: Monad m => (st -> sy -> m st) -> st -> [sy] -> m st Source #

dfaaccept' :: (Monad m, Eq st) => Dfa m st sy -> [sy] -> m Bool Source #

dfaaccept :: (Monad m, Eq st) => Dfa m st sy -> [sy] -> m Bool Source #

runDfa :: Eq st => Dfa (State s) st sy -> [sy] -> s -> (Bool, s) Source #

showDfa :: (Monad m, Show st, Show sy) => Dfa m st sy -> m String Source #

showDfaDelta :: (Monad m, Show st, Show sy) => [st] -> [sy] -> (st -> sy -> m st) -> m ([Char] -> [Char]) Source #

showInDot :: (Monad m, Eq st, Show st, Show sy) => Dfa m st sy -> Bool -> m [Char] Source #

showFinalStates' :: Show a => [a] -> [[Char]] Source #

showArrows :: (Monad m, Eq st, Show st, Show sy) => Dfa m st sy -> [st] -> Bool -> m [[Char]] Source #

buildLine :: (Monad m, Eq st, Show st, Show sy) => st -> (st -> sy -> m st) -> [st] -> Bool -> sy -> m [Char] Source #

(<->) :: Eq a => [a] -> [a] -> [a] Source #

xpto :: Monad m => [m [a]] -> m [a] Source #

deadstates :: (Monad m, Eq st) => Dfa m st sy -> m [st] Source #

deadstates' :: (Monad m, Eq st) => [st] -> [sy] -> (st -> sy -> m st) -> m [st] Source #

isStDead :: (Monad m, Eq st) => st -> m [st] -> m Bool Source #

isSyncState :: (Monad m, Eq st) => st -> m [st] -> m Bool Source #

runAccept :: (Num s, Eq st) => Dfa (StateT s Identity) st sy -> [sy] -> (Bool, s) Source #

runAccept_ex4 :: Eq st => Dfa (StateT [Char] Identity) st sy -> [sy] -> (Bool, [Char]) Source #

type Instr = [Code] Source #

data Code Source #

Instances

runAccept_te :: [Char] -> (Bool, ([Char], [Code])) Source #

expo :: (Ord t1, Num t1, Num t) => t -> t1 -> t Source #

runAccept_pr :: [Char] -> (Bool, ([Char], [Int])) Source #