Cabal-3.2.1.0: A framework for packaging Haskell software
Safe Haskell None
Language Haskell2010

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

Instances details
Bounded ModTime Source #
Instance details

Defined in Distribution.Compat.Time

Eq ModTime Source #
Instance details

Defined in Distribution.Compat.Time

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

Binary ModTime Source #
Instance details

Defined in Distribution.Compat.Time

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-3w1fQQbNnuQ5xlFGwVXcPy" ' 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.

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.