Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Synopsis
- sysixx :: Cast k SystemTime Int
- f32sys :: Cast L Float (Extended SystemTime)
- f64sys :: Cast L Double (Extended SystemTime)
- ratsys :: Cast k Rational (Extended SystemTime)
- f09sys :: Cast k (Extended Nano) (Extended SystemTime)
- diffSystemTime :: SystemTime -> SystemTime -> Double
- getSystemTime :: IO SystemTime
- data SystemTime = MkSystemTime {}
SystemTime
f32sys :: Cast L Float (Extended SystemTime) Source #
The Float
is valued in seconds.
>>>
Data.Connection.Cast.ceiling f32sys (0/0)
PosInf>>>
Data.Connection.Cast.ceiling f32sys pi
Finite (MkSystemTime {systemSeconds = 3, systemNanoseconds = 141592742})
f64sys :: Cast L Double (Extended SystemTime) Source #
The Double
is valued in seconds.
>>>
Data.Connection.Cast.ceiling f64sys (0/0)
PosInf>>>
Data.Connection.Cast.ceiling f64sys pi
Finite (MkSystemTime {systemSeconds = 3, systemNanoseconds = 141592654})
f09sys :: Cast k (Extended Nano) (Extended SystemTime) Source #
The Nano
is valued in seconds (to nanosecond precision).
diffSystemTime :: SystemTime -> SystemTime -> Double Source #
Return the difference between two SystemTime
s in seconds
>>>
diffSystemTime (MkSystemTime 0 0) (MkSystemTime 0 maxBound)
-4.294967295>>>
divMod (maxBound @Word32) (10^9)
(4,294967295)
getSystemTime :: IO SystemTime #
Get the system time, epoch start of 1970 UTC, leap-seconds ignored.
getSystemTime
is typically much faster than getCurrentTime
.
data SystemTime #
SystemTime
is time returned by system clock functions.
Its semantics depends on the clock function, but the epoch is typically the beginning of 1970.
Note that systemNanoseconds
of 1E9 to 2E9-1 can be used to represent leap seconds.