{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.OSTree.Structs.SysrootWriteDeploymentsOpts
(
SysrootWriteDeploymentsOpts(..) ,
newZeroSysrootWriteDeploymentsOpts ,
noSysrootWriteDeploymentsOpts ,
#if defined(ENABLE_OVERLOADING)
ResolveSysrootWriteDeploymentsOptsMethod,
#endif
getSysrootWriteDeploymentsOptsDoPostclean,
setSysrootWriteDeploymentsOptsDoPostclean,
#if defined(ENABLE_OVERLOADING)
sysrootWriteDeploymentsOpts_doPostclean ,
#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.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
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
newtype SysrootWriteDeploymentsOpts = SysrootWriteDeploymentsOpts (ManagedPtr SysrootWriteDeploymentsOpts)
deriving (Eq)
instance WrappedPtr SysrootWriteDeploymentsOpts where
wrappedPtrCalloc = callocBytes 88
wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 88 >=> wrapPtr SysrootWriteDeploymentsOpts)
wrappedPtrFree = Just ptr_to_g_free
newZeroSysrootWriteDeploymentsOpts :: MonadIO m => m SysrootWriteDeploymentsOpts
newZeroSysrootWriteDeploymentsOpts = liftIO $ wrappedPtrCalloc >>= wrapPtr SysrootWriteDeploymentsOpts
instance tag ~ 'AttrSet => Constructible SysrootWriteDeploymentsOpts tag where
new _ attrs = do
o <- newZeroSysrootWriteDeploymentsOpts
GI.Attributes.set o attrs
return o
noSysrootWriteDeploymentsOpts :: Maybe SysrootWriteDeploymentsOpts
noSysrootWriteDeploymentsOpts = Nothing
getSysrootWriteDeploymentsOptsDoPostclean :: MonadIO m => SysrootWriteDeploymentsOpts -> m Bool
getSysrootWriteDeploymentsOptsDoPostclean s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO CInt
let val' = (/= 0) val
return val'
setSysrootWriteDeploymentsOptsDoPostclean :: MonadIO m => SysrootWriteDeploymentsOpts -> Bool -> m ()
setSysrootWriteDeploymentsOptsDoPostclean s val = liftIO $ withManagedPtr s $ \ptr -> do
let val' = (fromIntegral . fromEnum) val
poke (ptr `plusPtr` 0) (val' :: CInt)
#if defined(ENABLE_OVERLOADING)
data SysrootWriteDeploymentsOptsDoPostcleanFieldInfo
instance AttrInfo SysrootWriteDeploymentsOptsDoPostcleanFieldInfo where
type AttrBaseTypeConstraint SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = (~) SysrootWriteDeploymentsOpts
type AttrAllowedOps SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = (~) Bool
type AttrTransferTypeConstraint SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = (~)Bool
type AttrTransferType SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = Bool
type AttrGetType SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = Bool
type AttrLabel SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = "do_postclean"
type AttrOrigin SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = SysrootWriteDeploymentsOpts
attrGet = getSysrootWriteDeploymentsOptsDoPostclean
attrSet = setSysrootWriteDeploymentsOptsDoPostclean
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
sysrootWriteDeploymentsOpts_doPostclean :: AttrLabelProxy "doPostclean"
sysrootWriteDeploymentsOpts_doPostclean = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList SysrootWriteDeploymentsOpts
type instance O.AttributeList SysrootWriteDeploymentsOpts = SysrootWriteDeploymentsOptsAttributeList
type SysrootWriteDeploymentsOptsAttributeList = ('[ '("doPostclean", SysrootWriteDeploymentsOptsDoPostcleanFieldInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveSysrootWriteDeploymentsOptsMethod (t :: Symbol) (o :: *) :: * where
ResolveSysrootWriteDeploymentsOptsMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveSysrootWriteDeploymentsOptsMethod t SysrootWriteDeploymentsOpts, O.MethodInfo info SysrootWriteDeploymentsOpts p) => OL.IsLabel t (SysrootWriteDeploymentsOpts -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif