rhine-0.1.1.0: Functional Reactive Programming with type-level clocks

Safe HaskellNone
LanguageHaskell2010

FRP.Rhine.TimeDomain

Synopsis

Documentation

class TimeDomain td where Source #

A time domain is an affine space representing a notion of time, such as real time, simulated time, steps, or a completely different notion.

Minimal complete definition

diffTime

Associated Types

type Diff td Source #

Methods

diffTime :: td -> td -> Diff td Source #

Instances

TimeDomain Double Source # 

Associated Types

type Diff Double :: * Source #

TimeDomain Float Source # 

Associated Types

type Diff Float :: * Source #

TimeDomain Integer Source # 

Associated Types

type Diff Integer :: * Source #

TimeDomain () Source # 

Associated Types

type Diff () :: * Source #

Methods

diffTime :: () -> () -> Diff () Source #

TimeDomain UTCTime Source # 

Associated Types

type Diff UTCTime :: * Source #

Num a => TimeDomain (NumTimeDomain a) Source # 

Associated Types

type Diff (NumTimeDomain a) :: * Source #

data UTCTime :: * #

This is the simplest representation of UTC. It consists of the day number, and a time offset from midnight. Note that if a day has a leap second added to it, it will have 86401 seconds.

Instances

Eq UTCTime 

Methods

(==) :: UTCTime -> UTCTime -> Bool #

(/=) :: UTCTime -> UTCTime -> Bool #

Data UTCTime 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UTCTime -> c UTCTime #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UTCTime #

toConstr :: UTCTime -> Constr #

dataTypeOf :: UTCTime -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c UTCTime) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UTCTime) #

gmapT :: (forall b. Data b => b -> b) -> UTCTime -> UTCTime #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r #

gmapQ :: (forall d. Data d => d -> u) -> UTCTime -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UTCTime -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime #

Ord UTCTime 
NFData UTCTime 

Methods

rnf :: UTCTime -> () #

ParseTime UTCTime 
TimeDomain UTCTime Source # 

Associated Types

type Diff UTCTime :: * Source #

type Diff UTCTime Source #