| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Yesod.Test.Internal.SIO
Description
The SIO type is used by Yesod.Test to provide exception-safe
environment between requests and assertions.
This module is internal. Breaking changes to this module will not be reflected in the major version of this package.
Since: 1.6.13
Documentation
State + IO
Since: 1.6.0
Constructors
| SIO (ReaderT (IORef s) IO a) |
Instances
| MonadState s (SIO s) Source # | |
| MonadIO (SIO s) Source # | |
Defined in Yesod.Test.Internal.SIO | |
| Applicative (SIO s) Source # | |
| Functor (SIO s) Source # | |
| Monad (SIO s) Source # | |
| MonadThrow (SIO s) Source # | |
Defined in Yesod.Test.Internal.SIO | |
| MonadUnliftIO (SIO s) Source # | |
Defined in Yesod.Test.Internal.SIO Methods withRunInIO :: ((forall a. SIO s a -> IO a) -> IO b) -> SIO s b | |
| YesodDispatch site => Example (SIO (YesodExampleData site) a) | |
Defined in Yesod.Test Associated Types type Arg (SIO (YesodExampleData site) a) Methods evaluateExample :: SIO (YesodExampleData site) a -> Params -> (ActionWith (Arg (SIO (YesodExampleData site) a)) -> IO ()) -> ProgressCallback -> IO Result | |
| type Arg (SIO (YesodExampleData site) a) | |
Defined in Yesod.Test | |
putSIO :: s -> SIO s () Source #
Put the given s into the SIO state for later retrieval.
Equivalent to put, but the value is evaluated to weak head normal
form.
Since: 1.6.13
modifySIO :: (s -> s) -> SIO s () Source #
Modify the underlying s state.
This is strict in the function used, and is equivalent to modify'.
Since: 1.6.13
evalSIO :: SIO s a -> s -> IO a Source #
Run an SIO action with the intial state s provided, returning the
result, and discard the final state.
Since: 1.6.13