Safe Haskell | None |
---|---|
Language | Haskell2010 |
Monad transformer for managing an alarm clock.
- data AlarmT m a
- runAlarmT :: (TimeUnit t, MonadIO m, MonadMask m) => AlarmT m a -> t -> m a
- startAlarm :: MonadIO m => AlarmT m ()
- startAlarm' :: (TimeUnit t, MonadIO m) => t -> AlarmT m ()
- stopAlarm :: MonadIO m => AlarmT m ()
- restartAlarm :: MonadIO m => AlarmT m ()
- restartAlarm' :: (TimeUnit t, MonadIO m) => t -> AlarmT m ()
- alarm :: (MonadIO m, MonadCatch m) => m a -> AlarmT m (Maybe a)
- alarm' :: (TimeUnit t, MonadIO m, MonadCatch m) => t -> m a -> AlarmT m (Maybe a)
Transformer
MonadTrans AlarmT Source | |
Monad m => Monad (AlarmT m) Source | |
Functor m => Functor (AlarmT m) Source | |
MonadFix m => MonadFix (AlarmT m) Source | |
Applicative m => Applicative (AlarmT m) Source | |
MonadThrow m => MonadThrow (AlarmT m) Source | |
MonadCatch m => MonadCatch (AlarmT m) Source | |
MonadMask m => MonadMask (AlarmT m) Source | |
MonadIO m => MonadIO (AlarmT m) Source |
Starting an alarm
startAlarm :: MonadIO m => AlarmT m () Source
startAlarm' :: (TimeUnit t, MonadIO m) => t -> AlarmT m () Source
Stopping an alarm
Restarting an alarm
restartAlarm :: MonadIO m => AlarmT m () Source
restartAlarm' :: (TimeUnit t, MonadIO m) => t -> AlarmT m () Source