polysemy-time-0.4.0.0: Polysemy Effect for Time
Safe HaskellSafe-Inferred
LanguageHaskell2010

Polysemy.Time.Effect.Time

Description

Time effect, Internal

Synopsis

Documentation

data Time (time :: Type) (date :: Type) :: Effect where Source #

The Time effect.

Constructors

Now :: Time t d m t

Produce the current time, possibly relative to what was set with SetTime or SetDate

Today :: Time t d m d

Produce the current date, possibly relative to what was set with SetTime or SetDate

Sleep :: TimeUnit u => u -> Time t d m ()

Suspend the current computation for the specified time span.

SetTime :: t -> Time t d m ()

Set the current time, if the interpreter supports it.

Adjust :: AddTimeUnit t u1 u2 => u1 -> Time t d m ()

Adjust the current time relatively, if the interpreter supports it.

SetDate :: d -> Time t d m ()

Set the current date, if the interpreter supports it.

Instances

Instances details
type DefiningModule Time Source # 
Instance details

Defined in Polysemy.Time.Effect.Time

type DefiningModule Time = "Polysemy.Time.Effect.Time"

now :: forall t d r. Member (Time t d) r => Sem r t Source #

Produce the current time, possibly relative to what was set with SetTime or SetDate

today :: forall t d r. Member (Time t d) r => Sem r d Source #

Produce the current date, possibly relative to what was set with SetTime or SetDate

sleep :: forall t d u r. TimeUnit u => Member (Time t d) r => u -> Sem r () Source #

Suspend the current computation for the specified time span.

setTime :: forall t d r. Member (Time t d) r => t -> Sem r () Source #

Set the current time, if the interpreter supports it.

adjust :: forall t d u1 u2 r. AddTimeUnit t u1 u2 => Member (Time t d) r => u1 -> Sem r () Source #

Adjust the current time relatively, if the interpreter supports it.

setDate :: forall t d r. Member (Time t d) r => d -> Sem r () Source #

Set the current date, if the interpreter supports it.