Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Synopsis
- data Format t
- formatShowM :: Format t -> t -> Maybe String
- formatShow :: Format t -> t -> String
- formatReadP :: Format t -> ReadP t
- formatParseM :: MonadFail m => Format t -> String -> m t
- class ISO8601 t where
- iso8601Format :: Format t
- iso8601Show :: ISO8601 t => t -> String
- iso8601ParseM :: (MonadFail m, ISO8601 t) => String -> m t
- data FormatExtension
- formatReadPExtension :: (FormatExtension -> Format t) -> ReadP t
- parseFormatExtension :: MonadFail m => (FormatExtension -> Format t) -> String -> m t
- calendarFormat :: FormatExtension -> Format Day
- yearMonthFormat :: Format (Integer, Int)
- yearFormat :: Format Integer
- centuryFormat :: Format Integer
- expandedCalendarFormat :: Int -> FormatExtension -> Format Day
- expandedYearMonthFormat :: Int -> Format (Integer, Int)
- expandedYearFormat :: Int -> Format Integer
- expandedCenturyFormat :: Int -> Format Integer
- ordinalDateFormat :: FormatExtension -> Format Day
- expandedOrdinalDateFormat :: Int -> FormatExtension -> Format Day
- weekDateFormat :: FormatExtension -> Format Day
- yearWeekFormat :: FormatExtension -> Format (Integer, Int)
- expandedWeekDateFormat :: Int -> FormatExtension -> Format Day
- expandedYearWeekFormat :: Int -> FormatExtension -> Format (Integer, Int)
- timeOfDayFormat :: FormatExtension -> Format TimeOfDay
- hourMinuteFormat :: FormatExtension -> Format TimeOfDay
- hourFormat :: Format TimeOfDay
- withTimeDesignator :: Format t -> Format t
- withUTCDesignator :: Format t -> Format t
- timeOffsetFormat :: FormatExtension -> Format TimeZone
- timeOfDayAndOffsetFormat :: FormatExtension -> Format (TimeOfDay, TimeZone)
- localTimeFormat :: Format Day -> Format TimeOfDay -> Format LocalTime
- zonedTimeFormat :: Format Day -> Format TimeOfDay -> FormatExtension -> Format ZonedTime
- utcTimeFormat :: Format Day -> Format TimeOfDay -> Format UTCTime
- dayAndTimeFormat :: Format Day -> Format time -> Format (Day, time)
- timeAndOffsetFormat :: Format t -> FormatExtension -> Format (t, TimeZone)
- durationDaysFormat :: Format CalendarDiffDays
- durationTimeFormat :: Format CalendarDiffTime
- alternativeDurationDaysFormat :: FormatExtension -> Format CalendarDiffDays
- alternativeDurationTimeFormat :: FormatExtension -> Format CalendarDiffTime
- intervalFormat :: Format a -> Format b -> Format (a, b)
- recurringIntervalFormat :: Format a -> Format b -> Format (Int, a, b)
- isoMakeTimeOfDayValid :: Int -> Int -> Pico -> Maybe TimeOfDay
Format
formatShow :: Format t -> t -> String Source #
Show a value in the format, or error if unrepresentable
formatReadP :: Format t -> ReadP t Source #
Read a value in the format
Common formats
class ISO8601 t where Source #
iso8601Format :: Format t Source #
The most commonly used ISO 8601 format for this type.
Instances
ISO8601 CalendarDiffDays Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 Day Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 UTCTime Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 CalendarDiffTime Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 LocalTime Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 TimeOfDay Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 TimeZone Source # |
|
Defined in Data.Time.Format.ISO8601 | |
ISO8601 ZonedTime Source # |
|
Defined in Data.Time.Format.ISO8601 |
iso8601Show :: ISO8601 t => t -> String Source #
Show in the most commonly used ISO 8601 format.
iso8601ParseM :: (MonadFail m, ISO8601 t) => String -> m t Source #
Parse the most commonly used ISO 8601 format.
All formats
data FormatExtension Source #
ExtendedFormat | Use hyphens and colons. [ISO 8601:2004(E) sec. 2.3.4] |
BasicFormat | Omit hyphens and colons. "The basic format should be avoided in plain text." [ISO 8601:2004(E) sec. 2.3.3] |
formatReadPExtension :: (FormatExtension -> Format t) -> ReadP t Source #
Read a value in either extended or basic format
parseFormatExtension :: MonadFail m => (FormatExtension -> Format t) -> String -> m t Source #
Parse a value in either extended or basic format
calendarFormat :: FormatExtension -> Format Day Source #
yyyy-mm-dd
(extended), yyyymmdd
(basic) [ISO 8601:2004(E) sec. 4.1.2.2]
yearFormat :: Format Integer Source #
yyyy
[ISO 8601:2004(E) sec. 4.1.2.3(b)]
centuryFormat :: Format Integer Source #
yy
[ISO 8601:2004(E) sec. 4.1.2.3(c)]
expandedCalendarFormat :: Int -> FormatExtension -> Format Day Source #
±yyyyy-mm-dd
(extended), ±yyyyymmdd
(basic) [ISO 8601:2004(E) sec. 4.1.2.4(a)]
expandedYearMonthFormat :: Int -> Format (Integer, Int) Source #
±yyyyy-mm
[ISO 8601:2004(E) sec. 4.1.2.4(b)]
ordinalDateFormat :: FormatExtension -> Format Day Source #
yyyy-ddd
(extended), yyyyddd
(basic) [ISO 8601:2004(E) sec. 4.1.3.2]
expandedOrdinalDateFormat :: Int -> FormatExtension -> Format Day Source #
yyyyy-ddd
(extended), yyyyyddd
(basic) [ISO 8601:2004(E) sec. 4.1.3.3]
weekDateFormat :: FormatExtension -> Format Day Source #
yyyy-Www-D
(extended), yyyyWwwd
(basic) [ISO 8601:2004(E) sec. 4.1.4.2]
yearWeekFormat :: FormatExtension -> Format (Integer, Int) Source #
yyyy-Www
(extended), yyyyWww
(basic) [ISO 8601:2004(E) sec. 4.1.4.3]
expandedWeekDateFormat :: Int -> FormatExtension -> Format Day Source #
±yyyyy-Www-d
(extended), ±yyyyyWwwD
(basic) [ISO 8601:2004(E) sec. 4.1.4.4]
expandedYearWeekFormat :: Int -> FormatExtension -> Format (Integer, Int) Source #
±yyyyy-Www
(extended), ±yyyyyWww
(basic) [ISO 8601:2004(E) sec. 4.1.4.4]
timeOfDayFormat :: FormatExtension -> Format TimeOfDay Source #
hh:mm:ss[.ss]
(extended), hhmmss[.ss]
(basic) [ISO 8601:2004(E) sec. 4.2.2.2, 4.2.2.4(a)]
hourMinuteFormat :: FormatExtension -> Format TimeOfDay Source #
hh:mm[.mm]
(extended), hhmm[.mm]
(basic) [ISO 8601:2004(E) sec. 4.2.2.3(a), 4.2.2.4(b)]
hourFormat :: Format TimeOfDay Source #
hh[.hh]
[ISO 8601:2004(E) sec. 4.2.2.3(b), 4.2.2.4(c)]
withTimeDesignator :: Format t -> Format t Source #
Tx
[ISO 8601:2004(E) sec. 4.2.2.5]
withUTCDesignator :: Format t -> Format t Source #
xZ
[ISO 8601:2004(E) sec. 4.2.4]
timeOffsetFormat :: FormatExtension -> Format TimeZone Source #
±hh:mm
(extended), ±hhmm
(basic) [ISO 8601:2004(E) sec. 4.2.5.1]
timeOfDayAndOffsetFormat :: FormatExtension -> Format (TimeOfDay, TimeZone) Source #
hh:mm:ss±hh:mm
(extended), hhmmss±hhmm
(basic) [ISO 8601:2004(E) sec. 4.2.5.2]
localTimeFormat :: Format Day -> Format TimeOfDay -> Format LocalTime Source #
xTy
[ISO 8601:2004(E) sec. 4.3.2]
zonedTimeFormat :: Format Day -> Format TimeOfDay -> FormatExtension -> Format ZonedTime Source #
xTy±hh:mm
(extended), xTy±hhmm
(basic) [ISO 8601:2004(E) sec. 4.3.2]
utcTimeFormat :: Format Day -> Format TimeOfDay -> Format UTCTime Source #
xTyZ
[ISO 8601:2004(E) sec. 4.3.2]
dayAndTimeFormat :: Format Day -> Format time -> Format (Day, time) Source #
xTy
[ISO 8601:2004(E) sec. 4.3.3]
timeAndOffsetFormat :: Format t -> FormatExtension -> Format (t, TimeZone) Source #
x±hh:mm
(extended), x±hhmm
(basic) [ISO 8601:2004(E) sec. 4.3.3]
durationDaysFormat :: Format CalendarDiffDays Source #
PyyYmmMddD
[ISO 8601:2004(E) sec. 4.4.3.2]
durationTimeFormat :: Format CalendarDiffTime Source #
PyyYmmMddDThhHmmMss[.ss]S
[ISO 8601:2004(E) sec. 4.4.3.2]
alternativeDurationDaysFormat :: FormatExtension -> Format CalendarDiffDays Source #
Pyyyy-mm-dd
(extended), Pyyyymmdd
(basic) [ISO 8601:2004(E) sec. 4.4.3.3]
alternativeDurationTimeFormat :: FormatExtension -> Format CalendarDiffTime Source #
Pyyyy-mm-ddThh:mm:ss
(extended), PyyyymmddThhmmss
(basic) [ISO 8601:2004(E) sec. 4.4.3.3]
recurringIntervalFormat :: Format a -> Format b -> Format (Int, a, b) Source #
Rn/x/y
[ISO 8601:2004(E) sec. 4.5]
Other
isoMakeTimeOfDayValid :: Int -> Int -> Pico -> Maybe TimeOfDay Source #
Like makeTimeOfDayValid
, but accepts 24 0 0
per ISO 8601:2004(E) sec. 4.2.3
Since: 1.12
Orphan instances
Read CalendarDiffDays Source # | |
Read CalendarDiffTime Source # | |
Show CalendarDiffDays Source # | |
showsPrec :: Int -> CalendarDiffDays -> ShowS # show :: CalendarDiffDays -> String # showList :: [CalendarDiffDays] -> ShowS # | |
Show CalendarDiffTime Source # | |
showsPrec :: Int -> CalendarDiffTime -> ShowS # show :: CalendarDiffTime -> String # showList :: [CalendarDiffTime] -> ShowS # |