Cabal-3.2.1.0: A framework for packaging Haskell software

Safe HaskellNone
LanguageHaskell2010

Distribution.Compat.Time

Synopsis

Documentation

newtype ModTime Source #

An opaque type representing a file's modification time, represented internally as a 64-bit unsigned integer in the Windows UTC format.

Constructors

ModTime Word64 
Instances
Bounded ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Eq ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Methods

(==) :: ModTime -> ModTime -> Bool #

(/=) :: ModTime -> ModTime -> Bool #

Ord ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Read ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Show ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Generic ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Associated Types

type Rep ModTime :: Type -> Type #

Methods

from :: ModTime -> Rep ModTime x #

to :: Rep ModTime x -> ModTime #

Binary ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

Methods

put :: ModTime -> Put #

get :: Get ModTime #

putList :: [ModTime] -> Put #

Structured ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

type Rep ModTime Source # 
Instance details

Defined in Distribution.Compat.Time

type Rep ModTime = D1 (MetaData "ModTime" "Distribution.Compat.Time" "Cabal-3.2.1.0-64u7C0qYIFUDCJD6V8fmPr" True) (C1 (MetaCons "ModTime" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Word64)))

getModTime :: FilePath -> NoCallStackIO ModTime Source #

Return modification time of the given file. Works around the low clock resolution problem that getModificationTime has on GHC < 7.8.

This is a modified version of the code originally written for Shake by Neil Mitchell. See module Development.Shake.FileInfo.

getFileAge :: FilePath -> NoCallStackIO Double Source #

Return age of given file in days.

getCurTime :: NoCallStackIO ModTime Source #

Return the current time as ModTime.

posixSecondsToModTime :: Int64 -> ModTime Source #

Convert POSIX seconds to ModTime.

calibrateMtimeChangeDelay :: IO (Int, Int) Source #

Based on code written by Neil Mitchell for Shake. See sleepFileTimeCalibrate in Type. Returns a pair of microsecond values: first, the maximum delay seen, and the recommended delay to use before testing for file modification change. The returned delay is never smaller than 10 ms, but never larger than 1 second.