hermes-json-0.6.1.0: Fast JSON decoding via simdjson C++ bindings
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Hermes.Decoder.Time

Description

ISO 8601 Compatibility

Synopsis

Documentation

day :: Decoder Day Source #

Parse a date of the form [+-]YYYY-MM-DD. The year must contain at least 4 digits, to avoid the Y2K problem: a two-digit year YY may mean YY, 19YY, or 20YY, and we make it an error to prevent the ambiguity. Years from 0000 to 0999 must thus be zero-padded. The year may have more than 4 digits.

localTime :: Decoder LocalTime Source #

Parse a date and time, of the form YYYY-MM-DD HH:MM[:SS[.SSS]]. The space may be replaced with a T. The number of seconds is optional and may be followed by a fractional component.

month :: Decoder Month Source #

Parse a date of the form [+,-]YYYY-MM.

quarter :: Decoder Quarter Source #

Parse a date of the form [+,-]YYYY-QN.

timeOfDay :: Decoder TimeOfDay Source #

Parse a time of the form HH:MM[:SS[.SSS]].

timeZone :: Decoder TimeZone Source #

Parse a time zone, and return Nothing if the offset from UTC is zero. (This makes some speedups possible.)

utcTime :: Decoder UTCTime Source #

Behaves as zonedTime, but converts any time zone offset into a UTC time.

zonedTime :: Decoder ZonedTime Source #

Parse a date with time zone info. Acceptable formats:

YYYY-MM-DD HH:MM Z YYYY-MM-DD HH:MM:SS Z YYYY-MM-DD HH:MM:SS.SSS Z

The first space may instead be a T, and the second space is optional. The Z represents UTC. The Z may be replaced with a time zone offset of the form +0000 or -08:00, where the first two digits are hours, the : is optional and the second two digits (also optional) are minutes.