Spec-Zone.ru › Haskell 7

Data.Time.Часы

Safe Haskell Safe
Язык Haskell2010

Содержание

  • Всемирное время
  • Абсолютные интервалы
  • UTC

Описание

Типы и функции для UTC и UT1

Всемирное время

Время, измеряемое по Земле.

newtype UniversalTime Источник

Модифицированная юлианская дата — это день с дробной частью дня, измеряемой с полуночи по UT. Она используется для представления UT1, которое является временем, измеряемым по вращению Земли, скорректированным с учётом различных колебаний.

Конструкторы

ModJulianDate

Поля

getModJulianDate :: Rational

Реализации

Eq UniversalTime
Data UniversalTime
Ord UniversalTime
NFData UniversalTime

Абсолютные интервалы

data DiffTime Источник

Это продолжительность времени, измеряемая по часам. Функции преобразования будут рассматривать её как секунды. Точность составляет 10-12 с.

Реализации

Enum DiffTime
Eq DiffTime
Fractional DiffTime
Data DiffTime
Num DiffTime
Ord DiffTime
Real DiffTime
RealFrac DiffTime
Show DiffTime
NFData DiffTime

secondsToDiffTime :: Integer -> DiffTime Источник

Создать DiffTime , представляющую целое число секунд.

picosecondsToDiffTime :: Integer -> DiffTime Источник

Создать DiffTime из числа пикосекунд.

UTC

UTC — время, измеряемое по часам, скорректированное для синхронизации с Землёй путём добавления или удаления периодических секунд, известных как «високосные секунды». Эти корректировки непредсказуемы и объявляются с шестимесячным опережением. Таблица этих корректировок не предоставляется, поскольку любая программа, скомпилированная с ней, устареет через шесть месяцев.

Если вас не интересуют високосные секунды, используйте UTCTime и NominalDiffTime для ваших расчётов времени, и всё будет в порядке.

data UTCTime Источник

Это самое простое представление UTC. Оно состоит из номера дня и смещения времени от полуночи. Обратите внимание, что если к дню добавлена високосная секунда, он будет содержать 86401 секунду.

Конструкторы

UTCTime

Поля

utctDay :: Day

день

utctDayTime :: DiffTime

время с полуночи, 0 <= t < 86401 с (из-за високосных секунд)

Реализации

Eq UTCTime
Data UTCTime
Ord UTCTime
NFData UTCTime
ParseTime UTCTime
FormatTime UTCTime

data NominalDiffTime Источник

Это продолжительность времени, измеряемая по UTC. Функции преобразования будут рассматривать её как секунды. Точность составляет 10-12 с. Она игнорирует високосные секунды, поэтому она не обязательно является фиксированным значением времени по часам. Например, 23:00 UTC + 2 часа NominalDiffTime = 01:00 UTC (+ 1 день), независимо от того, была ли вставлена високосная секунда.

Реализации

Enum NominalDiffTime
Eq NominalDiffTime
Fractional NominalDiffTime
Data NominalDiffTime
Num NominalDiffTime
Ord NominalDiffTime
Real NominalDiffTime
RealFrac NominalDiffTime
Show NominalDiffTime
NFData NominalDiffTime

addUTCTime :: NominalDiffTime -> UTCTime -> UTCTime Источник

addUTCTime a b = a + b

diffUTCTime :: UTCTime -> UTCTime -> NominalDiffTime Источник

diffUTCTime a b = a - b

getCurrentTime :: IO UTCTime Source

Получить текущее время UTC с системных часов.

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API