haskell / 9 / libraries / time-1.12.2 / data-time-clock.html

Data.Time.Clock

Safe Haskell Safe
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

Instances
Instances details
Data UniversalTime Source
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

Read UniversalTime Source
Instance details

Defined in Data.Time.Format.Parse

Show UniversalTime Source
Instance details

Defined in Data.Time.LocalTime.Internal.LocalTime

NFData UniversalTime Source
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

Methods

rnf :: UniversalTime -> () Source

Eq UniversalTime Source
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

Ord UniversalTime Source
Instance details

Defined in Data.Time.Clock.Internal.UniversalTime

FormatTime UniversalTime Source
Instance details

Defined in Data.Time.Format.Format.Instances

ParseTime UniversalTime Source
Instance details

Defined in Data.Time.Format.Parse.Instances

Absolute intervals

data DiffTime Source

This is a length of time, as measured by a clock. Conversion functions such as fromInteger and realToFrac will treat it as seconds. For example, (0.010 :: DiffTime) corresponds to 10 milliseconds.

It has a precision of one picosecond (= 10^-12 s). Enumeration functions will treat it as picoseconds.

Instances
Instances details
Data DiffTime Source
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

Enum DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Num DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Read DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Fractional DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Real DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

RealFrac DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Show DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

NFData DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

rnf :: DiffTime -> () Source

Eq DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

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

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

Ord DiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.DiffTime

FormatTime DiffTime Source
Instance details

Defined in Data.Time.Format.Format.Instances

ParseTime DiffTime Source
Instance details

Defined in Data.Time.Format.Parse.Instances

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
Data UTCTime Source
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

Read UTCTime Source
Instance details

Defined in Data.Time.Format.Parse

Show UTCTime Source
Instance details

Defined in Data.Time.LocalTime.Internal.ZonedTime

NFData UTCTime Source
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Methods

rnf :: UTCTime -> () Source

Eq UTCTime Source
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Methods

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

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

Ord UTCTime Source
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

FormatTime UTCTime Source
Instance details

Defined in Data.Time.Format.Format.Instances

ISO8601 UTCTime Source

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

ParseTime UTCTime Source
Instance details

Defined in Data.Time.Format.Parse.Instances

data NominalDiffTime Source

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

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

It has a precision of one picosecond (= 10^-12 s). Enumeration functions will treat it as picoseconds.

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
Data NominalDiffTime Source
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

Enum NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Num NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Read NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Fractional NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Real NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

RealFrac NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Show NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

NFData NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Methods

rnf :: NominalDiffTime -> () Source

Eq NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Ord NominalDiffTime Source
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

FormatTime NominalDiffTime Source
Instance details

Defined in Data.Time.Format.Format.Instances

ParseTime NominalDiffTime Source
Instance details

Defined in Data.Time.Format.Parse.Instances

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. On UNIX systems this uses clock_getres, which may be wrong on WSL2.

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