type JulianDayNumber = Integer |
|
type Ordinal = Integer |
|
ordinalOffset :: Ordinal -> Integer |
|
ordinalNameShort :: Ordinal -> String |
|
type PropertyPeriod a = (FunctionSet a, Period a) |
|
|
|
periodLength :: Period a -> Integer |
|
propertyCountInPropertyPeriod :: a -> PropertyPeriod a -> Integer |
|
propertyCountInPeriod :: a -> Period a -> Integer |
|
data DayInPeriod a = MkDayInPeriod (Period a) Ordinal |
|
pickFromPeriod :: a -> DayInPeriod a -> Maybe (Ordinal, DayInPeriod a) |
|
data Calendar a = MkCalendar JulianDayNumber (Period a) |
|
toDayInPeriod :: Calendar a -> JulianDayNumber -> DayInPeriod a |
|
pickFromCalendar :: Calendar a -> a -> JulianDayNumber -> Maybe (Ordinal, DayInPeriod a) |
|
toDateOrdinals :: Calendar a -> [a] -> JulianDayNumber -> Maybe [(a, Ordinal)] |
|
toDateString :: Show a => Calendar a -> [a] -> JulianDayNumber -> Maybe String |