import qualified Text.Parsec as P
+import Data.Convertible
import Data.Time.W3C.Parser.Parsec
import Data.Time.W3C.Types
-parse :: String -> Maybe W3CDateTime
-parse src
- = case P.parse w3cDateTime "" src of
- Right w3c -> Just w3c
- Left _ -> Nothing
+parse :: Convertible W3CDateTime t => String -> Maybe t
+parse src = case P.parse p "" src of
+ Right w3c -> Just (convert w3c)
+ Left _ -> Nothing
+ where
+ p = do w3c <- w3cDateTime
+ _ <- P.eof
+ return w3c
\ No newline at end of file