{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.OSTree.Objects.SysrootUpgrader
(
SysrootUpgrader(..) ,
IsSysrootUpgrader ,
toSysrootUpgrader ,
#if defined(ENABLE_OVERLOADING)
ResolveSysrootUpgraderMethod ,
#endif
sysrootUpgraderCheckTimestamps ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderDeployMethodInfo ,
#endif
sysrootUpgraderDeploy ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderDupOriginMethodInfo ,
#endif
sysrootUpgraderDupOrigin ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderGetOriginMethodInfo ,
#endif
sysrootUpgraderGetOrigin ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderGetOriginDescriptionMethodInfo,
#endif
sysrootUpgraderGetOriginDescription ,
sysrootUpgraderNew ,
sysrootUpgraderNewForOs ,
sysrootUpgraderNewForOsWithFlags ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderPullMethodInfo ,
#endif
sysrootUpgraderPull ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderPullOneDirMethodInfo ,
#endif
sysrootUpgraderPullOneDir ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderSetOriginMethodInfo ,
#endif
sysrootUpgraderSetOrigin ,
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderFlagsPropertyInfo ,
#endif
constructSysrootUpgraderFlags ,
getSysrootUpgraderFlags ,
#if defined(ENABLE_OVERLOADING)
sysrootUpgraderFlags ,
#endif
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderOsnamePropertyInfo ,
#endif
constructSysrootUpgraderOsname ,
getSysrootUpgraderOsname ,
#if defined(ENABLE_OVERLOADING)
sysrootUpgraderOsname ,
#endif
#if defined(ENABLE_OVERLOADING)
SysrootUpgraderSysrootPropertyInfo ,
#endif
constructSysrootUpgraderSysroot ,
getSysrootUpgraderSysroot ,
#if defined(ENABLE_OVERLOADING)
sysrootUpgraderSysroot ,
#endif
) 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.Kind as DK
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 qualified GI.GLib.Structs.KeyFile as GLib.KeyFile
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gio.Interfaces.Initable as Gio.Initable
import qualified GI.Gio.Objects.Cancellable as Gio.Cancellable
import {-# SOURCE #-} qualified GI.OSTree.Flags as OSTree.Flags
import {-# SOURCE #-} qualified GI.OSTree.Objects.AsyncProgress as OSTree.AsyncProgress
import {-# SOURCE #-} qualified GI.OSTree.Objects.Repo as OSTree.Repo
import {-# SOURCE #-} qualified GI.OSTree.Objects.Sysroot as OSTree.Sysroot
newtype SysrootUpgrader = SysrootUpgrader (SP.ManagedPtr SysrootUpgrader)
deriving (SysrootUpgrader -> SysrootUpgrader -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SysrootUpgrader -> SysrootUpgrader -> Bool
$c/= :: SysrootUpgrader -> SysrootUpgrader -> Bool
== :: SysrootUpgrader -> SysrootUpgrader -> Bool
$c== :: SysrootUpgrader -> SysrootUpgrader -> Bool
Eq)
instance SP.ManagedPtrNewtype SysrootUpgrader where
toManagedPtr :: SysrootUpgrader -> ManagedPtr SysrootUpgrader
toManagedPtr (SysrootUpgrader ManagedPtr SysrootUpgrader
p) = ManagedPtr SysrootUpgrader
p
foreign import ccall "ostree_sysroot_upgrader_get_type"
c_ostree_sysroot_upgrader_get_type :: IO B.Types.GType
instance B.Types.TypedObject SysrootUpgrader where
glibType :: IO GType
glibType = IO GType
c_ostree_sysroot_upgrader_get_type
instance B.Types.GObject SysrootUpgrader
class (SP.GObject o, O.IsDescendantOf SysrootUpgrader o) => IsSysrootUpgrader o
instance (SP.GObject o, O.IsDescendantOf SysrootUpgrader o) => IsSysrootUpgrader o
instance O.HasParentTypes SysrootUpgrader
type instance O.ParentTypes SysrootUpgrader = '[GObject.Object.Object, Gio.Initable.Initable]
toSysrootUpgrader :: (MIO.MonadIO m, IsSysrootUpgrader o) => o -> m SysrootUpgrader
toSysrootUpgrader :: forall (m :: * -> *) o.
(MonadIO m, IsSysrootUpgrader o) =>
o -> m SysrootUpgrader
toSysrootUpgrader = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr SysrootUpgrader -> SysrootUpgrader
SysrootUpgrader
instance B.GValue.IsGValue (Maybe SysrootUpgrader) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_ostree_sysroot_upgrader_get_type
gvalueSet_ :: Ptr GValue -> Maybe SysrootUpgrader -> IO ()
gvalueSet_ Ptr GValue
gv Maybe SysrootUpgrader
P.Nothing = forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (forall a. Ptr a
FP.nullPtr :: FP.Ptr SysrootUpgrader)
gvalueSet_ Ptr GValue
gv (P.Just SysrootUpgrader
obj) = forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr SysrootUpgrader
obj (forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe SysrootUpgrader)
gvalueGet_ Ptr GValue
gv = do
Ptr SysrootUpgrader
ptr <- forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr SysrootUpgrader)
if Ptr SysrootUpgrader
ptr forall a. Eq a => a -> a -> Bool
/= forall a. Ptr a
FP.nullPtr
then forall a. a -> Maybe a
P.Just forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr SysrootUpgrader -> SysrootUpgrader
SysrootUpgrader Ptr SysrootUpgrader
ptr
else forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveSysrootUpgraderMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveSysrootUpgraderMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveSysrootUpgraderMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveSysrootUpgraderMethod "deploy" o = SysrootUpgraderDeployMethodInfo
ResolveSysrootUpgraderMethod "dupOrigin" o = SysrootUpgraderDupOriginMethodInfo
ResolveSysrootUpgraderMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveSysrootUpgraderMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveSysrootUpgraderMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveSysrootUpgraderMethod "init" o = Gio.Initable.InitableInitMethodInfo
ResolveSysrootUpgraderMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveSysrootUpgraderMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveSysrootUpgraderMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveSysrootUpgraderMethod "pull" o = SysrootUpgraderPullMethodInfo
ResolveSysrootUpgraderMethod "pullOneDir" o = SysrootUpgraderPullOneDirMethodInfo
ResolveSysrootUpgraderMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveSysrootUpgraderMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveSysrootUpgraderMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveSysrootUpgraderMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveSysrootUpgraderMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveSysrootUpgraderMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveSysrootUpgraderMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveSysrootUpgraderMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveSysrootUpgraderMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveSysrootUpgraderMethod "getOrigin" o = SysrootUpgraderGetOriginMethodInfo
ResolveSysrootUpgraderMethod "getOriginDescription" o = SysrootUpgraderGetOriginDescriptionMethodInfo
ResolveSysrootUpgraderMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveSysrootUpgraderMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveSysrootUpgraderMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveSysrootUpgraderMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveSysrootUpgraderMethod "setOrigin" o = SysrootUpgraderSetOriginMethodInfo
ResolveSysrootUpgraderMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveSysrootUpgraderMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveSysrootUpgraderMethod t SysrootUpgrader, O.OverloadedMethod info SysrootUpgrader p) => OL.IsLabel t (SysrootUpgrader -> 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 ~ ResolveSysrootUpgraderMethod t SysrootUpgrader, O.OverloadedMethod info SysrootUpgrader p, R.HasField t SysrootUpgrader p) => R.HasField t SysrootUpgrader p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveSysrootUpgraderMethod t SysrootUpgrader, O.OverloadedMethodInfo info SysrootUpgrader) => OL.IsLabel t (O.MethodProxy info SysrootUpgrader) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
getSysrootUpgraderFlags :: (MonadIO m, IsSysrootUpgrader o) => o -> m [OSTree.Flags.SysrootUpgraderFlags]
getSysrootUpgraderFlags :: forall (m :: * -> *) o.
(MonadIO m, IsSysrootUpgrader o) =>
o -> m [SysrootUpgraderFlags]
getSysrootUpgraderFlags o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"flags"
constructSysrootUpgraderFlags :: (IsSysrootUpgrader o, MIO.MonadIO m) => [OSTree.Flags.SysrootUpgraderFlags] -> m (GValueConstruct o)
constructSysrootUpgraderFlags :: forall o (m :: * -> *).
(IsSysrootUpgrader o, MonadIO m) =>
[SysrootUpgraderFlags] -> m (GValueConstruct o)
constructSysrootUpgraderFlags [SysrootUpgraderFlags]
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"flags" [SysrootUpgraderFlags]
val
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderFlagsPropertyInfo
instance AttrInfo SysrootUpgraderFlagsPropertyInfo where
type AttrAllowedOps SysrootUpgraderFlagsPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SysrootUpgraderFlagsPropertyInfo = IsSysrootUpgrader
type AttrSetTypeConstraint SysrootUpgraderFlagsPropertyInfo = (~) [OSTree.Flags.SysrootUpgraderFlags]
type AttrTransferTypeConstraint SysrootUpgraderFlagsPropertyInfo = (~) [OSTree.Flags.SysrootUpgraderFlags]
type AttrTransferType SysrootUpgraderFlagsPropertyInfo = [OSTree.Flags.SysrootUpgraderFlags]
type AttrGetType SysrootUpgraderFlagsPropertyInfo = [OSTree.Flags.SysrootUpgraderFlags]
type AttrLabel SysrootUpgraderFlagsPropertyInfo = "flags"
type AttrOrigin SysrootUpgraderFlagsPropertyInfo = SysrootUpgrader
attrGet = getSysrootUpgraderFlags
attrSet = undefined
attrTransfer _ v = do
return v
attrConstruct = constructSysrootUpgraderFlags
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.flags"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#g:attr:flags"
})
#endif
getSysrootUpgraderOsname :: (MonadIO m, IsSysrootUpgrader o) => o -> m (Maybe T.Text)
getSysrootUpgraderOsname :: forall (m :: * -> *) o.
(MonadIO m, IsSysrootUpgrader o) =>
o -> m (Maybe Text)
getSysrootUpgraderOsname o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"osname"
constructSysrootUpgraderOsname :: (IsSysrootUpgrader o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructSysrootUpgraderOsname :: forall o (m :: * -> *).
(IsSysrootUpgrader o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructSysrootUpgraderOsname Text
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"osname" (forall a. a -> Maybe a
P.Just Text
val)
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderOsnamePropertyInfo
instance AttrInfo SysrootUpgraderOsnamePropertyInfo where
type AttrAllowedOps SysrootUpgraderOsnamePropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint SysrootUpgraderOsnamePropertyInfo = IsSysrootUpgrader
type AttrSetTypeConstraint SysrootUpgraderOsnamePropertyInfo = (~) T.Text
type AttrTransferTypeConstraint SysrootUpgraderOsnamePropertyInfo = (~) T.Text
type AttrTransferType SysrootUpgraderOsnamePropertyInfo = T.Text
type AttrGetType SysrootUpgraderOsnamePropertyInfo = (Maybe T.Text)
type AttrLabel SysrootUpgraderOsnamePropertyInfo = "osname"
type AttrOrigin SysrootUpgraderOsnamePropertyInfo = SysrootUpgrader
attrGet = getSysrootUpgraderOsname
attrSet = undefined
attrTransfer _ v = do
return v
attrConstruct = constructSysrootUpgraderOsname
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.osname"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#g:attr:osname"
})
#endif
getSysrootUpgraderSysroot :: (MonadIO m, IsSysrootUpgrader o) => o -> m (Maybe OSTree.Sysroot.Sysroot)
getSysrootUpgraderSysroot :: forall (m :: * -> *) o.
(MonadIO m, IsSysrootUpgrader o) =>
o -> m (Maybe Sysroot)
getSysrootUpgraderSysroot o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"sysroot" ManagedPtr Sysroot -> Sysroot
OSTree.Sysroot.Sysroot
constructSysrootUpgraderSysroot :: (IsSysrootUpgrader o, MIO.MonadIO m, OSTree.Sysroot.IsSysroot a) => a -> m (GValueConstruct o)
constructSysrootUpgraderSysroot :: forall o (m :: * -> *) a.
(IsSysrootUpgrader o, MonadIO m, IsSysroot a) =>
a -> m (GValueConstruct o)
constructSysrootUpgraderSysroot a
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"sysroot" (forall a. a -> Maybe a
P.Just a
val)
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderSysrootPropertyInfo
instance AttrInfo SysrootUpgraderSysrootPropertyInfo where
type AttrAllowedOps SysrootUpgraderSysrootPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint SysrootUpgraderSysrootPropertyInfo = IsSysrootUpgrader
type AttrSetTypeConstraint SysrootUpgraderSysrootPropertyInfo = OSTree.Sysroot.IsSysroot
type AttrTransferTypeConstraint SysrootUpgraderSysrootPropertyInfo = OSTree.Sysroot.IsSysroot
type AttrTransferType SysrootUpgraderSysrootPropertyInfo = OSTree.Sysroot.Sysroot
type AttrGetType SysrootUpgraderSysrootPropertyInfo = (Maybe OSTree.Sysroot.Sysroot)
type AttrLabel SysrootUpgraderSysrootPropertyInfo = "sysroot"
type AttrOrigin SysrootUpgraderSysrootPropertyInfo = SysrootUpgrader
attrGet = getSysrootUpgraderSysroot
attrSet = undefined
attrTransfer _ v = do
unsafeCastTo OSTree.Sysroot.Sysroot v
attrConstruct = constructSysrootUpgraderSysroot
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysroot"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#g:attr:sysroot"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList SysrootUpgrader
type instance O.AttributeList SysrootUpgrader = SysrootUpgraderAttributeList
type SysrootUpgraderAttributeList = ('[ '("flags", SysrootUpgraderFlagsPropertyInfo), '("osname", SysrootUpgraderOsnamePropertyInfo), '("sysroot", SysrootUpgraderSysrootPropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
sysrootUpgraderFlags :: AttrLabelProxy "flags"
sysrootUpgraderFlags = AttrLabelProxy
sysrootUpgraderOsname :: AttrLabelProxy "osname"
sysrootUpgraderOsname = AttrLabelProxy
sysrootUpgraderSysroot :: AttrLabelProxy "sysroot"
sysrootUpgraderSysroot = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList SysrootUpgrader = SysrootUpgraderSignalList
type SysrootUpgraderSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "ostree_sysroot_upgrader_new" ostree_sysroot_upgrader_new ::
Ptr OSTree.Sysroot.Sysroot ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr SysrootUpgrader)
sysrootUpgraderNew ::
(B.CallStack.HasCallStack, MonadIO m, OSTree.Sysroot.IsSysroot a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (b)
-> m SysrootUpgrader
sysrootUpgraderNew :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSysroot a, IsCancellable b) =>
a -> Maybe b -> m SysrootUpgrader
sysrootUpgraderNew a
sysroot Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Sysroot
sysroot' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
sysroot
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SysrootUpgrader
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr Sysroot
-> Ptr Cancellable -> Ptr (Ptr GError) -> IO (Ptr SysrootUpgrader)
ostree_sysroot_upgrader_new Ptr Sysroot
sysroot' Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"sysrootUpgraderNew" Ptr SysrootUpgrader
result
SysrootUpgrader
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SysrootUpgrader -> SysrootUpgrader
SysrootUpgrader) Ptr SysrootUpgrader
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
sysroot
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return SysrootUpgrader
result'
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "ostree_sysroot_upgrader_new_for_os" ostree_sysroot_upgrader_new_for_os ::
Ptr OSTree.Sysroot.Sysroot ->
CString ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr SysrootUpgrader)
sysrootUpgraderNewForOs ::
(B.CallStack.HasCallStack, MonadIO m, OSTree.Sysroot.IsSysroot a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (T.Text)
-> Maybe (b)
-> m SysrootUpgrader
sysrootUpgraderNewForOs :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSysroot a, IsCancellable b) =>
a -> Maybe Text -> Maybe b -> m SysrootUpgrader
sysrootUpgraderNewForOs a
sysroot Maybe Text
osname Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Sysroot
sysroot' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
sysroot
Ptr CChar
maybeOsname <- case Maybe Text
osname of
Maybe Text
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just Text
jOsname -> do
Ptr CChar
jOsname' <- Text -> IO (Ptr CChar)
textToCString Text
jOsname
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CChar
jOsname'
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SysrootUpgrader
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr Sysroot
-> Ptr CChar
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO (Ptr SysrootUpgrader)
ostree_sysroot_upgrader_new_for_os Ptr Sysroot
sysroot' Ptr CChar
maybeOsname Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"sysrootUpgraderNewForOs" Ptr SysrootUpgrader
result
SysrootUpgrader
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SysrootUpgrader -> SysrootUpgrader
SysrootUpgrader) Ptr SysrootUpgrader
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
sysroot
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem Ptr CChar
maybeOsname
forall (m :: * -> *) a. Monad m => a -> m a
return SysrootUpgrader
result'
) (do
forall a. Ptr a -> IO ()
freeMem Ptr CChar
maybeOsname
)
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "ostree_sysroot_upgrader_new_for_os_with_flags" ostree_sysroot_upgrader_new_for_os_with_flags ::
Ptr OSTree.Sysroot.Sysroot ->
CString ->
CUInt ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr SysrootUpgrader)
sysrootUpgraderNewForOsWithFlags ::
(B.CallStack.HasCallStack, MonadIO m, OSTree.Sysroot.IsSysroot a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (T.Text)
-> [OSTree.Flags.SysrootUpgraderFlags]
-> Maybe (b)
-> m SysrootUpgrader
sysrootUpgraderNewForOsWithFlags :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSysroot a, IsCancellable b) =>
a
-> Maybe Text
-> [SysrootUpgraderFlags]
-> Maybe b
-> m SysrootUpgrader
sysrootUpgraderNewForOsWithFlags a
sysroot Maybe Text
osname [SysrootUpgraderFlags]
flags Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Sysroot
sysroot' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
sysroot
Ptr CChar
maybeOsname <- case Maybe Text
osname of
Maybe Text
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just Text
jOsname -> do
Ptr CChar
jOsname' <- Text -> IO (Ptr CChar)
textToCString Text
jOsname
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CChar
jOsname'
let flags' :: CUInt
flags' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [SysrootUpgraderFlags]
flags
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SysrootUpgrader
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr Sysroot
-> Ptr CChar
-> CUInt
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO (Ptr SysrootUpgrader)
ostree_sysroot_upgrader_new_for_os_with_flags Ptr Sysroot
sysroot' Ptr CChar
maybeOsname CUInt
flags' Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"sysrootUpgraderNewForOsWithFlags" Ptr SysrootUpgrader
result
SysrootUpgrader
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SysrootUpgrader -> SysrootUpgrader
SysrootUpgrader) Ptr SysrootUpgrader
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
sysroot
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem Ptr CChar
maybeOsname
forall (m :: * -> *) a. Monad m => a -> m a
return SysrootUpgrader
result'
) (do
forall a. Ptr a -> IO ()
freeMem Ptr CChar
maybeOsname
)
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "ostree_sysroot_upgrader_deploy" ostree_sysroot_upgrader_deploy ::
Ptr SysrootUpgrader ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO CInt
sysrootUpgraderDeploy ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (b)
-> m ()
sysrootUpgraderDeploy :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSysrootUpgrader a, IsCancellable b) =>
a -> Maybe b -> m ()
sysrootUpgraderDeploy a
self Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SysrootUpgrader
-> Ptr Cancellable -> Ptr (Ptr GError) -> IO CInt
ostree_sysroot_upgrader_deploy Ptr SysrootUpgrader
self' Ptr Cancellable
maybeCancellable
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderDeployMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsSysrootUpgrader a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SysrootUpgraderDeployMethodInfo a signature where
overloadedMethod = sysrootUpgraderDeploy
instance O.OverloadedMethodInfo SysrootUpgraderDeployMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderDeploy",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderDeploy"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_dup_origin" ostree_sysroot_upgrader_dup_origin ::
Ptr SysrootUpgrader ->
IO (Ptr GLib.KeyFile.KeyFile)
sysrootUpgraderDupOrigin ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a) =>
a
-> m (Maybe GLib.KeyFile.KeyFile)
sysrootUpgraderDupOrigin :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSysrootUpgrader a) =>
a -> m (Maybe KeyFile)
sysrootUpgraderDupOrigin a
self = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr KeyFile
result <- Ptr SysrootUpgrader -> IO (Ptr KeyFile)
ostree_sysroot_upgrader_dup_origin Ptr SysrootUpgrader
self'
Maybe KeyFile
maybeResult <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr KeyFile
result forall a b. (a -> b) -> a -> b
$ \Ptr KeyFile
result' -> do
KeyFile
result'' <- (forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr KeyFile -> KeyFile
GLib.KeyFile.KeyFile) Ptr KeyFile
result'
forall (m :: * -> *) a. Monad m => a -> m a
return KeyFile
result''
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe KeyFile
maybeResult
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderDupOriginMethodInfo
instance (signature ~ (m (Maybe GLib.KeyFile.KeyFile)), MonadIO m, IsSysrootUpgrader a) => O.OverloadedMethod SysrootUpgraderDupOriginMethodInfo a signature where
overloadedMethod = sysrootUpgraderDupOrigin
instance O.OverloadedMethodInfo SysrootUpgraderDupOriginMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderDupOrigin",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderDupOrigin"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_get_origin" ostree_sysroot_upgrader_get_origin ::
Ptr SysrootUpgrader ->
IO (Ptr GLib.KeyFile.KeyFile)
sysrootUpgraderGetOrigin ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a) =>
a
-> m (Maybe GLib.KeyFile.KeyFile)
sysrootUpgraderGetOrigin :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSysrootUpgrader a) =>
a -> m (Maybe KeyFile)
sysrootUpgraderGetOrigin a
self = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr KeyFile
result <- Ptr SysrootUpgrader -> IO (Ptr KeyFile)
ostree_sysroot_upgrader_get_origin Ptr SysrootUpgrader
self'
Maybe KeyFile
maybeResult <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr KeyFile
result forall a b. (a -> b) -> a -> b
$ \Ptr KeyFile
result' -> do
KeyFile
result'' <- (forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr KeyFile -> KeyFile
GLib.KeyFile.KeyFile) Ptr KeyFile
result'
forall (m :: * -> *) a. Monad m => a -> m a
return KeyFile
result''
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe KeyFile
maybeResult
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderGetOriginMethodInfo
instance (signature ~ (m (Maybe GLib.KeyFile.KeyFile)), MonadIO m, IsSysrootUpgrader a) => O.OverloadedMethod SysrootUpgraderGetOriginMethodInfo a signature where
overloadedMethod = sysrootUpgraderGetOrigin
instance O.OverloadedMethodInfo SysrootUpgraderGetOriginMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderGetOrigin",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderGetOrigin"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_get_origin_description" ostree_sysroot_upgrader_get_origin_description ::
Ptr SysrootUpgrader ->
IO CString
sysrootUpgraderGetOriginDescription ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a) =>
a
-> m (Maybe T.Text)
sysrootUpgraderGetOriginDescription :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSysrootUpgrader a) =>
a -> m (Maybe Text)
sysrootUpgraderGetOriginDescription a
self = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr CChar
result <- Ptr SysrootUpgrader -> IO (Ptr CChar)
ostree_sysroot_upgrader_get_origin_description Ptr SysrootUpgrader
self'
Maybe Text
maybeResult <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr CChar
result forall a b. (a -> b) -> a -> b
$ \Ptr CChar
result' -> do
Text
result'' <- HasCallStack => Ptr CChar -> IO Text
cstringToText Ptr CChar
result'
forall a. Ptr a -> IO ()
freeMem Ptr CChar
result'
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result''
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Text
maybeResult
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderGetOriginDescriptionMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m, IsSysrootUpgrader a) => O.OverloadedMethod SysrootUpgraderGetOriginDescriptionMethodInfo a signature where
overloadedMethod = sysrootUpgraderGetOriginDescription
instance O.OverloadedMethodInfo SysrootUpgraderGetOriginDescriptionMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderGetOriginDescription",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderGetOriginDescription"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_pull" ostree_sysroot_upgrader_pull ::
Ptr SysrootUpgrader ->
CUInt ->
CUInt ->
Ptr OSTree.AsyncProgress.AsyncProgress ->
Ptr CInt ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO CInt
sysrootUpgraderPull ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a, OSTree.AsyncProgress.IsAsyncProgress b, Gio.Cancellable.IsCancellable c) =>
a
-> [OSTree.Flags.RepoPullFlags]
-> [OSTree.Flags.SysrootUpgraderPullFlags]
-> Maybe (b)
-> Maybe (c)
-> m (Bool)
sysrootUpgraderPull :: forall (m :: * -> *) a b c.
(HasCallStack, MonadIO m, IsSysrootUpgrader a, IsAsyncProgress b,
IsCancellable c) =>
a
-> [RepoPullFlags]
-> [SysrootUpgraderPullFlags]
-> Maybe b
-> Maybe c
-> m Bool
sysrootUpgraderPull a
self [RepoPullFlags]
flags [SysrootUpgraderPullFlags]
upgraderFlags Maybe b
progress Maybe c
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
let flags' :: CUInt
flags' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [RepoPullFlags]
flags
let upgraderFlags' :: CUInt
upgraderFlags' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [SysrootUpgraderPullFlags]
upgraderFlags
Ptr AsyncProgress
maybeProgress <- case Maybe b
progress of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jProgress -> do
Ptr AsyncProgress
jProgress' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jProgress
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr AsyncProgress
jProgress'
Ptr CInt
outChanged <- forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr CInt)
Ptr Cancellable
maybeCancellable <- case Maybe c
cancellable of
Maybe c
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just c
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr c
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SysrootUpgrader
-> CUInt
-> CUInt
-> Ptr AsyncProgress
-> Ptr CInt
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO CInt
ostree_sysroot_upgrader_pull Ptr SysrootUpgrader
self' CUInt
flags' CUInt
upgraderFlags' Ptr AsyncProgress
maybeProgress Ptr CInt
outChanged Ptr Cancellable
maybeCancellable
CInt
outChanged' <- forall a. Storable a => Ptr a -> IO a
peek Ptr CInt
outChanged
let outChanged'' :: Bool
outChanged'' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
outChanged'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
progress forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe c
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem Ptr CInt
outChanged
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
outChanged''
) (do
forall a. Ptr a -> IO ()
freeMem Ptr CInt
outChanged
)
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderPullMethodInfo
instance (signature ~ ([OSTree.Flags.RepoPullFlags] -> [OSTree.Flags.SysrootUpgraderPullFlags] -> Maybe (b) -> Maybe (c) -> m (Bool)), MonadIO m, IsSysrootUpgrader a, OSTree.AsyncProgress.IsAsyncProgress b, Gio.Cancellable.IsCancellable c) => O.OverloadedMethod SysrootUpgraderPullMethodInfo a signature where
overloadedMethod = sysrootUpgraderPull
instance O.OverloadedMethodInfo SysrootUpgraderPullMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderPull",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderPull"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_pull_one_dir" ostree_sysroot_upgrader_pull_one_dir ::
Ptr SysrootUpgrader ->
CString ->
CUInt ->
CUInt ->
Ptr OSTree.AsyncProgress.AsyncProgress ->
Ptr CInt ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO CInt
sysrootUpgraderPullOneDir ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a, OSTree.AsyncProgress.IsAsyncProgress b, Gio.Cancellable.IsCancellable c) =>
a
-> T.Text
-> [OSTree.Flags.RepoPullFlags]
-> [OSTree.Flags.SysrootUpgraderPullFlags]
-> Maybe (b)
-> Maybe (c)
-> m (Bool)
sysrootUpgraderPullOneDir :: forall (m :: * -> *) a b c.
(HasCallStack, MonadIO m, IsSysrootUpgrader a, IsAsyncProgress b,
IsCancellable c) =>
a
-> Text
-> [RepoPullFlags]
-> [SysrootUpgraderPullFlags]
-> Maybe b
-> Maybe c
-> m Bool
sysrootUpgraderPullOneDir a
self Text
dirToPull [RepoPullFlags]
flags [SysrootUpgraderPullFlags]
upgraderFlags Maybe b
progress Maybe c
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr CChar
dirToPull' <- Text -> IO (Ptr CChar)
textToCString Text
dirToPull
let flags' :: CUInt
flags' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [RepoPullFlags]
flags
let upgraderFlags' :: CUInt
upgraderFlags' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [SysrootUpgraderPullFlags]
upgraderFlags
Ptr AsyncProgress
maybeProgress <- case Maybe b
progress of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jProgress -> do
Ptr AsyncProgress
jProgress' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jProgress
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr AsyncProgress
jProgress'
Ptr CInt
outChanged <- forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr CInt)
Ptr Cancellable
maybeCancellable <- case Maybe c
cancellable of
Maybe c
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just c
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr c
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SysrootUpgrader
-> Ptr CChar
-> CUInt
-> CUInt
-> Ptr AsyncProgress
-> Ptr CInt
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO CInt
ostree_sysroot_upgrader_pull_one_dir Ptr SysrootUpgrader
self' Ptr CChar
dirToPull' CUInt
flags' CUInt
upgraderFlags' Ptr AsyncProgress
maybeProgress Ptr CInt
outChanged Ptr Cancellable
maybeCancellable
CInt
outChanged' <- forall a. Storable a => Ptr a -> IO a
peek Ptr CInt
outChanged
let outChanged'' :: Bool
outChanged'' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
outChanged'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
progress forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe c
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem Ptr CChar
dirToPull'
forall a. Ptr a -> IO ()
freeMem Ptr CInt
outChanged
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
outChanged''
) (do
forall a. Ptr a -> IO ()
freeMem Ptr CChar
dirToPull'
forall a. Ptr a -> IO ()
freeMem Ptr CInt
outChanged
)
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderPullOneDirMethodInfo
instance (signature ~ (T.Text -> [OSTree.Flags.RepoPullFlags] -> [OSTree.Flags.SysrootUpgraderPullFlags] -> Maybe (b) -> Maybe (c) -> m (Bool)), MonadIO m, IsSysrootUpgrader a, OSTree.AsyncProgress.IsAsyncProgress b, Gio.Cancellable.IsCancellable c) => O.OverloadedMethod SysrootUpgraderPullOneDirMethodInfo a signature where
overloadedMethod = sysrootUpgraderPullOneDir
instance O.OverloadedMethodInfo SysrootUpgraderPullOneDirMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderPullOneDir",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderPullOneDir"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_set_origin" ostree_sysroot_upgrader_set_origin ::
Ptr SysrootUpgrader ->
Ptr GLib.KeyFile.KeyFile ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO CInt
sysrootUpgraderSetOrigin ::
(B.CallStack.HasCallStack, MonadIO m, IsSysrootUpgrader a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (GLib.KeyFile.KeyFile)
-> Maybe (b)
-> m ()
sysrootUpgraderSetOrigin :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSysrootUpgrader a, IsCancellable b) =>
a -> Maybe KeyFile -> Maybe b -> m ()
sysrootUpgraderSetOrigin a
self Maybe KeyFile
origin Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SysrootUpgrader
self' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr KeyFile
maybeOrigin <- case Maybe KeyFile
origin of
Maybe KeyFile
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just KeyFile
jOrigin -> do
Ptr KeyFile
jOrigin' <- forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr KeyFile
jOrigin
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr KeyFile
jOrigin'
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SysrootUpgrader
-> Ptr KeyFile -> Ptr Cancellable -> Ptr (Ptr GError) -> IO CInt
ostree_sysroot_upgrader_set_origin Ptr SysrootUpgrader
self' Ptr KeyFile
maybeOrigin Ptr Cancellable
maybeCancellable
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe KeyFile
origin forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SysrootUpgraderSetOriginMethodInfo
instance (signature ~ (Maybe (GLib.KeyFile.KeyFile) -> Maybe (b) -> m ()), MonadIO m, IsSysrootUpgrader a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SysrootUpgraderSetOriginMethodInfo a signature where
overloadedMethod = sysrootUpgraderSetOrigin
instance O.OverloadedMethodInfo SysrootUpgraderSetOriginMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.OSTree.Objects.SysrootUpgrader.sysrootUpgraderSetOrigin",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ostree-1.0.16/docs/GI-OSTree-Objects-SysrootUpgrader.html#v:sysrootUpgraderSetOrigin"
})
#endif
foreign import ccall "ostree_sysroot_upgrader_check_timestamps" ostree_sysroot_upgrader_check_timestamps ::
Ptr OSTree.Repo.Repo ->
CString ->
CString ->
Ptr (Ptr GError) ->
IO CInt
sysrootUpgraderCheckTimestamps ::
(B.CallStack.HasCallStack, MonadIO m, OSTree.Repo.IsRepo a) =>
a
-> T.Text
-> T.Text
-> m ()
sysrootUpgraderCheckTimestamps :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsRepo a) =>
a -> Text -> Text -> m ()
sysrootUpgraderCheckTimestamps a
repo Text
fromRev Text
toRev = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Repo
repo' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
repo
Ptr CChar
fromRev' <- Text -> IO (Ptr CChar)
textToCString Text
fromRev
Ptr CChar
toRev' <- Text -> IO (Ptr CChar)
textToCString Text
toRev
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr Repo -> Ptr CChar -> Ptr CChar -> Ptr (Ptr GError) -> IO CInt
ostree_sysroot_upgrader_check_timestamps Ptr Repo
repo' Ptr CChar
fromRev' Ptr CChar
toRev'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
repo
forall a. Ptr a -> IO ()
freeMem Ptr CChar
fromRev'
forall a. Ptr a -> IO ()
freeMem Ptr CChar
toRev'
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
forall a. Ptr a -> IO ()
freeMem Ptr CChar
fromRev'
forall a. Ptr a -> IO ()
freeMem Ptr CChar
toRev'
)
#if defined(ENABLE_OVERLOADING)
#endif