random-fu-0.3.0.1: Random number generation
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Random.RVar

Synopsis

Documentation

runRVar :: StatefulGen g m => RVar a -> g -> m a #

data RVarT (m :: Type -> Type) a #

Instances

Instances details
MonadTrans RVarT 
Instance details

Defined in Data.RVar

Methods

lift :: Monad m => m a -> RVarT m a Source #

MonadPrompt Prim (RVarT n) 
Instance details

Defined in Data.RVar

Methods

prompt :: Prim a -> RVarT n a

StatefulGen RGen (RVarT m) 
Instance details

Defined in Data.RVar

MonadIO m => MonadIO (RVarT m) 
Instance details

Defined in Data.RVar

Methods

liftIO :: IO a -> RVarT m a Source #

Applicative (RVarT n) 
Instance details

Defined in Data.RVar

Methods

pure :: a -> RVarT n a Source #

(<*>) :: RVarT n (a -> b) -> RVarT n a -> RVarT n b Source #

liftA2 :: (a -> b -> c) -> RVarT n a -> RVarT n b -> RVarT n c Source #

(*>) :: RVarT n a -> RVarT n b -> RVarT n b Source #

(<*) :: RVarT n a -> RVarT n b -> RVarT n a Source #

Functor (RVarT n) 
Instance details

Defined in Data.RVar

Methods

fmap :: (a -> b) -> RVarT n a -> RVarT n b Source #

(<$) :: a -> RVarT n b -> RVarT n a Source #

Monad (RVarT n) 
Instance details

Defined in Data.RVar

Methods

(>>=) :: RVarT n a -> (a -> RVarT n b) -> RVarT n b Source #

(>>) :: RVarT n a -> RVarT n b -> RVarT n b Source #

return :: a -> RVarT n a Source #

Lift m n => Sampleable (RVarT m) n t Source # 
Instance details

Defined in Data.Random.Sample

Methods

sampleFrom :: StatefulGen g n => g -> RVarT m t -> n t Source #

Lift (RVarT Identity) (RVarT m) Source # 
Instance details

Defined in Data.Random.Lift

Methods

lift :: RVarT Identity a -> RVarT m a Source #

runRVarT :: (Lift n m, StatefulGen g m) => RVarT n a -> g -> m a Source #

Like runRVarTWith, but using an implicit lifting (provided by the Lift class)

runRVarTWith :: forall m n g a. StatefulGen g m => (forall t. n t -> m t) -> RVarT n a -> g -> m a #

data RGen #

Constructors

RGen 

uniformRVarT :: forall a (m :: Type -> Type). Uniform a => RVarT m a #

uniformRangeRVarT :: forall a (m :: Type -> Type). UniformRange a => (a, a) -> RVarT m a #