Data.Time.Clock

Safe Haskell Safe-Inferred
Language Haskell2010

Description

Types and functions for UTC and UT1

Universal Time

Time as measured by the Earth.

newtype UniversalTime Source

The Modified Julian Date is the day with the fraction of the day, measured from UT midnight. It's used to represent UT1, which is time as measured by the earth's rotation, adjusted for various wobbles.

Constructors

ModJulianDate
Instances
Instances details
Eq UniversalTime
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

Data UniversalTime
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UniversalTime -> c UniversalTime Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UniversalTime Source

toConstr :: UniversalTime -> Constr Source

dataTypeOf :: UniversalTime -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UniversalTime) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UniversalTime) Source

gmapT :: (forall b. Data b => b -> b) -> UniversalTime -> UniversalTime Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UniversalTime -> r Source

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UniversalTime -> r Source

gmapQ :: (forall d. Data d => d -> u) -> UniversalTime -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> UniversalTime -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UniversalTime -> m UniversalTime Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UniversalTime -> m UniversalTime Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UniversalTime -> m UniversalTime Source

Ord UniversalTime
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

Read UniversalTime
Instance details

Defined in Data.Time.Format.Parse

Show UniversalTime
Instance details

Defined in Data.Time.LocalTime.Internal.LocalTime

NFData UniversalTime
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

Methods

rnf :: UniversalTime -> () Source

ParseTime UniversalTime
Instance details

Defined in Data.Time.Format.Parse.Instances

FormatTime UniversalTime
Instance details

Defined in Data.Time.Format.Format.Instances

Methods

formatCharacter :: Bool -> Char -> Maybe (FormatOptions -> UniversalTime -> String) Source

Absolute intervals

data DiffTime Source

This is a length of time, as measured by a clock. Conversion functions will treat it as seconds. It has a precision of 10^-12 s.

Instances
Instances details
Enum DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Eq DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

(==) :: DiffTime -> DiffTime -> Bool

(/=) :: DiffTime -> DiffTime -> Bool

Fractional DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Data DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DiffTime -> c DiffTime Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DiffTime Source

toConstr :: DiffTime -> Constr Source

dataTypeOf :: DiffTime -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DiffTime) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DiffTime) Source

gmapT :: (forall b. Data b => b -> b) -> DiffTime -> DiffTime Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DiffTime -> r Source

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DiffTime -> r Source

gmapQ :: (forall d. Data d => d -> u) -> DiffTime -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> DiffTime -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DiffTime -> m DiffTime Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DiffTime -> m DiffTime Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DiffTime -> m DiffTime Source

Num DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Ord DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Real DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

RealFrac DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Show DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

NFData DiffTime
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

rnf :: DiffTime -> () Source

ParseTime DiffTime
Instance details

Defined in Data.Time.Format.Parse.Instances

FormatTime DiffTime
Instance details

Defined in Data.Time.Format.Format.Instances

Methods

formatCharacter :: Bool -> Char -> Maybe (FormatOptions -> DiffTime -> String) Source

secondsToDiffTime :: Integer -> DiffTime Source

Create a DiffTime which represents an integral number of seconds.

picosecondsToDiffTime :: Integer -> DiffTime Source

Create a DiffTime from a number of picoseconds.

diffTimeToPicoseconds :: DiffTime -> Integer Source

Get the number of picoseconds in a DiffTime.

UTC

UTC is time as measured by a clock, corrected to keep pace with the earth by adding or removing occasional seconds, known as "leap seconds". These corrections are not predictable and are announced with six month's notice. No table of these corrections is provided, as any program compiled with it would become out of date in six months.

If you don't care about leap seconds, use UTCTime and NominalDiffTime for your clock calculations, and you'll be fine.

data UTCTime Source

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
Instances details
Eq UTCTime
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Methods

(==) :: UTCTime -> UTCTime -> Bool

(/=) :: UTCTime -> UTCTime -> Bool

Data UTCTime
Instance details

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 Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UTCTime Source

toConstr :: UTCTime -> Constr Source

dataTypeOf :: UTCTime -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UTCTime) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UTCTime) Source

gmapT :: (forall b. Data b => b -> b) -> UTCTime -> UTCTime Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r Source

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r Source

gmapQ :: (forall d. Data d => d -> u) -> UTCTime -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> UTCTime -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime Source

Ord UTCTime
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Read UTCTime
Instance details

Defined in Data.Time.Format.Parse

Show UTCTime
Instance details

Defined in Data.Time.LocalTime.Internal.ZonedTime

NFData UTCTime
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Methods

rnf :: UTCTime -> () Source

ParseTime UTCTime
Instance details

Defined in Data.Time.Format.Parse.Instances

FormatTime UTCTime
Instance details

Defined in Data.Time.Format.Format.Instances

Methods

formatCharacter :: Bool -> Char -> Maybe (FormatOptions -> UTCTime -> String) Source

ISO8601 UTCTime

yyyy-mm-ddThh:mm:ss[.sss]Z (ISO 8601:2004(E) sec. 4.3.2 extended format)

Instance details

Defined in Data.Time.Format.ISO8601

data NominalDiffTime Source

This is a length of time, as measured by UTC. It has a precision of 10^-12 s.

Conversion functions will treat it as seconds. For example, (0.010 :: NominalDiffTime) corresponds to 10 milliseconds.

It ignores leap-seconds, so it's not necessarily a fixed amount of clock time. For instance, 23:00 UTC + 2 hours of NominalDiffTime = 01:00 UTC (+ 1 day), regardless of whether a leap-second intervened.

Instances
Instances details
Enum NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Eq NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Fractional NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Data NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NominalDiffTime -> c NominalDiffTime Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NominalDiffTime Source

toConstr :: NominalDiffTime -> Constr Source

dataTypeOf :: NominalDiffTime -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NominalDiffTime) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NominalDiffTime) Source

gmapT :: (forall b. Data b => b -> b) -> NominalDiffTime -> NominalDiffTime Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NominalDiffTime -> r Source

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NominalDiffTime -> r Source

gmapQ :: (forall d. Data d => d -> u) -> NominalDiffTime -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> NominalDiffTime -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> NominalDiffTime -> m NominalDiffTime Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NominalDiffTime -> m NominalDiffTime Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NominalDiffTime -> m NominalDiffTime Source

Num NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Ord NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Real NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

RealFrac NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Show NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

NFData NominalDiffTime
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Methods

rnf :: NominalDiffTime -> () Source

ParseTime NominalDiffTime
Instance details

Defined in Data.Time.Format.Parse.Instances

FormatTime NominalDiffTime
Instance details

Defined in Data.Time.Format.Format.Instances

Methods

formatCharacter :: Bool -> Char -> Maybe (FormatOptions -> NominalDiffTime -> String) Source

secondsToNominalDiffTime :: Pico -> NominalDiffTime Source

Create a NominalDiffTime from a number of seconds.

Since: time-1.9.1

nominalDiffTimeToSeconds :: NominalDiffTime -> Pico Source

Get the seconds in a NominalDiffTime.

Since: time-1.9.1

nominalDay :: NominalDiffTime Source

One day in NominalDiffTime.

addUTCTime :: NominalDiffTime -> UTCTime -> UTCTime Source

addUTCTime a b = a + b

diffUTCTime :: UTCTime -> UTCTime -> NominalDiffTime Source

diffUTCTime a b = a - b

getCurrentTime :: IO UTCTime Source

Get the current UTCTime from the system clock.

getTime_resolution :: DiffTime Source

The resolution of getSystemTime, getCurrentTime, getPOSIXTime

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.10.2/docs/html/libraries/time-1.9.3/Data-Time-Clock.html