#include "HsConfigure.h"
module Data.Time.Clock.Internal.UniversalTime
(
-- * Universal Time
-- | Time as measured by the Earth.
UniversalTime(..),
) where
import Data.Typeable
#if LANGUAGE_Rank2Types
import Data.Data
#endif
import Control.DeepSeq
-- | The Modified Julian Date is the day with the fraction of the day, measured from UT midnight.
-- It's used to represent UT1, which is time as measured by the earth's rotation, adjusted for various wobbles.
newtype UniversalTime = ModJulianDate {getModJulianDate :: Rational} deriving (Eq,Ord
#if LANGUAGE_DeriveDataTypeable
#if LANGUAGE_Rank2Types
,Data, Typeable
#endif
#endif
)
-- necessary because H98 doesn't have "cunning newtype" derivation
instance NFData UniversalTime where
rnf (ModJulianDate a) = rnf a