X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=time-http.git;a=blobdiff_plain;f=Data%2FTime%2FRFC822%2FParsec.hs;h=0c6762e6a679fee91368e20dca4996d4ca1ac2f2;hp=138b9a4390232f5aadf53af2baf8c923b749c31f;hb=269a28dfe8b08af854f7217bbe9c141c9c18f1ec;hpb=c889f6f399e0e3c8bf6327323bbb838e06c9b7f9 diff --git a/Data/Time/RFC822/Parsec.hs b/Data/Time/RFC822/Parsec.hs index 138b9a4..0c6762e 100644 --- a/Data/Time/RFC822/Parsec.hs +++ b/Data/Time/RFC822/Parsec.hs @@ -1,6 +1,9 @@ {-# LANGUAGE FlexibleContexts #-} module Data.Time.RFC822.Parsec - ( parser + ( rfc822DateAndTime + + -- private + , rfc822time ) where @@ -12,8 +15,8 @@ import Data.Time.HTTP.Common import Text.Parsec -parser :: Stream s m Char => ParsecT s u m ZonedTime -parser = dateTime +rfc822DateAndTime :: Stream s m Char => ParsecT s u m ZonedTime +rfc822DateAndTime = dateTime dateTime :: Stream s m Char => ParsecT s u m ZonedTime dateTime = do weekDay <- optionMaybe $ @@ -26,7 +29,7 @@ dateTime = do weekDay <- optionMaybe $ -> return () -- No day in week exists. Just givenWD -> assertWeekDayIsGood givenWD gregDay - (tod, timeZone) <- time + (tod, timeZone) <- rfc822time let lt = LocalTime gregDay tod zt = ZonedTime lt timeZone return zt @@ -40,11 +43,11 @@ date = do day <- read2 _ <- char ' ' assertGregorianDateIsGood (toInteger year) month day -time :: Stream s m Char => ParsecT s u m (TimeOfDay, TimeZone) -time = do tod <- hour - _ <- char ' ' - tz <- zone - return (tod, tz) +rfc822time :: Stream s m Char => ParsecT s u m (TimeOfDay, TimeZone) +rfc822time = do tod <- hour + _ <- char ' ' + tz <- zone + return (tod, tz) hour :: Stream s m Char => ParsecT s u m TimeOfDay hour = do hour <- read2