interval-patterns-0.2.0.0
Safe HaskellNone
LanguageHaskell2010

Data.Timeframe

Synopsis

Documentation

type Timeframe = Interval UTCTime Source #

type Timeframe = Interval UTCTime

type Event n = Layers UTCTime (Sum n) Source #

An Event is something that happens for a period of time.

type Event n = Layers UTCTime (Sum n)

newtype Calendar ev n Source #

Constructors

Calendar 

Fields

Instances

Instances details
(Eq ev, Eq n) => Eq (Calendar ev n) Source # 
Instance details

Defined in Data.Timeframe

Methods

(==) :: Calendar ev n -> Calendar ev n -> Bool #

(/=) :: Calendar ev n -> Calendar ev n -> Bool #

(Ord ev, Ord n) => Ord (Calendar ev n) Source # 
Instance details

Defined in Data.Timeframe

Methods

compare :: Calendar ev n -> Calendar ev n -> Ordering #

(<) :: Calendar ev n -> Calendar ev n -> Bool #

(<=) :: Calendar ev n -> Calendar ev n -> Bool #

(>) :: Calendar ev n -> Calendar ev n -> Bool #

(>=) :: Calendar ev n -> Calendar ev n -> Bool #

max :: Calendar ev n -> Calendar ev n -> Calendar ev n #

min :: Calendar ev n -> Calendar ev n -> Calendar ev n #

(Show ev, Show n) => Show (Calendar ev n) Source # 
Instance details

Defined in Data.Timeframe

Methods

showsPrec :: Int -> Calendar ev n -> ShowS #

show :: Calendar ev n -> String #

showList :: [Calendar ev n] -> ShowS #

(Ord ev, Num n) => Semigroup (Calendar ev n) Source # 
Instance details

Defined in Data.Timeframe

Methods

(<>) :: Calendar ev n -> Calendar ev n -> Calendar ev n #

sconcat :: NonEmpty (Calendar ev n) -> Calendar ev n #

stimes :: Integral b => b -> Calendar ev n -> Calendar ev n #

(Ord ev, Num n) => Monoid (Calendar ev n) Source # 
Instance details

Defined in Data.Timeframe

Methods

mempty :: Calendar ev n #

mappend :: Calendar ev n -> Calendar ev n -> Calendar ev n #

mconcat :: [Calendar ev n] -> Calendar ev n #

singleton :: (Ord ev, Num n) => ev -> Event n -> Calendar ev n Source #

calendar :: (Ord ev, Num n) => ev -> Timeframe -> Calendar ev n Source #

addEvent :: (Ord ev, Num n) => ev -> Event n -> Calendar ev n -> Calendar ev n Source #

totalDuration :: forall ev n. (Ord ev, Real n) => ev -> Calendar ev n -> Maybe NominalDiffTime Source #