chalmers-lava2000-1.6.1: Hardware description EDSL

Safe HaskellNone
LanguageHaskell98

Lava.MyST

Documentation

data ST s a Source #

Instances

Monad (ST s) Source # 

Methods

(>>=) :: ST s a -> (a -> ST s b) -> ST s b #

(>>) :: ST s a -> ST s b -> ST s b #

return :: a -> ST s a #

fail :: String -> ST s a #

Functor (ST s) Source # 

Methods

fmap :: (a -> b) -> ST s a -> ST s b #

(<$) :: a -> ST s b -> ST s a #

Applicative (ST s) Source # 

Methods

pure :: a -> ST s a #

(<*>) :: ST s (a -> b) -> ST s a -> ST s b #

(*>) :: ST s a -> ST s b -> ST s b #

(<*) :: ST s a -> ST s b -> ST s a #

data STRef s a Source #

Instances

Eq (STRef s a) Source # 

Methods

(==) :: STRef s a -> STRef s a -> Bool #

(/=) :: STRef s a -> STRef s a -> Bool #

newSTRef :: a -> ST s (STRef s a) Source #

readSTRef :: STRef s a -> ST s a Source #

writeSTRef :: STRef s a -> a -> ST s () Source #

runST :: (forall s. ST s a) -> a Source #

fixST :: (a -> ST s a) -> ST s a Source #

unsafeIOtoST :: IO a -> ST s a Source #