automaton-1.3: Effectful streams and automata in initial encoding
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Automaton.Final

Synopsis

Documentation

newtype Final m a b Source #

Automata in final encoding.

Constructors

Final 

Fields

Instances

Instances details
Monad m => Category (Final m :: Type -> Type -> Type) Source # 
Instance details

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 #

Monad m => Arrow (Final m) Source # 
Instance details

Defined in Data.Automaton.Final

Methods

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') #

Alternative m => Alternative (Final m a) Source # 
Instance details

Defined in Data.Automaton.Final

Methods

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] #

Applicative m => Applicative (Final m a) Source # 
Instance details

Defined in Data.Automaton.Final

Methods

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 #

Functor m => Functor (Final m a) Source # 
Instance details

Defined in Data.Automaton.Final

Methods

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 #