@@ -1,3 +1,4 @@
1module Data.Time.LocalTime.Short
2module Data.Time.LocalTime.Short
2 ( ShortZonedTime
3 ( ShortZonedTime
3 , shortZonedTime
4 , shortZonedTime
@@ -17,21 +18,25 @@ module Data.Time.LocalTime.Short
18import Control.DeepSeq (NFData)
19import Control.DeepSeq (NFData)
19import Control.Lens
20import Control.Lens
20−import Control.Lens.Missing
21import Control.Monad.State
21import Control.Monad.State
22import Data.Aeson
22import Data.Aeson
23import Data.Binary (Binary)
23import Data.Binary (Binary)
24import Data.Coerce
24import Data.Coerce
25import Data.Ord (comparing)
25import Data.Ord (comparing)
26−import qualified Data.Time as T
26+import Data.Time as T
27import Data.Time.Fmt
27import Data.Time.Fmt
28−import Data.Time.Format
29import Data.Time.LocalTime.Instances ()
28import Data.Time.LocalTime.Instances ()
29+import Data.Time.Utils
30import GHC.Generics (Generic)
30import GHC.Generics (Generic)
31import Test.QuickCheck (Arbitrary)
31import Test.QuickCheck (Arbitrary)
32import qualified Test.QuickCheck as QC
32import qualified Test.QuickCheck as QC
33import Test.QuickCheck.Instances ()
33import Test.QuickCheck.Instances ()
35+#if MIN_VERSION_time(1,9,0)
37+import Data.Time.Format.Internal
36-- | @ZonedTime@ where seconds = 0.
41-- | @ZonedTime@ where seconds = 0.
37-- The constructor is not exported to maintain the invariant.
42-- The constructor is not exported to maintain the invariant.
@@ -63,6 +68,9 @@ shortZonedTime = coerce . clipZonedTime
64instance ParseTime ShortZonedTime where
69instance ParseTime ShortZonedTime where
65 buildTime tl ps = shortZonedTime <$> buildTime tl ps
70 buildTime tl ps = shortZonedTime <$> buildTime tl ps
71+#if MIN_VERSION_time(1,9,0)
72+ parseTimeSpecifier _ = parseTimeSpecifier (Proxy @T.ZonedTime)
67instance Show ShortZonedTime where
75instance Show ShortZonedTime where
68 -- Display as a string.
76 -- Display as a string.
@@ -100,6 +108,10 @@ shortLocalTime = coerce . clipLocalTime
101instance ParseTime ShortLocalTime where
109instance ParseTime ShortLocalTime where
102 buildTime tl ps = shortLocalTime <$> buildTime tl ps
110 buildTime tl ps = shortLocalTime <$> buildTime tl ps
111+#if MIN_VERSION_time(1,9,0)
112+ parseTimeSpecifier _ = parseTimeSpecifier (Proxy @T.LocalTime)
104type FmtShortZonedTime fmt = FmtTime fmt ShortZonedTime
116type FmtShortZonedTime fmt = FmtTime fmt ShortZonedTime