#define ENABLE_OVERLOADING \
(!defined(__HADDOCK_VERSION__))
module GI.GLib.Structs.DateTime
(
DateTime(..) ,
noDateTime ,
#if ENABLE_OVERLOADING
DateTimeAddMethodInfo ,
#endif
dateTimeAdd ,
#if ENABLE_OVERLOADING
DateTimeAddDaysMethodInfo ,
#endif
dateTimeAddDays ,
#if ENABLE_OVERLOADING
DateTimeAddFullMethodInfo ,
#endif
dateTimeAddFull ,
#if ENABLE_OVERLOADING
DateTimeAddHoursMethodInfo ,
#endif
dateTimeAddHours ,
#if ENABLE_OVERLOADING
DateTimeAddMinutesMethodInfo ,
#endif
dateTimeAddMinutes ,
#if ENABLE_OVERLOADING
DateTimeAddMonthsMethodInfo ,
#endif
dateTimeAddMonths ,
#if ENABLE_OVERLOADING
DateTimeAddSecondsMethodInfo ,
#endif
dateTimeAddSeconds ,
#if ENABLE_OVERLOADING
DateTimeAddWeeksMethodInfo ,
#endif
dateTimeAddWeeks ,
#if ENABLE_OVERLOADING
DateTimeAddYearsMethodInfo ,
#endif
dateTimeAddYears ,
dateTimeCompare ,
#if ENABLE_OVERLOADING
DateTimeDifferenceMethodInfo ,
#endif
dateTimeDifference ,
dateTimeEqual ,
#if ENABLE_OVERLOADING
DateTimeFormatMethodInfo ,
#endif
dateTimeFormat ,
#if ENABLE_OVERLOADING
DateTimeFormatIso8601MethodInfo ,
#endif
dateTimeFormatIso8601 ,
#if ENABLE_OVERLOADING
DateTimeGetDayOfMonthMethodInfo ,
#endif
dateTimeGetDayOfMonth ,
#if ENABLE_OVERLOADING
DateTimeGetDayOfWeekMethodInfo ,
#endif
dateTimeGetDayOfWeek ,
#if ENABLE_OVERLOADING
DateTimeGetDayOfYearMethodInfo ,
#endif
dateTimeGetDayOfYear ,
#if ENABLE_OVERLOADING
DateTimeGetHourMethodInfo ,
#endif
dateTimeGetHour ,
#if ENABLE_OVERLOADING
DateTimeGetMicrosecondMethodInfo ,
#endif
dateTimeGetMicrosecond ,
#if ENABLE_OVERLOADING
DateTimeGetMinuteMethodInfo ,
#endif
dateTimeGetMinute ,
#if ENABLE_OVERLOADING
DateTimeGetMonthMethodInfo ,
#endif
dateTimeGetMonth ,
#if ENABLE_OVERLOADING
DateTimeGetSecondMethodInfo ,
#endif
dateTimeGetSecond ,
#if ENABLE_OVERLOADING
DateTimeGetSecondsMethodInfo ,
#endif
dateTimeGetSeconds ,
#if ENABLE_OVERLOADING
DateTimeGetTimezoneMethodInfo ,
#endif
dateTimeGetTimezone ,
#if ENABLE_OVERLOADING
DateTimeGetTimezoneAbbreviationMethodInfo,
#endif
dateTimeGetTimezoneAbbreviation ,
#if ENABLE_OVERLOADING
DateTimeGetUtcOffsetMethodInfo ,
#endif
dateTimeGetUtcOffset ,
#if ENABLE_OVERLOADING
DateTimeGetWeekNumberingYearMethodInfo ,
#endif
dateTimeGetWeekNumberingYear ,
#if ENABLE_OVERLOADING
DateTimeGetWeekOfYearMethodInfo ,
#endif
dateTimeGetWeekOfYear ,
#if ENABLE_OVERLOADING
DateTimeGetYearMethodInfo ,
#endif
dateTimeGetYear ,
#if ENABLE_OVERLOADING
DateTimeGetYmdMethodInfo ,
#endif
dateTimeGetYmd ,
dateTimeHash ,
#if ENABLE_OVERLOADING
DateTimeIsDaylightSavingsMethodInfo ,
#endif
dateTimeIsDaylightSavings ,
dateTimeNew ,
dateTimeNewFromIso8601 ,
dateTimeNewFromTimevalLocal ,
dateTimeNewFromTimevalUtc ,
dateTimeNewFromUnixLocal ,
dateTimeNewFromUnixUtc ,
dateTimeNewLocal ,
dateTimeNewNow ,
dateTimeNewNowLocal ,
dateTimeNewNowUtc ,
dateTimeNewUtc ,
#if ENABLE_OVERLOADING
DateTimeRefMethodInfo ,
#endif
dateTimeRef ,
#if ENABLE_OVERLOADING
DateTimeToLocalMethodInfo ,
#endif
dateTimeToLocal ,
#if ENABLE_OVERLOADING
DateTimeToTimevalMethodInfo ,
#endif
dateTimeToTimeval ,
#if ENABLE_OVERLOADING
DateTimeToTimezoneMethodInfo ,
#endif
dateTimeToTimezone ,
#if ENABLE_OVERLOADING
DateTimeToUnixMethodInfo ,
#endif
dateTimeToUnix ,
#if ENABLE_OVERLOADING
DateTimeToUtcMethodInfo ,
#endif
dateTimeToUtc ,
#if ENABLE_OVERLOADING
DateTimeUnrefMethodInfo ,
#endif
dateTimeUnref ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import {-# SOURCE #-} qualified GI.GLib.Structs.TimeVal as GLib.TimeVal
import {-# SOURCE #-} qualified GI.GLib.Structs.TimeZone as GLib.TimeZone
newtype DateTime = DateTime (ManagedPtr DateTime)
foreign import ccall "g_date_time_get_type" c_g_date_time_get_type ::
IO GType
instance BoxedObject DateTime where
boxedType :: DateTime -> IO GType
boxedType _ = IO GType
c_g_date_time_get_type
noDateTime :: Maybe DateTime
noDateTime :: Maybe DateTime
noDateTime = Maybe DateTime
forall a. Maybe a
Nothing
#if ENABLE_OVERLOADING
instance O.HasAttributeList DateTime
type instance O.AttributeList DateTime = DateTimeAttributeList
type DateTimeAttributeList = ('[ ] :: [(Symbol, *)])
#endif
foreign import ccall "g_date_time_new" g_date_time_new ::
Ptr GLib.TimeZone.TimeZone ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
CDouble ->
IO (Ptr DateTime)
dateTimeNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
GLib.TimeZone.TimeZone
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m DateTime
dateTimeNew :: TimeZone
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m DateTime
dateTimeNew tz :: TimeZone
tz year :: Int32
year month :: Int32
month day :: Int32
day hour :: Int32
hour minute :: Int32
minute seconds :: Double
seconds = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr TimeZone
tz' <- TimeZone -> IO (Ptr TimeZone)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeZone
tz
let seconds' :: CDouble
seconds' = Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
seconds
Ptr DateTime
result <- Ptr TimeZone
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> CDouble
-> IO (Ptr DateTime)
g_date_time_new Ptr TimeZone
tz' Int32
year Int32
month Int32
day Int32
hour Int32
minute CDouble
seconds'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNew" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeZone
tz
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_from_iso8601" g_date_time_new_from_iso8601 ::
CString ->
Ptr GLib.TimeZone.TimeZone ->
IO (Ptr DateTime)
dateTimeNewFromIso8601 ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> Maybe (GLib.TimeZone.TimeZone)
-> m (Maybe DateTime)
dateTimeNewFromIso8601 :: Text -> Maybe TimeZone -> m (Maybe DateTime)
dateTimeNewFromIso8601 text :: Text
text defaultTz :: Maybe TimeZone
defaultTz = IO (Maybe DateTime) -> m (Maybe DateTime)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe DateTime) -> m (Maybe DateTime))
-> IO (Maybe DateTime) -> m (Maybe DateTime)
forall a b. (a -> b) -> a -> b
$ do
CString
text' <- Text -> IO CString
textToCString Text
text
Ptr TimeZone
maybeDefaultTz <- case Maybe TimeZone
defaultTz of
Nothing -> Ptr TimeZone -> IO (Ptr TimeZone)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr TimeZone
forall a. Ptr a
nullPtr
Just jDefaultTz :: TimeZone
jDefaultTz -> do
Ptr TimeZone
jDefaultTz' <- TimeZone -> IO (Ptr TimeZone)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeZone
jDefaultTz
Ptr TimeZone -> IO (Ptr TimeZone)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr TimeZone
jDefaultTz'
Ptr DateTime
result <- CString -> Ptr TimeZone -> IO (Ptr DateTime)
g_date_time_new_from_iso8601 CString
text' Ptr TimeZone
maybeDefaultTz
Maybe DateTime
maybeResult <- Ptr DateTime
-> (Ptr DateTime -> IO DateTime) -> IO (Maybe DateTime)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr DateTime
result ((Ptr DateTime -> IO DateTime) -> IO (Maybe DateTime))
-> (Ptr DateTime -> IO DateTime) -> IO (Maybe DateTime)
forall a b. (a -> b) -> a -> b
$ \result' :: Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe TimeZone -> (TimeZone -> IO ()) -> IO ()
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe TimeZone
defaultTz TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
text'
Maybe DateTime -> IO (Maybe DateTime)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_from_timeval_local" g_date_time_new_from_timeval_local ::
Ptr GLib.TimeVal.TimeVal ->
IO (Ptr DateTime)
{-# DEPRECATED dateTimeNewFromTimevalLocal ["(Since version 2.62)","'GI.GLib.Structs.TimeVal.TimeVal' is not year-2038-safe. Use"," 'GI.GLib.Structs.DateTime.dateTimeNewFromUnixLocal' instead."] #-}
dateTimeNewFromTimevalLocal ::
(B.CallStack.HasCallStack, MonadIO m) =>
GLib.TimeVal.TimeVal
-> m DateTime
dateTimeNewFromTimevalLocal :: TimeVal -> m DateTime
dateTimeNewFromTimevalLocal tv :: TimeVal
tv = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr TimeVal
tv' <- TimeVal -> IO (Ptr TimeVal)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeVal
tv
Ptr DateTime
result <- Ptr TimeVal -> IO (Ptr DateTime)
g_date_time_new_from_timeval_local Ptr TimeVal
tv'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewFromTimevalLocal" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
TimeVal -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeVal
tv
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_from_timeval_utc" g_date_time_new_from_timeval_utc ::
Ptr GLib.TimeVal.TimeVal ->
IO (Ptr DateTime)
{-# DEPRECATED dateTimeNewFromTimevalUtc ["(Since version 2.62)","'GI.GLib.Structs.TimeVal.TimeVal' is not year-2038-safe. Use"," 'GI.GLib.Structs.DateTime.dateTimeNewFromUnixUtc' instead."] #-}
dateTimeNewFromTimevalUtc ::
(B.CallStack.HasCallStack, MonadIO m) =>
GLib.TimeVal.TimeVal
-> m DateTime
dateTimeNewFromTimevalUtc :: TimeVal -> m DateTime
dateTimeNewFromTimevalUtc tv :: TimeVal
tv = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr TimeVal
tv' <- TimeVal -> IO (Ptr TimeVal)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeVal
tv
Ptr DateTime
result <- Ptr TimeVal -> IO (Ptr DateTime)
g_date_time_new_from_timeval_utc Ptr TimeVal
tv'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewFromTimevalUtc" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
TimeVal -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeVal
tv
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_from_unix_local" g_date_time_new_from_unix_local ::
Int64 ->
IO (Ptr DateTime)
dateTimeNewFromUnixLocal ::
(B.CallStack.HasCallStack, MonadIO m) =>
Int64
-> m DateTime
dateTimeNewFromUnixLocal :: Int64 -> m DateTime
dateTimeNewFromUnixLocal t :: Int64
t = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
result <- Int64 -> IO (Ptr DateTime)
g_date_time_new_from_unix_local Int64
t
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewFromUnixLocal" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_from_unix_utc" g_date_time_new_from_unix_utc ::
Int64 ->
IO (Ptr DateTime)
dateTimeNewFromUnixUtc ::
(B.CallStack.HasCallStack, MonadIO m) =>
Int64
-> m DateTime
dateTimeNewFromUnixUtc :: Int64 -> m DateTime
dateTimeNewFromUnixUtc t :: Int64
t = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
result <- Int64 -> IO (Ptr DateTime)
g_date_time_new_from_unix_utc Int64
t
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewFromUnixUtc" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_local" g_date_time_new_local ::
Int32 ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
CDouble ->
IO (Ptr DateTime)
dateTimeNewLocal ::
(B.CallStack.HasCallStack, MonadIO m) =>
Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m DateTime
dateTimeNewLocal :: Int32 -> Int32 -> Int32 -> Int32 -> Int32 -> Double -> m DateTime
dateTimeNewLocal year :: Int32
year month :: Int32
month day :: Int32
day hour :: Int32
hour minute :: Int32
minute seconds :: Double
seconds = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
let seconds' :: CDouble
seconds' = Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
seconds
Ptr DateTime
result <- Int32
-> Int32 -> Int32 -> Int32 -> Int32 -> CDouble -> IO (Ptr DateTime)
g_date_time_new_local Int32
year Int32
month Int32
day Int32
hour Int32
minute CDouble
seconds'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewLocal" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_now" g_date_time_new_now ::
Ptr GLib.TimeZone.TimeZone ->
IO (Ptr DateTime)
dateTimeNewNow ::
(B.CallStack.HasCallStack, MonadIO m) =>
GLib.TimeZone.TimeZone
-> m DateTime
dateTimeNewNow :: TimeZone -> m DateTime
dateTimeNewNow tz :: TimeZone
tz = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr TimeZone
tz' <- TimeZone -> IO (Ptr TimeZone)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeZone
tz
Ptr DateTime
result <- Ptr TimeZone -> IO (Ptr DateTime)
g_date_time_new_now Ptr TimeZone
tz'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewNow" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeZone
tz
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_now_local" g_date_time_new_now_local ::
IO (Ptr DateTime)
dateTimeNewNowLocal ::
(B.CallStack.HasCallStack, MonadIO m) =>
m DateTime
dateTimeNewNowLocal :: m DateTime
dateTimeNewNowLocal = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
result <- IO (Ptr DateTime)
g_date_time_new_now_local
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewNowLocal" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_now_utc" g_date_time_new_now_utc ::
IO (Ptr DateTime)
dateTimeNewNowUtc ::
(B.CallStack.HasCallStack, MonadIO m) =>
m DateTime
dateTimeNewNowUtc :: m DateTime
dateTimeNewNowUtc = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
result <- IO (Ptr DateTime)
g_date_time_new_now_utc
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewNowUtc" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_new_utc" g_date_time_new_utc ::
Int32 ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
CDouble ->
IO (Ptr DateTime)
dateTimeNewUtc ::
(B.CallStack.HasCallStack, MonadIO m) =>
Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m DateTime
dateTimeNewUtc :: Int32 -> Int32 -> Int32 -> Int32 -> Int32 -> Double -> m DateTime
dateTimeNewUtc year :: Int32
year month :: Int32
month day :: Int32
day hour :: Int32
hour minute :: Int32
minute seconds :: Double
seconds = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
let seconds' :: CDouble
seconds' = Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
seconds
Ptr DateTime
result <- Int32
-> Int32 -> Int32 -> Int32 -> Int32 -> CDouble -> IO (Ptr DateTime)
g_date_time_new_utc Int32
year Int32
month Int32
day Int32
hour Int32
minute CDouble
seconds'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeNewUtc" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_add" g_date_time_add ::
Ptr DateTime ->
Int64 ->
IO (Ptr DateTime)
dateTimeAdd ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int64
-> m DateTime
dateTimeAdd :: DateTime -> Int64 -> m DateTime
dateTimeAdd datetime :: DateTime
datetime timespan :: Int64
timespan = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int64 -> IO (Ptr DateTime)
g_date_time_add Ptr DateTime
datetime' Int64
timespan
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAdd" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddMethodInfo
instance (signature ~ (Int64 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAdd
#endif
foreign import ccall "g_date_time_add_days" g_date_time_add_days ::
Ptr DateTime ->
Int32 ->
IO (Ptr DateTime)
dateTimeAddDays ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> m DateTime
dateTimeAddDays :: DateTime -> Int32 -> m DateTime
dateTimeAddDays datetime :: DateTime
datetime days :: Int32
days = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int32 -> IO (Ptr DateTime)
g_date_time_add_days Ptr DateTime
datetime' Int32
days
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddDays" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddDaysMethodInfo
instance (signature ~ (Int32 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddDaysMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddDays
#endif
foreign import ccall "g_date_time_add_full" g_date_time_add_full ::
Ptr DateTime ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
CDouble ->
IO (Ptr DateTime)
dateTimeAddFull ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m DateTime
dateTimeAddFull :: DateTime
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m DateTime
dateTimeAddFull datetime :: DateTime
datetime years :: Int32
years months :: Int32
months days :: Int32
days hours :: Int32
hours minutes :: Int32
minutes seconds :: Double
seconds = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
let seconds' :: CDouble
seconds' = Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
seconds
Ptr DateTime
result <- Ptr DateTime
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> CDouble
-> IO (Ptr DateTime)
g_date_time_add_full Ptr DateTime
datetime' Int32
years Int32
months Int32
days Int32
hours Int32
minutes CDouble
seconds'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddFull" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddFullMethodInfo
instance (signature ~ (Int32 -> Int32 -> Int32 -> Int32 -> Int32 -> Double -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddFullMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddFull
#endif
foreign import ccall "g_date_time_add_hours" g_date_time_add_hours ::
Ptr DateTime ->
Int32 ->
IO (Ptr DateTime)
dateTimeAddHours ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> m DateTime
dateTimeAddHours :: DateTime -> Int32 -> m DateTime
dateTimeAddHours datetime :: DateTime
datetime hours :: Int32
hours = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int32 -> IO (Ptr DateTime)
g_date_time_add_hours Ptr DateTime
datetime' Int32
hours
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddHours" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddHoursMethodInfo
instance (signature ~ (Int32 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddHoursMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddHours
#endif
foreign import ccall "g_date_time_add_minutes" g_date_time_add_minutes ::
Ptr DateTime ->
Int32 ->
IO (Ptr DateTime)
dateTimeAddMinutes ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> m DateTime
dateTimeAddMinutes :: DateTime -> Int32 -> m DateTime
dateTimeAddMinutes datetime :: DateTime
datetime minutes :: Int32
minutes = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int32 -> IO (Ptr DateTime)
g_date_time_add_minutes Ptr DateTime
datetime' Int32
minutes
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddMinutes" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddMinutesMethodInfo
instance (signature ~ (Int32 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddMinutesMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddMinutes
#endif
foreign import ccall "g_date_time_add_months" g_date_time_add_months ::
Ptr DateTime ->
Int32 ->
IO (Ptr DateTime)
dateTimeAddMonths ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> m DateTime
dateTimeAddMonths :: DateTime -> Int32 -> m DateTime
dateTimeAddMonths datetime :: DateTime
datetime months :: Int32
months = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int32 -> IO (Ptr DateTime)
g_date_time_add_months Ptr DateTime
datetime' Int32
months
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddMonths" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddMonthsMethodInfo
instance (signature ~ (Int32 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddMonthsMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddMonths
#endif
foreign import ccall "g_date_time_add_seconds" g_date_time_add_seconds ::
Ptr DateTime ->
CDouble ->
IO (Ptr DateTime)
dateTimeAddSeconds ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Double
-> m DateTime
dateTimeAddSeconds :: DateTime -> Double -> m DateTime
dateTimeAddSeconds datetime :: DateTime
datetime seconds :: Double
seconds = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
let seconds' :: CDouble
seconds' = Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
seconds
Ptr DateTime
result <- Ptr DateTime -> CDouble -> IO (Ptr DateTime)
g_date_time_add_seconds Ptr DateTime
datetime' CDouble
seconds'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddSeconds" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddSecondsMethodInfo
instance (signature ~ (Double -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddSecondsMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddSeconds
#endif
foreign import ccall "g_date_time_add_weeks" g_date_time_add_weeks ::
Ptr DateTime ->
Int32 ->
IO (Ptr DateTime)
dateTimeAddWeeks ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> m DateTime
dateTimeAddWeeks :: DateTime -> Int32 -> m DateTime
dateTimeAddWeeks datetime :: DateTime
datetime weeks :: Int32
weeks = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int32 -> IO (Ptr DateTime)
g_date_time_add_weeks Ptr DateTime
datetime' Int32
weeks
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddWeeks" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddWeeksMethodInfo
instance (signature ~ (Int32 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddWeeksMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddWeeks
#endif
foreign import ccall "g_date_time_add_years" g_date_time_add_years ::
Ptr DateTime ->
Int32 ->
IO (Ptr DateTime)
dateTimeAddYears ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> m DateTime
dateTimeAddYears :: DateTime -> Int32 -> m DateTime
dateTimeAddYears datetime :: DateTime
datetime years :: Int32
years = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> Int32 -> IO (Ptr DateTime)
g_date_time_add_years Ptr DateTime
datetime' Int32
years
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeAddYears" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeAddYearsMethodInfo
instance (signature ~ (Int32 -> m DateTime), MonadIO m) => O.MethodInfo DateTimeAddYearsMethodInfo DateTime signature where
overloadedMethod _ = dateTimeAddYears
#endif
foreign import ccall "g_date_time_difference" g_date_time_difference ::
Ptr DateTime ->
Ptr DateTime ->
IO Int64
dateTimeDifference ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> DateTime
-> m Int64
dateTimeDifference :: DateTime -> DateTime -> m Int64
dateTimeDifference end :: DateTime
end begin :: DateTime
begin = IO Int64 -> m Int64
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int64 -> m Int64) -> IO Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
end' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
end
Ptr DateTime
begin' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
begin
Int64
result <- Ptr DateTime -> Ptr DateTime -> IO Int64
g_date_time_difference Ptr DateTime
end' Ptr DateTime
begin'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
end
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
begin
Int64 -> IO Int64
forall (m :: * -> *) a. Monad m => a -> m a
return Int64
result
#if ENABLE_OVERLOADING
data DateTimeDifferenceMethodInfo
instance (signature ~ (DateTime -> m Int64), MonadIO m) => O.MethodInfo DateTimeDifferenceMethodInfo DateTime signature where
overloadedMethod _ = dateTimeDifference
#endif
foreign import ccall "g_date_time_format" g_date_time_format ::
Ptr DateTime ->
CString ->
IO CString
dateTimeFormat ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> T.Text
-> m T.Text
dateTimeFormat :: DateTime -> Text -> m Text
dateTimeFormat datetime :: DateTime
datetime format :: Text
format = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
CString
format' <- Text -> IO CString
textToCString Text
format
CString
result <- Ptr DateTime -> CString -> IO CString
g_date_time_format Ptr DateTime
datetime' CString
format'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeFormat" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
format'
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if ENABLE_OVERLOADING
data DateTimeFormatMethodInfo
instance (signature ~ (T.Text -> m T.Text), MonadIO m) => O.MethodInfo DateTimeFormatMethodInfo DateTime signature where
overloadedMethod _ = dateTimeFormat
#endif
foreign import ccall "g_date_time_format_iso8601" g_date_time_format_iso8601 ::
Ptr DateTime ->
IO CString
dateTimeFormatIso8601 ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m T.Text
dateTimeFormatIso8601 :: DateTime -> m Text
dateTimeFormatIso8601 datetime :: DateTime
datetime = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
CString
result <- Ptr DateTime -> IO CString
g_date_time_format_iso8601 Ptr DateTime
datetime'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeFormatIso8601" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if ENABLE_OVERLOADING
data DateTimeFormatIso8601MethodInfo
instance (signature ~ (m T.Text), MonadIO m) => O.MethodInfo DateTimeFormatIso8601MethodInfo DateTime signature where
overloadedMethod _ = dateTimeFormatIso8601
#endif
foreign import ccall "g_date_time_get_day_of_month" g_date_time_get_day_of_month ::
Ptr DateTime ->
IO Int32
dateTimeGetDayOfMonth ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetDayOfMonth :: DateTime -> m Int32
dateTimeGetDayOfMonth datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_day_of_month Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetDayOfMonthMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetDayOfMonthMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetDayOfMonth
#endif
foreign import ccall "g_date_time_get_day_of_week" g_date_time_get_day_of_week ::
Ptr DateTime ->
IO Int32
dateTimeGetDayOfWeek ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetDayOfWeek :: DateTime -> m Int32
dateTimeGetDayOfWeek datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_day_of_week Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetDayOfWeekMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetDayOfWeekMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetDayOfWeek
#endif
foreign import ccall "g_date_time_get_day_of_year" g_date_time_get_day_of_year ::
Ptr DateTime ->
IO Int32
dateTimeGetDayOfYear ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetDayOfYear :: DateTime -> m Int32
dateTimeGetDayOfYear datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_day_of_year Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetDayOfYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetDayOfYearMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetDayOfYear
#endif
foreign import ccall "g_date_time_get_hour" g_date_time_get_hour ::
Ptr DateTime ->
IO Int32
dateTimeGetHour ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetHour :: DateTime -> m Int32
dateTimeGetHour datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_hour Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetHourMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetHourMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetHour
#endif
foreign import ccall "g_date_time_get_microsecond" g_date_time_get_microsecond ::
Ptr DateTime ->
IO Int32
dateTimeGetMicrosecond ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetMicrosecond :: DateTime -> m Int32
dateTimeGetMicrosecond datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_microsecond Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetMicrosecondMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetMicrosecondMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetMicrosecond
#endif
foreign import ccall "g_date_time_get_minute" g_date_time_get_minute ::
Ptr DateTime ->
IO Int32
dateTimeGetMinute ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetMinute :: DateTime -> m Int32
dateTimeGetMinute datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_minute Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetMinuteMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetMinuteMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetMinute
#endif
foreign import ccall "g_date_time_get_month" g_date_time_get_month ::
Ptr DateTime ->
IO Int32
dateTimeGetMonth ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetMonth :: DateTime -> m Int32
dateTimeGetMonth datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_month Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetMonthMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetMonthMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetMonth
#endif
foreign import ccall "g_date_time_get_second" g_date_time_get_second ::
Ptr DateTime ->
IO Int32
dateTimeGetSecond ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetSecond :: DateTime -> m Int32
dateTimeGetSecond datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_second Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetSecondMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetSecondMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetSecond
#endif
foreign import ccall "g_date_time_get_seconds" g_date_time_get_seconds ::
Ptr DateTime ->
IO CDouble
dateTimeGetSeconds ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Double
dateTimeGetSeconds :: DateTime -> m Double
dateTimeGetSeconds datetime :: DateTime
datetime = IO Double -> m Double
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
CDouble
result <- Ptr DateTime -> IO CDouble
g_date_time_get_seconds Ptr DateTime
datetime'
let result' :: Double
result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Double -> IO Double
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'
#if ENABLE_OVERLOADING
data DateTimeGetSecondsMethodInfo
instance (signature ~ (m Double), MonadIO m) => O.MethodInfo DateTimeGetSecondsMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetSeconds
#endif
foreign import ccall "g_date_time_get_timezone" g_date_time_get_timezone ::
Ptr DateTime ->
IO (Ptr GLib.TimeZone.TimeZone)
dateTimeGetTimezone ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m GLib.TimeZone.TimeZone
dateTimeGetTimezone :: DateTime -> m TimeZone
dateTimeGetTimezone datetime :: DateTime
datetime = IO TimeZone -> m TimeZone
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO TimeZone -> m TimeZone) -> IO TimeZone -> m TimeZone
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr TimeZone
result <- Ptr DateTime -> IO (Ptr TimeZone)
g_date_time_get_timezone Ptr DateTime
datetime'
Text -> Ptr TimeZone -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeGetTimezone" Ptr TimeZone
result
TimeZone
result' <- ((ManagedPtr TimeZone -> TimeZone) -> Ptr TimeZone -> IO TimeZone
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr TimeZone -> TimeZone
GLib.TimeZone.TimeZone) Ptr TimeZone
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
TimeZone -> IO TimeZone
forall (m :: * -> *) a. Monad m => a -> m a
return TimeZone
result'
#if ENABLE_OVERLOADING
data DateTimeGetTimezoneMethodInfo
instance (signature ~ (m GLib.TimeZone.TimeZone), MonadIO m) => O.MethodInfo DateTimeGetTimezoneMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetTimezone
#endif
foreign import ccall "g_date_time_get_timezone_abbreviation" g_date_time_get_timezone_abbreviation ::
Ptr DateTime ->
IO CString
dateTimeGetTimezoneAbbreviation ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m T.Text
dateTimeGetTimezoneAbbreviation :: DateTime -> m Text
dateTimeGetTimezoneAbbreviation datetime :: DateTime
datetime = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
CString
result <- Ptr DateTime -> IO CString
g_date_time_get_timezone_abbreviation Ptr DateTime
datetime'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeGetTimezoneAbbreviation" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if ENABLE_OVERLOADING
data DateTimeGetTimezoneAbbreviationMethodInfo
instance (signature ~ (m T.Text), MonadIO m) => O.MethodInfo DateTimeGetTimezoneAbbreviationMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetTimezoneAbbreviation
#endif
foreign import ccall "g_date_time_get_utc_offset" g_date_time_get_utc_offset ::
Ptr DateTime ->
IO Int64
dateTimeGetUtcOffset ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int64
dateTimeGetUtcOffset :: DateTime -> m Int64
dateTimeGetUtcOffset datetime :: DateTime
datetime = IO Int64 -> m Int64
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int64 -> m Int64) -> IO Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int64
result <- Ptr DateTime -> IO Int64
g_date_time_get_utc_offset Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int64 -> IO Int64
forall (m :: * -> *) a. Monad m => a -> m a
return Int64
result
#if ENABLE_OVERLOADING
data DateTimeGetUtcOffsetMethodInfo
instance (signature ~ (m Int64), MonadIO m) => O.MethodInfo DateTimeGetUtcOffsetMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetUtcOffset
#endif
foreign import ccall "g_date_time_get_week_numbering_year" g_date_time_get_week_numbering_year ::
Ptr DateTime ->
IO Int32
dateTimeGetWeekNumberingYear ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetWeekNumberingYear :: DateTime -> m Int32
dateTimeGetWeekNumberingYear datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_week_numbering_year Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetWeekNumberingYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetWeekNumberingYearMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetWeekNumberingYear
#endif
foreign import ccall "g_date_time_get_week_of_year" g_date_time_get_week_of_year ::
Ptr DateTime ->
IO Int32
dateTimeGetWeekOfYear ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetWeekOfYear :: DateTime -> m Int32
dateTimeGetWeekOfYear datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_week_of_year Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetWeekOfYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetWeekOfYearMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetWeekOfYear
#endif
foreign import ccall "g_date_time_get_year" g_date_time_get_year ::
Ptr DateTime ->
IO Int32
dateTimeGetYear ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int32
dateTimeGetYear :: DateTime -> m Int32
dateTimeGetYear datetime :: DateTime
datetime = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int32
result <- Ptr DateTime -> IO Int32
g_date_time_get_year Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
data DateTimeGetYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.MethodInfo DateTimeGetYearMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetYear
#endif
foreign import ccall "g_date_time_get_ymd" g_date_time_get_ymd ::
Ptr DateTime ->
Ptr Int32 ->
Ptr Int32 ->
Ptr Int32 ->
IO ()
dateTimeGetYmd ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m ((Int32, Int32, Int32))
dateTimeGetYmd :: DateTime -> m (Int32, Int32, Int32)
dateTimeGetYmd datetime :: DateTime
datetime = IO (Int32, Int32, Int32) -> m (Int32, Int32, Int32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int32, Int32, Int32) -> m (Int32, Int32, Int32))
-> IO (Int32, Int32, Int32) -> m (Int32, Int32, Int32)
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr Int32
year <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
Ptr Int32
month <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
Ptr Int32
day <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
Ptr DateTime -> Ptr Int32 -> Ptr Int32 -> Ptr Int32 -> IO ()
g_date_time_get_ymd Ptr DateTime
datetime' Ptr Int32
year Ptr Int32
month Ptr Int32
day
Int32
year' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
year
Int32
month' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
month
Int32
day' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
day
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
year
Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
month
Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
day
(Int32, Int32, Int32) -> IO (Int32, Int32, Int32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
year', Int32
month', Int32
day')
#if ENABLE_OVERLOADING
data DateTimeGetYmdMethodInfo
instance (signature ~ (m ((Int32, Int32, Int32))), MonadIO m) => O.MethodInfo DateTimeGetYmdMethodInfo DateTime signature where
overloadedMethod _ = dateTimeGetYmd
#endif
foreign import ccall "g_date_time_is_daylight_savings" g_date_time_is_daylight_savings ::
Ptr DateTime ->
IO CInt
dateTimeIsDaylightSavings ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Bool
dateTimeIsDaylightSavings :: DateTime -> m Bool
dateTimeIsDaylightSavings datetime :: DateTime
datetime = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
CInt
result <- Ptr DateTime -> IO CInt
g_date_time_is_daylight_savings Ptr DateTime
datetime'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= 0) CInt
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if ENABLE_OVERLOADING
data DateTimeIsDaylightSavingsMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo DateTimeIsDaylightSavingsMethodInfo DateTime signature where
overloadedMethod _ = dateTimeIsDaylightSavings
#endif
foreign import ccall "g_date_time_ref" g_date_time_ref ::
Ptr DateTime ->
IO (Ptr DateTime)
dateTimeRef ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m DateTime
dateTimeRef :: DateTime -> m DateTime
dateTimeRef datetime :: DateTime
datetime = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> IO (Ptr DateTime)
g_date_time_ref Ptr DateTime
datetime'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeRef" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeRefMethodInfo
instance (signature ~ (m DateTime), MonadIO m) => O.MethodInfo DateTimeRefMethodInfo DateTime signature where
overloadedMethod _ = dateTimeRef
#endif
foreign import ccall "g_date_time_to_local" g_date_time_to_local ::
Ptr DateTime ->
IO (Ptr DateTime)
dateTimeToLocal ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m DateTime
dateTimeToLocal :: DateTime -> m DateTime
dateTimeToLocal datetime :: DateTime
datetime = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> IO (Ptr DateTime)
g_date_time_to_local Ptr DateTime
datetime'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeToLocal" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeToLocalMethodInfo
instance (signature ~ (m DateTime), MonadIO m) => O.MethodInfo DateTimeToLocalMethodInfo DateTime signature where
overloadedMethod _ = dateTimeToLocal
#endif
foreign import ccall "g_date_time_to_timeval" g_date_time_to_timeval ::
Ptr DateTime ->
Ptr GLib.TimeVal.TimeVal ->
IO CInt
{-# DEPRECATED dateTimeToTimeval ["(Since version 2.62)","'GI.GLib.Structs.TimeVal.TimeVal' is not year-2038-safe. Use"," 'GI.GLib.Structs.DateTime.dateTimeToUnix' instead."] #-}
dateTimeToTimeval ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> GLib.TimeVal.TimeVal
-> m Bool
dateTimeToTimeval :: DateTime -> TimeVal -> m Bool
dateTimeToTimeval datetime :: DateTime
datetime tv :: TimeVal
tv = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr TimeVal
tv' <- TimeVal -> IO (Ptr TimeVal)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeVal
tv
CInt
result <- Ptr DateTime -> Ptr TimeVal -> IO CInt
g_date_time_to_timeval Ptr DateTime
datetime' Ptr TimeVal
tv'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= 0) CInt
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
TimeVal -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeVal
tv
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if ENABLE_OVERLOADING
data DateTimeToTimevalMethodInfo
instance (signature ~ (GLib.TimeVal.TimeVal -> m Bool), MonadIO m) => O.MethodInfo DateTimeToTimevalMethodInfo DateTime signature where
overloadedMethod _ = dateTimeToTimeval
#endif
foreign import ccall "g_date_time_to_timezone" g_date_time_to_timezone ::
Ptr DateTime ->
Ptr GLib.TimeZone.TimeZone ->
IO (Ptr DateTime)
dateTimeToTimezone ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> GLib.TimeZone.TimeZone
-> m DateTime
dateTimeToTimezone :: DateTime -> TimeZone -> m DateTime
dateTimeToTimezone datetime :: DateTime
datetime tz :: TimeZone
tz = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr TimeZone
tz' <- TimeZone -> IO (Ptr TimeZone)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TimeZone
tz
Ptr DateTime
result <- Ptr DateTime -> Ptr TimeZone -> IO (Ptr DateTime)
g_date_time_to_timezone Ptr DateTime
datetime' Ptr TimeZone
tz'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeToTimezone" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeZone
tz
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeToTimezoneMethodInfo
instance (signature ~ (GLib.TimeZone.TimeZone -> m DateTime), MonadIO m) => O.MethodInfo DateTimeToTimezoneMethodInfo DateTime signature where
overloadedMethod _ = dateTimeToTimezone
#endif
foreign import ccall "g_date_time_to_unix" g_date_time_to_unix ::
Ptr DateTime ->
IO Int64
dateTimeToUnix ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Int64
dateTimeToUnix :: DateTime -> m Int64
dateTimeToUnix datetime :: DateTime
datetime = IO Int64 -> m Int64
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int64 -> m Int64) -> IO Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Int64
result <- Ptr DateTime -> IO Int64
g_date_time_to_unix Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Int64 -> IO Int64
forall (m :: * -> *) a. Monad m => a -> m a
return Int64
result
#if ENABLE_OVERLOADING
data DateTimeToUnixMethodInfo
instance (signature ~ (m Int64), MonadIO m) => O.MethodInfo DateTimeToUnixMethodInfo DateTime signature where
overloadedMethod _ = dateTimeToUnix
#endif
foreign import ccall "g_date_time_to_utc" g_date_time_to_utc ::
Ptr DateTime ->
IO (Ptr DateTime)
dateTimeToUtc ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m DateTime
dateTimeToUtc :: DateTime -> m DateTime
dateTimeToUtc datetime :: DateTime
datetime = IO DateTime -> m DateTime
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DateTime -> m DateTime) -> IO DateTime -> m DateTime
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime
result <- Ptr DateTime -> IO (Ptr DateTime)
g_date_time_to_utc Ptr DateTime
datetime'
Text -> Ptr DateTime -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "dateTimeToUtc" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
DateTime -> IO DateTime
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if ENABLE_OVERLOADING
data DateTimeToUtcMethodInfo
instance (signature ~ (m DateTime), MonadIO m) => O.MethodInfo DateTimeToUtcMethodInfo DateTime signature where
overloadedMethod _ = dateTimeToUtc
#endif
foreign import ccall "g_date_time_unref" g_date_time_unref ::
Ptr DateTime ->
IO ()
dateTimeUnref ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m ()
dateTimeUnref :: DateTime -> m ()
dateTimeUnref datetime :: DateTime
datetime = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Ptr DateTime -> IO ()
g_date_time_unref Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if ENABLE_OVERLOADING
data DateTimeUnrefMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo DateTimeUnrefMethodInfo DateTime signature where
overloadedMethod _ = dateTimeUnref
#endif
foreign import ccall "g_date_time_compare" g_date_time_compare ::
Ptr () ->
Ptr () ->
IO Int32
dateTimeCompare ::
(B.CallStack.HasCallStack, MonadIO m) =>
Ptr ()
-> Ptr ()
-> m Int32
dateTimeCompare :: Ptr () -> Ptr () -> m Int32
dateTimeCompare dt1 :: Ptr ()
dt1 dt2 :: Ptr ()
dt2 = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Int32
result <- Ptr () -> Ptr () -> IO Int32
g_date_time_compare Ptr ()
dt1 Ptr ()
dt2
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_equal" g_date_time_equal ::
Ptr () ->
Ptr () ->
IO CInt
dateTimeEqual ::
(B.CallStack.HasCallStack, MonadIO m) =>
Ptr ()
-> Ptr ()
-> m Bool
dateTimeEqual :: Ptr () -> Ptr () -> m Bool
dateTimeEqual dt1 :: Ptr ()
dt1 dt2 :: Ptr ()
dt2 = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
CInt
result <- Ptr () -> Ptr () -> IO CInt
g_date_time_equal Ptr ()
dt1 Ptr ()
dt2
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= 0) CInt
result
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "g_date_time_hash" g_date_time_hash ::
Ptr () ->
IO Word32
dateTimeHash ::
(B.CallStack.HasCallStack, MonadIO m) =>
Ptr ()
-> m Word32
dateTimeHash :: Ptr () -> m Word32
dateTimeHash datetime :: Ptr ()
datetime = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
Word32
result <- Ptr () -> IO Word32
g_date_time_hash Ptr ()
datetime
Word32 -> IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type family ResolveDateTimeMethod (t :: Symbol) (o :: *) :: * where
ResolveDateTimeMethod "add" o = DateTimeAddMethodInfo
ResolveDateTimeMethod "addDays" o = DateTimeAddDaysMethodInfo
ResolveDateTimeMethod "addFull" o = DateTimeAddFullMethodInfo
ResolveDateTimeMethod "addHours" o = DateTimeAddHoursMethodInfo
ResolveDateTimeMethod "addMinutes" o = DateTimeAddMinutesMethodInfo
ResolveDateTimeMethod "addMonths" o = DateTimeAddMonthsMethodInfo
ResolveDateTimeMethod "addSeconds" o = DateTimeAddSecondsMethodInfo
ResolveDateTimeMethod "addWeeks" o = DateTimeAddWeeksMethodInfo
ResolveDateTimeMethod "addYears" o = DateTimeAddYearsMethodInfo
ResolveDateTimeMethod "difference" o = DateTimeDifferenceMethodInfo
ResolveDateTimeMethod "format" o = DateTimeFormatMethodInfo
ResolveDateTimeMethod "formatIso8601" o = DateTimeFormatIso8601MethodInfo
ResolveDateTimeMethod "isDaylightSavings" o = DateTimeIsDaylightSavingsMethodInfo
ResolveDateTimeMethod "ref" o = DateTimeRefMethodInfo
ResolveDateTimeMethod "toLocal" o = DateTimeToLocalMethodInfo
ResolveDateTimeMethod "toTimeval" o = DateTimeToTimevalMethodInfo
ResolveDateTimeMethod "toTimezone" o = DateTimeToTimezoneMethodInfo
ResolveDateTimeMethod "toUnix" o = DateTimeToUnixMethodInfo
ResolveDateTimeMethod "toUtc" o = DateTimeToUtcMethodInfo
ResolveDateTimeMethod "unref" o = DateTimeUnrefMethodInfo
ResolveDateTimeMethod "getDayOfMonth" o = DateTimeGetDayOfMonthMethodInfo
ResolveDateTimeMethod "getDayOfWeek" o = DateTimeGetDayOfWeekMethodInfo
ResolveDateTimeMethod "getDayOfYear" o = DateTimeGetDayOfYearMethodInfo
ResolveDateTimeMethod "getHour" o = DateTimeGetHourMethodInfo
ResolveDateTimeMethod "getMicrosecond" o = DateTimeGetMicrosecondMethodInfo
ResolveDateTimeMethod "getMinute" o = DateTimeGetMinuteMethodInfo
ResolveDateTimeMethod "getMonth" o = DateTimeGetMonthMethodInfo
ResolveDateTimeMethod "getSecond" o = DateTimeGetSecondMethodInfo
ResolveDateTimeMethod "getSeconds" o = DateTimeGetSecondsMethodInfo
ResolveDateTimeMethod "getTimezone" o = DateTimeGetTimezoneMethodInfo
ResolveDateTimeMethod "getTimezoneAbbreviation" o = DateTimeGetTimezoneAbbreviationMethodInfo
ResolveDateTimeMethod "getUtcOffset" o = DateTimeGetUtcOffsetMethodInfo
ResolveDateTimeMethod "getWeekNumberingYear" o = DateTimeGetWeekNumberingYearMethodInfo
ResolveDateTimeMethod "getWeekOfYear" o = DateTimeGetWeekOfYearMethodInfo
ResolveDateTimeMethod "getYear" o = DateTimeGetYearMethodInfo
ResolveDateTimeMethod "getYmd" o = DateTimeGetYmdMethodInfo
ResolveDateTimeMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDateTimeMethod t DateTime, O.MethodInfo info DateTime p) => O.IsLabelProxy t (DateTime -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveDateTimeMethod t DateTime, O.MethodInfo info DateTime p) => O.IsLabel t (DateTime -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
#endif