| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Data.Time.QQ
Contents
Description
This module provides quasi quoters for writing time literals.
First enable the QuasiQuotes language extension, then you will be able to
write the the following:
>>>[utcIso8601| 2048-12-01 |] :: UTCTime2048-12-01 00:00:00 UTC
Unparseable dates will throw errors at compile time.
Zoned time quoters are not provided as the time library doesn't seem to do anything with "%Z".
Synopsis
- utcIso8601 :: QuasiQuoter
- utcIso8601ms :: QuasiQuoter
- timeZone :: QuasiQuoter
- data UTCTime = UTCTime {
- utctDay :: Day
- utctDayTime :: DiffTime
- data TimeZone = TimeZone {}
- utcFormat :: String -> QuasiQuoter
- timeZoneFormat :: String -> QuasiQuoter
ISO8601 UTC time QuasiQuoters
ISO8601 date with seconds and optional "." with more precision
following to a UTCTime.
Do not specify a timezone, the time should be UTC.
>>>[utcIso8601| 2048-12-01 |] :: UTCTime2048-12-01 00:00:00 UTC
ISO8601 date with seconds and optional "." with more precision
following to a UTCTime.
Do not specify a timezone, the time should be UTC.
>>>[utcIso8601ms| 2099-01-01T00:00:00.42324 |]2099-01-01 00:00:00.42324 UTC
TimeZone QuasiQuoters
timeZone :: QuasiQuoter #
Timezones from a reference string, to a TimeZone.
>>>[timeZone| BST |] :: TimeZoneBST
Re-exports
This is the simplest representation of UTC. It consists of the day number, and a time offset from midnight. Note that if a day has a leap second added to it, it will have 86401 seconds.
Constructors
| UTCTime | |
Fields
| |
Instances
| Eq UTCTime | |
| Data UTCTime | |
Defined in Data.Time.Clock.Internal.UTCTime Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UTCTime -> c UTCTime # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UTCTime # toConstr :: UTCTime -> Constr # dataTypeOf :: UTCTime -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UTCTime) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UTCTime) # gmapT :: (forall b. Data b => b -> b) -> UTCTime -> UTCTime # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r # gmapQ :: (forall d. Data d => d -> u) -> UTCTime -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> UTCTime -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime # | |
| Ord UTCTime | |
Defined in Data.Time.Clock.Internal.UTCTime | |
| Lift UTCTime # | |
| NFData UTCTime | |
Defined in Data.Time.Clock.Internal.UTCTime | |
| FormatTime UTCTime | |
Defined in Data.Time.Format Methods formatCharacter :: Char -> Maybe (TimeLocale -> Maybe NumericPadOption -> Maybe Int -> UTCTime -> String) # | |
| ParseTime UTCTime | |
Defined in Data.Time.Format.Parse | |
A TimeZone is a whole number of minutes offset from UTC, together with a name and a "just for summer" flag.
Constructors
| TimeZone | |
Fields
| |
Instances
| Eq TimeZone | |
| Data TimeZone | |
Defined in Data.Time.LocalTime.Internal.TimeZone Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TimeZone -> c TimeZone # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TimeZone # toConstr :: TimeZone -> Constr # dataTypeOf :: TimeZone -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TimeZone) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TimeZone) # gmapT :: (forall b. Data b => b -> b) -> TimeZone -> TimeZone # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TimeZone -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TimeZone -> r # gmapQ :: (forall d. Data d => d -> u) -> TimeZone -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> TimeZone -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> TimeZone -> m TimeZone # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TimeZone -> m TimeZone # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TimeZone -> m TimeZone # | |
| Ord TimeZone | |
Defined in Data.Time.LocalTime.Internal.TimeZone | |
| Show TimeZone | |
| Lift TimeZone # | |
| NFData TimeZone | |
Defined in Data.Time.LocalTime.Internal.TimeZone | |
| FormatTime TimeZone | |
Defined in Data.Time.Format Methods formatCharacter :: Char -> Maybe (TimeLocale -> Maybe NumericPadOption -> Maybe Int -> TimeZone -> String) # | |
| ParseTime TimeZone | |
Defined in Data.Time.Format.Parse | |
Specify your own formats
utcFormat :: String -> QuasiQuoter #
timeZoneFormat :: String -> QuasiQuoter #