fused-effects-mwc-random-0.1.0.0: High-quality random number generation as an effect.
Safe HaskellNone
LanguageHaskell2010

Control.Carrier.Random.Instances

Description

This module exists to export instances of PrimMonad for the fused-effects ecosystem. These instances are trivially derivable, since all carrier types are monad transformers, but are boring to have to write by hand.

This module is most useful when porting monad transformer stacks that already use mwc-random to the fused-effects ecosystem, or for when you have very fine-grained need to control the behavior or state of a random number generator. For new code, the Random effect will provide a more genial interface.

Orphan instances

PrimMonad m => PrimMonad (ChooseC m) Source # 
Instance details

Associated Types

type PrimState (ChooseC m) #

Methods

primitive :: (State# (PrimState (ChooseC m)) -> (# State# (PrimState (ChooseC m)), a #)) -> ChooseC m a #

PrimMonad m => PrimMonad (CullC m) Source # 
Instance details

Associated Types

type PrimState (CullC m) #

Methods

primitive :: (State# (PrimState (CullC m)) -> (# State# (PrimState (CullC m)), a #)) -> CullC m a #

PrimMonad m => PrimMonad (CutC m) Source # 
Instance details

Associated Types

type PrimState (CutC m) #

Methods

primitive :: (State# (PrimState (CutC m)) -> (# State# (PrimState (CutC m)), a #)) -> CutC m a #

PrimMonad m => PrimMonad (EmptyC m) Source # 
Instance details

Associated Types

type PrimState (EmptyC m) #

Methods

primitive :: (State# (PrimState (EmptyC m)) -> (# State# (PrimState (EmptyC m)), a #)) -> EmptyC m a #

PrimMonad m => PrimMonad (FailC m) Source # 
Instance details

Associated Types

type PrimState (FailC m) #

Methods

primitive :: (State# (PrimState (FailC m)) -> (# State# (PrimState (FailC m)), a #)) -> FailC m a #

PrimMonad m => PrimMonad (FreshC m) Source # 
Instance details

Associated Types

type PrimState (FreshC m) #

Methods

primitive :: (State# (PrimState (FreshC m)) -> (# State# (PrimState (FreshC m)), a #)) -> FreshC m a #

PrimMonad m => PrimMonad (LiftC m) Source # 
Instance details

Associated Types

type PrimState (LiftC m) #

Methods

primitive :: (State# (PrimState (LiftC m)) -> (# State# (PrimState (LiftC m)), a #)) -> LiftC m a #

PrimMonad m => PrimMonad (ThrowC r m) Source # 
Instance details

Associated Types

type PrimState (ThrowC r m) #

Methods

primitive :: (State# (PrimState (ThrowC r m)) -> (# State# (PrimState (ThrowC r m)), a #)) -> ThrowC r m a #

PrimMonad m => PrimMonad (ErrorC r m) Source # 
Instance details

Associated Types

type PrimState (ErrorC r m) #

Methods

primitive :: (State# (PrimState (ErrorC r m)) -> (# State# (PrimState (ErrorC r m)), a #)) -> ErrorC r m a #

PrimMonad m => PrimMonad (ReaderC r m) Source # 
Instance details

Associated Types

type PrimState (ReaderC r m) #

Methods

primitive :: (State# (PrimState (ReaderC r m)) -> (# State# (PrimState (ReaderC r m)), a #)) -> ReaderC r m a #

PrimMonad m => PrimMonad (StateC r m) Source # 
Instance details

Associated Types

type PrimState (StateC r m) #

Methods

primitive :: (State# (PrimState (StateC r m)) -> (# State# (PrimState (StateC r m)), a #)) -> StateC r m a #

PrimMonad m => PrimMonad (WriterC r m) Source # 
Instance details

Associated Types

type PrimState (WriterC r m) #

Methods

primitive :: (State# (PrimState (WriterC r m)) -> (# State# (PrimState (WriterC r m)), a #)) -> WriterC r m a #

PrimMonad m => PrimMonad (StateC r m) Source # 
Instance details

Associated Types

type PrimState (StateC r m) #

Methods

primitive :: (State# (PrimState (StateC r m)) -> (# State# (PrimState (StateC r m)), a #)) -> StateC r m a #