Safe Haskell | Safe-Inferred |
---|
Provides a counter monad.
- newtype CounterT m a = Counter {
- runCounterT :: Int -> m (a, Int)
- class Monad m => MonadCounter m where
- withCounter :: (Monad m, Functor m) => CounterT m a -> m a
Documentation
A counter monad.
Counter | |
|
MonadTrans CounterT | |
MonadError SplErr m0 => MonadError SplErr (CounterT m0) | |
Monad m => Monad (CounterT m) | |
Functor m => Functor (CounterT m) | |
HistoryEnv m0 => HistoryEnv (CounterT m0) | |
ExpanderEnv m0 => ExpanderEnv (CounterT m0) | |
MonadExpand m0 => MonadExpand (CounterT m0) | |
ExtendedPrinter m0 => ExtendedPrinter (CounterT m0) | |
MonadSpawn m0 => MonadSpawn (CounterT m0) | |
MonadPrinter m0 => MonadPrinter (CounterT m0) | |
MonadScanner m0 => MonadScanner (CounterT m0) | |
MonadFinalizer m0 => MonadFinalizer (CounterT m0) | |
MonadClock m0 => MonadClock (CounterT m0) | |
MonadRandom m0 => MonadRandom (CounterT m0) | |
MonadIO m0 => MonadIO (CounterT m0) | |
Monad m => MonadCounter (CounterT m) | |
MonadAtoms m0 => MonadAtoms (CounterT m0) | |
MonadVocab m0 => MonadVocab (CounterT m0) | |
MonadDungeon m0 => MonadDungeon (CounterT m0) | |
MonadPlayer m0 => MonadPlayer (CounterT m0) | |
MonadObject m0 => MonadObject (CounterT m0) | |
MonadRoom m0 => MonadRoom (CounterT m0) |
class Monad m => MonadCounter m whereSource
Typeclass for all counter monads.
Monad m => MonadCounter (CounterT m) | |
MonadCounter m0 => MonadCounter (SplErrT m0) | |
MonadCounter m => MonadCounter (AtomStoreT m) | |
MonadCounter m0 => MonadCounter (VocabT m0) | |
MonadCounter m0 => MonadCounter (DungeonT m0) | |
MonadCounter m0 => MonadCounter (PlayerT m0) | |
MonadCounter m0 => MonadCounter (ObjectT m0) | |
MonadCounter m0 => MonadCounter (RoomT m0) | |
MonadCounter m0 => MonadCounter (StereoBuilderT m0) |
withCounter :: (Monad m, Functor m) => CounterT m a -> m aSource
Run the given function inside a counter