{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GLib.Structs.DateTime
(
DateTime(..) ,
#if defined(ENABLE_OVERLOADING)
ResolveDateTimeMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
DateTimeAddMethodInfo ,
#endif
dateTimeAdd ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddDaysMethodInfo ,
#endif
dateTimeAddDays ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddFullMethodInfo ,
#endif
dateTimeAddFull ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddHoursMethodInfo ,
#endif
dateTimeAddHours ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddMinutesMethodInfo ,
#endif
dateTimeAddMinutes ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddMonthsMethodInfo ,
#endif
dateTimeAddMonths ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddSecondsMethodInfo ,
#endif
dateTimeAddSeconds ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddWeeksMethodInfo ,
#endif
dateTimeAddWeeks ,
#if defined(ENABLE_OVERLOADING)
DateTimeAddYearsMethodInfo ,
#endif
dateTimeAddYears ,
#if defined(ENABLE_OVERLOADING)
DateTimeCompareMethodInfo ,
#endif
dateTimeCompare ,
#if defined(ENABLE_OVERLOADING)
DateTimeDifferenceMethodInfo ,
#endif
dateTimeDifference ,
#if defined(ENABLE_OVERLOADING)
DateTimeEqualMethodInfo ,
#endif
dateTimeEqual ,
#if defined(ENABLE_OVERLOADING)
DateTimeFormatMethodInfo ,
#endif
dateTimeFormat ,
#if defined(ENABLE_OVERLOADING)
DateTimeFormatIso8601MethodInfo ,
#endif
dateTimeFormatIso8601 ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetDayOfMonthMethodInfo ,
#endif
dateTimeGetDayOfMonth ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetDayOfWeekMethodInfo ,
#endif
dateTimeGetDayOfWeek ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetDayOfYearMethodInfo ,
#endif
dateTimeGetDayOfYear ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetHourMethodInfo ,
#endif
dateTimeGetHour ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetMicrosecondMethodInfo ,
#endif
dateTimeGetMicrosecond ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetMinuteMethodInfo ,
#endif
dateTimeGetMinute ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetMonthMethodInfo ,
#endif
dateTimeGetMonth ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetSecondMethodInfo ,
#endif
dateTimeGetSecond ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetSecondsMethodInfo ,
#endif
dateTimeGetSeconds ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetTimezoneMethodInfo ,
#endif
dateTimeGetTimezone ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetTimezoneAbbreviationMethodInfo,
#endif
dateTimeGetTimezoneAbbreviation ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetUtcOffsetMethodInfo ,
#endif
dateTimeGetUtcOffset ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetWeekNumberingYearMethodInfo ,
#endif
dateTimeGetWeekNumberingYear ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetWeekOfYearMethodInfo ,
#endif
dateTimeGetWeekOfYear ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetYearMethodInfo ,
#endif
dateTimeGetYear ,
#if defined(ENABLE_OVERLOADING)
DateTimeGetYmdMethodInfo ,
#endif
dateTimeGetYmd ,
#if defined(ENABLE_OVERLOADING)
DateTimeHashMethodInfo ,
#endif
dateTimeHash ,
#if defined(ENABLE_OVERLOADING)
DateTimeIsDaylightSavingsMethodInfo ,
#endif
dateTimeIsDaylightSavings ,
dateTimeNew ,
dateTimeNewFromIso8601 ,
dateTimeNewFromTimevalLocal ,
dateTimeNewFromTimevalUtc ,
dateTimeNewFromUnixLocal ,
dateTimeNewFromUnixUtc ,
dateTimeNewLocal ,
dateTimeNewNow ,
dateTimeNewNowLocal ,
dateTimeNewNowUtc ,
dateTimeNewUtc ,
#if defined(ENABLE_OVERLOADING)
DateTimeRefMethodInfo ,
#endif
dateTimeRef ,
#if defined(ENABLE_OVERLOADING)
DateTimeToLocalMethodInfo ,
#endif
dateTimeToLocal ,
#if defined(ENABLE_OVERLOADING)
DateTimeToTimevalMethodInfo ,
#endif
dateTimeToTimeval ,
#if defined(ENABLE_OVERLOADING)
DateTimeToTimezoneMethodInfo ,
#endif
dateTimeToTimezone ,
#if defined(ENABLE_OVERLOADING)
DateTimeToUnixMethodInfo ,
#endif
dateTimeToUnix ,
#if defined(ENABLE_OVERLOADING)
DateTimeToUtcMethodInfo ,
#endif
dateTimeToUtc ,
#if defined(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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
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 qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import {-# SOURCE #-} qualified GI.GLib.Structs.TimeVal as GLib.TimeVal
import {-# SOURCE #-} qualified GI.GLib.Structs.TimeZone as GLib.TimeZone
newtype DateTime = DateTime (SP.ManagedPtr DateTime)
deriving (DateTime -> DateTime -> Bool
(DateTime -> DateTime -> Bool)
-> (DateTime -> DateTime -> Bool) -> Eq DateTime
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DateTime -> DateTime -> Bool
== :: DateTime -> DateTime -> Bool
$c/= :: DateTime -> DateTime -> Bool
/= :: DateTime -> DateTime -> Bool
Eq)
instance SP.ManagedPtrNewtype DateTime where
toManagedPtr :: DateTime -> ManagedPtr DateTime
toManagedPtr (DateTime ManagedPtr DateTime
p) = ManagedPtr DateTime
p
foreign import ccall "g_date_time_get_type" c_g_date_time_get_type ::
IO GType
type instance O.ParentTypes DateTime = '[]
instance O.HasParentTypes DateTime
instance B.Types.TypedObject DateTime where
glibType :: IO GType
glibType = IO GType
c_g_date_time_get_type
instance B.Types.GBoxed DateTime
instance B.GValue.IsGValue (Maybe DateTime) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_g_date_time_get_type
gvalueSet_ :: Ptr GValue -> Maybe DateTime -> IO ()
gvalueSet_ Ptr GValue
gv Maybe DateTime
P.Nothing = Ptr GValue -> Ptr DateTime -> IO ()
forall a. Ptr GValue -> Ptr a -> IO ()
B.GValue.set_boxed Ptr GValue
gv (Ptr DateTime
forall a. Ptr a
FP.nullPtr :: FP.Ptr DateTime)
gvalueSet_ Ptr GValue
gv (P.Just DateTime
obj) = DateTime -> (Ptr DateTime -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr DateTime
obj (Ptr GValue -> Ptr DateTime -> IO ()
forall a. Ptr GValue -> Ptr a -> IO ()
B.GValue.set_boxed Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe DateTime)
gvalueGet_ Ptr GValue
gv = do
Ptr DateTime
ptr <- Ptr GValue -> IO (Ptr DateTime)
forall b. Ptr GValue -> IO (Ptr b)
B.GValue.get_boxed Ptr GValue
gv :: IO (Ptr DateTime)
if Ptr DateTime
ptr Ptr DateTime -> Ptr DateTime -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr DateTime
forall a. Ptr a
FP.nullPtr
then DateTime -> Maybe DateTime
forall a. a -> Maybe a
P.Just (DateTime -> Maybe DateTime) -> IO DateTime -> IO (Maybe DateTime)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
B.ManagedPtr.newBoxed ManagedPtr DateTime -> DateTime
DateTime Ptr DateTime
ptr
else Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
forall a. Maybe a
P.Nothing
#if defined(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 (Maybe DateTime)
dateTimeNew :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
TimeZone
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m (Maybe DateTime)
dateTimeNew TimeZone
tz Int32
year Int32
month Int32
day Int32
hour Int32
minute Double
seconds = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeZone
tz
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Text -> Maybe TimeZone -> m (Maybe DateTime)
dateTimeNewFromIso8601 Text
text Maybe TimeZone
defaultTz = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
Maybe TimeZone
Nothing -> Ptr TimeZone -> IO (Ptr TimeZone)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr TimeZone
forall a. Ptr a
nullPtr
Just 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 a. a -> IO a
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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)","t'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 (Maybe DateTime)
dateTimeNewFromTimevalLocal :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
TimeVal -> m (Maybe DateTime)
dateTimeNewFromTimevalLocal TimeVal
tv = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
TimeVal -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeVal
tv
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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)","t'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 (Maybe DateTime)
dateTimeNewFromTimevalUtc :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
TimeVal -> m (Maybe DateTime)
dateTimeNewFromTimevalUtc TimeVal
tv = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
TimeVal -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeVal
tv
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewFromUnixLocal :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Int64 -> m (Maybe DateTime)
dateTimeNewFromUnixLocal Int64
t = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
Ptr DateTime
result <- Int64 -> IO (Ptr DateTime)
g_date_time_new_from_unix_local Int64
t
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewFromUnixUtc :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Int64 -> m (Maybe DateTime)
dateTimeNewFromUnixUtc Int64
t = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
Ptr DateTime
result <- Int64 -> IO (Ptr DateTime)
g_date_time_new_from_unix_utc Int64
t
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewLocal :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Int32
-> Int32 -> Int32 -> Int32 -> Int32 -> Double -> m (Maybe DateTime)
dateTimeNewLocal Int32
year Int32
month Int32
day Int32
hour Int32
minute Double
seconds = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewNow :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
TimeZone -> m (Maybe DateTime)
dateTimeNewNow TimeZone
tz = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeZone
tz
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewNowLocal :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
m (Maybe DateTime)
dateTimeNewNowLocal = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
Ptr DateTime
result <- IO (Ptr DateTime)
g_date_time_new_now_local
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewNowUtc :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
m (Maybe DateTime)
dateTimeNewNowUtc = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
Ptr DateTime
result <- IO (Ptr DateTime)
g_date_time_new_now_utc
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeNewUtc :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Int32
-> Int32 -> Int32 -> Int32 -> Int32 -> Double -> m (Maybe DateTime)
dateTimeNewUtc Int32
year Int32
month Int32
day Int32
hour Int32
minute Double
seconds = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(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 (Maybe DateTime)
dateTimeAdd :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int64 -> m (Maybe DateTime)
dateTimeAdd DateTime
datetime Int64
timespan = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddMethodInfo
instance (signature ~ (Int64 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddMethodInfo DateTime signature where
overloadedMethod = dateTimeAdd
instance O.OverloadedMethodInfo DateTimeAddMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAdd",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddDays :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int32 -> m (Maybe DateTime)
dateTimeAddDays DateTime
datetime Int32
days = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddDaysMethodInfo
instance (signature ~ (Int32 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddDaysMethodInfo DateTime signature where
overloadedMethod = dateTimeAddDays
instance O.OverloadedMethodInfo DateTimeAddDaysMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddDays",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddFull :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Double
-> m (Maybe DateTime)
dateTimeAddFull DateTime
datetime Int32
years Int32
months Int32
days Int32
hours Int32
minutes Double
seconds = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddFullMethodInfo
instance (signature ~ (Int32 -> Int32 -> Int32 -> Int32 -> Int32 -> Double -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddFullMethodInfo DateTime signature where
overloadedMethod = dateTimeAddFull
instance O.OverloadedMethodInfo DateTimeAddFullMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddFull",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddHours :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int32 -> m (Maybe DateTime)
dateTimeAddHours DateTime
datetime Int32
hours = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddHoursMethodInfo
instance (signature ~ (Int32 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddHoursMethodInfo DateTime signature where
overloadedMethod = dateTimeAddHours
instance O.OverloadedMethodInfo DateTimeAddHoursMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddHours",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddMinutes :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int32 -> m (Maybe DateTime)
dateTimeAddMinutes DateTime
datetime Int32
minutes = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddMinutesMethodInfo
instance (signature ~ (Int32 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddMinutesMethodInfo DateTime signature where
overloadedMethod = dateTimeAddMinutes
instance O.OverloadedMethodInfo DateTimeAddMinutesMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddMinutes",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddMonths :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int32 -> m (Maybe DateTime)
dateTimeAddMonths DateTime
datetime Int32
months = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddMonthsMethodInfo
instance (signature ~ (Int32 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddMonthsMethodInfo DateTime signature where
overloadedMethod = dateTimeAddMonths
instance O.OverloadedMethodInfo DateTimeAddMonthsMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddMonths",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddSeconds :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Double -> m (Maybe DateTime)
dateTimeAddSeconds DateTime
datetime Double
seconds = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddSecondsMethodInfo
instance (signature ~ (Double -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddSecondsMethodInfo DateTime signature where
overloadedMethod = dateTimeAddSeconds
instance O.OverloadedMethodInfo DateTimeAddSecondsMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddSeconds",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddWeeks :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int32 -> m (Maybe DateTime)
dateTimeAddWeeks DateTime
datetime Int32
weeks = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddWeeksMethodInfo
instance (signature ~ (Int32 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddWeeksMethodInfo DateTime signature where
overloadedMethod = dateTimeAddWeeks
instance O.OverloadedMethodInfo DateTimeAddWeeksMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddWeeks",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeAddYears :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Int32 -> m (Maybe DateTime)
dateTimeAddYears DateTime
datetime Int32
years = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeAddYearsMethodInfo
instance (signature ~ (Int32 -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeAddYearsMethodInfo DateTime signature where
overloadedMethod = dateTimeAddYears
instance O.OverloadedMethodInfo DateTimeAddYearsMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeAddYears",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeAddYears"
})
#endif
foreign import ccall "g_date_time_compare" g_date_time_compare ::
Ptr DateTime ->
Ptr DateTime ->
IO Int32
dateTimeCompare ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> DateTime
-> m Int32
dateTimeCompare :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> DateTime -> m Int32
dateTimeCompare DateTime
dt1 DateTime
dt2 = IO Int32 -> m Int32
forall a. IO a -> m a
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
dt1' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
dt1
Ptr DateTime
dt2' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
dt2
Int32
result <- Ptr DateTime -> Ptr DateTime -> IO Int32
g_date_time_compare Ptr DateTime
dt1' Ptr DateTime
dt2'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
dt1
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
dt2
Int32 -> IO Int32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeCompareMethodInfo
instance (signature ~ (DateTime -> m Int32), MonadIO m) => O.OverloadedMethod DateTimeCompareMethodInfo DateTime signature where
overloadedMethod = dateTimeCompare
instance O.OverloadedMethodInfo DateTimeCompareMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeCompare",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeCompare"
})
#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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> DateTime -> m Int64
dateTimeDifference DateTime
end DateTime
begin = IO Int64 -> m Int64
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int64
result
#if defined(ENABLE_OVERLOADING)
data DateTimeDifferenceMethodInfo
instance (signature ~ (DateTime -> m Int64), MonadIO m) => O.OverloadedMethod DateTimeDifferenceMethodInfo DateTime signature where
overloadedMethod = dateTimeDifference
instance O.OverloadedMethodInfo DateTimeDifferenceMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeDifference",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeDifference"
})
#endif
foreign import ccall "g_date_time_equal" g_date_time_equal ::
Ptr DateTime ->
Ptr DateTime ->
IO CInt
dateTimeEqual ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> DateTime
-> m Bool
dateTimeEqual :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> DateTime -> m Bool
dateTimeEqual DateTime
dt1 DateTime
dt2 = IO Bool -> m Bool
forall a. IO a -> m a
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
dt1' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
dt1
Ptr DateTime
dt2' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
dt2
CInt
result <- Ptr DateTime -> Ptr DateTime -> IO CInt
g_date_time_equal Ptr DateTime
dt1' Ptr DateTime
dt2'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
dt1
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
dt2
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeEqualMethodInfo
instance (signature ~ (DateTime -> m Bool), MonadIO m) => O.OverloadedMethod DateTimeEqualMethodInfo DateTime signature where
overloadedMethod = dateTimeEqual
instance O.OverloadedMethodInfo DateTimeEqualMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeEqual",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeEqual"
})
#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 (Maybe T.Text)
dateTimeFormat :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> Text -> m (Maybe Text)
dateTimeFormat DateTime
datetime Text
format = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe 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'
Maybe Text
maybeResult <- CString -> (CString -> IO Text) -> IO (Maybe Text)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
result ((CString -> IO Text) -> IO (Maybe Text))
-> (CString -> IO Text) -> IO (Maybe Text)
forall a b. (a -> b) -> a -> b
$ \CString
result' -> do
Text
result'' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result'
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
format'
Maybe Text -> IO (Maybe Text)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Text
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeFormatMethodInfo
instance (signature ~ (T.Text -> m (Maybe T.Text)), MonadIO m) => O.OverloadedMethod DateTimeFormatMethodInfo DateTime signature where
overloadedMethod = dateTimeFormat
instance O.OverloadedMethodInfo DateTimeFormatMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeFormat",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe T.Text)
dateTimeFormatIso8601 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m (Maybe Text)
dateTimeFormatIso8601 DateTime
datetime = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe 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'
Maybe Text
maybeResult <- CString -> (CString -> IO Text) -> IO (Maybe Text)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
result ((CString -> IO Text) -> IO (Maybe Text))
-> (CString -> IO Text) -> IO (Maybe Text)
forall a b. (a -> b) -> a -> b
$ \CString
result' -> do
Text
result'' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result'
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe Text -> IO (Maybe Text)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Text
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeFormatIso8601MethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m) => O.OverloadedMethod DateTimeFormatIso8601MethodInfo DateTime signature where
overloadedMethod = dateTimeFormatIso8601
instance O.OverloadedMethodInfo DateTimeFormatIso8601MethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeFormatIso8601",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetDayOfMonth DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetDayOfMonthMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetDayOfMonthMethodInfo DateTime signature where
overloadedMethod = dateTimeGetDayOfMonth
instance O.OverloadedMethodInfo DateTimeGetDayOfMonthMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetDayOfMonth",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetDayOfWeek DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetDayOfWeekMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetDayOfWeekMethodInfo DateTime signature where
overloadedMethod = dateTimeGetDayOfWeek
instance O.OverloadedMethodInfo DateTimeGetDayOfWeekMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetDayOfWeek",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetDayOfYear DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetDayOfYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetDayOfYearMethodInfo DateTime signature where
overloadedMethod = dateTimeGetDayOfYear
instance O.OverloadedMethodInfo DateTimeGetDayOfYearMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetDayOfYear",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetHour DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetHourMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetHourMethodInfo DateTime signature where
overloadedMethod = dateTimeGetHour
instance O.OverloadedMethodInfo DateTimeGetHourMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetHour",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetMicrosecond DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetMicrosecondMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetMicrosecondMethodInfo DateTime signature where
overloadedMethod = dateTimeGetMicrosecond
instance O.OverloadedMethodInfo DateTimeGetMicrosecondMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetMicrosecond",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetMinute DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetMinuteMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetMinuteMethodInfo DateTime signature where
overloadedMethod = dateTimeGetMinute
instance O.OverloadedMethodInfo DateTimeGetMinuteMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetMinute",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetMonth DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetMonthMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetMonthMethodInfo DateTime signature where
overloadedMethod = dateTimeGetMonth
instance O.OverloadedMethodInfo DateTimeGetMonthMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetMonth",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetSecond DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetSecondMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetSecondMethodInfo DateTime signature where
overloadedMethod = dateTimeGetSecond
instance O.OverloadedMethodInfo DateTimeGetSecondMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetSecond",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Double
dateTimeGetSeconds DateTime
datetime = IO Double -> m Double
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Double
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeGetSecondsMethodInfo
instance (signature ~ (m Double), MonadIO m) => O.OverloadedMethod DateTimeGetSecondsMethodInfo DateTime signature where
overloadedMethod = dateTimeGetSeconds
instance O.OverloadedMethodInfo DateTimeGetSecondsMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetSeconds",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m TimeZone
dateTimeGetTimezone DateTime
datetime = IO TimeZone -> m TimeZone
forall a. IO a -> m a
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 Text
"dateTimeGetTimezone" Ptr TimeZone
result
TimeZone
result' <- ((ManagedPtr TimeZone -> TimeZone) -> Ptr TimeZone -> IO TimeZone
forall a.
(HasCallStack, GBoxed 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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return TimeZone
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeGetTimezoneMethodInfo
instance (signature ~ (m GLib.TimeZone.TimeZone), MonadIO m) => O.OverloadedMethod DateTimeGetTimezoneMethodInfo DateTime signature where
overloadedMethod = dateTimeGetTimezone
instance O.OverloadedMethodInfo DateTimeGetTimezoneMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetTimezone",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Text
dateTimeGetTimezoneAbbreviation DateTime
datetime = IO Text -> m Text
forall a. IO a -> m a
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 Text
"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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeGetTimezoneAbbreviationMethodInfo
instance (signature ~ (m T.Text), MonadIO m) => O.OverloadedMethod DateTimeGetTimezoneAbbreviationMethodInfo DateTime signature where
overloadedMethod = dateTimeGetTimezoneAbbreviation
instance O.OverloadedMethodInfo DateTimeGetTimezoneAbbreviationMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetTimezoneAbbreviation",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int64
dateTimeGetUtcOffset DateTime
datetime = IO Int64 -> m Int64
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int64
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetUtcOffsetMethodInfo
instance (signature ~ (m Int64), MonadIO m) => O.OverloadedMethod DateTimeGetUtcOffsetMethodInfo DateTime signature where
overloadedMethod = dateTimeGetUtcOffset
instance O.OverloadedMethodInfo DateTimeGetUtcOffsetMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetUtcOffset",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetWeekNumberingYear DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetWeekNumberingYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetWeekNumberingYearMethodInfo DateTime signature where
overloadedMethod = dateTimeGetWeekNumberingYear
instance O.OverloadedMethodInfo DateTimeGetWeekNumberingYearMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetWeekNumberingYear",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetWeekOfYear DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetWeekOfYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetWeekOfYearMethodInfo DateTime signature where
overloadedMethod = dateTimeGetWeekOfYear
instance O.OverloadedMethodInfo DateTimeGetWeekOfYearMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetWeekOfYear",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int32
dateTimeGetYear DateTime
datetime = IO Int32 -> m Int32
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeGetYearMethodInfo
instance (signature ~ (m Int32), MonadIO m) => O.OverloadedMethod DateTimeGetYearMethodInfo DateTime signature where
overloadedMethod = dateTimeGetYear
instance O.OverloadedMethodInfo DateTimeGetYearMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetYear",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m (Int32, Int32, Int32)
dateTimeGetYmd DateTime
datetime = IO (Int32, Int32, Int32) -> m (Int32, Int32, Int32)
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
year', Int32
month', Int32
day')
#if defined(ENABLE_OVERLOADING)
data DateTimeGetYmdMethodInfo
instance (signature ~ (m ((Int32, Int32, Int32))), MonadIO m) => O.OverloadedMethod DateTimeGetYmdMethodInfo DateTime signature where
overloadedMethod = dateTimeGetYmd
instance O.OverloadedMethodInfo DateTimeGetYmdMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeGetYmd",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeGetYmd"
})
#endif
foreign import ccall "g_date_time_hash" g_date_time_hash ::
Ptr DateTime ->
IO Word32
dateTimeHash ::
(B.CallStack.HasCallStack, MonadIO m) =>
DateTime
-> m Word32
dateTimeHash :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Word32
dateTimeHash DateTime
datetime = IO Word32 -> m Word32
forall a. IO a -> m a
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
Ptr DateTime
datetime' <- DateTime -> IO (Ptr DateTime)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr DateTime
datetime
Word32
result <- Ptr DateTime -> IO Word32
g_date_time_hash Ptr DateTime
datetime'
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result
#if defined(ENABLE_OVERLOADING)
data DateTimeHashMethodInfo
instance (signature ~ (m Word32), MonadIO m) => O.OverloadedMethod DateTimeHashMethodInfo DateTime signature where
overloadedMethod = dateTimeHash
instance O.OverloadedMethodInfo DateTimeHashMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeHash",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeHash"
})
#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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Bool
dateTimeIsDaylightSavings DateTime
datetime = IO Bool -> m Bool
forall a. IO a -> m a
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
/= CInt
0) CInt
result
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeIsDaylightSavingsMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.OverloadedMethod DateTimeIsDaylightSavingsMethodInfo DateTime signature where
overloadedMethod = dateTimeIsDaylightSavings
instance O.OverloadedMethodInfo DateTimeIsDaylightSavingsMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeIsDaylightSavings",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m DateTime
dateTimeRef DateTime
datetime = IO DateTime -> m DateTime
forall a. IO a -> m a
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 Text
"dateTimeRef" Ptr DateTime
result
DateTime
result' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed 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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeRefMethodInfo
instance (signature ~ (m DateTime), MonadIO m) => O.OverloadedMethod DateTimeRefMethodInfo DateTime signature where
overloadedMethod = dateTimeRef
instance O.OverloadedMethodInfo DateTimeRefMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeRef",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeToLocal :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m (Maybe DateTime)
dateTimeToLocal DateTime
datetime = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeToLocalMethodInfo
instance (signature ~ (m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeToLocalMethodInfo DateTime signature where
overloadedMethod = dateTimeToLocal
instance O.OverloadedMethodInfo DateTimeToLocalMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeToLocal",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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)","t'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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> TimeVal -> m Bool
dateTimeToTimeval DateTime
datetime TimeVal
tv = IO Bool -> m Bool
forall a. IO a -> m a
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
/= CInt
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data DateTimeToTimevalMethodInfo
instance (signature ~ (GLib.TimeVal.TimeVal -> m Bool), MonadIO m) => O.OverloadedMethod DateTimeToTimevalMethodInfo DateTime signature where
overloadedMethod = dateTimeToTimeval
instance O.OverloadedMethodInfo DateTimeToTimevalMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeToTimeval",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeToTimezone :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> TimeZone -> m (Maybe DateTime)
dateTimeToTimezone DateTime
datetime TimeZone
tz = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
TimeZone -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TimeZone
tz
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeToTimezoneMethodInfo
instance (signature ~ (GLib.TimeZone.TimeZone -> m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeToTimezoneMethodInfo DateTime signature where
overloadedMethod = dateTimeToTimezone
instance O.OverloadedMethodInfo DateTimeToTimezoneMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeToTimezone",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m Int64
dateTimeToUnix DateTime
datetime = IO Int64 -> m Int64
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int64
result
#if defined(ENABLE_OVERLOADING)
data DateTimeToUnixMethodInfo
instance (signature ~ (m Int64), MonadIO m) => O.OverloadedMethod DateTimeToUnixMethodInfo DateTime signature where
overloadedMethod = dateTimeToUnix
instance O.OverloadedMethodInfo DateTimeToUnixMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeToUnix",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 (Maybe DateTime)
dateTimeToUtc :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
DateTime -> m (Maybe DateTime)
dateTimeToUtc DateTime
datetime = IO (Maybe DateTime) -> m (Maybe DateTime)
forall a. IO a -> m a
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
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'
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
$ \Ptr DateTime
result' -> do
DateTime
result'' <- ((ManagedPtr DateTime -> DateTime) -> Ptr DateTime -> IO DateTime
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr DateTime -> DateTime
DateTime) Ptr DateTime
result'
DateTime -> IO DateTime
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return DateTime
result''
DateTime -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr DateTime
datetime
Maybe DateTime -> IO (Maybe DateTime)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe DateTime
maybeResult
#if defined(ENABLE_OVERLOADING)
data DateTimeToUtcMethodInfo
instance (signature ~ (m (Maybe DateTime)), MonadIO m) => O.OverloadedMethod DateTimeToUtcMethodInfo DateTime signature where
overloadedMethod = dateTimeToUtc
instance O.OverloadedMethodInfo DateTimeToUtcMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeToUtc",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v: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 :: forall (m :: * -> *). (HasCallStack, MonadIO m) => DateTime -> m ()
dateTimeUnref DateTime
datetime = IO () -> m ()
forall a. IO a -> m a
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 a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data DateTimeUnrefMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.OverloadedMethod DateTimeUnrefMethodInfo DateTime signature where
overloadedMethod = dateTimeUnref
instance O.OverloadedMethodInfo DateTimeUnrefMethodInfo DateTime where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GLib.Structs.DateTime.dateTimeUnref",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-glib-2.0.27/docs/GI-GLib-Structs-DateTime.html#v:dateTimeUnref"
})
#endif
#if defined(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 "compare" o = DateTimeCompareMethodInfo
ResolveDateTimeMethod "difference" o = DateTimeDifferenceMethodInfo
ResolveDateTimeMethod "equal" o = DateTimeEqualMethodInfo
ResolveDateTimeMethod "format" o = DateTimeFormatMethodInfo
ResolveDateTimeMethod "formatIso8601" o = DateTimeFormatIso8601MethodInfo
ResolveDateTimeMethod "hash" o = DateTimeHashMethodInfo
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.OverloadedMethod info DateTime p) => OL.IsLabel t (DateTime -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveDateTimeMethod t DateTime, O.OverloadedMethod info DateTime p, R.HasField t DateTime p) => R.HasField t DateTime p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveDateTimeMethod t DateTime, O.OverloadedMethodInfo info DateTime) => OL.IsLabel t (O.MethodProxy info DateTime) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif