-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Generate recurring dates.
--
-- time-recurrence is a library for generating recurring dates. It is
-- based on the iCalendar spec (RFC 5545). However it makes no attempt to
-- strictly follow the spec.
@package time-recurrence
@version 0.2
module Data.Time.Recurrence
-- | Symbolic week days.
--
-- Note: The first Day of the Week is Monday TODO: Move this to a more
-- general library
data WeekDay
Monday :: WeekDay
Tuesday :: WeekDay
Wednesday :: WeekDay
Thursday :: WeekDay
Friday :: WeekDay
Saturday :: WeekDay
Sunday :: WeekDay
-- | Symbolic months.
--
-- TODO: Move this to a more general library
data Month
January :: Month
February :: Month
March :: Month
April :: Month
May :: Month
June :: Month
July :: Month
August :: Month
September :: Month
October :: Month
November :: Month
December :: Month
-- | Moment data type One per Frequency (Is this the best way to
-- define this?)
data Moment
Secondly :: UTCTime -> Moment
moment :: Moment -> UTCTime
Minutely :: UTCTime -> Moment
moment :: Moment -> UTCTime
Hourly :: UTCTime -> Moment
moment :: Moment -> UTCTime
Daily :: UTCTime -> Moment
moment :: Moment -> UTCTime
Weekly :: UTCTime -> Moment
moment :: Moment -> UTCTime
Monthly :: UTCTime -> Moment
moment :: Moment -> UTCTime
Yearly :: UTCTime -> Moment
moment :: Moment -> UTCTime
-- | Generate recurrences from the startDate, filtered by optional rules
recurBy :: Integer -> [Moment -> [Moment]] -> Moment -> [Moment]
-- | Default interval of 1
recur :: [Moment -> [Moment]] -> Moment -> [Moment]
-- | Construct a UTCTime at midnight
utcGregorian :: Integer -> Int -> Int -> UTCTime
-- | Construct a UTCTime at a time
utcGregorianWithTime :: Integer -> Int -> Int -> Int -> Int -> Int -> UTCTime
byMonth :: [Month] -> Moment -> [Moment]
byWeekNumber :: [Int] -> Moment -> [Moment]
byYearDay :: [Int] -> Moment -> [Moment]
byMonthDay :: [Int] -> Moment -> [Moment]
byDay :: [WeekDay] -> Moment -> [Moment]
instance Show WeekDay
instance Eq WeekDay
instance Ord WeekDay
instance Enum WeekDay
instance Bounded WeekDay
instance Show Month
instance Eq Month
instance Ord Month
instance Bounded Month
instance Show Moment
instance Eq Moment
instance Ord Moment
instance Show Time
instance Enum Month