-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Monad to pull from fake stream-like objects. -- -- See https://github.com/igrep/haskell-fakepull#readme. @package fakepull @version 0.3.0.2 module Test.Pull.Fake.IO type FakeStream payload = IORef [payload] newFakeStream :: MonadIO m => [payload] -> m (FakeStream payload) getFakeStreamContents :: MonadIO m => FakeStream payload -> m [payload] pull :: MonadIO m => FakeStream payload -> m (Maybe payload) module Test.Pull.Fake.Pure newtype PullT payload m a PullT :: StateT [payload] m a -> PullT payload m a [unPullT] :: PullT payload m a -> StateT [payload] m a type PullM payload = PullT payload Identity type MonadPull payload = MonadState [payload] runPullT :: PullT payload m a -> [payload] -> m (a, [payload]) evalPullT :: Functor f => PullT payload f a -> [payload] -> f a execPullT :: Functor f => PullT payload f a -> [payload] -> f [payload] runPullM :: PullM payload a -> [payload] -> (a, [payload]) evalPullM :: PullM payload a -> [payload] -> a execPullM :: PullM payload a -> [payload] -> [payload] pull :: MonadPull payload m => m (Maybe payload) instance Control.Monad.Catch.MonadThrow m => Control.Monad.Catch.MonadThrow (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Catch.MonadMask m => Control.Monad.Catch.MonadMask (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Catch.MonadCatch m => Control.Monad.Catch.MonadCatch (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Error.Class.MonadError e m => Control.Monad.Error.Class.MonadError e (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Cont.Class.MonadCont m => Control.Monad.Cont.Class.MonadCont (Test.Pull.Fake.Pure.PullT payload m) instance (Control.Monad.Reader.Class.MonadReader r m, Control.Monad.Writer.Class.MonadWriter w m) => Control.Monad.RWS.Class.MonadRWS r w [payload] (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Writer.Class.MonadWriter w m => Control.Monad.Writer.Class.MonadWriter w (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Reader.Class.MonadReader r m => Control.Monad.Reader.Class.MonadReader r (Test.Pull.Fake.Pure.PullT payload m) instance GHC.Base.Monad m => Control.Monad.State.Class.MonadState [payload] (Test.Pull.Fake.Pure.PullT payload m) instance GHC.Base.MonadPlus m => GHC.Base.MonadPlus (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Fail.MonadFail m => Control.Monad.Fail.MonadFail (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Fix.MonadFix m => Control.Monad.Fix.MonadFix (Test.Pull.Fake.Pure.PullT payload m) instance GHC.Base.MonadPlus m => GHC.Base.Alternative (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.IO.Class.MonadIO m => Control.Monad.IO.Class.MonadIO (Test.Pull.Fake.Pure.PullT payload m) instance Control.Monad.Trans.Class.MonadTrans (Test.Pull.Fake.Pure.PullT payload) instance GHC.Base.Monad m => GHC.Base.Monad (Test.Pull.Fake.Pure.PullT payload m) instance GHC.Base.Monad m => GHC.Base.Applicative (Test.Pull.Fake.Pure.PullT payload m) instance GHC.Base.Functor m => GHC.Base.Functor (Test.Pull.Fake.Pure.PullT payload m)