{-# LANGUAGE FlexibleContexts, ScopedTypeVariables, ViewPatterns, ConstraintKinds, TupleSections, RecordWildCards, TypeFamilies #-} module Postdelay.TimeSpec ( pTimeSpec , pTimeZone , spaceConsumer, lexeme ) where import Postdelay.TimeSpec.Utils import Postdelay.TimeSpec.Units import Text.Megaparsec import Control.Monad.IO.Class import Control.Applicative import Data.Semigroup import Data.Monoid (Endo(..)) import Data.Time import Data.Time.Zones pTimeSpec :: StringParser s m => m (Endo LocalTime) pTimeSpec = empty pTimeZone :: (StringParser s m, MonadIO m) => m (Either TimeZone TZ) pTimeZone = empty