Network.HTTP.Date

http-date-0.0.6.1: HTTP Date parser/formatter

Safe Haskell | None
Language | Haskell98

Network.HTTP.Date

Contents

- Utility functions

Description

Fast parser and formatter for HTTP Date.

Synopsis

- data HTTPDate
- hdYear :: HTTPDate -> Int
- hdMonth :: HTTPDate -> Int
- hdDay :: HTTPDate -> Int
- hdHour :: HTTPDate -> Int
- hdMinute :: HTTPDate -> Int
- hdSecond :: HTTPDate -> Int
- hdWkday :: HTTPDate -> Int
- defaultHTTPDate :: HTTPDate
- parseHTTPDate :: ByteString -> Maybe HTTPDate
- formatHTTPDate :: HTTPDate -> ByteString
- epochTimeToHTTPDate :: EpochTime -> HTTPDate

# Documentation

data HTTPDate #

Data structure for HTTP Date. This value should be specified with `defaultHTTPDate` and its field labels.

Instances

Eq HTTPDate # |
Methods (==) :: HTTPDate -> HTTPDate -> Bool # (/=) :: HTTPDate -> HTTPDate -> Bool #
Ord HTTPDate # |
Methods compare :: HTTPDate -> HTTPDate -> Ordering # (<) :: HTTPDate -> HTTPDate -> Bool # (<=) :: HTTPDate -> HTTPDate -> Bool # (>) :: HTTPDate -> HTTPDate -> Bool # (>=) :: HTTPDate -> HTTPDate -> Bool # max :: HTTPDate -> HTTPDate -> HTTPDate # min :: HTTPDate -> HTTPDate -> HTTPDate #
Show HTTPDate # |
Methods showsPrec :: Int -> HTTPDate -> ShowS # show :: HTTPDate -> String # showList :: [HTTPDate] -> ShowS #

hdYear :: HTTPDate -> Int #

hdMonth :: HTTPDate -> Int #

hdDay :: HTTPDate -> Int #

hdHour :: HTTPDate -> Int #

hdMinute :: HTTPDate -> Int #

hdSecond :: HTTPDate -> Int #

hdWkday :: HTTPDate -> Int #

defaultHTTPDate :: HTTPDate #

A default value for `HTTPDate`.

# Utility functions

parseHTTPDate :: ByteString -> Maybe HTTPDate #

Parsing HTTP Date. Currently only RFC1123 style is supported.

    >>> parseHTTPDate "Tue, 15 Nov 1994 08:12:31 GMT"
    Just (HTTPDate {hdYear = 1994, hdMonth = 11, hdDay = 15, hdHour = 8, hdMinute = 12, hdSecond = 31, hdWkday = 2})

formatHTTPDate :: HTTPDate -> ByteString #

Generating HTTP Date in RFC1123 style.

    >>> formatHTTPDate defaultHTTPDate {hdYear = 1994, hdMonth = 11, hdDay = 15, hdHour = 8, hdMinute = 12, hdSecond = 31, hdWkday = 2}
    "Tue, 15 Nov 1994 08:12:31 GMT"

epochTimeToHTTPDate :: EpochTime -> HTTPDate #

Translating `EpochTime` to `HTTPDate`.