{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gio.Structs.OutputMessage
(
OutputMessage(..) ,
newZeroOutputMessage ,
#if defined(ENABLE_OVERLOADING)
ResolveOutputMessageMethod ,
#endif
clearOutputMessageAddress ,
getOutputMessageAddress ,
#if defined(ENABLE_OVERLOADING)
outputMessage_address ,
#endif
setOutputMessageAddress ,
getOutputMessageBytesSent ,
#if defined(ENABLE_OVERLOADING)
outputMessage_bytesSent ,
#endif
setOutputMessageBytesSent ,
getOutputMessageNumControlMessages ,
#if defined(ENABLE_OVERLOADING)
outputMessage_numControlMessages ,
#endif
setOutputMessageNumControlMessages ,
getOutputMessageNumVectors ,
#if defined(ENABLE_OVERLOADING)
outputMessage_numVectors ,
#endif
setOutputMessageNumVectors ,
clearOutputMessageVectors ,
getOutputMessageVectors ,
#if defined(ENABLE_OVERLOADING)
outputMessage_vectors ,
#endif
setOutputMessageVectors ,
) 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 {-# SOURCE #-} qualified GI.Gio.Objects.SocketAddress as Gio.SocketAddress
import {-# SOURCE #-} qualified GI.Gio.Structs.OutputVector as Gio.OutputVector
newtype OutputMessage = OutputMessage (SP.ManagedPtr OutputMessage)
deriving (OutputMessage -> OutputMessage -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OutputMessage -> OutputMessage -> Bool
$c/= :: OutputMessage -> OutputMessage -> Bool
== :: OutputMessage -> OutputMessage -> Bool
$c== :: OutputMessage -> OutputMessage -> Bool
Eq)
instance SP.ManagedPtrNewtype OutputMessage where
toManagedPtr :: OutputMessage -> ManagedPtr OutputMessage
toManagedPtr (OutputMessage ManagedPtr OutputMessage
p) = ManagedPtr OutputMessage
p
instance BoxedPtr OutputMessage where
boxedPtrCopy :: OutputMessage -> IO OutputMessage
boxedPtrCopy = \OutputMessage
p -> forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr OutputMessage
p (forall a. (HasCallStack, CallocPtr a) => Int -> Ptr a -> IO (Ptr a)
copyBytes Int
40 forall (m :: * -> *) a b c.
Monad m =>
(a -> m b) -> (b -> m c) -> a -> m c
>=> forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
B.ManagedPtr.wrapPtr ManagedPtr OutputMessage -> OutputMessage
OutputMessage)
boxedPtrFree :: OutputMessage -> IO ()
boxedPtrFree = \OutputMessage
x -> forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
SP.withManagedPtr OutputMessage
x forall a. Ptr a -> IO ()
SP.freeMem
instance CallocPtr OutputMessage where
boxedPtrCalloc :: IO (Ptr OutputMessage)
boxedPtrCalloc = forall a. Int -> IO (Ptr a)
callocBytes Int
40
newZeroOutputMessage :: MonadIO m => m OutputMessage
newZeroOutputMessage :: forall (m :: * -> *). MonadIO m => m OutputMessage
newZeroOutputMessage = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a. CallocPtr a => IO (Ptr a)
boxedPtrCalloc forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapPtr ManagedPtr OutputMessage -> OutputMessage
OutputMessage
instance tag ~ 'AttrSet => Constructible OutputMessage tag where
new :: forall (m :: * -> *).
MonadIO m =>
(ManagedPtr OutputMessage -> OutputMessage)
-> [AttrOp OutputMessage tag] -> m OutputMessage
new ManagedPtr OutputMessage -> OutputMessage
_ [AttrOp OutputMessage tag]
attrs = do
OutputMessage
o <- forall (m :: * -> *). MonadIO m => m OutputMessage
newZeroOutputMessage
forall o (m :: * -> *).
MonadIO m =>
o -> [AttrOp o 'AttrSet] -> m ()
GI.Attributes.set OutputMessage
o [AttrOp OutputMessage tag]
attrs
forall (m :: * -> *) a. Monad m => a -> m a
return OutputMessage
o
getOutputMessageAddress :: MonadIO m => OutputMessage -> m (Maybe Gio.SocketAddress.SocketAddress)
getOutputMessageAddress :: forall (m :: * -> *).
MonadIO m =>
OutputMessage -> m (Maybe SocketAddress)
getOutputMessageAddress OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
Ptr SocketAddress
val <- forall a. Storable a => Ptr a -> IO a
peek (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) :: IO (Ptr Gio.SocketAddress.SocketAddress)
Maybe SocketAddress
result <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
SP.convertIfNonNull Ptr SocketAddress
val forall a b. (a -> b) -> a -> b
$ \Ptr SocketAddress
val' -> do
SocketAddress
val'' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr SocketAddress -> SocketAddress
Gio.SocketAddress.SocketAddress) Ptr SocketAddress
val'
forall (m :: * -> *) a. Monad m => a -> m a
return SocketAddress
val''
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe SocketAddress
result
setOutputMessageAddress :: MonadIO m => OutputMessage -> Ptr Gio.SocketAddress.SocketAddress -> m ()
setOutputMessageAddress :: forall (m :: * -> *).
MonadIO m =>
OutputMessage -> Ptr SocketAddress -> m ()
setOutputMessageAddress OutputMessage
s Ptr SocketAddress
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) (Ptr SocketAddress
val :: Ptr Gio.SocketAddress.SocketAddress)
clearOutputMessageAddress :: MonadIO m => OutputMessage -> m ()
clearOutputMessageAddress :: forall (m :: * -> *). MonadIO m => OutputMessage -> m ()
clearOutputMessageAddress OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) (forall a. Ptr a
FP.nullPtr :: Ptr Gio.SocketAddress.SocketAddress)
#if defined(ENABLE_OVERLOADING)
data OutputMessageAddressFieldInfo
instance AttrInfo OutputMessageAddressFieldInfo where
type AttrBaseTypeConstraint OutputMessageAddressFieldInfo = (~) OutputMessage
type AttrAllowedOps OutputMessageAddressFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint OutputMessageAddressFieldInfo = (~) (Ptr Gio.SocketAddress.SocketAddress)
type AttrTransferTypeConstraint OutputMessageAddressFieldInfo = (~)(Ptr Gio.SocketAddress.SocketAddress)
type AttrTransferType OutputMessageAddressFieldInfo = (Ptr Gio.SocketAddress.SocketAddress)
type AttrGetType OutputMessageAddressFieldInfo = Maybe Gio.SocketAddress.SocketAddress
type AttrLabel OutputMessageAddressFieldInfo = "address"
type AttrOrigin OutputMessageAddressFieldInfo = OutputMessage
attrGet = getOutputMessageAddress
attrSet = setOutputMessageAddress
attrConstruct = undefined
attrClear = clearOutputMessageAddress
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.OutputMessage.address"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Structs-OutputMessage.html#g:attr:address"
})
outputMessage_address :: AttrLabelProxy "address"
outputMessage_address = AttrLabelProxy
#endif
getOutputMessageVectors :: MonadIO m => OutputMessage -> m (Maybe Gio.OutputVector.OutputVector)
getOutputMessageVectors :: forall (m :: * -> *).
MonadIO m =>
OutputMessage -> m (Maybe OutputVector)
getOutputMessageVectors OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
Ptr OutputVector
val <- forall a. Storable a => Ptr a -> IO a
peek (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8) :: IO (Ptr Gio.OutputVector.OutputVector)
Maybe OutputVector
result <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
SP.convertIfNonNull Ptr OutputVector
val forall a b. (a -> b) -> a -> b
$ \Ptr OutputVector
val' -> do
OutputVector
val'' <- (forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newPtr ManagedPtr OutputVector -> OutputVector
Gio.OutputVector.OutputVector) Ptr OutputVector
val'
forall (m :: * -> *) a. Monad m => a -> m a
return OutputVector
val''
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe OutputVector
result
setOutputMessageVectors :: MonadIO m => OutputMessage -> Ptr Gio.OutputVector.OutputVector -> m ()
setOutputMessageVectors :: forall (m :: * -> *).
MonadIO m =>
OutputMessage -> Ptr OutputVector -> m ()
setOutputMessageVectors OutputMessage
s Ptr OutputVector
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8) (Ptr OutputVector
val :: Ptr Gio.OutputVector.OutputVector)
clearOutputMessageVectors :: MonadIO m => OutputMessage -> m ()
clearOutputMessageVectors :: forall (m :: * -> *). MonadIO m => OutputMessage -> m ()
clearOutputMessageVectors OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8) (forall a. Ptr a
FP.nullPtr :: Ptr Gio.OutputVector.OutputVector)
#if defined(ENABLE_OVERLOADING)
data OutputMessageVectorsFieldInfo
instance AttrInfo OutputMessageVectorsFieldInfo where
type AttrBaseTypeConstraint OutputMessageVectorsFieldInfo = (~) OutputMessage
type AttrAllowedOps OutputMessageVectorsFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint OutputMessageVectorsFieldInfo = (~) (Ptr Gio.OutputVector.OutputVector)
type AttrTransferTypeConstraint OutputMessageVectorsFieldInfo = (~)(Ptr Gio.OutputVector.OutputVector)
type AttrTransferType OutputMessageVectorsFieldInfo = (Ptr Gio.OutputVector.OutputVector)
type AttrGetType OutputMessageVectorsFieldInfo = Maybe Gio.OutputVector.OutputVector
type AttrLabel OutputMessageVectorsFieldInfo = "vectors"
type AttrOrigin OutputMessageVectorsFieldInfo = OutputMessage
attrGet = getOutputMessageVectors
attrSet = setOutputMessageVectors
attrConstruct = undefined
attrClear = clearOutputMessageVectors
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.OutputMessage.vectors"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Structs-OutputMessage.html#g:attr:vectors"
})
outputMessage_vectors :: AttrLabelProxy "vectors"
outputMessage_vectors = AttrLabelProxy
#endif
getOutputMessageNumVectors :: MonadIO m => OutputMessage -> m Word32
getOutputMessageNumVectors :: forall (m :: * -> *). MonadIO m => OutputMessage -> m Word32
getOutputMessageNumVectors OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
Word32
val <- forall a. Storable a => Ptr a -> IO a
peek (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16) :: IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
val
setOutputMessageNumVectors :: MonadIO m => OutputMessage -> Word32 -> m ()
setOutputMessageNumVectors :: forall (m :: * -> *). MonadIO m => OutputMessage -> Word32 -> m ()
setOutputMessageNumVectors OutputMessage
s Word32
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16) (Word32
val :: Word32)
#if defined(ENABLE_OVERLOADING)
data OutputMessageNumVectorsFieldInfo
instance AttrInfo OutputMessageNumVectorsFieldInfo where
type AttrBaseTypeConstraint OutputMessageNumVectorsFieldInfo = (~) OutputMessage
type AttrAllowedOps OutputMessageNumVectorsFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint OutputMessageNumVectorsFieldInfo = (~) Word32
type AttrTransferTypeConstraint OutputMessageNumVectorsFieldInfo = (~)Word32
type AttrTransferType OutputMessageNumVectorsFieldInfo = Word32
type AttrGetType OutputMessageNumVectorsFieldInfo = Word32
type AttrLabel OutputMessageNumVectorsFieldInfo = "num_vectors"
type AttrOrigin OutputMessageNumVectorsFieldInfo = OutputMessage
attrGet = getOutputMessageNumVectors
attrSet = setOutputMessageNumVectors
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.OutputMessage.numVectors"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Structs-OutputMessage.html#g:attr:numVectors"
})
outputMessage_numVectors :: AttrLabelProxy "numVectors"
outputMessage_numVectors = AttrLabelProxy
#endif
getOutputMessageBytesSent :: MonadIO m => OutputMessage -> m Word32
getOutputMessageBytesSent :: forall (m :: * -> *). MonadIO m => OutputMessage -> m Word32
getOutputMessageBytesSent OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
Word32
val <- forall a. Storable a => Ptr a -> IO a
peek (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20) :: IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
val
setOutputMessageBytesSent :: MonadIO m => OutputMessage -> Word32 -> m ()
setOutputMessageBytesSent :: forall (m :: * -> *). MonadIO m => OutputMessage -> Word32 -> m ()
setOutputMessageBytesSent OutputMessage
s Word32
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20) (Word32
val :: Word32)
#if defined(ENABLE_OVERLOADING)
data OutputMessageBytesSentFieldInfo
instance AttrInfo OutputMessageBytesSentFieldInfo where
type AttrBaseTypeConstraint OutputMessageBytesSentFieldInfo = (~) OutputMessage
type AttrAllowedOps OutputMessageBytesSentFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint OutputMessageBytesSentFieldInfo = (~) Word32
type AttrTransferTypeConstraint OutputMessageBytesSentFieldInfo = (~)Word32
type AttrTransferType OutputMessageBytesSentFieldInfo = Word32
type AttrGetType OutputMessageBytesSentFieldInfo = Word32
type AttrLabel OutputMessageBytesSentFieldInfo = "bytes_sent"
type AttrOrigin OutputMessageBytesSentFieldInfo = OutputMessage
attrGet = getOutputMessageBytesSent
attrSet = setOutputMessageBytesSent
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.OutputMessage.bytesSent"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Structs-OutputMessage.html#g:attr:bytesSent"
})
outputMessage_bytesSent :: AttrLabelProxy "bytesSent"
outputMessage_bytesSent = AttrLabelProxy
#endif
getOutputMessageNumControlMessages :: MonadIO m => OutputMessage -> m Word32
getOutputMessageNumControlMessages :: forall (m :: * -> *). MonadIO m => OutputMessage -> m Word32
getOutputMessageNumControlMessages OutputMessage
s = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
Word32
val <- forall a. Storable a => Ptr a -> IO a
peek (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32) :: IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
val
setOutputMessageNumControlMessages :: MonadIO m => OutputMessage -> Word32 -> m ()
setOutputMessageNumControlMessages :: forall (m :: * -> *). MonadIO m => OutputMessage -> Word32 -> m ()
setOutputMessageNumControlMessages OutputMessage
s Word32
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr OutputMessage
s forall a b. (a -> b) -> a -> b
$ \Ptr OutputMessage
ptr -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr OutputMessage
ptr forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32) (Word32
val :: Word32)
#if defined(ENABLE_OVERLOADING)
data OutputMessageNumControlMessagesFieldInfo
instance AttrInfo OutputMessageNumControlMessagesFieldInfo where
type AttrBaseTypeConstraint OutputMessageNumControlMessagesFieldInfo = (~) OutputMessage
type AttrAllowedOps OutputMessageNumControlMessagesFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint OutputMessageNumControlMessagesFieldInfo = (~) Word32
type AttrTransferTypeConstraint OutputMessageNumControlMessagesFieldInfo = (~)Word32
type AttrTransferType OutputMessageNumControlMessagesFieldInfo = Word32
type AttrGetType OutputMessageNumControlMessagesFieldInfo = Word32
type AttrLabel OutputMessageNumControlMessagesFieldInfo = "num_control_messages"
type AttrOrigin OutputMessageNumControlMessagesFieldInfo = OutputMessage
attrGet = getOutputMessageNumControlMessages
attrSet = setOutputMessageNumControlMessages
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.OutputMessage.numControlMessages"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Structs-OutputMessage.html#g:attr:numControlMessages"
})
outputMessage_numControlMessages :: AttrLabelProxy "numControlMessages"
outputMessage_numControlMessages = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList OutputMessage
type instance O.AttributeList OutputMessage = OutputMessageAttributeList
type OutputMessageAttributeList = ('[ '("address", OutputMessageAddressFieldInfo), '("vectors", OutputMessageVectorsFieldInfo), '("numVectors", OutputMessageNumVectorsFieldInfo), '("bytesSent", OutputMessageBytesSentFieldInfo), '("numControlMessages", OutputMessageNumControlMessagesFieldInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveOutputMessageMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveOutputMessageMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveOutputMessageMethod t OutputMessage, O.OverloadedMethod info OutputMessage p) => OL.IsLabel t (OutputMessage -> 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 ~ ResolveOutputMessageMethod t OutputMessage, O.OverloadedMethod info OutputMessage p, R.HasField t OutputMessage p) => R.HasField t OutputMessage p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveOutputMessageMethod t OutputMessage, O.OverloadedMethodInfo info OutputMessage) => OL.IsLabel t (O.MethodProxy info OutputMessage) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif