{-# LINE 1 "libraries/unix/System/Posix/Time.hsc" #-} {-# LANGUAGE ForeignFunctionInterface #-} {-# LINE 2 "libraries/unix/System/Posix/Time.hsc" #-} {-# LINE 3 "libraries/unix/System/Posix/Time.hsc" #-} {-# LANGUAGE Trustworthy #-} {-# LINE 5 "libraries/unix/System/Posix/Time.hsc" #-} ----------------------------------------------------------------------------- -- | -- Module : System.Posix.Time -- Copyright : (c) The University of Glasgow 2002 -- License : BSD-style (see the file libraries/base/LICENSE) -- -- Maintainer : libraries@haskell.org -- Stability : provisional -- Portability : non-portable (requires POSIX) -- -- POSIX Time support -- ----------------------------------------------------------------------------- module System.Posix.Time ( epochTime, -- ToDo: lots more from sys/time.h -- how much already supported by System.Time? ) where {-# LINE 26 "libraries/unix/System/Posix/Time.hsc" #-} import System.Posix.Types import Foreign import Foreign.C -- ----------------------------------------------------------------------------- -- epochTime -- | @epochTime@ calls @time@ to obtain the number of -- seconds that have elapsed since the epoch (Jan 01 00:00:00 GMT 1970). epochTime :: IO EpochTime epochTime = throwErrnoIfMinus1 "epochTime" (c_time nullPtr) foreign import ccall unsafe "__hsunix_time" c_time :: Ptr CTime -> IO CTime