Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
A date and time. The date is assumed to be in the (proleptic)
Gregorian calendar. The time is in UTC if utc
is True
. Otherwise,
the time is a local time, and offset
gives the offset from UTC in
minutes (such that adding offset
to the time would give the
correct UTC time). If utc
is False
and offset
is 0, then the
SoupDate
represents a "floating" time with no associated timezone
information.
- newtype Date = Date (ManagedPtr Date)
- newZeroDate :: MonadIO m => m Date
- noDate :: Maybe Date
- data DateCopyMethodInfo
- dateCopy :: (HasCallStack, MonadIO m) => Date -> m Date
- data DateFreeMethodInfo
- dateFree :: (HasCallStack, MonadIO m) => Date -> m ()
- data DateGetDayMethodInfo
- dateGetDay :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetHourMethodInfo
- dateGetHour :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetMinuteMethodInfo
- dateGetMinute :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetMonthMethodInfo
- dateGetMonth :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetOffsetMethodInfo
- dateGetOffset :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetSecondMethodInfo
- dateGetSecond :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetUtcMethodInfo
- dateGetUtc :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateGetYearMethodInfo
- dateGetYear :: (HasCallStack, MonadIO m) => Date -> m Int32
- data DateIsPastMethodInfo
- dateIsPast :: (HasCallStack, MonadIO m) => Date -> m Bool
- dateNew :: (HasCallStack, MonadIO m) => Int32 -> Int32 -> Int32 -> Int32 -> Int32 -> Int32 -> m Date
- dateNewFromNow :: (HasCallStack, MonadIO m) => Int32 -> m Date
- dateNewFromString :: (HasCallStack, MonadIO m) => Text -> m (Maybe Date)
- dateNewFromTimeT :: (HasCallStack, MonadIO m) => CLong -> m Date
- data DateToStringMethodInfo
- dateToString :: (HasCallStack, MonadIO m) => Date -> DateFormat -> m Text
- data DateToTimeTMethodInfo
- dateToTimeT :: (HasCallStack, MonadIO m) => Date -> m CLong
- data DateToTimevalMethodInfo
- dateToTimeval :: (HasCallStack, MonadIO m) => Date -> m TimeVal
- date_day :: AttrLabelProxy "day"
- getDateDay :: MonadIO m => Date -> m Int32
- setDateDay :: MonadIO m => Date -> Int32 -> m ()
- date_hour :: AttrLabelProxy "hour"
- getDateHour :: MonadIO m => Date -> m Int32
- setDateHour :: MonadIO m => Date -> Int32 -> m ()
- date_minute :: AttrLabelProxy "minute"
- getDateMinute :: MonadIO m => Date -> m Int32
- setDateMinute :: MonadIO m => Date -> Int32 -> m ()
- date_month :: AttrLabelProxy "month"
- getDateMonth :: MonadIO m => Date -> m Int32
- setDateMonth :: MonadIO m => Date -> Int32 -> m ()
- date_offset :: AttrLabelProxy "offset"
- getDateOffset :: MonadIO m => Date -> m Int32
- setDateOffset :: MonadIO m => Date -> Int32 -> m ()
- date_second :: AttrLabelProxy "second"
- getDateSecond :: MonadIO m => Date -> m Int32
- setDateSecond :: MonadIO m => Date -> Int32 -> m ()
- date_utc :: AttrLabelProxy "utc"
- getDateUtc :: MonadIO m => Date -> m Bool
- setDateUtc :: MonadIO m => Date -> Bool -> m ()
- date_year :: AttrLabelProxy "year"
- getDateYear :: MonadIO m => Date -> m Int32
- setDateYear :: MonadIO m => Date -> Int32 -> m ()
Exported types
Methods
copy
data DateCopyMethodInfo Source #
((~) * signature (m Date), MonadIO m) => MethodInfo * DateCopyMethodInfo Date signature Source # | |
free
data DateFreeMethodInfo Source #
((~) * signature (m ()), MonadIO m) => MethodInfo * DateFreeMethodInfo Date signature Source # | |
getDay
data DateGetDayMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetDayMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's day.
Since: 2.32
getHour
data DateGetHourMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetHourMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's hour.
Since: 2.32
getMinute
data DateGetMinuteMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetMinuteMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's minute.
Since: 2.32
getMonth
data DateGetMonthMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetMonthMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's month.
Since: 2.32
getOffset
data DateGetOffsetMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetOffsetMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's offset from UTC.
Since: 2.32
getSecond
data DateGetSecondMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetSecondMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's second.
Since: 2.32
getUtc
data DateGetUtcMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetUtcMethodInfo Date signature Source # | |
Gets date
's UTC flag
Since: 2.32
getYear
data DateGetYearMethodInfo Source #
((~) * signature (m Int32), MonadIO m) => MethodInfo * DateGetYearMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m Int32 | Returns: |
Gets date
's year.
Since: 2.32
isPast
data DateIsPastMethodInfo Source #
((~) * signature (m Bool), MonadIO m) => MethodInfo * DateIsPastMethodInfo Date signature Source # | |
Determines if date
is in the past.
Since: 2.24
new
:: (HasCallStack, MonadIO m) | |
=> Int32 |
|
-> Int32 |
|
-> Int32 |
|
-> Int32 |
|
-> Int32 |
|
-> Int32 |
|
-> m Date | Returns: a new |
Creates a Date
representing the indicated time, UTC.
newFromNow
:: (HasCallStack, MonadIO m) | |
=> Int32 |
|
-> m Date | Returns: a new |
Creates a Date
representing a time offsetSeconds
after the
current time (or before it, if offsetSeconds
is negative). If
offset_seconds is 0, returns the current time.
If offsetSeconds
would indicate a time not expressible as a
<type>time_t</type>, the return value will be clamped into range.
newFromString
:: (HasCallStack, MonadIO m) | |
=> Text |
|
-> m (Maybe Date) | Returns: a new |
Parses dateString
and tries to extract a date from it. This
recognizes all of the "HTTP-date" formats from RFC 2616, all ISO
8601 formats containing both a time and a date, RFC 2822 dates,
and reasonable approximations thereof. (Eg, it is lenient about
whitespace, leading "0"s, etc.)
newFromTimeT
:: (HasCallStack, MonadIO m) | |
=> CLong |
|
-> m Date | Returns: a new |
Creates a Date
corresponding to when
toString
data DateToStringMethodInfo Source #
((~) * signature (DateFormat -> m Text), MonadIO m) => MethodInfo * DateToStringMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> DateFormat |
|
-> m Text | Returns: |
Converts date
to a string in the format described by format
.
toTimeT
data DateToTimeTMethodInfo Source #
((~) * signature (m CLong), MonadIO m) => MethodInfo * DateToTimeTMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m CLong | Returns: |
Converts date
to a <type>time_t</type>.
If date
is not representable as a <type>time_t</type>, it will be
clamped into range. (In particular, some HTTP cookies have
expiration dates after "Y2.038k" (2038-01-19T03:14:07Z).)
toTimeval
data DateToTimevalMethodInfo Source #
((~) * signature (m TimeVal), MonadIO m) => MethodInfo * DateToTimevalMethodInfo Date signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> Date |
|
-> m TimeVal |
Converts date
to a TimeVal
.
Since: 2.24
Properties
day
date_day :: AttrLabelProxy "day" Source #
hour
date_hour :: AttrLabelProxy "hour" Source #
minute
date_minute :: AttrLabelProxy "minute" Source #
month
date_month :: AttrLabelProxy "month" Source #
offset
date_offset :: AttrLabelProxy "offset" Source #
second
date_second :: AttrLabelProxy "second" Source #
utc
date_utc :: AttrLabelProxy "utc" Source #
year
date_year :: AttrLabelProxy "year" Source #