time-exts-1.0.2: Efficient Timestamps

Safe HaskellNone

Data.Time.Exts.Unix

Contents

Description

Types and functions for Unix timestamps.

Synopsis

Unix Class

Unix Timestamps

Create Unix Timestamps

createUnixDate :: Year -> Month -> Day -> UnixDateSource

Create a Unix date.

 >>> createUnixDate 2013 11 03
 2013-11-03

createUnixDateTime :: Year -> Month -> Day -> Hour -> Minute -> Second -> UnixDateTimeSource

Create a Unix date and time.

 >>> createUnixDateTime 2013 11 03 22 58 29
 2013-11-03 22:58:29

createUnixDateTimeMillis :: Year -> Month -> Day -> Hour -> Minute -> Second -> Millis -> UnixDateTimeMillisSource

Create a Unix date and time with millisecond granularity.

 >>> createUnixDateTimeMillis 2013 11 03 22 59 13 922
 2013-11-03 22:59:13.922

createUnixDateTimeMicros :: Year -> Month -> Day -> Hour -> Minute -> Second -> Micros -> UnixDateTimeMicrosSource

Create a Unix date and time with microsecond granularity.

 >>> createUnixDateTimeMicros 2013 11 03 23 00 13 573166
 2013-11-03 23:00:13.573166

createUnixDateTimeNanos :: Year -> Month -> Day -> Hour -> Minute -> Second -> Nanos -> UnixDateTimeNanosSource

Create a Unix date and time with nanosecond granularity.

 >>> createUnixDateTimeNanos 2013 11 03 23 01 43 946387023
 2013-11-03 23:01:43.946387023

createUnixDateTimePicos :: Year -> Month -> Day -> Hour -> Minute -> Second -> Picos -> UnixDateTimePicosSource

Create a Unix date and time with picosecond granularity.

 >>> createUnixDateTimePicos 2013 11 03 23 04 35 816235224967
 2013-11-03 23:04:35.816235224967

Get Current Unix Timestamps

getCurrentUnixDate :: IO UnixDateSource

Get the current Unix date from the system clock.

 >>> getCurrentUnixDate
 2013-11-03

getCurrentUnixDateTime :: IO UnixDateTimeSource

Get the current Unix date and time from the system clock.

 >>> getCurrentUnixDateTime
 2013-11-03 23:09:38

getCurrentUnixDateTimeMillis :: IO UnixDateTimeMillisSource

Get the current Unix date and time with millisecond granularity from the system clock.

 >>> getCurrentUnixDateTimeMillis
 2013-11-03 23:09:51.986

getCurrentUnixDateTimeMicros :: IO UnixDateTimeMicrosSource

Get the current Unix date and time with microsecond granularity from the system clock.

 >>> getCurrentUnixDateTimeMicros
 2013-11-03 23:10:06.498559

getCurrentUnixDateTimeNanos :: IO UnixDateTimeNanosSource

Get the current Unix date and time with nanosecond granularity from the system clock.

 >>> getCurrentUnixDateTimeNanos
 2013-11-03 23:10:23.697893000

Note that this functions calls gettimeofday() behind the scenes. Therefore, the resultant timestamp will have nanosecond granularity, but only microsecond resolution.

getCurrentUnixDateTimePicos :: IO UnixDateTimePicosSource

Get the current Unix date and time with picosecond granularity from the system clock.

 >>> getCurrentUnixDateTimePicos
 2013-11-03 23:10:44.633032000000

Note that this functions calls gettimeofday() behind the scenes. Therefore, the resultant timestamp will have picosecond granularity, but only microsecond resolution.