module Control.Monad.Trans.Schedule.Base (
baseLiftClock
, getClockNow
, runTasks
, runScheduleT
) where
import Control.Monad.Base (MonadBase(liftBase))
import Control.Monad.Base.Compose ()
import Control.Monad.Trans.Schedule.Internal
baseLiftClock :: MonadBase c m => LiftClock c m
baseLiftClock = liftBase
getClockNow :: MonadBase c m => ScheduleT c m Tick
getClockNow = getClockNow' baseLiftClock
runTasks :: MonadBase c m => ScheduleT c m ()
runTasks = runTasks' baseLiftClock
runScheduleT :: MonadBase c m => ScheduleT c m a -> Clock c -> m (a, TaskState c m)
runScheduleT = runScheduleT' baseLiftClock