Data.Automaton.Final
newtype Final m a b Source #
Automata in final encoding.
Constructors
Fields
Defined in Data.Automaton.Final
Methods
id :: forall (a :: k). Final m a a #
(.) :: forall (b :: k) (c :: k) (a :: k). Final m b c -> Final m a b -> Final m a c #
arr :: (b -> c) -> Final m b c #
first :: Final m b c -> Final m (b, d) (c, d) #
second :: Final m b c -> Final m (d, b) (d, c) #
(***) :: Final m b c -> Final m b' c' -> Final m (b, b') (c, c') #
(&&&) :: Final m b c -> Final m b c' -> Final m b (c, c') #
empty :: Final m a a0 #
(<|>) :: Final m a a0 -> Final m a a0 -> Final m a a0 #
some :: Final m a a0 -> Final m a [a0] #
many :: Final m a a0 -> Final m a [a0] #
pure :: a0 -> Final m a a0 #
(<*>) :: Final m a (a0 -> b) -> Final m a a0 -> Final m a b #
liftA2 :: (a0 -> b -> c) -> Final m a a0 -> Final m a b -> Final m a c #
(*>) :: Final m a a0 -> Final m a b -> Final m a b #
(<*) :: Final m a a0 -> Final m a b -> Final m a a0 #
fmap :: (a0 -> b) -> Final m a a0 -> Final m a b #
(<$) :: a0 -> Final m a b -> Final m a a0 #
toFinal :: Functor m => Automaton m a b -> Final m a b Source #
fromFinal :: Final m a b -> Automaton m a b Source #