Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
Synopsis
- module Test.IOSpec.Fork
- module Test.IOSpec.MVar
- module Test.IOSpec.IORef
- module Test.IOSpec.STM
- module Test.IOSpec.Teletype
- class (Functor sub, Functor sup) => sub :<: sup
- data (f :+: g) x
- data IOSpec f a
- inject :: g :<: f => g (IOSpec f a) -> IOSpec f a
- module Test.IOSpec.VirtualMachine
The specifications
module Test.IOSpec.Fork
module Test.IOSpec.MVar
module Test.IOSpec.IORef
module Test.IOSpec.STM
module Test.IOSpec.Teletype
The basic types
class (Functor sub, Functor sup) => sub :<: sup Source #
The (:<:) class
inj
data (f :+: g) x infixr 5 Source #
The coproduct of functors
Instances
A value of type IOSpec
f
a
is either a pure value of type a
or some effect, determined by f
. Crucially, IOSpec
f
is a
monad, provided f
is a functor.
The virtual machine
module Test.IOSpec.VirtualMachine