-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | This packages tries to compat as much of <tt>time</tt> features as
--   possible.
--   
--   <i>TODO:</i>
--   
--   <ul>
--   <li>Difference type <tt>ParseTime</tt> and <tt>FormatTime</tt>
--   instances are missing.</li>
--   <li>Formatting varies depending on underlying <tt>time</tt>
--   version</li>
--   <li><tt>dayFractionToTimeOfDay</tt> on extreme values</li>
--   </ul>
@package time-compat
@version 1.9.8

module Data.Time.Calendar.Month.Compat
newtype Month
MkMonth :: Integer -> Month
addMonths :: Integer -> Month -> Month
diffMonths :: Month -> Month -> Integer
pattern YearMonth :: Year -> MonthOfYear -> Month
fromYearMonthValid :: Year -> MonthOfYear -> Maybe Month
pattern MonthDay :: Month -> DayOfMonth -> Day
fromMonthDayValid :: Month -> DayOfMonth -> Maybe Day

-- | Part of <tt>YearMonth</tt> pattern
fromYearMonth :: Year -> MonthOfYear -> Month

-- | Part of <tt>YearMonth</tt> pattern
toYearMonth :: Month -> (Year, MonthOfYear)

-- | Part of <a>MonthDay</a> pattern
fromMonthDay :: Month -> DayOfMonth -> Day

-- | Part of <a>MonthDay</a> pattern
toMonthDay :: Day -> (Month, DayOfMonth)

module Data.Time.Calendar.Quarter.Compat
data QuarterOfYear
Q1 :: QuarterOfYear
Q2 :: QuarterOfYear
Q3 :: QuarterOfYear
Q4 :: QuarterOfYear
addQuarters :: Integer -> Quarter -> Quarter
diffQuarters :: Quarter -> Quarter -> Integer
newtype Quarter
MkQuarter :: Integer -> Quarter
pattern YearQuarter :: Year -> QuarterOfYear -> Quarter
monthOfYearQuarter :: MonthOfYear -> QuarterOfYear
monthQuarter :: Month -> Quarter
dayQuarter :: Day -> Quarter

-- | Part of <tt>YearQuarter</tt> pattern
fromYearQuarter :: Year -> QuarterOfYear -> Quarter

-- | Part of <tt>YearQuarter</tt> pattern
toYearQuarter :: Quarter -> (Year, QuarterOfYear)

module Data.Time.Format.ISO8601.Compat
data Format t
formatShowM :: Format t -> t -> Maybe String
formatShow :: Format t -> t -> String
formatReadP :: Format t -> ReadP t
formatParseM :: MonadFail m => Format t -> String -> m t
class ISO8601 t
iso8601Format :: ISO8601 t => Format t
iso8601Show :: ISO8601 t => t -> String
iso8601ParseM :: (MonadFail m, ISO8601 t) => String -> m t
data FormatExtension
ExtendedFormat :: FormatExtension
BasicFormat :: FormatExtension
formatReadPExtension :: (FormatExtension -> Format t) -> ReadP t
parseFormatExtension :: MonadFail m => (FormatExtension -> Format t) -> String -> m t
calendarFormat :: FormatExtension -> Format Day
yearMonthFormat :: Format (Integer, Int)
yearFormat :: Format Integer
centuryFormat :: Format Integer
expandedCalendarFormat :: Int -> FormatExtension -> Format Day
expandedYearMonthFormat :: Int -> Format (Integer, Int)
expandedYearFormat :: Int -> Format Integer
expandedCenturyFormat :: Int -> Format Integer
ordinalDateFormat :: FormatExtension -> Format Day
expandedOrdinalDateFormat :: Int -> FormatExtension -> Format Day
weekDateFormat :: FormatExtension -> Format Day
yearWeekFormat :: FormatExtension -> Format (Integer, Int)
expandedWeekDateFormat :: Int -> FormatExtension -> Format Day
expandedYearWeekFormat :: Int -> FormatExtension -> Format (Integer, Int)
timeOfDayFormat :: FormatExtension -> Format TimeOfDay
hourMinuteFormat :: FormatExtension -> Format TimeOfDay
hourFormat :: Format TimeOfDay
withTimeDesignator :: Format t -> Format t
withUTCDesignator :: Format t -> Format t
timeOffsetFormat :: FormatExtension -> Format TimeZone
timeOfDayAndOffsetFormat :: FormatExtension -> Format (TimeOfDay, TimeZone)
localTimeFormat :: Format Day -> Format TimeOfDay -> Format LocalTime
zonedTimeFormat :: Format Day -> Format TimeOfDay -> FormatExtension -> Format ZonedTime
utcTimeFormat :: Format Day -> Format TimeOfDay -> Format UTCTime
dayAndTimeFormat :: Format Day -> Format time -> Format (Day, time)
timeAndOffsetFormat :: Format t -> FormatExtension -> Format (t, TimeZone)
durationDaysFormat :: Format CalendarDiffDays
durationTimeFormat :: Format CalendarDiffTime
alternativeDurationDaysFormat :: FormatExtension -> Format CalendarDiffDays
alternativeDurationTimeFormat :: FormatExtension -> Format CalendarDiffTime
intervalFormat :: Format a -> Format b -> Format (a, b)
recurringIntervalFormat :: Format a -> Format b -> Format (Int, a, b)

module Data.Time.Format.Compat
class FormatTime t
formatTime :: FormatTime t => TimeLocale -> String -> t -> String
parseTimeM :: (MonadFail m, ParseTime t) => Bool -> TimeLocale -> String -> String -> m t
parseTimeOrError :: ParseTime t => Bool -> TimeLocale -> String -> String -> t
readSTime :: ParseTime t => Bool -> TimeLocale -> String -> ReadS t
readPTime :: ParseTime t => Bool -> TimeLocale -> String -> ReadP t

-- | <i>Deprecated: use "parseTimeM True" instead</i>
parseTime :: ParseTime t => TimeLocale -> String -> String -> Maybe t

-- | <i>Deprecated: use "parseTimeOrError True" instead</i>
readTime :: ParseTime t => TimeLocale -> String -> String -> t

-- | <i>Deprecated: use "readSTime True" instead</i>
readsTime :: ParseTime t => TimeLocale -> String -> ReadS t
class ParseTime t
data TimeLocale
TimeLocale :: [(String, String)] -> [(String, String)] -> (String, String) -> String -> String -> String -> String -> [TimeZone] -> TimeLocale
[wDays] :: TimeLocale -> [(String, String)]
[months] :: TimeLocale -> [(String, String)]
[amPm] :: TimeLocale -> (String, String)
[dateTimeFmt] :: TimeLocale -> String
[dateFmt] :: TimeLocale -> String
[timeFmt] :: TimeLocale -> String
[time12Fmt] :: TimeLocale -> String
[knownTimeZones] :: TimeLocale -> [TimeZone]
defaultTimeLocale :: TimeLocale
iso8601DateFormat :: Maybe String -> String
rfc822DateFormat :: String

module Data.Time.Clock.System.Compat
systemEpochDay :: Day
data SystemTime
MkSystemTime :: {-# UNPACK #-} !Int64 -> {-# UNPACK #-} !Word32 -> SystemTime
[systemSeconds] :: SystemTime -> {-# UNPACK #-} !Int64
[systemNanoseconds] :: SystemTime -> {-# UNPACK #-} !Word32
truncateSystemTimeLeapSecond :: SystemTime -> SystemTime
getSystemTime :: IO SystemTime
systemToUTCTime :: SystemTime -> UTCTime
utcToSystemTime :: UTCTime -> SystemTime
systemToTAITime :: SystemTime -> AbsoluteTime

module Data.Time.Clock.POSIX.Compat
posixDayLength :: NominalDiffTime
type POSIXTime = NominalDiffTime
posixSecondsToUTCTime :: POSIXTime -> UTCTime
utcTimeToPOSIXSeconds :: UTCTime -> POSIXTime
getPOSIXTime :: IO POSIXTime
getCurrentTime :: IO UTCTime
systemToPOSIXTime :: SystemTime -> POSIXTime

module Data.Time.Clock.Compat
newtype UniversalTime
ModJulianDate :: Rational -> UniversalTime
[getModJulianDate] :: UniversalTime -> Rational
data DiffTime
secondsToDiffTime :: Integer -> DiffTime
picosecondsToDiffTime :: Integer -> DiffTime
diffTimeToPicoseconds :: DiffTime -> Integer
data UTCTime
UTCTime :: Day -> DiffTime -> UTCTime
[utctDay] :: UTCTime -> Day
[utctDayTime] :: UTCTime -> DiffTime
data NominalDiffTime
secondsToNominalDiffTime :: Pico -> NominalDiffTime
nominalDiffTimeToSeconds :: NominalDiffTime -> Pico
nominalDay :: NominalDiffTime
addUTCTime :: NominalDiffTime -> UTCTime -> UTCTime
diffUTCTime :: UTCTime -> UTCTime -> NominalDiffTime
getCurrentTime :: IO UTCTime
getTime_resolution :: DiffTime
type Year = Integer
type MonthOfYear = Int
type DayOfMonth = Int

module Data.Time.Calendar.WeekDate.Compat
type Year = Integer
type WeekOfYear = Int
data DayOfWeek
Monday :: DayOfWeek
Tuesday :: DayOfWeek
Wednesday :: DayOfWeek
Thursday :: DayOfWeek
Friday :: DayOfWeek
Saturday :: DayOfWeek
Sunday :: DayOfWeek
dayOfWeek :: Day -> DayOfWeek
data FirstWeekType
FirstWholeWeek :: FirstWeekType
FirstMostWeek :: FirstWeekType
toWeekCalendar :: FirstWeekType -> DayOfWeek -> Day -> (Year, WeekOfYear, DayOfWeek)
fromWeekCalendar :: FirstWeekType -> DayOfWeek -> Year -> WeekOfYear -> DayOfWeek -> Day
fromWeekCalendarValid :: FirstWeekType -> DayOfWeek -> Year -> WeekOfYear -> DayOfWeek -> Maybe Day
toWeekDate :: Day -> (Year, WeekOfYear, Int)
fromWeekDate :: Year -> WeekOfYear -> Int -> Day
pattern YearWeekDay :: Year -> WeekOfYear -> DayOfWeek -> Day
fromWeekDateValid :: Year -> WeekOfYear -> Int -> Maybe Day
showWeekDate :: Day -> String

module Data.Time.Calendar.OrdinalDate.Compat
data Day
type Year = Integer
type DayOfYear = Int
type WeekOfYear = Int
toOrdinalDate :: Day -> (Year, DayOfYear)
fromOrdinalDate :: Year -> DayOfYear -> Day
pattern YearDay :: Year -> DayOfYear -> Day
fromOrdinalDateValid :: Year -> DayOfYear -> Maybe Day
showOrdinalDate :: Day -> String
isLeapYear :: Year -> Bool
mondayStartWeek :: Day -> (WeekOfYear, Int)
sundayStartWeek :: Day -> (WeekOfYear, Int)
fromMondayStartWeek :: Year -> WeekOfYear -> Int -> Day
fromMondayStartWeekValid :: Year -> WeekOfYear -> Int -> Maybe Day
fromSundayStartWeek :: Year -> WeekOfYear -> Int -> Day
fromSundayStartWeekValid :: Year -> WeekOfYear -> Int -> Maybe Day

module Data.Time.Calendar.MonthDay.Compat
type MonthOfYear = Int
type DayOfMonth = Int
type DayOfYear = Int
pattern January :: MonthOfYear
pattern February :: MonthOfYear
pattern March :: MonthOfYear
pattern April :: MonthOfYear
pattern May :: MonthOfYear
pattern June :: MonthOfYear
pattern July :: MonthOfYear
pattern August :: MonthOfYear
pattern September :: MonthOfYear
pattern October :: MonthOfYear
pattern November :: MonthOfYear
pattern December :: MonthOfYear
monthAndDayToDayOfYear :: Bool -> MonthOfYear -> DayOfMonth -> DayOfYear
monthAndDayToDayOfYearValid :: Bool -> MonthOfYear -> DayOfMonth -> Maybe DayOfYear
dayOfYearToMonthAndDay :: Bool -> DayOfYear -> (MonthOfYear, DayOfMonth)
monthLength :: Bool -> MonthOfYear -> DayOfMonth

module Data.Time.Calendar.Easter.Compat
sundayAfter :: Day -> Day
orthodoxPaschalMoon :: Year -> Day
orthodoxEaster :: Year -> Day
gregorianPaschalMoon :: Year -> Day
gregorianEaster :: Year -> Day

module Data.Time.Calendar.Compat
newtype Day
ModifiedJulianDay :: Integer -> Day
[toModifiedJulianDay] :: Day -> Integer
addDays :: Integer -> Day -> Day
diffDays :: Day -> Day -> Integer
class Ord p => DayPeriod p
periodFirstDay :: DayPeriod p => p -> Day
periodLastDay :: DayPeriod p => p -> Day
dayPeriod :: DayPeriod p => Day -> p
periodAllDays :: DayPeriod p => p -> [Day]
periodLength :: DayPeriod p => p -> Int
periodFromDay :: DayPeriod p => Day -> (p, Int)
periodToDay :: DayPeriod p => p -> Int -> Day
periodToDayValid :: DayPeriod p => p -> Int -> Maybe Day
data CalendarDiffDays
CalendarDiffDays :: Integer -> Integer -> CalendarDiffDays
[cdMonths] :: CalendarDiffDays -> Integer
[cdDays] :: CalendarDiffDays -> Integer
calendarDay :: CalendarDiffDays
calendarWeek :: CalendarDiffDays
calendarMonth :: CalendarDiffDays
calendarYear :: CalendarDiffDays
scaleCalendarDiffDays :: Integer -> CalendarDiffDays -> CalendarDiffDays
type Year = Integer
pattern CommonEra :: Integer -> Year
pattern BeforeCommonEra :: Integer -> Year
type MonthOfYear = Int
pattern January :: MonthOfYear
pattern February :: MonthOfYear
pattern March :: MonthOfYear
pattern April :: MonthOfYear
pattern May :: MonthOfYear
pattern June :: MonthOfYear
pattern July :: MonthOfYear
pattern August :: MonthOfYear
pattern September :: MonthOfYear
pattern October :: MonthOfYear
pattern November :: MonthOfYear
pattern December :: MonthOfYear
type DayOfMonth = Int
toGregorian :: Day -> (Year, MonthOfYear, DayOfMonth)
fromGregorian :: Year -> MonthOfYear -> DayOfMonth -> Day
fromGregorianValid :: Year -> MonthOfYear -> DayOfMonth -> Maybe Day
showGregorian :: Day -> String
gregorianMonthLength :: Year -> MonthOfYear -> DayOfMonth
addGregorianMonthsClip :: Integer -> Day -> Day
addGregorianMonthsRollOver :: Integer -> Day -> Day
addGregorianYearsClip :: Integer -> Day -> Day
addGregorianYearsRollOver :: Integer -> Day -> Day
addGregorianDurationClip :: CalendarDiffDays -> Day -> Day
addGregorianDurationRollOver :: CalendarDiffDays -> Day -> Day
diffGregorianDurationClip :: Day -> Day -> CalendarDiffDays
diffGregorianDurationRollOver :: Day -> Day -> CalendarDiffDays
isLeapYear :: Year -> Bool
data DayOfWeek
Monday :: DayOfWeek
Tuesday :: DayOfWeek
Wednesday :: DayOfWeek
Thursday :: DayOfWeek
Friday :: DayOfWeek
Saturday :: DayOfWeek
Sunday :: DayOfWeek
dayOfWeek :: Day -> DayOfWeek
dayOfWeekDiff :: DayOfWeek -> DayOfWeek -> Int
firstDayOfWeekOnAfter :: DayOfWeek -> Day -> Day
weekAllDays :: DayOfWeek -> Day -> [Day]
weekFirstDay :: DayOfWeek -> Day -> Day
weekLastDay :: DayOfWeek -> Day -> Day
pattern YearMonthDay :: Year -> MonthOfYear -> DayOfMonth -> Day

module Data.Time.LocalTime.Compat
data TimeZone
TimeZone :: Int -> Bool -> String -> TimeZone
[timeZoneMinutes] :: TimeZone -> Int
[timeZoneSummerOnly] :: TimeZone -> Bool
[timeZoneName] :: TimeZone -> String
timeZoneOffsetString :: TimeZone -> String
timeZoneOffsetString' :: Maybe Char -> TimeZone -> String
minutesToTimeZone :: Int -> TimeZone
hoursToTimeZone :: Int -> TimeZone
utc :: TimeZone
getTimeZone :: UTCTime -> IO TimeZone
getCurrentTimeZone :: IO TimeZone
data TimeOfDay
TimeOfDay :: Int -> Int -> Pico -> TimeOfDay
[todHour] :: TimeOfDay -> Int
[todMin] :: TimeOfDay -> Int
[todSec] :: TimeOfDay -> Pico
midnight :: TimeOfDay
midday :: TimeOfDay
makeTimeOfDayValid :: Int -> Int -> Pico -> Maybe TimeOfDay
timeToDaysAndTimeOfDay :: NominalDiffTime -> (Integer, TimeOfDay)
daysAndTimeOfDayToTime :: Integer -> TimeOfDay -> NominalDiffTime
utcToLocalTimeOfDay :: TimeZone -> TimeOfDay -> (Integer, TimeOfDay)
localToUTCTimeOfDay :: TimeZone -> TimeOfDay -> (Integer, TimeOfDay)
timeToTimeOfDay :: DiffTime -> TimeOfDay
timeOfDayToTime :: TimeOfDay -> DiffTime
dayFractionToTimeOfDay :: Rational -> TimeOfDay
timeOfDayToDayFraction :: TimeOfDay -> Rational
pastMidnight :: DiffTime -> TimeOfDay
sinceMidnight :: TimeOfDay -> DiffTime
data CalendarDiffTime
CalendarDiffTime :: Integer -> NominalDiffTime -> CalendarDiffTime
[ctMonths] :: CalendarDiffTime -> Integer
[ctTime] :: CalendarDiffTime -> NominalDiffTime
calendarTimeDays :: CalendarDiffDays -> CalendarDiffTime
calendarTimeTime :: NominalDiffTime -> CalendarDiffTime
scaleCalendarDiffTime :: Integer -> CalendarDiffTime -> CalendarDiffTime
data LocalTime
LocalTime :: Day -> TimeOfDay -> LocalTime
[localDay] :: LocalTime -> Day
[localTimeOfDay] :: LocalTime -> TimeOfDay
addLocalTime :: NominalDiffTime -> LocalTime -> LocalTime
diffLocalTime :: LocalTime -> LocalTime -> NominalDiffTime
utcToLocalTime :: TimeZone -> UTCTime -> LocalTime
localTimeToUTC :: TimeZone -> LocalTime -> UTCTime
ut1ToLocalTime :: Rational -> UniversalTime -> LocalTime
localTimeToUT1 :: Rational -> LocalTime -> UniversalTime
data ZonedTime
ZonedTime :: LocalTime -> TimeZone -> ZonedTime
[zonedTimeToLocalTime] :: ZonedTime -> LocalTime
[zonedTimeZone] :: ZonedTime -> TimeZone
utcToZonedTime :: TimeZone -> UTCTime -> ZonedTime
zonedTimeToUTC :: ZonedTime -> UTCTime
getZonedTime :: IO ZonedTime
utcToLocalZonedTime :: UTCTime -> IO ZonedTime

module Data.Time.Compat

module Data.Time.Clock.TAI.Compat
data AbsoluteTime
taiEpoch :: AbsoluteTime
addAbsoluteTime :: DiffTime -> AbsoluteTime -> AbsoluteTime
diffAbsoluteTime :: AbsoluteTime -> AbsoluteTime -> DiffTime
taiNominalDayStart :: Day -> AbsoluteTime
type LeapSecondMap = Day -> Maybe Int
utcDayLength :: LeapSecondMap -> Day -> Maybe DiffTime
utcToTAITime :: LeapSecondMap -> UTCTime -> Maybe AbsoluteTime
taiToUTCTime :: LeapSecondMap -> AbsoluteTime -> Maybe UTCTime
taiClock :: Maybe (DiffTime, IO AbsoluteTime)

module Data.Time.Calendar.Julian.Compat
type Year = Integer
type MonthOfYear = Int
type DayOfMonth = Int
type DayOfYear = Int
toJulianYearAndDay :: Day -> (Year, DayOfYear)
fromJulianYearAndDay :: Year -> DayOfYear -> Day
fromJulianYearAndDayValid :: Year -> DayOfYear -> Maybe Day
showJulianYearAndDay :: Day -> String
isJulianLeapYear :: Year -> Bool
toJulian :: Day -> (Year, MonthOfYear, DayOfMonth)
fromJulian :: Year -> MonthOfYear -> DayOfMonth -> Day
pattern JulianYearMonthDay :: Year -> MonthOfYear -> DayOfMonth -> Day
fromJulianValid :: Year -> MonthOfYear -> DayOfMonth -> Maybe Day
showJulian :: Day -> String
julianMonthLength :: Year -> MonthOfYear -> DayOfMonth
addJulianMonthsClip :: Integer -> Day -> Day
addJulianMonthsRollOver :: Integer -> Day -> Day
addJulianYearsClip :: Integer -> Day -> Day
addJulianYearsRollOver :: Integer -> Day -> Day
addJulianDurationClip :: CalendarDiffDays -> Day -> Day
addJulianDurationRollOver :: CalendarDiffDays -> Day -> Day
diffJulianDurationClip :: Day -> Day -> CalendarDiffDays
diffJulianDurationRollOver :: Day -> Day -> CalendarDiffDays
