summaryrefslogtreecommitdiff
path: root/lib/Postdelay/TimeSpec.hs
blob: 5c41180bb74d7c4e9380867ae7b2fc2f102e8aee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{-# 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