1 {-# LANGUAGE FlexibleContexts #-}
2 module Data.Time.Asctime.Parsec
10 import Data.Time.Calendar.WeekDate
11 import Data.Time.HTTP.Common
14 -- |This is a parsec parser for ANSI C's asctime() format.
15 asctime :: Stream s m Char => ParsecT s u m LocalTime
16 asctime = do weekDay <- shortWeekDayNameP
18 month <- shortMonthNameP
30 gregDay <- assertGregorianDateIsGood year month day
31 _ <- assertWeekDayIsGood weekDay gregDay
32 tod <- assertTimeOfDayIsGood hour minute second
34 return (LocalTime gregDay tod)