'parse' should assume EOF after w3cDateTime.
[time-w3c.git] / Data / Time / W3C / Parser.hs
1 module Data.Time.W3C.Parser
2     ( parse
3     )
4     where
5
6 import qualified Text.Parsec as P
7
8 import Data.Convertible
9 import Data.Time.W3C.Parser.Parsec
10 import Data.Time.W3C.Types
11
12 parse :: Convertible W3CDateTime t => String -> Maybe t
13 parse src = case P.parse p "" src of
14               Right w3c -> Just (convert w3c)
15               Left  _   -> Nothing
16     where
17       p = do w3c <- w3cDateTime
18              _   <- P.eof
19              return w3c