thyme-0.3.5.5: A faster time library

Safe Haskell | None
Language | Haskell2010

Data.Thyme.Clock.TAI

Synopsis

- data AbsoluteTime
- taiEpoch :: AbsoluteTime
- type LeapSecondTable = Either UTCTime AbsoluteTime -> DiffTime
- utcDayLength :: LeapSecondTable -> Day -> DiffTime
- absoluteTime :: LeapSecondTable -> Iso' UTCTime AbsoluteTime
- parseTAIUTCDAT :: ByteString -> LeapSecondTable

# Documentation

data AbsoluteTime Source #

#### Instances

Instances details

Bounded AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods minBound :: AbsoluteTime maxBound :: AbsoluteTime
Enum AbsoluteTime Source # |

Instance details

Defined in Data.Thyme.Clock.TAI

Methods

succ :: AbsoluteTime -> AbsoluteTime

pred :: AbsoluteTime -> AbsoluteTime

toEnum :: Int -> AbsoluteTime

fromEnum :: AbsoluteTime -> Int

enumFrom :: AbsoluteTime -> [AbsoluteTime]

enumFromThen :: AbsoluteTime -> AbsoluteTime -> [AbsoluteTime]

enumFromTo :: AbsoluteTime -> AbsoluteTime -> [AbsoluteTime]

enumFromThenTo :: AbsoluteTime -> AbsoluteTime -> AbsoluteTime -> [AbsoluteTime]

Eq AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods (==) :: AbsoluteTime -> AbsoluteTime -> Bool (/=) :: AbsoluteTime -> AbsoluteTime -> Bool
Data AbsoluteTime Source # |

Instance details

Defined in Data.Thyme.Clock.TAI

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AbsoluteTime -> c AbsoluteTime

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AbsoluteTime

toConstr :: AbsoluteTime -> Constr

dataTypeOf :: AbsoluteTime -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AbsoluteTime)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AbsoluteTime)

gmapT :: (forall b. Data b => b -> b) -> AbsoluteTime -> AbsoluteTime

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AbsoluteTime -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AbsoluteTime -> r

gmapQ :: (forall d. Data d => d -> u) -> AbsoluteTime -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> AbsoluteTime -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AbsoluteTime -> m AbsoluteTime

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AbsoluteTime -> m AbsoluteTime

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AbsoluteTime -> m AbsoluteTime

Ord AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods compare :: AbsoluteTime -> AbsoluteTime -> Ordering (<) :: AbsoluteTime -> AbsoluteTime -> Bool (<=) :: AbsoluteTime -> AbsoluteTime -> Bool (>) :: AbsoluteTime -> AbsoluteTime -> Bool (>=) :: AbsoluteTime -> AbsoluteTime -> Bool max :: AbsoluteTime -> AbsoluteTime -> AbsoluteTime min :: AbsoluteTime -> AbsoluteTime -> AbsoluteTime
Show AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods showsPrec :: Int -> AbsoluteTime -> ShowS show :: AbsoluteTime -> String showList :: [AbsoluteTime] -> ShowS
Ix AbsoluteTime Source # |

Instance details

Defined in Data.Thyme.Clock.TAI

Methods

range :: (AbsoluteTime, AbsoluteTime) -> [AbsoluteTime]

index :: (AbsoluteTime, AbsoluteTime) -> AbsoluteTime -> Int

unsafeIndex :: (AbsoluteTime, AbsoluteTime) -> AbsoluteTime -> Int

inRange :: (AbsoluteTime, AbsoluteTime) -> AbsoluteTime -> Bool

rangeSize :: (AbsoluteTime, AbsoluteTime) -> Int

unsafeRangeSize :: (AbsoluteTime, AbsoluteTime) -> Int

Generic AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Associated Types type Rep AbsoluteTime :: Type -> Type Methods from :: AbsoluteTime -> Rep AbsoluteTime x to :: Rep AbsoluteTime x -> AbsoluteTime
Arbitrary AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods arbitrary :: Gen AbsoluteTime Source # shrink :: AbsoluteTime -> [AbsoluteTime] Source #
CoArbitrary AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods coarbitrary :: AbsoluteTime -> Gen b -> Gen b Source #
Random AbsoluteTime Source # |

Instance details

Defined in Data.Thyme.Clock.TAI

Methods

randomR :: RandomGen g => (AbsoluteTime, AbsoluteTime) -> g -> (AbsoluteTime, g) Source #

random :: RandomGen g => g -> (AbsoluteTime, g) Source #

randomRs :: RandomGen g => (AbsoluteTime, AbsoluteTime) -> g -> [AbsoluteTime] Source #

randoms :: RandomGen g => g -> [AbsoluteTime] Source #

randomRIO :: (AbsoluteTime, AbsoluteTime) -> IO AbsoluteTime Source #

randomIO :: IO AbsoluteTime Source #

Unbox AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI
AffineSpace AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Associated Types type Diff AbsoluteTime Source # Methods (.-.) :: AbsoluteTime -> AbsoluteTime -> Diff AbsoluteTime Source # (.+^) :: AbsoluteTime -> Diff AbsoluteTime -> AbsoluteTime Source #
NFData AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI Methods rnf :: AbsoluteTime -> ()
ParseTime AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Format Methods buildTime :: TimeParse -> AbsoluteTime Source #
FormatTime AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Format Methods showsTime :: TimeLocale -> AbsoluteTime -> (Char -> ShowS) -> Char -> ShowS Source #
Vector Vector AbsoluteTime Source # |

Instance details

Defined in Data.Thyme.Clock.TAI

Methods

basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) AbsoluteTime -> m (Vector AbsoluteTime) Source #

basicUnsafeThaw :: PrimMonad m => Vector AbsoluteTime -> m (Mutable Vector (PrimState m) AbsoluteTime) Source #

basicLength :: Vector AbsoluteTime -> Int Source #

basicUnsafeSlice :: Int -> Int -> Vector AbsoluteTime -> Vector AbsoluteTime Source #

basicUnsafeIndexM :: Monad m => Vector AbsoluteTime -> Int -> m AbsoluteTime Source #

basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) AbsoluteTime -> Vector AbsoluteTime -> m () Source #

elemseq :: Vector AbsoluteTime -> AbsoluteTime -> b -> b Source #

MVector MVector AbsoluteTime Source # |

Instance details

Defined in Data.Thyme.Clock.TAI

Methods

basicLength :: MVector s AbsoluteTime -> Int Source #

basicUnsafeSlice :: Int -> Int -> MVector s AbsoluteTime -> MVector s AbsoluteTime Source #

basicOverlaps :: MVector s AbsoluteTime -> MVector s AbsoluteTime -> Bool Source #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) AbsoluteTime) Source #

basicInitialize :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> m () Source #

basicUnsafeReplicate :: PrimMonad m => Int -> AbsoluteTime -> m (MVector (PrimState m) AbsoluteTime) Source #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> Int -> m AbsoluteTime Source #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> Int -> AbsoluteTime -> m () Source #

basicClear :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> m () Source #

basicSet :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> AbsoluteTime -> m () Source #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> MVector (PrimState m) AbsoluteTime -> m () Source #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> MVector (PrimState m) AbsoluteTime -> m () Source #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) AbsoluteTime -> Int -> m (MVector (PrimState m) AbsoluteTime) Source #

Thyme AbsoluteTime AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Time.Core Methods thyme :: Iso' AbsoluteTime AbsoluteTime0 Source #
type Rep AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI type Rep AbsoluteTime = D1 ('MetaData "AbsoluteTime" "Data.Thyme.Clock.TAI" "thyme-0.3.5.5-8yk8awDjzEHHYSq2xJCwO3" 'True) (C1 ('MetaCons "AbsoluteTime" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DiffTime)))
newtype Vector AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI newtype Vector AbsoluteTime = V_AbsoluteTime (Vector DiffTime)
type Diff AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI type Diff AbsoluteTime = DiffTime
newtype MVector s AbsoluteTime Source # |
Instance details Defined in Data.Thyme.Clock.TAI newtype MVector s AbsoluteTime = MV_AbsoluteTime (MVector s DiffTime)

taiEpoch :: AbsoluteTime Source #

The epoch of TAI, which is 1858-11-17 00:00:00 TAI.

type LeapSecondTable = Either UTCTime AbsoluteTime -> DiffTime Source #

utcDayLength :: LeapSecondTable -> Day -> DiffTime Source #

absoluteTime :: LeapSecondTable -> Iso' UTCTime AbsoluteTime Source #

parseTAIUTCDAT :: ByteString -> LeapSecondTable Source #

`tai-utc.dat` from http://maia.usno.navy.mil/ser7/tai-utc.dat