Data.Attoparsec.Time

attoparsec-iso8601-1.0.0.0: Parsing of ISO 8601 dates, originally from aeson.

Copyright | (c) 2015-2016 Bryan O'Sullivan
License | BSD3
Maintainer | Bryan O'Sullivan <bos@serpentine.com>
Stability | experimental
Portability | portable
Safe Haskell | None
Language | Haskell2010

Data.Attoparsec.Time

Description

Parsers for parsing dates and times.

Synopsis

- day :: Parser Day
- localTime :: Parser LocalTime
- timeOfDay :: Parser TimeOfDay
- timeZone :: Parser (Maybe TimeZone)
- utcTime :: Parser UTCTime
- zonedTime :: Parser ZonedTime

# Documentation

day :: Parser Day #

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

localTime :: Parser LocalTime #

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.

timeOfDay :: Parser TimeOfDay #

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

timeZone :: Parser (Maybe TimeZone) #

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

utcTime :: Parser UTCTime #

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

zonedTime :: Parser ZonedTime #

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.