Safe Haskell | Trustworthy |
---|---|
Language | Haskell2010 |
Synopsis
- type Year = Integer
- type WeekOfYear = Int
- data DayOfWeek
- dayOfWeek :: Day -> DayOfWeek
- data FirstWeekType
- toWeekCalendar :: FirstWeekType -> DayOfWeek -> Day -> ( Year , WeekOfYear , DayOfWeek )
- fromWeekCalendar :: FirstWeekType -> DayOfWeek -> Year -> WeekOfYear -> DayOfWeek -> Day
- fromWeekCalendarValid :: FirstWeekType -> DayOfWeek -> Year -> WeekOfYear -> DayOfWeek -> Maybe Day
- toWeekDate :: Day -> ( Integer , Int , Int )
- fromWeekDate :: Integer -> Int -> Int -> Day
- pattern YearWeekDay :: Year -> WeekOfYear -> DayOfWeek -> Day
- fromWeekDateValid :: Integer -> Int -> Int -> Maybe Day
- showWeekDate :: Day -> String
Documentation
type WeekOfYear = Int Source #
Week of year, by various reckonings, generally in range 0-53 depending on reckoning
Instances
Enum DayOfWeek |
"Circular", so for example
|
Defined in Data.Time.Calendar.Week succ :: DayOfWeek -> DayOfWeek Source # pred :: DayOfWeek -> DayOfWeek Source # toEnum :: Int -> DayOfWeek Source # fromEnum :: DayOfWeek -> Int Source # enumFrom :: DayOfWeek -> [ DayOfWeek ] Source # enumFromThen :: DayOfWeek -> DayOfWeek -> [ DayOfWeek ] Source # enumFromTo :: DayOfWeek -> DayOfWeek -> [ DayOfWeek ] Source # enumFromThenTo :: DayOfWeek -> DayOfWeek -> DayOfWeek -> [ DayOfWeek ] Source # |
|
Eq DayOfWeek | |
Data DayOfWeek Source # | |
Defined in Data.Time.Orphans gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> DayOfWeek -> c DayOfWeek Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c DayOfWeek Source # toConstr :: DayOfWeek -> Constr Source # dataTypeOf :: DayOfWeek -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c DayOfWeek ) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c DayOfWeek ) Source # gmapT :: ( forall b. Data b => b -> b) -> DayOfWeek -> DayOfWeek Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> DayOfWeek -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> DayOfWeek -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> DayOfWeek -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> DayOfWeek -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> DayOfWeek -> m DayOfWeek Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> DayOfWeek -> m DayOfWeek Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> DayOfWeek -> m DayOfWeek Source # |
|
Ord DayOfWeek Source # | |
Defined in Data.Time.Orphans |
|
Read DayOfWeek | |
Show DayOfWeek | |
NFData DayOfWeek Source # | |
Defined in Data.Time.Orphans |
|
Hashable DayOfWeek Source # | |
data FirstWeekType Source #
FirstWholeWeek |
first week is the first whole week of the year |
FirstMostWeek |
first week is the first week with four days in the year |
Instances
Eq FirstWeekType Source # | |
Defined in Data.Time.Calendar.WeekDate.Compat (==) :: FirstWeekType -> FirstWeekType -> Bool Source # (/=) :: FirstWeekType -> FirstWeekType -> Bool Source # |
:: FirstWeekType |
how to reckon the first week of the year |
-> DayOfWeek |
the first day of each week |
-> Day | |
-> ( Year , WeekOfYear , DayOfWeek ) |
:: FirstWeekType |
how to reckon the first week of the year |
-> DayOfWeek |
the first day of each week |
-> Year | |
-> WeekOfYear | |
-> DayOfWeek | |
-> Day |
Convert from the given kind of "week calendar". Invalid week and day values will be clipped to the correct range.
fromWeekCalendarValid Source #
:: FirstWeekType |
how to reckon the first week of the year |
-> DayOfWeek |
the first day of each week |
-> Year | |
-> WeekOfYear | |
-> DayOfWeek | |
-> Maybe Day |
Convert from the given kind of "week calendar". Invalid week and day values will return Nothing.
ISO 8601 Week Date format
toWeekDate :: Day -> ( Integer , Int , Int ) Source #
Convert to ISO 8601 Week Date format. First element of result is year, second week number (1-53), third day of week (1 for Monday to 7 for Sunday). Note that "Week" years are not quite the same as Gregorian years, as the first day of the year is always a Monday. The first week of a year is the first week to contain at least four days in the corresponding Gregorian year.
fromWeekDate :: Integer -> Int -> Int -> Day Source #
Convert from ISO 8601 Week Date format. First argument is year, second week number (1-52 or 53), third day of week (1 for Monday to 7 for Sunday). Invalid week and day values will be clipped to the correct range.
pattern YearWeekDay :: Year -> WeekOfYear -> DayOfWeek -> Day Source #
Bidirectional abstract constructor for ISO 8601 Week Date format. Invalid week values will be clipped to the correct range.
fromWeekDateValid :: Integer -> Int -> Int -> Maybe Day Source #
Convert from ISO 8601 Week Date format. First argument is year, second week number (1-52 or 53), third day of week (1 for Monday to 7 for Sunday). Invalid week and day values will return Nothing.
showWeekDate :: Day -> String Source #
Show in ISO 8601 Week Date format as yyyy-Www-d (e.g. "2006-W46-3").