-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Interpretation functions and simple instruction sets for operational -- -- Please see README.md @package operational-extra @version 0.4 module Control.Monad.Operational.Wait data WaitI a [WaitI] :: Int -> WaitI () wait :: Int -> ProgramT WaitI m () interpretWaitIO :: WaitI a -> IO a interpretWaitIgnore :: Applicative m => WaitI a -> m a module Control.Monad.Operational.Interpret data Around m instr Around :: (forall a. instr a -> (m (), a -> m ())) -> Around m instr [getAround] :: Around m instr -> forall a. instr a -> (m (), a -> m ()) data ApplyInstr m instr ApplyInstr :: (forall a. instr a -> m a) -> ApplyInstr m instr [getApplyInstr] :: ApplyInstr m instr -> forall a. instr a -> m a mapProgramT :: Monad m => (forall b. instr1 b -> instr2 b) -> ProgramT instr1 m a -> ProgramT instr2 m a hoistProgramT :: (Monad m, Monad n) => (forall a. m a -> n a) -> ProgramT instr m a -> ProgramT instr n a interpretWithMonadT :: forall instr m b. Monad m => (forall a. instr a -> m a) -> ProgramT instr m b -> m b interpretAroundMonadT :: forall instr m b. Monad m => (Around m instr) -> (forall a. instr a -> m a) -> ProgramT instr m b -> m b instance GHC.Base.Applicative m => GHC.Base.Monoid (Control.Monad.Operational.Interpret.Around m instr) module Control.Monad.Operational.Now data NowI a [NowI] :: NowI UTCTime interpretNow :: NowI a -> IO a interpretNowMoving :: UTCTime -> NominalDiffTime -> IO (ApplyInstr IO NowI) interpretNowMoving' :: IORef UTCTime -> NominalDiffTime -> ApplyInstr IO NowI interpretNowConstant :: Applicative m => UTCTime -> NowI a -> m a module Control.Monad.Operational.Exception data ExceptionI a [ExceptionI] :: SomeException -> ExceptionI a exception :: SomeException -> ProgramT ExceptionI m a exception' :: Exception e => e -> ProgramT ExceptionI m a toExceptionI :: Exception e => e -> ExceptionI a strExceptionI :: String -> ExceptionI a interpretExceptionIO :: ExceptionI a -> IO a data DescribedException DescribedException :: String -> DescribedException instance GHC.Show.Show Control.Monad.Operational.Exception.DescribedException instance GHC.Exception.Exception Control.Monad.Operational.Exception.DescribedException module Control.Monad.Operational.Console data ConsoleI content a [GetI] :: ConsoleI content content [PutI] :: content -> ConsoleI content () get :: ProgramT (ConsoleI content) m content put :: content -> ProgramT (ConsoleI content) m () getRetry :: Monad m => (content -> content) -> (content -> Maybe a) -> ProgramT (ConsoleI content) m a interpretConsoleStringIO :: ConsoleI String a -> IO a interpretConsoleTextIO :: ConsoleI Text a -> IO a interpretConsoleLazyTextIO :: ConsoleI Text a -> IO a interpretConsoleByteStringIO :: ConsoleI ByteString a -> IO a interpretConsoleLazyByteStringIO :: ConsoleI ByteString a -> IO a module Control.Monad.Operational.Console.Text get :: ProgramT (ConsoleI Text) m Text put :: Text -> ProgramT (ConsoleI Text) m () getRetry :: Monad m => (Text -> Text) -> (Text -> Maybe a) -> ProgramT (ConsoleI Text) m a