| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Data.Calendar
Synopsis
- module Data.Timeframe
- type Event n = Layers UTCTime (Sum n)
- event :: Num n => Timeframe -> Event n
- eventSize :: Num n => n -> Timeframe -> Event n
- erlangs :: Real n => Timeframe -> Event n -> Maybe Rational
- newtype Calendar ev n = Calendar {
- getCalendar :: Map ev (Event n)
- singleton :: (Ord ev, Ord n, Num n) => ev -> Event n -> Calendar ev n
- calendar :: (Ord ev, Ord n, Num n) => ev -> Timeframe -> Calendar ev n
- insert :: (Ord ev, Ord n, Num n) => ev -> Event n -> Calendar ev n -> Calendar ev n
- (!?) :: (Ord ev, Ord n, Num n) => Calendar ev n -> ev -> Maybe (Event n)
- (!) :: (Ord ev, Ord n, Num n) => Calendar ev n -> ev -> Event n
- toList :: (Ord ev, Ord n, Num n) => Calendar ev n -> [(ev, [(Interval UTCTime, n)])]
- happeningAt :: (Ord ev, Ord n, Num n) => UTCTime -> Calendar ev n -> [(ev, n)]
- coalesce :: (Ord ev, Ord n, Num n) => Calendar ev n -> Event n
- totalDuration :: (Ord ev, Real n) => ev -> Calendar ev n -> Maybe NominalDiffTime
Documentation
module Data.Timeframe
newtype Calendar ev n Source #
A Calendar is a map from a given event type to durations.
Constructors
| Calendar | |
Fields
| |
Instances
| (Ord ev, Ord n, Num n) => Monoid (Calendar ev n) Source # | |
| (Ord ev, Ord n, Num n) => Semigroup (Calendar ev n) Source # | |
| (Show ev, Show n) => Show (Calendar ev n) Source # | |
| (Eq ev, Eq n) => Eq (Calendar ev n) Source # | |
| (Ord ev, Ord n) => Ord (Calendar ev n) Source # | |
Defined in Data.Calendar 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 # | |
coalesce :: (Ord ev, Ord n, Num n) => Calendar ev n -> Event n Source #
Consider every kind of event the same, and observe the overall Layers.
totalDuration :: (Ord ev, Real n) => ev -> Calendar ev n -> Maybe NominalDiffTime Source #
Calculate the total length of a particular event across all occurrences.