#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.OSTree.Structs.SysrootWriteDeploymentsOpts
(
SysrootWriteDeploymentsOpts(..) ,
newZeroSysrootWriteDeploymentsOpts ,
noSysrootWriteDeploymentsOpts ,
getSysrootWriteDeploymentsOptsDoPostclean,
setSysrootWriteDeploymentsOptsDoPostclean,
#if 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.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)
instance WrappedPtr SysrootWriteDeploymentsOpts where
wrappedPtrCalloc = callocBytes 120
wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 120 >=> 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 ENABLE_OVERLOADING
data SysrootWriteDeploymentsOptsDoPostcleanFieldInfo
instance AttrInfo SysrootWriteDeploymentsOptsDoPostcleanFieldInfo where
type AttrAllowedOps SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = (~) Bool
type AttrBaseTypeConstraint SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = (~) SysrootWriteDeploymentsOpts
type AttrGetType SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = Bool
type AttrLabel SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = "do_postclean"
type AttrOrigin SysrootWriteDeploymentsOptsDoPostcleanFieldInfo = SysrootWriteDeploymentsOpts
attrGet _ = getSysrootWriteDeploymentsOptsDoPostclean
attrSet _ = setSysrootWriteDeploymentsOptsDoPostclean
attrConstruct = undefined
attrClear _ = undefined
sysrootWriteDeploymentsOpts_doPostclean :: AttrLabelProxy "doPostclean"
sysrootWriteDeploymentsOpts_doPostclean = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList SysrootWriteDeploymentsOpts
type instance O.AttributeList SysrootWriteDeploymentsOpts = SysrootWriteDeploymentsOptsAttributeList
type SysrootWriteDeploymentsOptsAttributeList = ('[ '("doPostclean", SysrootWriteDeploymentsOptsDoPostcleanFieldInfo)] :: [(Symbol, *)])
#endif
#if 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 (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif