| Copyright | (c) 2014 Vincent Hanquez <vincent@snarc.org> |
|---|---|
| License | BSD-style |
| Stability | experimental |
| Portability | unknown |
| Safe Haskell | None |
| Language | Haskell2010 |
Time.Epoch
Description
Types, type classes and functions related to epochs.
Synopsis
- newtype ElapsedSince epoch = ElapsedSince Seconds
- data ElapsedSinceP epoch = ElapsedSinceP !(ElapsedSince epoch) !NanoSeconds
- class Epoch epoch where
- epochName :: epoch -> String
- epochDiffToUnix :: epoch -> Seconds
- data UnixEpoch = UnixEpoch
- data WindowsEpoch = WindowsEpoch
- data MJDEpoch = MJDEpoch
Elapsed time from epochs
newtype ElapsedSince epoch Source #
A type representing the number of non-leap seconds that have elapsed since the specified epoch.
Constructors
| ElapsedSince Seconds |
Instances
| NFData (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods rnf :: ElapsedSince epoch -> () | |
| Data epoch => Data (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ElapsedSince epoch -> c (ElapsedSince epoch) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ElapsedSince epoch) toConstr :: ElapsedSince epoch -> Constr dataTypeOf :: ElapsedSince epoch -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (ElapsedSince epoch)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (ElapsedSince epoch)) gmapT :: (forall b. Data b => b -> b) -> ElapsedSince epoch -> ElapsedSince epoch gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ElapsedSince epoch -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ElapsedSince epoch -> r gmapQ :: (forall d. Data d => d -> u) -> ElapsedSince epoch -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ElapsedSince epoch -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ElapsedSince epoch -> m (ElapsedSince epoch) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ElapsedSince epoch -> m (ElapsedSince epoch) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ElapsedSince epoch -> m (ElapsedSince epoch) | |
| Num (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods (+) :: ElapsedSince epoch -> ElapsedSince epoch -> ElapsedSince epoch (-) :: ElapsedSince epoch -> ElapsedSince epoch -> ElapsedSince epoch (*) :: ElapsedSince epoch -> ElapsedSince epoch -> ElapsedSince epoch negate :: ElapsedSince epoch -> ElapsedSince epoch abs :: ElapsedSince epoch -> ElapsedSince epoch signum :: ElapsedSince epoch -> ElapsedSince epoch fromInteger :: Integer -> ElapsedSince epoch | |
| Read (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods readsPrec :: Int -> ReadS (ElapsedSince epoch) readList :: ReadS [ElapsedSince epoch] readPrec :: ReadPrec (ElapsedSince epoch) readListPrec :: ReadPrec [ElapsedSince epoch] | |
| Show (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods showsPrec :: Int -> ElapsedSince epoch -> ShowS show :: ElapsedSince epoch -> String showList :: [ElapsedSince epoch] -> ShowS | |
| Eq (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods (==) :: ElapsedSince epoch -> ElapsedSince epoch -> Bool (/=) :: ElapsedSince epoch -> ElapsedSince epoch -> Bool | |
| Ord (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods compare :: ElapsedSince epoch -> ElapsedSince epoch -> Ordering (<) :: ElapsedSince epoch -> ElapsedSince epoch -> Bool (<=) :: ElapsedSince epoch -> ElapsedSince epoch -> Bool (>) :: ElapsedSince epoch -> ElapsedSince epoch -> Bool (>=) :: ElapsedSince epoch -> ElapsedSince epoch -> Bool max :: ElapsedSince epoch -> ElapsedSince epoch -> ElapsedSince epoch min :: ElapsedSince epoch -> ElapsedSince epoch -> ElapsedSince epoch | |
| Epoch epoch => Time (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods timeFromElapsedP :: ElapsedP -> ElapsedSince epoch Source # timeFromElapsed :: Elapsed -> ElapsedSince epoch Source # | |
| Epoch epoch => Timeable (ElapsedSince epoch) Source # | |
Defined in Time.Epoch Methods timeGetElapsedP :: ElapsedSince epoch -> ElapsedP Source # timeGetElapsed :: ElapsedSince epoch -> Elapsed Source # timeGetNanoSeconds :: ElapsedSince epoch -> NanoSeconds Source # | |
data ElapsedSinceP epoch Source #
A type representing the number of non-leap seconds and nanoseconds that have elapsed since the specified epoch. The 'P' is short for 'precise'.
Constructors
| ElapsedSinceP !(ElapsedSince epoch) !NanoSeconds |
Instances
| NFData (ElapsedSinceP e) Source # | |
Defined in Time.Epoch Methods rnf :: ElapsedSinceP e -> () | |
| Data epoch => Data (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ElapsedSinceP epoch -> c (ElapsedSinceP epoch) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ElapsedSinceP epoch) toConstr :: ElapsedSinceP epoch -> Constr dataTypeOf :: ElapsedSinceP epoch -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (ElapsedSinceP epoch)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (ElapsedSinceP epoch)) gmapT :: (forall b. Data b => b -> b) -> ElapsedSinceP epoch -> ElapsedSinceP epoch gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ElapsedSinceP epoch -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ElapsedSinceP epoch -> r gmapQ :: (forall d. Data d => d -> u) -> ElapsedSinceP epoch -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ElapsedSinceP epoch -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ElapsedSinceP epoch -> m (ElapsedSinceP epoch) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ElapsedSinceP epoch -> m (ElapsedSinceP epoch) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ElapsedSinceP epoch -> m (ElapsedSinceP epoch) | |
| Num (ElapsedSinceP e) Source # | |
Defined in Time.Epoch Methods (+) :: ElapsedSinceP e -> ElapsedSinceP e -> ElapsedSinceP e (-) :: ElapsedSinceP e -> ElapsedSinceP e -> ElapsedSinceP e (*) :: ElapsedSinceP e -> ElapsedSinceP e -> ElapsedSinceP e negate :: ElapsedSinceP e -> ElapsedSinceP e abs :: ElapsedSinceP e -> ElapsedSinceP e signum :: ElapsedSinceP e -> ElapsedSinceP e fromInteger :: Integer -> ElapsedSinceP e | |
| Read (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods readsPrec :: Int -> ReadS (ElapsedSinceP epoch) readList :: ReadS [ElapsedSinceP epoch] readPrec :: ReadPrec (ElapsedSinceP epoch) readListPrec :: ReadPrec [ElapsedSinceP epoch] | |
| Real (ElapsedSinceP e) Source # | |
Defined in Time.Epoch Methods toRational :: ElapsedSinceP e -> Rational | |
| Show (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods showsPrec :: Int -> ElapsedSinceP epoch -> ShowS show :: ElapsedSinceP epoch -> String showList :: [ElapsedSinceP epoch] -> ShowS | |
| Eq (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods (==) :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Bool (/=) :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Bool | |
| Ord (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods compare :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Ordering (<) :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Bool (<=) :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Bool (>) :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Bool (>=) :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> Bool max :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> ElapsedSinceP epoch min :: ElapsedSinceP epoch -> ElapsedSinceP epoch -> ElapsedSinceP epoch | |
| Epoch epoch => Time (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods timeFromElapsedP :: ElapsedP -> ElapsedSinceP epoch Source # timeFromElapsed :: Elapsed -> ElapsedSinceP epoch Source # | |
| Epoch epoch => Timeable (ElapsedSinceP epoch) Source # | |
Defined in Time.Epoch Methods timeGetElapsedP :: ElapsedSinceP epoch -> ElapsedP Source # timeGetElapsed :: ElapsedSinceP epoch -> Elapsed Source # timeGetNanoSeconds :: ElapsedSinceP epoch -> NanoSeconds Source # | |
Epoch
class Epoch epoch where Source #
A type class promising epoch-related functionality. (Epochs, in this context, are fixed points in time.)
Methods
epochName :: epoch -> String Source #
The name of the epoch.
epochDiffToUnix :: epoch -> Seconds Source #
The epoch relative to the Unix epoch (1970-01-01 00:00:00 UTC), in non-leap seconds. A negative number means the epoch is before the Unix epoch.
Instances
| Epoch MJDEpoch Source # | |
Defined in Time.Epoch | |
| Epoch UnixEpoch Source # | |
Defined in Time.Epoch | |
| Epoch WindowsEpoch Source # | |
Defined in Time.Epoch Methods epochName :: WindowsEpoch -> String Source # | |
Commonly-encountered epochs
A type representing the Unix epoch (the point in time represented by 1970-01-01 00:00:00 UTC).
Constructors
| UnixEpoch |
data WindowsEpoch Source #
A type representing the Windows epoch, (the point in time represented by 1601-01-01 00:00:00 UTC).
Constructors
| WindowsEpoch |
Instances
| Show WindowsEpoch Source # | |
Defined in Time.Epoch Methods showsPrec :: Int -> WindowsEpoch -> ShowS show :: WindowsEpoch -> String showList :: [WindowsEpoch] -> ShowS | |
| Eq WindowsEpoch Source # | |
Defined in Time.Epoch | |
| Epoch WindowsEpoch Source # | |
Defined in Time.Epoch Methods epochName :: WindowsEpoch -> String Source # | |