hourglass-0.2.12: simple performant time related library

LicenseBSD-style
MaintainerNicolas DI PRIMA <nicolas@di-prima.fr>
Safe HaskellNone
LanguageHaskell2010

Time.Compat

Description

Basic Time conversion compatibility.

This module aims to help conversion between the types from the package time to the package hourglass.

Example of use (extracted from file ExampleTimeCompat.hs):

import Data.Hourglass        as H
import Data.Hourglass.Compat as C
import Data.Time             as T

transpose :: T.ZonedTime
          -> H.LocalTime H.DateTime
transpose oldTime =
    H.localTime
        offsetTime
        (H.DateTime newDate timeofday)
  where
    newDate :: H.Date
    newDate = C.dateFromTAIEpoch $ T.toModifiedJulianDay $ T.localDay $ T.zonedTimeToLocalTime oldTime

    timeofday :: H.TimeOfDay
    timeofday = C.diffTimeToTimeOfDay $ T.timeOfDayToTime $ T.localTimeOfDay $ T.zonedTimeToLocalTime oldTime

    offsetTime = H.TimezoneOffset $ fromIntegral $ T.timeZoneMinutes $ T.zonedTimeZone oldTime
Synopsis

Documentation

dateFromPOSIXEpoch Source #

Arguments

:: Integer

number of days since POSIX Epoch

-> Date 

Convert an integer which represent the Number of days (To/From) POSIX Epoch to a Date (POSIX Epoch is 1970-01-01).

dateFromTAIEpoch Source #

Arguments

:: Integer

number of days since TAI Epoch

-> Date 

Convert an integer which represents the Number of days (To/From) TAI Epoch This function allows use of the package time to easily convert the Day into the Hourglass Date representation (TAI Epoch is 1858-11-17).

This function allows user to easily convert a Data.Time.Calendar.Day into Date

import qualified Data.Time.Calendar as T

timeDay :: T.Day

dateFromTAIEpoch $ T.toModifiedJulianDay timeDay

diffTimeToTimeOfDay Source #

Arguments

:: Real t 
=> t

number of seconds of the time of the day

-> TimeOfDay 

Convert of differential of time of a day. (it convers a Data.Time.Clock.DiffTime into a TimeOfDay)

Example with DiffTime type from time:

import qualified Data.Time.Clock as T

difftime :: T.DiffTime

diffTimeToTimeOfDay difftime

Example with the TimeOfDay type from time:

import qualified Data.Time.Clock as T

timeofday :: T.TimeOfDay

diffTimeToTimeOfDay $ T.timeOfDayToTime timeofday