event-monad-0.0.0.2: src/Control/Monad/Event/Classes.hs-boot
{-
- ``Control/Monad/Event/Classes''
- (c) 2008 Cook, J. MR SSD, Inc.
-}
{-# LANGUAGE
MultiParamTypeClasses,
FunctionalDependencies,
KindSignatures
#-}
module Control.Monad.Event.Classes where
import Control.Monad.Event.Internal.EventID
class MonadTime (m :: * -> *) t | m -> t
class MonadEvent (m :: * -> *) e | e -> m
class (MonadEvent m e, MonadTime m t) => ScheduleEvent m t e | m -> t, e -> m
where
scheduleEventIn :: t -> e -> m EventID
doNext :: e -> m ()