{-# language CPP #-}
module Vulkan.Extensions.VK_EXT_debug_utils ( setDebugUtilsObjectNameEXT
, setDebugUtilsObjectTagEXT
, queueBeginDebugUtilsLabelEXT
, queueEndDebugUtilsLabelEXT
, queueInsertDebugUtilsLabelEXT
, cmdBeginDebugUtilsLabelEXT
, cmdUseDebugUtilsLabelEXT
, cmdEndDebugUtilsLabelEXT
, cmdInsertDebugUtilsLabelEXT
, createDebugUtilsMessengerEXT
, withDebugUtilsMessengerEXT
, destroyDebugUtilsMessengerEXT
, submitDebugUtilsMessageEXT
, DebugUtilsObjectNameInfoEXT(..)
, DebugUtilsObjectTagInfoEXT(..)
, DebugUtilsLabelEXT(..)
, DebugUtilsMessengerCreateInfoEXT(..)
, DebugUtilsMessengerCallbackDataEXT(..)
, DebugUtilsMessengerCreateFlagsEXT(..)
, DebugUtilsMessengerCallbackDataFlagsEXT(..)
, DebugUtilsMessageSeverityFlagsEXT
, DebugUtilsMessageSeverityFlagBitsEXT( DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT
, DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT
, DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT
, DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT
, ..
)
, DebugUtilsMessageTypeFlagsEXT
, DebugUtilsMessageTypeFlagBitsEXT( DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT
, DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT
, DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT
, DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT
, ..
)
, PFN_vkDebugUtilsMessengerCallbackEXT
, FN_vkDebugUtilsMessengerCallbackEXT
, EXT_DEBUG_UTILS_SPEC_VERSION
, pattern EXT_DEBUG_UTILS_SPEC_VERSION
, EXT_DEBUG_UTILS_EXTENSION_NAME
, pattern EXT_DEBUG_UTILS_EXTENSION_NAME
, DebugUtilsMessengerEXT(..)
) where
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Vulkan.CStruct.Utils (FixedArray)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import Vulkan.Internal.Utils (traceAroundEvent)
import Control.Exception.Base (bracket)
import Control.Monad (unless)
import Control.Monad.IO.Class (liftIO)
import Data.Typeable (eqT)
import Foreign.Marshal.Alloc (allocaBytes)
import Foreign.Marshal.Alloc (callocBytes)
import Foreign.Marshal.Alloc (free)
import Foreign.Marshal.Utils (maybePeek)
import GHC.Base (when)
import GHC.IO (throwIO)
import GHC.Ptr (castPtr)
import GHC.Ptr (nullFunPtr)
import Foreign.Ptr (nullPtr)
import Foreign.Ptr (plusPtr)
import GHC.Show (showString)
import Numeric (showHex)
import Data.ByteString (packCString)
import Data.ByteString (useAsCString)
import Data.Coerce (coerce)
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Cont (evalContT)
import Data.Vector (generateM)
import qualified Data.Vector (imapM_)
import qualified Data.Vector (length)
import Vulkan.CStruct (FromCStruct)
import Vulkan.CStruct (FromCStruct(..))
import Vulkan.CStruct (ToCStruct)
import Vulkan.CStruct (ToCStruct(..))
import Vulkan.Zero (Zero)
import Vulkan.Zero (Zero(..))
import Control.Monad.IO.Class (MonadIO)
import Data.String (IsString)
import Data.Type.Equality ((:~:)(Refl))
import Data.Typeable (Typeable)
import Foreign.C.Types (CChar)
import Foreign.C.Types (CFloat)
import Foreign.C.Types (CFloat(..))
import Foreign.C.Types (CFloat(CFloat))
import Foreign.C.Types (CSize)
import Foreign.C.Types (CSize(..))
import Foreign.C.Types (CSize(CSize))
import Foreign.Storable (Storable)
import Foreign.Storable (Storable(peek))
import Foreign.Storable (Storable(poke))
import qualified Foreign.Storable (Storable(..))
import GHC.Generics (Generic)
import GHC.IO.Exception (IOErrorType(..))
import GHC.IO.Exception (IOException(..))
import Data.Int (Int32)
import Foreign.Ptr (FunPtr)
import Foreign.Ptr (Ptr)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Data.Word (Word32)
import Data.Word (Word64)
import Data.ByteString (ByteString)
import Data.Kind (Type)
import Control.Monad.Trans.Cont (ContT(..))
import Data.Vector (Vector)
import Vulkan.CStruct.Utils (advancePtrBytes)
import Vulkan.CStruct.Extends (forgetExtensions)
import Vulkan.CStruct.Utils (lowerArrayPtr)
import Vulkan.NamedType ((:::))
import Vulkan.Core10.AllocationCallbacks (AllocationCallbacks)
import Vulkan.Core10.FundamentalTypes (Bool32)
import Vulkan.CStruct.Extends (Chain)
import Vulkan.Core10.Handles (CommandBuffer)
import Vulkan.Core10.Handles (CommandBuffer(..))
import Vulkan.Core10.Handles (CommandBuffer(CommandBuffer))
import Vulkan.Core10.Handles (CommandBuffer_T)
import Vulkan.Extensions.Handles (DebugUtilsMessengerEXT)
import Vulkan.Extensions.Handles (DebugUtilsMessengerEXT(..))
import Vulkan.Core10.Handles (Device)
import Vulkan.Core10.Handles (Device(..))
import Vulkan.Core10.Handles (Device(Device))
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_device_address_binding_report (DeviceAddressBindingCallbackDataEXT)
import Vulkan.Dynamic (DeviceCmds(pVkCmdBeginDebugUtilsLabelEXT))
import Vulkan.Dynamic (DeviceCmds(pVkCmdEndDebugUtilsLabelEXT))
import Vulkan.Dynamic (DeviceCmds(pVkCmdInsertDebugUtilsLabelEXT))
import Vulkan.Dynamic (DeviceCmds(pVkQueueBeginDebugUtilsLabelEXT))
import Vulkan.Dynamic (DeviceCmds(pVkQueueEndDebugUtilsLabelEXT))
import Vulkan.Dynamic (DeviceCmds(pVkQueueInsertDebugUtilsLabelEXT))
import Vulkan.Dynamic (DeviceCmds(pVkSetDebugUtilsObjectNameEXT))
import Vulkan.Dynamic (DeviceCmds(pVkSetDebugUtilsObjectTagEXT))
import Vulkan.Core10.Handles (Device_T)
import Vulkan.CStruct.Extends (Extends)
import Vulkan.CStruct.Extends (Extendss)
import Vulkan.CStruct.Extends (Extensible(..))
import Vulkan.Core10.FundamentalTypes (Flags)
import Vulkan.Core10.Handles (Instance)
import Vulkan.Core10.Handles (Instance(..))
import Vulkan.Core10.Handles (Instance(Instance))
import Vulkan.Dynamic (InstanceCmds(pVkCreateDebugUtilsMessengerEXT))
import Vulkan.Dynamic (InstanceCmds(pVkDestroyDebugUtilsMessengerEXT))
import Vulkan.Dynamic (InstanceCmds(pVkSubmitDebugUtilsMessageEXT))
import Vulkan.Core10.Handles (Instance_T)
import Vulkan.Core10.Enums.ObjectType (ObjectType)
import Vulkan.CStruct.Extends (PeekChain)
import Vulkan.CStruct.Extends (PeekChain(..))
import Vulkan.CStruct.Extends (PokeChain)
import Vulkan.CStruct.Extends (PokeChain(..))
import Vulkan.Core10.Handles (Queue)
import Vulkan.Core10.Handles (Queue(..))
import Vulkan.Core10.Handles (Queue(Queue))
import Vulkan.Core10.Handles (Queue_T)
import Vulkan.Core10.Enums.Result (Result)
import Vulkan.Core10.Enums.Result (Result(..))
import Vulkan.CStruct.Extends (SomeStruct)
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.Exception (VulkanException(..))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT))
import Vulkan.Core10.Enums.Result (Result(SUCCESS))
import Vulkan.Extensions.Handles (DebugUtilsMessengerEXT(..))
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkSetDebugUtilsObjectNameEXT
:: FunPtr (Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result) -> Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result
setDebugUtilsObjectNameEXT :: forall io
. (MonadIO io)
=>
Device
->
DebugUtilsObjectNameInfoEXT
-> io ()
setDebugUtilsObjectNameEXT :: forall (io :: * -> *).
MonadIO io =>
Device -> DebugUtilsObjectNameInfoEXT -> io ()
setDebugUtilsObjectNameEXT Device
device DebugUtilsObjectNameInfoEXT
nameInfo = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkSetDebugUtilsObjectNameEXTPtr :: FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
vkSetDebugUtilsObjectNameEXTPtr = DeviceCmds
-> FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
pVkSetDebugUtilsObjectNameEXT (case Device
device of Device{DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
vkSetDebugUtilsObjectNameEXTPtr FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
-> FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkSetDebugUtilsObjectNameEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkSetDebugUtilsObjectNameEXT' :: Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result
vkSetDebugUtilsObjectNameEXT' = FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
-> Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result
mkVkSetDebugUtilsObjectNameEXT FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectNameInfoEXT -> IO Result)
vkSetDebugUtilsObjectNameEXTPtr
pNameInfo <- ((Ptr DebugUtilsObjectNameInfoEXT -> IO ()) -> IO ())
-> ContT () IO (Ptr DebugUtilsObjectNameInfoEXT)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DebugUtilsObjectNameInfoEXT -> IO ()) -> IO ())
-> ContT () IO (Ptr DebugUtilsObjectNameInfoEXT))
-> ((Ptr DebugUtilsObjectNameInfoEXT -> IO ()) -> IO ())
-> ContT () IO (Ptr DebugUtilsObjectNameInfoEXT)
forall a b. (a -> b) -> a -> b
$ DebugUtilsObjectNameInfoEXT
-> (Ptr DebugUtilsObjectNameInfoEXT -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DebugUtilsObjectNameInfoEXT
-> (Ptr DebugUtilsObjectNameInfoEXT -> IO b) -> IO b
withCStruct (DebugUtilsObjectNameInfoEXT
nameInfo)
r <- lift $ traceAroundEvent "vkSetDebugUtilsObjectNameEXT" (vkSetDebugUtilsObjectNameEXT'
(deviceHandle (device))
pNameInfo)
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkSetDebugUtilsObjectTagEXT
:: FunPtr (Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result) -> Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result
setDebugUtilsObjectTagEXT :: forall io
. (MonadIO io)
=>
Device
->
DebugUtilsObjectTagInfoEXT
-> io ()
setDebugUtilsObjectTagEXT :: forall (io :: * -> *).
MonadIO io =>
Device -> DebugUtilsObjectTagInfoEXT -> io ()
setDebugUtilsObjectTagEXT Device
device DebugUtilsObjectTagInfoEXT
tagInfo = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkSetDebugUtilsObjectTagEXTPtr :: FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
vkSetDebugUtilsObjectTagEXTPtr = DeviceCmds
-> FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
pVkSetDebugUtilsObjectTagEXT (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
vkSetDebugUtilsObjectTagEXTPtr FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
-> FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkSetDebugUtilsObjectTagEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkSetDebugUtilsObjectTagEXT' :: Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result
vkSetDebugUtilsObjectTagEXT' = FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
-> Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result
mkVkSetDebugUtilsObjectTagEXT FunPtr
(Ptr Device_T -> Ptr DebugUtilsObjectTagInfoEXT -> IO Result)
vkSetDebugUtilsObjectTagEXTPtr
pTagInfo <- ((Ptr DebugUtilsObjectTagInfoEXT -> IO ()) -> IO ())
-> ContT () IO (Ptr DebugUtilsObjectTagInfoEXT)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DebugUtilsObjectTagInfoEXT -> IO ()) -> IO ())
-> ContT () IO (Ptr DebugUtilsObjectTagInfoEXT))
-> ((Ptr DebugUtilsObjectTagInfoEXT -> IO ()) -> IO ())
-> ContT () IO (Ptr DebugUtilsObjectTagInfoEXT)
forall a b. (a -> b) -> a -> b
$ DebugUtilsObjectTagInfoEXT
-> (Ptr DebugUtilsObjectTagInfoEXT -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DebugUtilsObjectTagInfoEXT
-> (Ptr DebugUtilsObjectTagInfoEXT -> IO b) -> IO b
withCStruct (DebugUtilsObjectTagInfoEXT
tagInfo)
r <- lift $ traceAroundEvent "vkSetDebugUtilsObjectTagEXT" (vkSetDebugUtilsObjectTagEXT'
(deviceHandle (device))
pTagInfo)
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkQueueBeginDebugUtilsLabelEXT
:: FunPtr (Ptr Queue_T -> Ptr DebugUtilsLabelEXT -> IO ()) -> Ptr Queue_T -> Ptr DebugUtilsLabelEXT -> IO ()
queueBeginDebugUtilsLabelEXT :: forall io
. (MonadIO io)
=>
Queue
->
("labelInfo" ::: DebugUtilsLabelEXT)
-> io ()
queueBeginDebugUtilsLabelEXT :: forall (io :: * -> *).
MonadIO io =>
Queue -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
queueBeginDebugUtilsLabelEXT Queue
queue "labelInfo" ::: DebugUtilsLabelEXT
labelInfo = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkQueueBeginDebugUtilsLabelEXTPtr :: FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkQueueBeginDebugUtilsLabelEXTPtr = DeviceCmds
-> FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
pVkQueueBeginDebugUtilsLabelEXT (case Queue
queue of Queue{DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds :: Queue -> DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkQueueBeginDebugUtilsLabelEXTPtr FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkQueueBeginDebugUtilsLabelEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkQueueBeginDebugUtilsLabelEXT' :: Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()
vkQueueBeginDebugUtilsLabelEXT' = FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()
mkVkQueueBeginDebugUtilsLabelEXT FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkQueueBeginDebugUtilsLabelEXTPtr
pLabelInfo <- ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT)))
-> ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall a b. (a -> b) -> a -> b
$ ("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
withCStruct ("labelInfo" ::: DebugUtilsLabelEXT
labelInfo)
lift $ traceAroundEvent "vkQueueBeginDebugUtilsLabelEXT" (vkQueueBeginDebugUtilsLabelEXT'
(queueHandle (queue))
pLabelInfo)
pure $ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkQueueEndDebugUtilsLabelEXT
:: FunPtr (Ptr Queue_T -> IO ()) -> Ptr Queue_T -> IO ()
queueEndDebugUtilsLabelEXT :: forall io
. (MonadIO io)
=>
Queue
-> io ()
queueEndDebugUtilsLabelEXT :: forall (io :: * -> *). MonadIO io => Queue -> io ()
queueEndDebugUtilsLabelEXT Queue
queue = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ()) -> IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkQueueEndDebugUtilsLabelEXTPtr :: FunPtr (Ptr Queue_T -> IO ())
vkQueueEndDebugUtilsLabelEXTPtr = DeviceCmds -> FunPtr (Ptr Queue_T -> IO ())
pVkQueueEndDebugUtilsLabelEXT (case Queue
queue of Queue{DeviceCmds
deviceCmds :: Queue -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr (Ptr Queue_T -> IO ())
vkQueueEndDebugUtilsLabelEXTPtr FunPtr (Ptr Queue_T -> IO ())
-> FunPtr (Ptr Queue_T -> IO ()) -> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr (Ptr Queue_T -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkQueueEndDebugUtilsLabelEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkQueueEndDebugUtilsLabelEXT' :: Ptr Queue_T -> IO ()
vkQueueEndDebugUtilsLabelEXT' = FunPtr (Ptr Queue_T -> IO ()) -> Ptr Queue_T -> IO ()
mkVkQueueEndDebugUtilsLabelEXT FunPtr (Ptr Queue_T -> IO ())
vkQueueEndDebugUtilsLabelEXTPtr
String -> IO () -> IO ()
forall a. String -> IO a -> IO a
traceAroundEvent String
"vkQueueEndDebugUtilsLabelEXT" (Ptr Queue_T -> IO ()
vkQueueEndDebugUtilsLabelEXT'
(Queue -> Ptr Queue_T
queueHandle (Queue
queue)))
() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure (() -> IO ()) -> () -> IO ()
forall a b. (a -> b) -> a -> b
$ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkQueueInsertDebugUtilsLabelEXT
:: FunPtr (Ptr Queue_T -> Ptr DebugUtilsLabelEXT -> IO ()) -> Ptr Queue_T -> Ptr DebugUtilsLabelEXT -> IO ()
queueInsertDebugUtilsLabelEXT :: forall io
. (MonadIO io)
=>
Queue
->
("labelInfo" ::: DebugUtilsLabelEXT)
-> io ()
queueInsertDebugUtilsLabelEXT :: forall (io :: * -> *).
MonadIO io =>
Queue -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
queueInsertDebugUtilsLabelEXT Queue
queue "labelInfo" ::: DebugUtilsLabelEXT
labelInfo = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkQueueInsertDebugUtilsLabelEXTPtr :: FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkQueueInsertDebugUtilsLabelEXTPtr = DeviceCmds
-> FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
pVkQueueInsertDebugUtilsLabelEXT (case Queue
queue of Queue{DeviceCmds
deviceCmds :: Queue -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkQueueInsertDebugUtilsLabelEXTPtr FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkQueueInsertDebugUtilsLabelEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkQueueInsertDebugUtilsLabelEXT' :: Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()
vkQueueInsertDebugUtilsLabelEXT' = FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()
mkVkQueueInsertDebugUtilsLabelEXT FunPtr
(Ptr Queue_T -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkQueueInsertDebugUtilsLabelEXTPtr
pLabelInfo <- ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT)))
-> ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall a b. (a -> b) -> a -> b
$ ("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
withCStruct ("labelInfo" ::: DebugUtilsLabelEXT
labelInfo)
lift $ traceAroundEvent "vkQueueInsertDebugUtilsLabelEXT" (vkQueueInsertDebugUtilsLabelEXT'
(queueHandle (queue))
pLabelInfo)
pure $ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCmdBeginDebugUtilsLabelEXT
:: FunPtr (Ptr CommandBuffer_T -> Ptr DebugUtilsLabelEXT -> IO ()) -> Ptr CommandBuffer_T -> Ptr DebugUtilsLabelEXT -> IO ()
cmdBeginDebugUtilsLabelEXT :: forall io
. (MonadIO io)
=>
CommandBuffer
->
("labelInfo" ::: DebugUtilsLabelEXT)
-> io ()
cmdBeginDebugUtilsLabelEXT :: forall (io :: * -> *).
MonadIO io =>
CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
cmdBeginDebugUtilsLabelEXT CommandBuffer
commandBuffer "labelInfo" ::: DebugUtilsLabelEXT
labelInfo = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkCmdBeginDebugUtilsLabelEXTPtr :: FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkCmdBeginDebugUtilsLabelEXTPtr = DeviceCmds
-> FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
pVkCmdBeginDebugUtilsLabelEXT (case CommandBuffer
commandBuffer of CommandBuffer{DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds :: CommandBuffer -> DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkCmdBeginDebugUtilsLabelEXTPtr FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCmdBeginDebugUtilsLabelEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCmdBeginDebugUtilsLabelEXT' :: Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()
vkCmdBeginDebugUtilsLabelEXT' = FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> IO ()
mkVkCmdBeginDebugUtilsLabelEXT FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkCmdBeginDebugUtilsLabelEXTPtr
pLabelInfo <- ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT)))
-> ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall a b. (a -> b) -> a -> b
$ ("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
withCStruct ("labelInfo" ::: DebugUtilsLabelEXT
labelInfo)
lift $ traceAroundEvent "vkCmdBeginDebugUtilsLabelEXT" (vkCmdBeginDebugUtilsLabelEXT'
(commandBufferHandle (commandBuffer))
pLabelInfo)
pure $ ()
cmdUseDebugUtilsLabelEXT :: forall io r . MonadIO io => CommandBuffer -> DebugUtilsLabelEXT -> io r -> io r
cmdUseDebugUtilsLabelEXT :: forall (io :: * -> *) r.
MonadIO io =>
CommandBuffer
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> io r -> io r
cmdUseDebugUtilsLabelEXT CommandBuffer
commandBuffer "labelInfo" ::: DebugUtilsLabelEXT
pLabelInfo io r
a =
(CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
forall (io :: * -> *).
MonadIO io =>
CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
cmdBeginDebugUtilsLabelEXT CommandBuffer
commandBuffer
"labelInfo" ::: DebugUtilsLabelEXT
pLabelInfo) io () -> io r -> io r
forall a b. io a -> io b -> io b
forall (f :: * -> *) a b. Applicative f => f a -> f b -> f b
*> io r
a io r -> io () -> io r
forall a b. io a -> io b -> io a
forall (f :: * -> *) a b. Applicative f => f a -> f b -> f a
<* (CommandBuffer -> io ()
forall (io :: * -> *). MonadIO io => CommandBuffer -> io ()
cmdEndDebugUtilsLabelEXT CommandBuffer
commandBuffer)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCmdEndDebugUtilsLabelEXT
:: FunPtr (Ptr CommandBuffer_T -> IO ()) -> Ptr CommandBuffer_T -> IO ()
cmdEndDebugUtilsLabelEXT :: forall io
. (MonadIO io)
=>
CommandBuffer
-> io ()
cmdEndDebugUtilsLabelEXT :: forall (io :: * -> *). MonadIO io => CommandBuffer -> io ()
cmdEndDebugUtilsLabelEXT CommandBuffer
commandBuffer = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ()) -> IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkCmdEndDebugUtilsLabelEXTPtr :: FunPtr (Ptr CommandBuffer_T -> IO ())
vkCmdEndDebugUtilsLabelEXTPtr = DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
pVkCmdEndDebugUtilsLabelEXT (case CommandBuffer
commandBuffer of CommandBuffer{DeviceCmds
deviceCmds :: CommandBuffer -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr (Ptr CommandBuffer_T -> IO ())
vkCmdEndDebugUtilsLabelEXTPtr FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ()) -> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr (Ptr CommandBuffer_T -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCmdEndDebugUtilsLabelEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCmdEndDebugUtilsLabelEXT' :: Ptr CommandBuffer_T -> IO ()
vkCmdEndDebugUtilsLabelEXT' = FunPtr (Ptr CommandBuffer_T -> IO ())
-> Ptr CommandBuffer_T -> IO ()
mkVkCmdEndDebugUtilsLabelEXT FunPtr (Ptr CommandBuffer_T -> IO ())
vkCmdEndDebugUtilsLabelEXTPtr
String -> IO () -> IO ()
forall a. String -> IO a -> IO a
traceAroundEvent String
"vkCmdEndDebugUtilsLabelEXT" (Ptr CommandBuffer_T -> IO ()
vkCmdEndDebugUtilsLabelEXT'
(CommandBuffer -> Ptr CommandBuffer_T
commandBufferHandle (CommandBuffer
commandBuffer)))
() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure (() -> IO ()) -> () -> IO ()
forall a b. (a -> b) -> a -> b
$ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCmdInsertDebugUtilsLabelEXT
:: FunPtr (Ptr CommandBuffer_T -> Ptr DebugUtilsLabelEXT -> IO ()) -> Ptr CommandBuffer_T -> Ptr DebugUtilsLabelEXT -> IO ()
cmdInsertDebugUtilsLabelEXT :: forall io
. (MonadIO io)
=>
CommandBuffer
->
("labelInfo" ::: DebugUtilsLabelEXT)
-> io ()
cmdInsertDebugUtilsLabelEXT :: forall (io :: * -> *).
MonadIO io =>
CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
cmdInsertDebugUtilsLabelEXT CommandBuffer
commandBuffer "labelInfo" ::: DebugUtilsLabelEXT
labelInfo = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkCmdInsertDebugUtilsLabelEXTPtr :: FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkCmdInsertDebugUtilsLabelEXTPtr = DeviceCmds
-> FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
pVkCmdInsertDebugUtilsLabelEXT (case CommandBuffer
commandBuffer of CommandBuffer{DeviceCmds
deviceCmds :: CommandBuffer -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkCmdInsertDebugUtilsLabelEXTPtr FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCmdInsertDebugUtilsLabelEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCmdInsertDebugUtilsLabelEXT' :: Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()
vkCmdInsertDebugUtilsLabelEXT' = FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
-> Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> IO ()
mkVkCmdInsertDebugUtilsLabelEXT FunPtr
(Ptr CommandBuffer_T
-> Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ())
vkCmdInsertDebugUtilsLabelEXTPtr
pLabelInfo <- ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT)))
-> ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ())
-> ContT () IO (Ptr ("labelInfo" ::: DebugUtilsLabelEXT))
forall a b. (a -> b) -> a -> b
$ ("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
withCStruct ("labelInfo" ::: DebugUtilsLabelEXT
labelInfo)
lift $ traceAroundEvent "vkCmdInsertDebugUtilsLabelEXT" (vkCmdInsertDebugUtilsLabelEXT'
(commandBufferHandle (commandBuffer))
pLabelInfo)
pure $ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCreateDebugUtilsMessengerEXT
:: FunPtr (Ptr Instance_T -> Ptr DebugUtilsMessengerCreateInfoEXT -> Ptr AllocationCallbacks -> Ptr DebugUtilsMessengerEXT -> IO Result) -> Ptr Instance_T -> Ptr DebugUtilsMessengerCreateInfoEXT -> Ptr AllocationCallbacks -> Ptr DebugUtilsMessengerEXT -> IO Result
createDebugUtilsMessengerEXT :: forall io
. (MonadIO io)
=>
Instance
->
DebugUtilsMessengerCreateInfoEXT
->
("allocator" ::: Maybe AllocationCallbacks)
-> io (DebugUtilsMessengerEXT)
createDebugUtilsMessengerEXT :: forall (io :: * -> *).
MonadIO io =>
Instance
-> DebugUtilsMessengerCreateInfoEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io DebugUtilsMessengerEXT
createDebugUtilsMessengerEXT Instance
instance'
DebugUtilsMessengerCreateInfoEXT
createInfo
"allocator" ::: Maybe AllocationCallbacks
allocator = IO DebugUtilsMessengerEXT -> io DebugUtilsMessengerEXT
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DebugUtilsMessengerEXT -> io DebugUtilsMessengerEXT)
-> (ContT DebugUtilsMessengerEXT IO DebugUtilsMessengerEXT
-> IO DebugUtilsMessengerEXT)
-> ContT DebugUtilsMessengerEXT IO DebugUtilsMessengerEXT
-> io DebugUtilsMessengerEXT
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT DebugUtilsMessengerEXT IO DebugUtilsMessengerEXT
-> IO DebugUtilsMessengerEXT
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT DebugUtilsMessengerEXT IO DebugUtilsMessengerEXT
-> io DebugUtilsMessengerEXT)
-> ContT DebugUtilsMessengerEXT IO DebugUtilsMessengerEXT
-> io DebugUtilsMessengerEXT
forall a b. (a -> b) -> a -> b
$ do
let vkCreateDebugUtilsMessengerEXTPtr :: FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
vkCreateDebugUtilsMessengerEXTPtr = InstanceCmds
-> FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
pVkCreateDebugUtilsMessengerEXT (case Instance
instance' of Instance{InstanceCmds
instanceCmds :: InstanceCmds
instanceCmds :: Instance -> InstanceCmds
instanceCmds} -> InstanceCmds
instanceCmds)
IO () -> ContT DebugUtilsMessengerEXT IO ()
forall (m :: * -> *) a.
Monad m =>
m a -> ContT DebugUtilsMessengerEXT m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT DebugUtilsMessengerEXT IO ())
-> IO () -> ContT DebugUtilsMessengerEXT IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
vkCreateDebugUtilsMessengerEXTPtr FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
-> FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCreateDebugUtilsMessengerEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCreateDebugUtilsMessengerEXT' :: Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result
vkCreateDebugUtilsMessengerEXT' = FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
-> Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result
mkVkCreateDebugUtilsMessengerEXT FunPtr
(Ptr Instance_T
-> Ptr DebugUtilsMessengerCreateInfoEXT
-> Ptr AllocationCallbacks
-> Ptr DebugUtilsMessengerEXT
-> IO Result)
vkCreateDebugUtilsMessengerEXTPtr
pCreateInfo <- ((Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT)
-> ContT
DebugUtilsMessengerEXT IO (Ptr DebugUtilsMessengerCreateInfoEXT)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT)
-> ContT
DebugUtilsMessengerEXT IO (Ptr DebugUtilsMessengerCreateInfoEXT))
-> ((Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT)
-> ContT
DebugUtilsMessengerEXT IO (Ptr DebugUtilsMessengerCreateInfoEXT)
forall a b. (a -> b) -> a -> b
$ DebugUtilsMessengerCreateInfoEXT
-> (Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DebugUtilsMessengerCreateInfoEXT
-> (Ptr DebugUtilsMessengerCreateInfoEXT -> IO b) -> IO b
withCStruct (DebugUtilsMessengerCreateInfoEXT
createInfo)
pAllocator <- case (allocator) of
"allocator" ::: Maybe AllocationCallbacks
Nothing -> Ptr AllocationCallbacks
-> ContT DebugUtilsMessengerEXT IO (Ptr AllocationCallbacks)
forall a. a -> ContT DebugUtilsMessengerEXT IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr AllocationCallbacks
forall a. Ptr a
nullPtr
Just AllocationCallbacks
j -> ((Ptr AllocationCallbacks -> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT)
-> ContT DebugUtilsMessengerEXT IO (Ptr AllocationCallbacks)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr AllocationCallbacks -> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT)
-> ContT DebugUtilsMessengerEXT IO (Ptr AllocationCallbacks))
-> ((Ptr AllocationCallbacks -> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT)
-> ContT DebugUtilsMessengerEXT IO (Ptr AllocationCallbacks)
forall a b. (a -> b) -> a -> b
$ AllocationCallbacks
-> (Ptr AllocationCallbacks -> IO DebugUtilsMessengerEXT)
-> IO DebugUtilsMessengerEXT
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
AllocationCallbacks -> (Ptr AllocationCallbacks -> IO b) -> IO b
withCStruct (AllocationCallbacks
j)
pPMessenger <- ContT $ bracket (callocBytes @DebugUtilsMessengerEXT 8) free
r <- lift $ traceAroundEvent "vkCreateDebugUtilsMessengerEXT" (vkCreateDebugUtilsMessengerEXT'
(instanceHandle (instance'))
pCreateInfo
pAllocator
(pPMessenger))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pMessenger <- lift $ peek @DebugUtilsMessengerEXT pPMessenger
pure $ (pMessenger)
withDebugUtilsMessengerEXT :: forall io r . MonadIO io => Instance -> DebugUtilsMessengerCreateInfoEXT -> Maybe AllocationCallbacks -> (io DebugUtilsMessengerEXT -> (DebugUtilsMessengerEXT -> io ()) -> r) -> r
withDebugUtilsMessengerEXT :: forall (io :: * -> *) r.
MonadIO io =>
Instance
-> DebugUtilsMessengerCreateInfoEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> (io DebugUtilsMessengerEXT
-> (DebugUtilsMessengerEXT -> io ()) -> r)
-> r
withDebugUtilsMessengerEXT Instance
instance' DebugUtilsMessengerCreateInfoEXT
pCreateInfo "allocator" ::: Maybe AllocationCallbacks
pAllocator io DebugUtilsMessengerEXT -> (DebugUtilsMessengerEXT -> io ()) -> r
b =
io DebugUtilsMessengerEXT -> (DebugUtilsMessengerEXT -> io ()) -> r
b (Instance
-> DebugUtilsMessengerCreateInfoEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io DebugUtilsMessengerEXT
forall (io :: * -> *).
MonadIO io =>
Instance
-> DebugUtilsMessengerCreateInfoEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io DebugUtilsMessengerEXT
createDebugUtilsMessengerEXT Instance
instance' DebugUtilsMessengerCreateInfoEXT
pCreateInfo "allocator" ::: Maybe AllocationCallbacks
pAllocator)
(\(DebugUtilsMessengerEXT
o0) -> Instance
-> DebugUtilsMessengerEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io ()
forall (io :: * -> *).
MonadIO io =>
Instance
-> DebugUtilsMessengerEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io ()
destroyDebugUtilsMessengerEXT Instance
instance' DebugUtilsMessengerEXT
o0 "allocator" ::: Maybe AllocationCallbacks
pAllocator)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkDestroyDebugUtilsMessengerEXT
:: FunPtr (Ptr Instance_T -> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ()) -> Ptr Instance_T -> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ()
destroyDebugUtilsMessengerEXT :: forall io
. (MonadIO io)
=>
Instance
->
DebugUtilsMessengerEXT
->
("allocator" ::: Maybe AllocationCallbacks)
-> io ()
destroyDebugUtilsMessengerEXT :: forall (io :: * -> *).
MonadIO io =>
Instance
-> DebugUtilsMessengerEXT
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io ()
destroyDebugUtilsMessengerEXT Instance
instance'
DebugUtilsMessengerEXT
messenger
"allocator" ::: Maybe AllocationCallbacks
allocator = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkDestroyDebugUtilsMessengerEXTPtr :: FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
vkDestroyDebugUtilsMessengerEXTPtr = InstanceCmds
-> FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
pVkDestroyDebugUtilsMessengerEXT (case Instance
instance' of Instance{InstanceCmds
instanceCmds :: Instance -> InstanceCmds
instanceCmds :: InstanceCmds
instanceCmds} -> InstanceCmds
instanceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
vkDestroyDebugUtilsMessengerEXTPtr FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
-> FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkDestroyDebugUtilsMessengerEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkDestroyDebugUtilsMessengerEXT' :: Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ()
vkDestroyDebugUtilsMessengerEXT' = FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
-> Ptr Instance_T
-> DebugUtilsMessengerEXT
-> Ptr AllocationCallbacks
-> IO ()
mkVkDestroyDebugUtilsMessengerEXT FunPtr
(Ptr Instance_T
-> DebugUtilsMessengerEXT -> Ptr AllocationCallbacks -> IO ())
vkDestroyDebugUtilsMessengerEXTPtr
pAllocator <- case ("allocator" ::: Maybe AllocationCallbacks
allocator) of
"allocator" ::: Maybe AllocationCallbacks
Nothing -> Ptr AllocationCallbacks -> ContT () IO (Ptr AllocationCallbacks)
forall a. a -> ContT () IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr AllocationCallbacks
forall a. Ptr a
nullPtr
Just AllocationCallbacks
j -> ((Ptr AllocationCallbacks -> IO ()) -> IO ())
-> ContT () IO (Ptr AllocationCallbacks)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr AllocationCallbacks -> IO ()) -> IO ())
-> ContT () IO (Ptr AllocationCallbacks))
-> ((Ptr AllocationCallbacks -> IO ()) -> IO ())
-> ContT () IO (Ptr AllocationCallbacks)
forall a b. (a -> b) -> a -> b
$ AllocationCallbacks -> (Ptr AllocationCallbacks -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
AllocationCallbacks -> (Ptr AllocationCallbacks -> IO b) -> IO b
withCStruct (AllocationCallbacks
j)
lift $ traceAroundEvent "vkDestroyDebugUtilsMessengerEXT" (vkDestroyDebugUtilsMessengerEXT'
(instanceHandle (instance'))
(messenger)
pAllocator)
pure $ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkSubmitDebugUtilsMessageEXT
:: FunPtr (Ptr Instance_T -> DebugUtilsMessageSeverityFlagBitsEXT -> DebugUtilsMessageTypeFlagsEXT -> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT) -> IO ()) -> Ptr Instance_T -> DebugUtilsMessageSeverityFlagBitsEXT -> DebugUtilsMessageTypeFlagsEXT -> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT) -> IO ()
submitDebugUtilsMessageEXT :: forall a io
. ( Extendss DebugUtilsMessengerCallbackDataEXT a
, PokeChain a
, MonadIO io )
=>
Instance
->
DebugUtilsMessageSeverityFlagBitsEXT
->
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
->
(DebugUtilsMessengerCallbackDataEXT a)
-> io ()
submitDebugUtilsMessageEXT :: forall (a :: [*]) (io :: * -> *).
(Extendss DebugUtilsMessengerCallbackDataEXT a, PokeChain a,
MonadIO io) =>
Instance
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> DebugUtilsMessengerCallbackDataEXT a
-> io ()
submitDebugUtilsMessageEXT Instance
instance'
DebugUtilsMessageSeverityFlagBitsEXT
messageSeverity
"messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
messageTypes
DebugUtilsMessengerCallbackDataEXT a
callbackData = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkSubmitDebugUtilsMessageEXTPtr :: FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
vkSubmitDebugUtilsMessageEXTPtr = InstanceCmds
-> FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
pVkSubmitDebugUtilsMessageEXT (case Instance
instance' of Instance{InstanceCmds
instanceCmds :: Instance -> InstanceCmds
instanceCmds :: InstanceCmds
instanceCmds} -> InstanceCmds
instanceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
vkSubmitDebugUtilsMessageEXTPtr FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
-> FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkSubmitDebugUtilsMessageEXT is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkSubmitDebugUtilsMessageEXT' :: Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ()
vkSubmitDebugUtilsMessageEXT' = FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
-> Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ()
mkVkSubmitDebugUtilsMessageEXT FunPtr
(Ptr Instance_T
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)
-> IO ())
vkSubmitDebugUtilsMessageEXTPtr
pCallbackData <- ((Ptr (DebugUtilsMessengerCallbackDataEXT a) -> IO ()) -> IO ())
-> ContT () IO (Ptr (DebugUtilsMessengerCallbackDataEXT a))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (DebugUtilsMessengerCallbackDataEXT a) -> IO ()) -> IO ())
-> ContT () IO (Ptr (DebugUtilsMessengerCallbackDataEXT a)))
-> ((Ptr (DebugUtilsMessengerCallbackDataEXT a) -> IO ()) -> IO ())
-> ContT () IO (Ptr (DebugUtilsMessengerCallbackDataEXT a))
forall a b. (a -> b) -> a -> b
$ DebugUtilsMessengerCallbackDataEXT a
-> (Ptr (DebugUtilsMessengerCallbackDataEXT a) -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DebugUtilsMessengerCallbackDataEXT a
-> (Ptr (DebugUtilsMessengerCallbackDataEXT a) -> IO b) -> IO b
withCStruct (DebugUtilsMessengerCallbackDataEXT a
callbackData)
lift $ traceAroundEvent "vkSubmitDebugUtilsMessageEXT" (vkSubmitDebugUtilsMessageEXT'
(instanceHandle (instance'))
(messageSeverity)
(messageTypes)
(forgetExtensions pCallbackData))
pure $ ()
data DebugUtilsObjectNameInfoEXT = DebugUtilsObjectNameInfoEXT
{
DebugUtilsObjectNameInfoEXT -> ObjectType
objectType :: ObjectType
,
DebugUtilsObjectNameInfoEXT -> Word64
objectHandle :: Word64
,
DebugUtilsObjectNameInfoEXT -> Maybe ByteString
objectName :: Maybe ByteString
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DebugUtilsObjectNameInfoEXT)
#endif
deriving instance Show DebugUtilsObjectNameInfoEXT
instance ToCStruct DebugUtilsObjectNameInfoEXT where
withCStruct :: forall b.
DebugUtilsObjectNameInfoEXT
-> (Ptr DebugUtilsObjectNameInfoEXT -> IO b) -> IO b
withCStruct DebugUtilsObjectNameInfoEXT
x Ptr DebugUtilsObjectNameInfoEXT -> IO b
f = Int -> (Ptr DebugUtilsObjectNameInfoEXT -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
40 ((Ptr DebugUtilsObjectNameInfoEXT -> IO b) -> IO b)
-> (Ptr DebugUtilsObjectNameInfoEXT -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DebugUtilsObjectNameInfoEXT
p -> Ptr DebugUtilsObjectNameInfoEXT
-> DebugUtilsObjectNameInfoEXT -> IO b -> IO b
forall b.
Ptr DebugUtilsObjectNameInfoEXT
-> DebugUtilsObjectNameInfoEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DebugUtilsObjectNameInfoEXT
p DebugUtilsObjectNameInfoEXT
x (Ptr DebugUtilsObjectNameInfoEXT -> IO b
f Ptr DebugUtilsObjectNameInfoEXT
p)
pokeCStruct :: forall b.
Ptr DebugUtilsObjectNameInfoEXT
-> DebugUtilsObjectNameInfoEXT -> IO b -> IO b
pokeCStruct Ptr DebugUtilsObjectNameInfoEXT
p DebugUtilsObjectNameInfoEXT{Maybe ByteString
Word64
ObjectType
objectType :: DebugUtilsObjectNameInfoEXT -> ObjectType
objectHandle :: DebugUtilsObjectNameInfoEXT -> Word64
objectName :: DebugUtilsObjectNameInfoEXT -> Maybe ByteString
objectType :: ObjectType
objectHandle :: Word64
objectName :: Maybe ByteString
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr ObjectType -> ObjectType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr ObjectType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ObjectType)) (ObjectType
objectType)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word64)) (Word64
objectHandle)
pObjectName'' <- case (Maybe ByteString
objectName) of
Maybe ByteString
Nothing -> Ptr CChar -> ContT b IO (Ptr CChar)
forall a. a -> ContT b IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr CChar
forall a. Ptr a
nullPtr
Just ByteString
j -> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
j)
lift $ poke ((p `plusPtr` 32 :: Ptr (Ptr CChar))) pObjectName''
lift $ f
cStructSize :: Int
cStructSize = Int
40
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DebugUtilsObjectNameInfoEXT -> IO b -> IO b
pokeZeroCStruct Ptr DebugUtilsObjectNameInfoEXT
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr ObjectType -> ObjectType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr ObjectType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ObjectType)) (ObjectType
forall a. Zero a => a
zero)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word64)) (Word64
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DebugUtilsObjectNameInfoEXT where
peekCStruct :: Ptr DebugUtilsObjectNameInfoEXT -> IO DebugUtilsObjectNameInfoEXT
peekCStruct Ptr DebugUtilsObjectNameInfoEXT
p = do
objectType <- forall a. Storable a => Ptr a -> IO a
peek @ObjectType ((Ptr DebugUtilsObjectNameInfoEXT
p Ptr DebugUtilsObjectNameInfoEXT -> Int -> Ptr ObjectType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ObjectType))
objectHandle <- peek @Word64 ((p `plusPtr` 24 :: Ptr Word64))
pObjectName <- peek @(Ptr CChar) ((p `plusPtr` 32 :: Ptr (Ptr CChar)))
pObjectName' <- maybePeek (\Ptr CChar
j -> Ptr CChar -> IO ByteString
packCString (Ptr CChar
j)) pObjectName
pure $ DebugUtilsObjectNameInfoEXT
objectType objectHandle pObjectName'
instance Zero DebugUtilsObjectNameInfoEXT where
zero :: DebugUtilsObjectNameInfoEXT
zero = ObjectType
-> Word64 -> Maybe ByteString -> DebugUtilsObjectNameInfoEXT
DebugUtilsObjectNameInfoEXT
ObjectType
forall a. Zero a => a
zero
Word64
forall a. Zero a => a
zero
Maybe ByteString
forall a. Maybe a
Nothing
data DebugUtilsObjectTagInfoEXT = DebugUtilsObjectTagInfoEXT
{
DebugUtilsObjectTagInfoEXT -> ObjectType
objectType :: ObjectType
,
DebugUtilsObjectTagInfoEXT -> Word64
objectHandle :: Word64
,
DebugUtilsObjectTagInfoEXT -> Word64
tagName :: Word64
,
DebugUtilsObjectTagInfoEXT -> Word64
tagSize :: Word64
,
DebugUtilsObjectTagInfoEXT -> Ptr ()
tag :: Ptr ()
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DebugUtilsObjectTagInfoEXT)
#endif
deriving instance Show DebugUtilsObjectTagInfoEXT
instance ToCStruct DebugUtilsObjectTagInfoEXT where
withCStruct :: forall b.
DebugUtilsObjectTagInfoEXT
-> (Ptr DebugUtilsObjectTagInfoEXT -> IO b) -> IO b
withCStruct DebugUtilsObjectTagInfoEXT
x Ptr DebugUtilsObjectTagInfoEXT -> IO b
f = Int -> (Ptr DebugUtilsObjectTagInfoEXT -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
56 ((Ptr DebugUtilsObjectTagInfoEXT -> IO b) -> IO b)
-> (Ptr DebugUtilsObjectTagInfoEXT -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DebugUtilsObjectTagInfoEXT
p -> Ptr DebugUtilsObjectTagInfoEXT
-> DebugUtilsObjectTagInfoEXT -> IO b -> IO b
forall b.
Ptr DebugUtilsObjectTagInfoEXT
-> DebugUtilsObjectTagInfoEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DebugUtilsObjectTagInfoEXT
p DebugUtilsObjectTagInfoEXT
x (Ptr DebugUtilsObjectTagInfoEXT -> IO b
f Ptr DebugUtilsObjectTagInfoEXT
p)
pokeCStruct :: forall b.
Ptr DebugUtilsObjectTagInfoEXT
-> DebugUtilsObjectTagInfoEXT -> IO b -> IO b
pokeCStruct Ptr DebugUtilsObjectTagInfoEXT
p DebugUtilsObjectTagInfoEXT{Word64
Ptr ()
ObjectType
objectType :: DebugUtilsObjectTagInfoEXT -> ObjectType
objectHandle :: DebugUtilsObjectTagInfoEXT -> Word64
tagName :: DebugUtilsObjectTagInfoEXT -> Word64
tagSize :: DebugUtilsObjectTagInfoEXT -> Word64
tag :: DebugUtilsObjectTagInfoEXT -> Ptr ()
objectType :: ObjectType
objectHandle :: Word64
tagName :: Word64
tagSize :: Word64
tag :: Ptr ()
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr ObjectType -> ObjectType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr ObjectType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ObjectType)) (ObjectType
objectType)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word64)) (Word64
objectHandle)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Word64)) (Word64
tagName)
Ptr CSize -> CSize -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr CSize
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr CSize)) (Word64 -> CSize
CSize (Word64
tagSize))
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr (Ptr ()))) (Ptr ()
tag)
IO b
f
cStructSize :: Int
cStructSize = Int
56
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DebugUtilsObjectTagInfoEXT -> IO b -> IO b
pokeZeroCStruct Ptr DebugUtilsObjectTagInfoEXT
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr ObjectType -> ObjectType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr ObjectType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ObjectType)) (ObjectType
forall a. Zero a => a
zero)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word64)) (Word64
forall a. Zero a => a
zero)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Word64)) (Word64
forall a. Zero a => a
zero)
Ptr CSize -> CSize -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr CSize
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr CSize)) (Word64 -> CSize
CSize (Word64
forall a. Zero a => a
zero))
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr (Ptr ()))) (Ptr ()
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DebugUtilsObjectTagInfoEXT where
peekCStruct :: Ptr DebugUtilsObjectTagInfoEXT -> IO DebugUtilsObjectTagInfoEXT
peekCStruct Ptr DebugUtilsObjectTagInfoEXT
p = do
objectType <- forall a. Storable a => Ptr a -> IO a
peek @ObjectType ((Ptr DebugUtilsObjectTagInfoEXT
p Ptr DebugUtilsObjectTagInfoEXT -> Int -> Ptr ObjectType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ObjectType))
objectHandle <- peek @Word64 ((p `plusPtr` 24 :: Ptr Word64))
tagName <- peek @Word64 ((p `plusPtr` 32 :: Ptr Word64))
tagSize <- peek @CSize ((p `plusPtr` 40 :: Ptr CSize))
pTag <- peek @(Ptr ()) ((p `plusPtr` 48 :: Ptr (Ptr ())))
pure $ DebugUtilsObjectTagInfoEXT
objectType
objectHandle
tagName
(coerce @CSize @Word64 tagSize)
pTag
instance Storable DebugUtilsObjectTagInfoEXT where
sizeOf :: DebugUtilsObjectTagInfoEXT -> Int
sizeOf ~DebugUtilsObjectTagInfoEXT
_ = Int
56
alignment :: DebugUtilsObjectTagInfoEXT -> Int
alignment ~DebugUtilsObjectTagInfoEXT
_ = Int
8
peek :: Ptr DebugUtilsObjectTagInfoEXT -> IO DebugUtilsObjectTagInfoEXT
peek = Ptr DebugUtilsObjectTagInfoEXT -> IO DebugUtilsObjectTagInfoEXT
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DebugUtilsObjectTagInfoEXT
-> DebugUtilsObjectTagInfoEXT -> IO ()
poke Ptr DebugUtilsObjectTagInfoEXT
ptr DebugUtilsObjectTagInfoEXT
poked = Ptr DebugUtilsObjectTagInfoEXT
-> DebugUtilsObjectTagInfoEXT -> IO () -> IO ()
forall b.
Ptr DebugUtilsObjectTagInfoEXT
-> DebugUtilsObjectTagInfoEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DebugUtilsObjectTagInfoEXT
ptr DebugUtilsObjectTagInfoEXT
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DebugUtilsObjectTagInfoEXT where
zero :: DebugUtilsObjectTagInfoEXT
zero = ObjectType
-> Word64
-> Word64
-> Word64
-> Ptr ()
-> DebugUtilsObjectTagInfoEXT
DebugUtilsObjectTagInfoEXT
ObjectType
forall a. Zero a => a
zero
Word64
forall a. Zero a => a
zero
Word64
forall a. Zero a => a
zero
Word64
forall a. Zero a => a
zero
Ptr ()
forall a. Zero a => a
zero
data DebugUtilsLabelEXT = DebugUtilsLabelEXT
{
("labelInfo" ::: DebugUtilsLabelEXT) -> ByteString
labelName :: ByteString
,
("labelInfo" ::: DebugUtilsLabelEXT)
-> (Float, Float, Float, Float)
color :: (Float, Float, Float, Float)
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DebugUtilsLabelEXT)
#endif
deriving instance Show DebugUtilsLabelEXT
instance ToCStruct DebugUtilsLabelEXT where
withCStruct :: forall b.
("labelInfo" ::: DebugUtilsLabelEXT)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
withCStruct "labelInfo" ::: DebugUtilsLabelEXT
x Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b
f = Int -> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
40 ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b)
-> (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
forall b.
Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p "labelInfo" ::: DebugUtilsLabelEXT
x (Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b
f Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p)
pokeCStruct :: forall b.
Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
pokeCStruct Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p DebugUtilsLabelEXT{(Float, Float, Float, Float)
ByteString
labelName :: ("labelInfo" ::: DebugUtilsLabelEXT) -> ByteString
color :: ("labelInfo" ::: DebugUtilsLabelEXT)
-> (Float, Float, Float, Float)
labelName :: ByteString
color :: (Float, Float, Float, Float)
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
pLabelName'' <- ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
labelName)
lift $ poke ((p `plusPtr` 16 :: Ptr (Ptr CChar))) pLabelName''
let pColor' = Ptr (FixedArray 4 CFloat) -> Ptr CFloat
forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr (FixedArray 4 CFloat)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (FixedArray 4 CFloat)))
lift $ case (color) of
(Float
e0, Float
e1, Float
e2, Float
e3) -> do
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e0))
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' Ptr CFloat -> Int -> Ptr CFloat
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e1))
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' Ptr CFloat -> Int -> Ptr CFloat
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e2))
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' Ptr CFloat -> Int -> Ptr CFloat
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
12 :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e3))
lift $ f
cStructSize :: Int
cStructSize = Int
40
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
pokeZeroCStruct Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
pLabelName'' <- ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
forall a. Monoid a => a
mempty)
lift $ poke ((p `plusPtr` 16 :: Ptr (Ptr CChar))) pLabelName''
let pColor' = Ptr (FixedArray 4 CFloat) -> Ptr CFloat
forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr (FixedArray 4 CFloat)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (FixedArray 4 CFloat)))
lift $ case ((zero, zero, zero, zero)) of
(Float
e0, Float
e1, Float
e2, Float
e3) -> do
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e0))
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' Ptr CFloat -> Int -> Ptr CFloat
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e1))
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' Ptr CFloat -> Int -> Ptr CFloat
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e2))
Ptr CFloat -> CFloat -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr CFloat
pColor' Ptr CFloat -> Int -> Ptr CFloat
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
12 :: Ptr CFloat) (Float -> CFloat
CFloat (Float
e3))
lift $ f
instance FromCStruct DebugUtilsLabelEXT where
peekCStruct :: Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> IO ("labelInfo" ::: DebugUtilsLabelEXT)
peekCStruct Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p = do
pLabelName <- Ptr CChar -> IO ByteString
packCString (Ptr CChar -> IO ByteString) -> IO (Ptr CChar) -> IO ByteString
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Ptr (Ptr CChar) -> IO (Ptr CChar)
forall a. Storable a => Ptr a -> IO a
peek ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT) -> Int -> Ptr (Ptr CChar)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr (Ptr CChar)))
let pcolor = forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr @CFloat ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
p Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr (FixedArray 4 CFloat)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (FixedArray 4 CFloat)))
color0 <- peek @CFloat ((pcolor `advancePtrBytes` 0 :: Ptr CFloat))
color1 <- peek @CFloat ((pcolor `advancePtrBytes` 4 :: Ptr CFloat))
color2 <- peek @CFloat ((pcolor `advancePtrBytes` 8 :: Ptr CFloat))
color3 <- peek @CFloat ((pcolor `advancePtrBytes` 12 :: Ptr CFloat))
pure $ DebugUtilsLabelEXT
pLabelName
(( (coerce @CFloat @Float color0)
, (coerce @CFloat @Float color1)
, (coerce @CFloat @Float color2)
, (coerce @CFloat @Float color3) ))
instance Zero DebugUtilsLabelEXT where
zero :: "labelInfo" ::: DebugUtilsLabelEXT
zero = ByteString
-> (Float, Float, Float, Float)
-> "labelInfo" ::: DebugUtilsLabelEXT
DebugUtilsLabelEXT
ByteString
forall a. Monoid a => a
mempty
(Float
forall a. Zero a => a
zero, Float
forall a. Zero a => a
zero, Float
forall a. Zero a => a
zero, Float
forall a. Zero a => a
zero)
data DebugUtilsMessengerCreateInfoEXT = DebugUtilsMessengerCreateInfoEXT
{
DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateFlagsEXT
flags :: DebugUtilsMessengerCreateFlagsEXT
,
DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
messageSeverity :: DebugUtilsMessageSeverityFlagsEXT
,
DebugUtilsMessengerCreateInfoEXT
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
messageType :: DebugUtilsMessageTypeFlagsEXT
,
DebugUtilsMessengerCreateInfoEXT
-> PFN_vkDebugUtilsMessengerCallbackEXT
pfnUserCallback :: PFN_vkDebugUtilsMessengerCallbackEXT
,
DebugUtilsMessengerCreateInfoEXT -> Ptr ()
userData :: Ptr ()
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DebugUtilsMessengerCreateInfoEXT)
#endif
deriving instance Show DebugUtilsMessengerCreateInfoEXT
instance ToCStruct DebugUtilsMessengerCreateInfoEXT where
withCStruct :: forall b.
DebugUtilsMessengerCreateInfoEXT
-> (Ptr DebugUtilsMessengerCreateInfoEXT -> IO b) -> IO b
withCStruct DebugUtilsMessengerCreateInfoEXT
x Ptr DebugUtilsMessengerCreateInfoEXT -> IO b
f = Int -> (Ptr DebugUtilsMessengerCreateInfoEXT -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
48 ((Ptr DebugUtilsMessengerCreateInfoEXT -> IO b) -> IO b)
-> (Ptr DebugUtilsMessengerCreateInfoEXT -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DebugUtilsMessengerCreateInfoEXT
p -> Ptr DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateInfoEXT -> IO b -> IO b
forall b.
Ptr DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateInfoEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DebugUtilsMessengerCreateInfoEXT
p DebugUtilsMessengerCreateInfoEXT
x (Ptr DebugUtilsMessengerCreateInfoEXT -> IO b
f Ptr DebugUtilsMessengerCreateInfoEXT
p)
pokeCStruct :: forall b.
Ptr DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateInfoEXT -> IO b -> IO b
pokeCStruct Ptr DebugUtilsMessengerCreateInfoEXT
p DebugUtilsMessengerCreateInfoEXT{Ptr ()
PFN_vkDebugUtilsMessengerCallbackEXT
"messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessengerCreateFlagsEXT
flags :: DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateFlagsEXT
messageSeverity :: DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
messageType :: DebugUtilsMessengerCreateInfoEXT
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
pfnUserCallback :: DebugUtilsMessengerCreateInfoEXT
-> PFN_vkDebugUtilsMessengerCallbackEXT
userData :: DebugUtilsMessengerCreateInfoEXT -> Ptr ()
flags :: DebugUtilsMessengerCreateFlagsEXT
messageSeverity :: DebugUtilsMessageSeverityFlagBitsEXT
messageType :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
pfnUserCallback :: PFN_vkDebugUtilsMessengerCallbackEXT
userData :: Ptr ()
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr DebugUtilsMessengerCreateFlagsEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DebugUtilsMessengerCreateFlagsEXT)) (DebugUtilsMessengerCreateFlagsEXT
flags)
Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr DebugUtilsMessageSeverityFlagBitsEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr DebugUtilsMessageSeverityFlagsEXT)) (DebugUtilsMessageSeverityFlagBitsEXT
messageSeverity)
Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DebugUtilsMessageTypeFlagsEXT)) ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
messageType)
Ptr PFN_vkDebugUtilsMessengerCallbackEXT
-> PFN_vkDebugUtilsMessengerCallbackEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr PFN_vkDebugUtilsMessengerCallbackEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr PFN_vkDebugUtilsMessengerCallbackEXT)) (PFN_vkDebugUtilsMessengerCallbackEXT
pfnUserCallback)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr (Ptr ()))) (Ptr ()
userData)
IO b
f
cStructSize :: Int
cStructSize = Int
48
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DebugUtilsMessengerCreateInfoEXT -> IO b -> IO b
pokeZeroCStruct Ptr DebugUtilsMessengerCreateInfoEXT
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr DebugUtilsMessageSeverityFlagBitsEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr DebugUtilsMessageSeverityFlagsEXT)) (DebugUtilsMessageSeverityFlagBitsEXT
forall a. Zero a => a
zero)
Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DebugUtilsMessageTypeFlagsEXT)) ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
forall a. Zero a => a
zero)
Ptr PFN_vkDebugUtilsMessengerCallbackEXT
-> PFN_vkDebugUtilsMessengerCallbackEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr PFN_vkDebugUtilsMessengerCallbackEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr PFN_vkDebugUtilsMessengerCallbackEXT)) (PFN_vkDebugUtilsMessengerCallbackEXT
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DebugUtilsMessengerCreateInfoEXT where
peekCStruct :: Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerCreateInfoEXT
peekCStruct Ptr DebugUtilsMessengerCreateInfoEXT
p = do
flags <- forall a. Storable a => Ptr a -> IO a
peek @DebugUtilsMessengerCreateFlagsEXT ((Ptr DebugUtilsMessengerCreateInfoEXT
p Ptr DebugUtilsMessengerCreateInfoEXT
-> Int -> Ptr DebugUtilsMessengerCreateFlagsEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DebugUtilsMessengerCreateFlagsEXT))
messageSeverity <- peek @DebugUtilsMessageSeverityFlagsEXT ((p `plusPtr` 20 :: Ptr DebugUtilsMessageSeverityFlagsEXT))
messageType <- peek @DebugUtilsMessageTypeFlagsEXT ((p `plusPtr` 24 :: Ptr DebugUtilsMessageTypeFlagsEXT))
pfnUserCallback <- peek @PFN_vkDebugUtilsMessengerCallbackEXT ((p `plusPtr` 32 :: Ptr PFN_vkDebugUtilsMessengerCallbackEXT))
pUserData <- peek @(Ptr ()) ((p `plusPtr` 40 :: Ptr (Ptr ())))
pure $ DebugUtilsMessengerCreateInfoEXT
flags messageSeverity messageType pfnUserCallback pUserData
instance Storable DebugUtilsMessengerCreateInfoEXT where
sizeOf :: DebugUtilsMessengerCreateInfoEXT -> Int
sizeOf ~DebugUtilsMessengerCreateInfoEXT
_ = Int
48
alignment :: DebugUtilsMessengerCreateInfoEXT -> Int
alignment ~DebugUtilsMessengerCreateInfoEXT
_ = Int
8
peek :: Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerCreateInfoEXT
peek = Ptr DebugUtilsMessengerCreateInfoEXT
-> IO DebugUtilsMessengerCreateInfoEXT
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateInfoEXT -> IO ()
poke Ptr DebugUtilsMessengerCreateInfoEXT
ptr DebugUtilsMessengerCreateInfoEXT
poked = Ptr DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateInfoEXT -> IO () -> IO ()
forall b.
Ptr DebugUtilsMessengerCreateInfoEXT
-> DebugUtilsMessengerCreateInfoEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DebugUtilsMessengerCreateInfoEXT
ptr DebugUtilsMessengerCreateInfoEXT
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DebugUtilsMessengerCreateInfoEXT where
zero :: DebugUtilsMessengerCreateInfoEXT
zero = DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> PFN_vkDebugUtilsMessengerCallbackEXT
-> Ptr ()
-> DebugUtilsMessengerCreateInfoEXT
DebugUtilsMessengerCreateInfoEXT
DebugUtilsMessengerCreateFlagsEXT
forall a. Zero a => a
zero
DebugUtilsMessageSeverityFlagBitsEXT
forall a. Zero a => a
zero
"messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
forall a. Zero a => a
zero
PFN_vkDebugUtilsMessengerCallbackEXT
forall a. Zero a => a
zero
Ptr ()
forall a. Zero a => a
zero
data DebugUtilsMessengerCallbackDataEXT (es :: [Type]) = DebugUtilsMessengerCallbackDataEXT
{
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Chain es
next :: Chain es
,
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> DebugUtilsMessengerCallbackDataFlagsEXT
flags :: DebugUtilsMessengerCallbackDataFlagsEXT
,
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
messageIdName :: Maybe ByteString
,
forall (es :: [*]). DebugUtilsMessengerCallbackDataEXT es -> Int32
messageIdNumber :: Int32
,
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
message :: Maybe ByteString
,
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
queueLabels :: Vector DebugUtilsLabelEXT
,
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: Vector DebugUtilsLabelEXT
,
forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector DebugUtilsObjectNameInfoEXT
objects :: Vector DebugUtilsObjectNameInfoEXT
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DebugUtilsMessengerCallbackDataEXT (es :: [Type]))
#endif
deriving instance Show (Chain es) => Show (DebugUtilsMessengerCallbackDataEXT es)
instance Extensible DebugUtilsMessengerCallbackDataEXT where
extensibleTypeName :: String
extensibleTypeName = String
"DebugUtilsMessengerCallbackDataEXT"
setNext :: forall (ds :: [*]) (es :: [*]).
DebugUtilsMessengerCallbackDataEXT ds
-> Chain es -> DebugUtilsMessengerCallbackDataEXT es
setNext DebugUtilsMessengerCallbackDataEXT{Int32
Maybe ByteString
Vector DebugUtilsObjectNameInfoEXT
Vector ("labelInfo" ::: DebugUtilsLabelEXT)
Chain ds
DebugUtilsMessengerCallbackDataFlagsEXT
next :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Chain es
flags :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
messageIdNumber :: forall (es :: [*]). DebugUtilsMessengerCallbackDataEXT es -> Int32
message :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
queueLabels :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector DebugUtilsObjectNameInfoEXT
next :: Chain ds
flags :: DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: Maybe ByteString
messageIdNumber :: Int32
message :: Maybe ByteString
queueLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: Vector DebugUtilsObjectNameInfoEXT
..} Chain es
next' = DebugUtilsMessengerCallbackDataEXT{next :: Chain es
next = Chain es
next', Int32
Maybe ByteString
Vector DebugUtilsObjectNameInfoEXT
Vector ("labelInfo" ::: DebugUtilsLabelEXT)
DebugUtilsMessengerCallbackDataFlagsEXT
flags :: DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: Maybe ByteString
messageIdNumber :: Int32
message :: Maybe ByteString
queueLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: Vector DebugUtilsObjectNameInfoEXT
flags :: DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: Maybe ByteString
messageIdNumber :: Int32
message :: Maybe ByteString
queueLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: Vector DebugUtilsObjectNameInfoEXT
..}
getNext :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Chain es
getNext DebugUtilsMessengerCallbackDataEXT{Int32
Maybe ByteString
Vector DebugUtilsObjectNameInfoEXT
Vector ("labelInfo" ::: DebugUtilsLabelEXT)
Chain es
DebugUtilsMessengerCallbackDataFlagsEXT
next :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Chain es
flags :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
messageIdNumber :: forall (es :: [*]). DebugUtilsMessengerCallbackDataEXT es -> Int32
message :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
queueLabels :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector DebugUtilsObjectNameInfoEXT
next :: Chain es
flags :: DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: Maybe ByteString
messageIdNumber :: Int32
message :: Maybe ByteString
queueLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: Vector DebugUtilsObjectNameInfoEXT
..} = Chain es
next
extends :: forall e b proxy. Typeable e => proxy e -> (Extends DebugUtilsMessengerCallbackDataEXT e => b) -> Maybe b
extends :: forall e b (proxy :: * -> *).
Typeable e =>
proxy e
-> (Extends DebugUtilsMessengerCallbackDataEXT e => b) -> Maybe b
extends proxy e
_ Extends DebugUtilsMessengerCallbackDataEXT e => b
f
| Just e :~: DeviceAddressBindingCallbackDataEXT
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DeviceAddressBindingCallbackDataEXT = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DebugUtilsMessengerCallbackDataEXT e => b
f
| Bool
otherwise = Maybe b
forall a. Maybe a
Nothing
instance ( Extendss DebugUtilsMessengerCallbackDataEXT es
, PokeChain es ) => ToCStruct (DebugUtilsMessengerCallbackDataEXT es) where
withCStruct :: forall b.
DebugUtilsMessengerCallbackDataEXT es
-> (Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b) -> IO b
withCStruct DebugUtilsMessengerCallbackDataEXT es
x Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b
f = Int
-> (Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
96 ((Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b) -> IO b)
-> (Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr (DebugUtilsMessengerCallbackDataEXT es)
p -> Ptr (DebugUtilsMessengerCallbackDataEXT es)
-> DebugUtilsMessengerCallbackDataEXT es -> IO b -> IO b
forall b.
Ptr (DebugUtilsMessengerCallbackDataEXT es)
-> DebugUtilsMessengerCallbackDataEXT es -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr (DebugUtilsMessengerCallbackDataEXT es)
p DebugUtilsMessengerCallbackDataEXT es
x (Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b
f Ptr (DebugUtilsMessengerCallbackDataEXT es)
p)
pokeCStruct :: forall b.
Ptr (DebugUtilsMessengerCallbackDataEXT es)
-> DebugUtilsMessengerCallbackDataEXT es -> IO b -> IO b
pokeCStruct Ptr (DebugUtilsMessengerCallbackDataEXT es)
p DebugUtilsMessengerCallbackDataEXT{Int32
Maybe ByteString
Vector DebugUtilsObjectNameInfoEXT
Vector ("labelInfo" ::: DebugUtilsLabelEXT)
Chain es
DebugUtilsMessengerCallbackDataFlagsEXT
next :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Chain es
flags :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
messageIdNumber :: forall (es :: [*]). DebugUtilsMessengerCallbackDataEXT es -> Int32
message :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es -> Maybe ByteString
queueLabels :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: forall (es :: [*]).
DebugUtilsMessengerCallbackDataEXT es
-> Vector DebugUtilsObjectNameInfoEXT
next :: Chain es
flags :: DebugUtilsMessengerCallbackDataFlagsEXT
messageIdName :: Maybe ByteString
messageIdNumber :: Int32
message :: Maybe ByteString
queueLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
cmdBufLabels :: Vector ("labelInfo" ::: DebugUtilsLabelEXT)
objects :: Vector DebugUtilsObjectNameInfoEXT
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DebugUtilsMessengerCallbackDataEXT es)
p Ptr (DebugUtilsMessengerCallbackDataEXT es)
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT)
pNext'' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ Chain es -> (Ptr (Chain es) -> IO b) -> IO b
forall (es :: [*]) a.
PokeChain es =>
Chain es -> (Ptr (Chain es) -> IO a) -> IO a
forall a. Chain es -> (Ptr (Chain es) -> IO a) -> IO a
withChain (Chain es
next)
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext''
lift $ poke ((p `plusPtr` 16 :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT)) (flags)
pMessageIdName'' <- case (messageIdName) of
Maybe ByteString
Nothing -> Ptr CChar -> ContT b IO (Ptr CChar)
forall a. a -> ContT b IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr CChar
forall a. Ptr a
nullPtr
Just ByteString
j -> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
j)
lift $ poke ((p `plusPtr` 24 :: Ptr (Ptr CChar))) pMessageIdName''
lift $ poke ((p `plusPtr` 32 :: Ptr Int32)) (messageIdNumber)
pMessage'' <- case (message) of
Maybe ByteString
Nothing -> Ptr CChar -> ContT b IO (Ptr CChar)
forall a. a -> ContT b IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr CChar
forall a. Ptr a
nullPtr
Just ByteString
j -> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
j)
lift $ poke ((p `plusPtr` 40 :: Ptr (Ptr CChar))) pMessage''
lift $ poke ((p `plusPtr` 48 :: Ptr Word32)) ((fromIntegral (Data.Vector.length $ (queueLabels)) :: Word32))
pPQueueLabels' <- ContT $ allocaBytes @DebugUtilsLabelEXT ((Data.Vector.length (queueLabels)) * 40)
Data.Vector.imapM_ (\Int
i "labelInfo" ::: DebugUtilsLabelEXT
e -> ((() -> IO b) -> IO b) -> ContT b IO ()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((() -> IO b) -> IO b) -> ContT b IO ())
-> ((() -> IO b) -> IO b) -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
forall b.
Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct (Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
pPQueueLabels' Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DebugUtilsLabelEXT) ("labelInfo" ::: DebugUtilsLabelEXT
e) (IO b -> IO b) -> ((() -> IO b) -> IO b) -> (() -> IO b) -> IO b
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((() -> IO b) -> () -> IO b
forall a b. (a -> b) -> a -> b
$ ())) (queueLabels)
lift $ poke ((p `plusPtr` 56 :: Ptr (Ptr DebugUtilsLabelEXT))) (pPQueueLabels')
lift $ poke ((p `plusPtr` 64 :: Ptr Word32)) ((fromIntegral (Data.Vector.length $ (cmdBufLabels)) :: Word32))
pPCmdBufLabels' <- ContT $ allocaBytes @DebugUtilsLabelEXT ((Data.Vector.length (cmdBufLabels)) * 40)
Data.Vector.imapM_ (\Int
i "labelInfo" ::: DebugUtilsLabelEXT
e -> ((() -> IO b) -> IO b) -> ContT b IO ()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((() -> IO b) -> IO b) -> ContT b IO ())
-> ((() -> IO b) -> IO b) -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
forall b.
Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> ("labelInfo" ::: DebugUtilsLabelEXT) -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct (Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
pPCmdBufLabels' Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DebugUtilsLabelEXT) ("labelInfo" ::: DebugUtilsLabelEXT
e) (IO b -> IO b) -> ((() -> IO b) -> IO b) -> (() -> IO b) -> IO b
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((() -> IO b) -> () -> IO b
forall a b. (a -> b) -> a -> b
$ ())) (cmdBufLabels)
lift $ poke ((p `plusPtr` 72 :: Ptr (Ptr DebugUtilsLabelEXT))) (pPCmdBufLabels')
lift $ poke ((p `plusPtr` 80 :: Ptr Word32)) ((fromIntegral (Data.Vector.length $ (objects)) :: Word32))
pPObjects' <- ContT $ allocaBytes @DebugUtilsObjectNameInfoEXT ((Data.Vector.length (objects)) * 40)
Data.Vector.imapM_ (\Int
i DebugUtilsObjectNameInfoEXT
e -> ((() -> IO b) -> IO b) -> ContT b IO ()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((() -> IO b) -> IO b) -> ContT b IO ())
-> ((() -> IO b) -> IO b) -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr DebugUtilsObjectNameInfoEXT
-> DebugUtilsObjectNameInfoEXT -> IO b -> IO b
forall b.
Ptr DebugUtilsObjectNameInfoEXT
-> DebugUtilsObjectNameInfoEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct (Ptr DebugUtilsObjectNameInfoEXT
pPObjects' Ptr DebugUtilsObjectNameInfoEXT
-> Int -> Ptr DebugUtilsObjectNameInfoEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DebugUtilsObjectNameInfoEXT) (DebugUtilsObjectNameInfoEXT
e) (IO b -> IO b) -> ((() -> IO b) -> IO b) -> (() -> IO b) -> IO b
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((() -> IO b) -> () -> IO b
forall a b. (a -> b) -> a -> b
$ ())) (objects)
lift $ poke ((p `plusPtr` 88 :: Ptr (Ptr DebugUtilsObjectNameInfoEXT))) (pPObjects')
lift $ f
cStructSize :: Int
cStructSize = Int
96
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr (DebugUtilsMessengerCallbackDataEXT es) -> IO b -> IO b
pokeZeroCStruct Ptr (DebugUtilsMessengerCallbackDataEXT es)
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DebugUtilsMessengerCallbackDataEXT es)
p Ptr (DebugUtilsMessengerCallbackDataEXT es)
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT)
pNext' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ forall (es :: [*]) a.
PokeChain es =>
(Ptr (Chain es) -> IO a) -> IO a
withZeroChain @es
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext'
lift $ poke ((p `plusPtr` 32 :: Ptr Int32)) (zero)
lift $ f
instance ( Extendss DebugUtilsMessengerCallbackDataEXT es
, PeekChain es ) => FromCStruct (DebugUtilsMessengerCallbackDataEXT es) where
peekCStruct :: Ptr (DebugUtilsMessengerCallbackDataEXT es)
-> IO (DebugUtilsMessengerCallbackDataEXT es)
peekCStruct Ptr (DebugUtilsMessengerCallbackDataEXT es)
p = do
pNext <- forall a. Storable a => Ptr a -> IO a
peek @(Ptr ()) ((Ptr (DebugUtilsMessengerCallbackDataEXT es)
p Ptr (DebugUtilsMessengerCallbackDataEXT es) -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ())))
next <- peekChain (castPtr pNext)
flags <- peek @DebugUtilsMessengerCallbackDataFlagsEXT ((p `plusPtr` 16 :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT))
pMessageIdName <- peek @(Ptr CChar) ((p `plusPtr` 24 :: Ptr (Ptr CChar)))
pMessageIdName' <- maybePeek (\Ptr CChar
j -> Ptr CChar -> IO ByteString
packCString (Ptr CChar
j)) pMessageIdName
messageIdNumber <- peek @Int32 ((p `plusPtr` 32 :: Ptr Int32))
pMessage <- peek @(Ptr CChar) ((p `plusPtr` 40 :: Ptr (Ptr CChar)))
pMessage' <- maybePeek (\Ptr CChar
j -> Ptr CChar -> IO ByteString
packCString (Ptr CChar
j)) pMessage
queueLabelCount <- peek @Word32 ((p `plusPtr` 48 :: Ptr Word32))
pQueueLabels <- peek @(Ptr DebugUtilsLabelEXT) ((p `plusPtr` 56 :: Ptr (Ptr DebugUtilsLabelEXT)))
pQueueLabels' <- generateM (fromIntegral queueLabelCount) (\Int
i -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @DebugUtilsLabelEXT ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
pQueueLabels Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DebugUtilsLabelEXT)))
cmdBufLabelCount <- peek @Word32 ((p `plusPtr` 64 :: Ptr Word32))
pCmdBufLabels <- peek @(Ptr DebugUtilsLabelEXT) ((p `plusPtr` 72 :: Ptr (Ptr DebugUtilsLabelEXT)))
pCmdBufLabels' <- generateM (fromIntegral cmdBufLabelCount) (\Int
i -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @DebugUtilsLabelEXT ((Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
pCmdBufLabels Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
-> Int -> Ptr ("labelInfo" ::: DebugUtilsLabelEXT)
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DebugUtilsLabelEXT)))
objectCount <- peek @Word32 ((p `plusPtr` 80 :: Ptr Word32))
pObjects <- peek @(Ptr DebugUtilsObjectNameInfoEXT) ((p `plusPtr` 88 :: Ptr (Ptr DebugUtilsObjectNameInfoEXT)))
pObjects' <- generateM (fromIntegral objectCount) (\Int
i -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @DebugUtilsObjectNameInfoEXT ((Ptr DebugUtilsObjectNameInfoEXT
pObjects Ptr DebugUtilsObjectNameInfoEXT
-> Int -> Ptr DebugUtilsObjectNameInfoEXT
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DebugUtilsObjectNameInfoEXT)))
pure $ DebugUtilsMessengerCallbackDataEXT
next
flags
pMessageIdName'
messageIdNumber
pMessage'
pQueueLabels'
pCmdBufLabels'
pObjects'
instance es ~ '[] => Zero (DebugUtilsMessengerCallbackDataEXT es) where
zero :: DebugUtilsMessengerCallbackDataEXT es
zero = Chain es
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> Maybe ByteString
-> Int32
-> Maybe ByteString
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
-> Vector DebugUtilsObjectNameInfoEXT
-> DebugUtilsMessengerCallbackDataEXT es
forall (es :: [*]).
Chain es
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> Maybe ByteString
-> Int32
-> Maybe ByteString
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
-> Vector ("labelInfo" ::: DebugUtilsLabelEXT)
-> Vector DebugUtilsObjectNameInfoEXT
-> DebugUtilsMessengerCallbackDataEXT es
DebugUtilsMessengerCallbackDataEXT
()
DebugUtilsMessengerCallbackDataFlagsEXT
forall a. Zero a => a
zero
Maybe ByteString
forall a. Maybe a
Nothing
Int32
forall a. Zero a => a
zero
Maybe ByteString
forall a. Maybe a
Nothing
Vector ("labelInfo" ::: DebugUtilsLabelEXT)
forall a. Monoid a => a
mempty
Vector ("labelInfo" ::: DebugUtilsLabelEXT)
forall a. Monoid a => a
mempty
Vector DebugUtilsObjectNameInfoEXT
forall a. Monoid a => a
mempty
newtype DebugUtilsMessengerCreateFlagsEXT = DebugUtilsMessengerCreateFlagsEXT Flags
deriving newtype (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
(DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> Eq DebugUtilsMessengerCreateFlagsEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
== :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
$c/= :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
/= :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
Eq, Eq DebugUtilsMessengerCreateFlagsEXT
Eq DebugUtilsMessengerCreateFlagsEXT =>
(DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Ordering)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT)
-> Ord DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Ordering
DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Ordering
compare :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Ordering
$c< :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
< :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
$c<= :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
<= :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
$c> :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
> :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
$c>= :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
>= :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> Bool
$cmax :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
max :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
$cmin :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
min :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
Ord, Ptr DebugUtilsMessengerCreateFlagsEXT
-> IO DebugUtilsMessengerCreateFlagsEXT
Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> IO DebugUtilsMessengerCreateFlagsEXT
Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ()
Ptr DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> IO ()
DebugUtilsMessengerCreateFlagsEXT -> Int
(DebugUtilsMessengerCreateFlagsEXT -> Int)
-> (DebugUtilsMessengerCreateFlagsEXT -> Int)
-> (Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> IO DebugUtilsMessengerCreateFlagsEXT)
-> (Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ())
-> (forall b. Ptr b -> Int -> IO DebugUtilsMessengerCreateFlagsEXT)
-> (forall b.
Ptr b -> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ())
-> (Ptr DebugUtilsMessengerCreateFlagsEXT
-> IO DebugUtilsMessengerCreateFlagsEXT)
-> (Ptr DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> IO ())
-> Storable DebugUtilsMessengerCreateFlagsEXT
forall b. Ptr b -> Int -> IO DebugUtilsMessengerCreateFlagsEXT
forall b.
Ptr b -> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DebugUtilsMessengerCreateFlagsEXT -> Int
sizeOf :: DebugUtilsMessengerCreateFlagsEXT -> Int
$calignment :: DebugUtilsMessengerCreateFlagsEXT -> Int
alignment :: DebugUtilsMessengerCreateFlagsEXT -> Int
$cpeekElemOff :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> IO DebugUtilsMessengerCreateFlagsEXT
peekElemOff :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> IO DebugUtilsMessengerCreateFlagsEXT
$cpokeElemOff :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ()
pokeElemOff :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DebugUtilsMessengerCreateFlagsEXT
peekByteOff :: forall b. Ptr b -> Int -> IO DebugUtilsMessengerCreateFlagsEXT
$cpokeByteOff :: forall b.
Ptr b -> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DebugUtilsMessengerCreateFlagsEXT -> IO ()
$cpeek :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> IO DebugUtilsMessengerCreateFlagsEXT
peek :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> IO DebugUtilsMessengerCreateFlagsEXT
$cpoke :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> IO ()
poke :: Ptr DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT -> IO ()
Storable, DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT
-> Zero DebugUtilsMessengerCreateFlagsEXT
forall a. a -> Zero a
$czero :: DebugUtilsMessengerCreateFlagsEXT
zero :: DebugUtilsMessengerCreateFlagsEXT
Zero, Eq DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT
Eq DebugUtilsMessengerCreateFlagsEXT =>
(DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> DebugUtilsMessengerCreateFlagsEXT
-> (Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT -> Int -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT -> Maybe Int)
-> (DebugUtilsMessengerCreateFlagsEXT -> Int)
-> (DebugUtilsMessengerCreateFlagsEXT -> Bool)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT)
-> (DebugUtilsMessengerCreateFlagsEXT -> Int)
-> Bits DebugUtilsMessengerCreateFlagsEXT
Int -> DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT -> Bool
DebugUtilsMessengerCreateFlagsEXT -> Int
DebugUtilsMessengerCreateFlagsEXT -> Maybe Int
DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT -> Int -> Bool
DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
.&. :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
$c.|. :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
.|. :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
$cxor :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
xor :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
$ccomplement :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
complement :: DebugUtilsMessengerCreateFlagsEXT
-> DebugUtilsMessengerCreateFlagsEXT
$cshift :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
shift :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$crotate :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
rotate :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$czeroBits :: DebugUtilsMessengerCreateFlagsEXT
zeroBits :: DebugUtilsMessengerCreateFlagsEXT
$cbit :: Int -> DebugUtilsMessengerCreateFlagsEXT
bit :: Int -> DebugUtilsMessengerCreateFlagsEXT
$csetBit :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
setBit :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$cclearBit :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
clearBit :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$ccomplementBit :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
complementBit :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$ctestBit :: DebugUtilsMessengerCreateFlagsEXT -> Int -> Bool
testBit :: DebugUtilsMessengerCreateFlagsEXT -> Int -> Bool
$cbitSizeMaybe :: DebugUtilsMessengerCreateFlagsEXT -> Maybe Int
bitSizeMaybe :: DebugUtilsMessengerCreateFlagsEXT -> Maybe Int
$cbitSize :: DebugUtilsMessengerCreateFlagsEXT -> Int
bitSize :: DebugUtilsMessengerCreateFlagsEXT -> Int
$cisSigned :: DebugUtilsMessengerCreateFlagsEXT -> Bool
isSigned :: DebugUtilsMessengerCreateFlagsEXT -> Bool
$cshiftL :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
shiftL :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$cunsafeShiftL :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
unsafeShiftL :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$cshiftR :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
shiftR :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$cunsafeShiftR :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
unsafeShiftR :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$crotateL :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
rotateL :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$crotateR :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
rotateR :: DebugUtilsMessengerCreateFlagsEXT
-> Int -> DebugUtilsMessengerCreateFlagsEXT
$cpopCount :: DebugUtilsMessengerCreateFlagsEXT -> Int
popCount :: DebugUtilsMessengerCreateFlagsEXT -> Int
Bits, Bits DebugUtilsMessengerCreateFlagsEXT
Bits DebugUtilsMessengerCreateFlagsEXT =>
(DebugUtilsMessengerCreateFlagsEXT -> Int)
-> (DebugUtilsMessengerCreateFlagsEXT -> Int)
-> (DebugUtilsMessengerCreateFlagsEXT -> Int)
-> FiniteBits DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: DebugUtilsMessengerCreateFlagsEXT -> Int
finiteBitSize :: DebugUtilsMessengerCreateFlagsEXT -> Int
$ccountLeadingZeros :: DebugUtilsMessengerCreateFlagsEXT -> Int
countLeadingZeros :: DebugUtilsMessengerCreateFlagsEXT -> Int
$ccountTrailingZeros :: DebugUtilsMessengerCreateFlagsEXT -> Int
countTrailingZeros :: DebugUtilsMessengerCreateFlagsEXT -> Int
FiniteBits)
conNameDebugUtilsMessengerCreateFlagsEXT :: String
conNameDebugUtilsMessengerCreateFlagsEXT :: String
conNameDebugUtilsMessengerCreateFlagsEXT = String
"DebugUtilsMessengerCreateFlagsEXT"
enumPrefixDebugUtilsMessengerCreateFlagsEXT :: String
enumPrefixDebugUtilsMessengerCreateFlagsEXT :: String
enumPrefixDebugUtilsMessengerCreateFlagsEXT = String
""
showTableDebugUtilsMessengerCreateFlagsEXT :: [(DebugUtilsMessengerCreateFlagsEXT, String)]
showTableDebugUtilsMessengerCreateFlagsEXT :: [(DebugUtilsMessengerCreateFlagsEXT, String)]
showTableDebugUtilsMessengerCreateFlagsEXT = []
instance Show DebugUtilsMessengerCreateFlagsEXT where
showsPrec :: Int -> DebugUtilsMessengerCreateFlagsEXT -> ShowS
showsPrec =
String
-> [(DebugUtilsMessengerCreateFlagsEXT, String)]
-> String
-> (DebugUtilsMessengerCreateFlagsEXT -> Word32)
-> (Word32 -> ShowS)
-> Int
-> DebugUtilsMessengerCreateFlagsEXT
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDebugUtilsMessengerCreateFlagsEXT
[(DebugUtilsMessengerCreateFlagsEXT, String)]
showTableDebugUtilsMessengerCreateFlagsEXT
String
conNameDebugUtilsMessengerCreateFlagsEXT
(\(DebugUtilsMessengerCreateFlagsEXT Word32
x) -> Word32
x)
(\Word32
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word32 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word32
x)
instance Read DebugUtilsMessengerCreateFlagsEXT where
readPrec :: ReadPrec DebugUtilsMessengerCreateFlagsEXT
readPrec =
String
-> [(DebugUtilsMessengerCreateFlagsEXT, String)]
-> String
-> (Word32 -> DebugUtilsMessengerCreateFlagsEXT)
-> ReadPrec DebugUtilsMessengerCreateFlagsEXT
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDebugUtilsMessengerCreateFlagsEXT
[(DebugUtilsMessengerCreateFlagsEXT, String)]
showTableDebugUtilsMessengerCreateFlagsEXT
String
conNameDebugUtilsMessengerCreateFlagsEXT
Word32 -> DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT
newtype DebugUtilsMessengerCallbackDataFlagsEXT = DebugUtilsMessengerCallbackDataFlagsEXT Flags
deriving newtype (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
(DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> Eq DebugUtilsMessengerCallbackDataFlagsEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
== :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
$c/= :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
/= :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
Eq, Eq DebugUtilsMessengerCallbackDataFlagsEXT
Eq DebugUtilsMessengerCallbackDataFlagsEXT =>
(DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Ordering)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT)
-> Ord DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Ordering
DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Ordering
compare :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Ordering
$c< :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
< :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
$c<= :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
<= :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
$c> :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
> :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
$c>= :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
>= :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
$cmax :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
max :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
$cmin :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
min :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
Ord, Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> IO DebugUtilsMessengerCallbackDataFlagsEXT
Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT
Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
DebugUtilsMessengerCallbackDataFlagsEXT -> Int
(DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> (Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT)
-> (Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ())
-> (forall b.
Ptr b -> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT)
-> (forall b.
Ptr b -> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ())
-> (Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> IO DebugUtilsMessengerCallbackDataFlagsEXT)
-> (Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ())
-> Storable DebugUtilsMessengerCallbackDataFlagsEXT
forall b.
Ptr b -> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT
forall b.
Ptr b -> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
sizeOf :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
$calignment :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
alignment :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
$cpeekElemOff :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT
peekElemOff :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT
$cpokeElemOff :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
pokeElemOff :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
$cpeekByteOff :: forall b.
Ptr b -> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT
peekByteOff :: forall b.
Ptr b -> Int -> IO DebugUtilsMessengerCallbackDataFlagsEXT
$cpokeByteOff :: forall b.
Ptr b -> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
$cpeek :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> IO DebugUtilsMessengerCallbackDataFlagsEXT
peek :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> IO DebugUtilsMessengerCallbackDataFlagsEXT
$cpoke :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
poke :: Ptr DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
Storable, DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT
-> Zero DebugUtilsMessengerCallbackDataFlagsEXT
forall a. a -> Zero a
$czero :: DebugUtilsMessengerCallbackDataFlagsEXT
zero :: DebugUtilsMessengerCallbackDataFlagsEXT
Zero, Eq DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT
Eq DebugUtilsMessengerCallbackDataFlagsEXT =>
(DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> (Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Int -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Maybe Int)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Bool)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> Bits DebugUtilsMessengerCallbackDataFlagsEXT
Int -> DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
DebugUtilsMessengerCallbackDataFlagsEXT -> Int
DebugUtilsMessengerCallbackDataFlagsEXT -> Maybe Int
DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT -> Int -> Bool
DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
.&. :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
$c.|. :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
.|. :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
$cxor :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
xor :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
$ccomplement :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
complement :: DebugUtilsMessengerCallbackDataFlagsEXT
-> DebugUtilsMessengerCallbackDataFlagsEXT
$cshift :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
shift :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$crotate :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
rotate :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$czeroBits :: DebugUtilsMessengerCallbackDataFlagsEXT
zeroBits :: DebugUtilsMessengerCallbackDataFlagsEXT
$cbit :: Int -> DebugUtilsMessengerCallbackDataFlagsEXT
bit :: Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$csetBit :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
setBit :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$cclearBit :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
clearBit :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$ccomplementBit :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
complementBit :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$ctestBit :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int -> Bool
testBit :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int -> Bool
$cbitSizeMaybe :: DebugUtilsMessengerCallbackDataFlagsEXT -> Maybe Int
bitSizeMaybe :: DebugUtilsMessengerCallbackDataFlagsEXT -> Maybe Int
$cbitSize :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
bitSize :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
$cisSigned :: DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
isSigned :: DebugUtilsMessengerCallbackDataFlagsEXT -> Bool
$cshiftL :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
shiftL :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$cunsafeShiftL :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
unsafeShiftL :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$cshiftR :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
shiftR :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$cunsafeShiftR :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
unsafeShiftR :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$crotateL :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
rotateL :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$crotateR :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
rotateR :: DebugUtilsMessengerCallbackDataFlagsEXT
-> Int -> DebugUtilsMessengerCallbackDataFlagsEXT
$cpopCount :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
popCount :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
Bits, Bits DebugUtilsMessengerCallbackDataFlagsEXT
Bits DebugUtilsMessengerCallbackDataFlagsEXT =>
(DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Int)
-> FiniteBits DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
finiteBitSize :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
$ccountLeadingZeros :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
countLeadingZeros :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
$ccountTrailingZeros :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
countTrailingZeros :: DebugUtilsMessengerCallbackDataFlagsEXT -> Int
FiniteBits)
conNameDebugUtilsMessengerCallbackDataFlagsEXT :: String
conNameDebugUtilsMessengerCallbackDataFlagsEXT :: String
conNameDebugUtilsMessengerCallbackDataFlagsEXT = String
"DebugUtilsMessengerCallbackDataFlagsEXT"
enumPrefixDebugUtilsMessengerCallbackDataFlagsEXT :: String
enumPrefixDebugUtilsMessengerCallbackDataFlagsEXT :: String
enumPrefixDebugUtilsMessengerCallbackDataFlagsEXT = String
""
showTableDebugUtilsMessengerCallbackDataFlagsEXT :: [(DebugUtilsMessengerCallbackDataFlagsEXT, String)]
showTableDebugUtilsMessengerCallbackDataFlagsEXT :: [(DebugUtilsMessengerCallbackDataFlagsEXT, String)]
showTableDebugUtilsMessengerCallbackDataFlagsEXT = []
instance Show DebugUtilsMessengerCallbackDataFlagsEXT where
showsPrec :: Int -> DebugUtilsMessengerCallbackDataFlagsEXT -> ShowS
showsPrec =
String
-> [(DebugUtilsMessengerCallbackDataFlagsEXT, String)]
-> String
-> (DebugUtilsMessengerCallbackDataFlagsEXT -> Word32)
-> (Word32 -> ShowS)
-> Int
-> DebugUtilsMessengerCallbackDataFlagsEXT
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDebugUtilsMessengerCallbackDataFlagsEXT
[(DebugUtilsMessengerCallbackDataFlagsEXT, String)]
showTableDebugUtilsMessengerCallbackDataFlagsEXT
String
conNameDebugUtilsMessengerCallbackDataFlagsEXT
(\(DebugUtilsMessengerCallbackDataFlagsEXT Word32
x) -> Word32
x)
(\Word32
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word32 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word32
x)
instance Read DebugUtilsMessengerCallbackDataFlagsEXT where
readPrec :: ReadPrec DebugUtilsMessengerCallbackDataFlagsEXT
readPrec =
String
-> [(DebugUtilsMessengerCallbackDataFlagsEXT, String)]
-> String
-> (Word32 -> DebugUtilsMessengerCallbackDataFlagsEXT)
-> ReadPrec DebugUtilsMessengerCallbackDataFlagsEXT
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDebugUtilsMessengerCallbackDataFlagsEXT
[(DebugUtilsMessengerCallbackDataFlagsEXT, String)]
showTableDebugUtilsMessengerCallbackDataFlagsEXT
String
conNameDebugUtilsMessengerCallbackDataFlagsEXT
Word32 -> DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT
type DebugUtilsMessageSeverityFlagsEXT = DebugUtilsMessageSeverityFlagBitsEXT
newtype DebugUtilsMessageSeverityFlagBitsEXT = DebugUtilsMessageSeverityFlagBitsEXT Flags
deriving newtype (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
(DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> Eq DebugUtilsMessageSeverityFlagBitsEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
== :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
$c/= :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
/= :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
Eq, Eq DebugUtilsMessageSeverityFlagBitsEXT
Eq DebugUtilsMessageSeverityFlagBitsEXT =>
(DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Ordering)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT)
-> Ord DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Ordering
DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Ordering
compare :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Ordering
$c< :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
< :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
$c<= :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
<= :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
$c> :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
> :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
$c>= :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
>= :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> Bool
$cmax :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
max :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
$cmin :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
min :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
Ord, Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> IO DebugUtilsMessageSeverityFlagBitsEXT
Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT
Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
DebugUtilsMessageSeverityFlagBitsEXT -> Int
(DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> (Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT)
-> (Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ())
-> (forall b.
Ptr b -> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT)
-> (forall b.
Ptr b -> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ())
-> (Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> IO DebugUtilsMessageSeverityFlagBitsEXT)
-> (Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> IO ())
-> Storable DebugUtilsMessageSeverityFlagBitsEXT
forall b. Ptr b -> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT
forall b.
Ptr b -> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
sizeOf :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
$calignment :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
alignment :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
$cpeekElemOff :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT
peekElemOff :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT
$cpokeElemOff :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
pokeElemOff :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT
peekByteOff :: forall b. Ptr b -> Int -> IO DebugUtilsMessageSeverityFlagBitsEXT
$cpokeByteOff :: forall b.
Ptr b -> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
$cpeek :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> IO DebugUtilsMessageSeverityFlagBitsEXT
peek :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> IO DebugUtilsMessageSeverityFlagBitsEXT
$cpoke :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
poke :: Ptr DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT -> IO ()
Storable, DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT
-> Zero DebugUtilsMessageSeverityFlagBitsEXT
forall a. a -> Zero a
$czero :: DebugUtilsMessageSeverityFlagBitsEXT
zero :: DebugUtilsMessageSeverityFlagBitsEXT
Zero, Eq DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT
Eq DebugUtilsMessageSeverityFlagBitsEXT =>
(DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> DebugUtilsMessageSeverityFlagBitsEXT
-> (Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Int -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Maybe Int)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Bool)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> Bits DebugUtilsMessageSeverityFlagBitsEXT
Int -> DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT -> Bool
DebugUtilsMessageSeverityFlagBitsEXT -> Int
DebugUtilsMessageSeverityFlagBitsEXT -> Maybe Int
DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT -> Int -> Bool
DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
.&. :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
$c.|. :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
.|. :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
$cxor :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
xor :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
$ccomplement :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
complement :: DebugUtilsMessageSeverityFlagBitsEXT
-> DebugUtilsMessageSeverityFlagBitsEXT
$cshift :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
shift :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$crotate :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
rotate :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$czeroBits :: DebugUtilsMessageSeverityFlagBitsEXT
zeroBits :: DebugUtilsMessageSeverityFlagBitsEXT
$cbit :: Int -> DebugUtilsMessageSeverityFlagBitsEXT
bit :: Int -> DebugUtilsMessageSeverityFlagBitsEXT
$csetBit :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
setBit :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$cclearBit :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
clearBit :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$ccomplementBit :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
complementBit :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$ctestBit :: DebugUtilsMessageSeverityFlagBitsEXT -> Int -> Bool
testBit :: DebugUtilsMessageSeverityFlagBitsEXT -> Int -> Bool
$cbitSizeMaybe :: DebugUtilsMessageSeverityFlagBitsEXT -> Maybe Int
bitSizeMaybe :: DebugUtilsMessageSeverityFlagBitsEXT -> Maybe Int
$cbitSize :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
bitSize :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
$cisSigned :: DebugUtilsMessageSeverityFlagBitsEXT -> Bool
isSigned :: DebugUtilsMessageSeverityFlagBitsEXT -> Bool
$cshiftL :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
shiftL :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$cunsafeShiftL :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
unsafeShiftL :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$cshiftR :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
shiftR :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$cunsafeShiftR :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
unsafeShiftR :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$crotateL :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
rotateL :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$crotateR :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
rotateR :: DebugUtilsMessageSeverityFlagBitsEXT
-> Int -> DebugUtilsMessageSeverityFlagBitsEXT
$cpopCount :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
popCount :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
Bits, Bits DebugUtilsMessageSeverityFlagBitsEXT
Bits DebugUtilsMessageSeverityFlagBitsEXT =>
(DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Int)
-> FiniteBits DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
finiteBitSize :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
$ccountLeadingZeros :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
countLeadingZeros :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
$ccountTrailingZeros :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
countTrailingZeros :: DebugUtilsMessageSeverityFlagBitsEXT -> Int
FiniteBits)
pattern $mDEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT :: forall {r}.
DebugUtilsMessageSeverityFlagBitsEXT
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = DebugUtilsMessageSeverityFlagBitsEXT 0x00000001
pattern $mDEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT :: forall {r}.
DebugUtilsMessageSeverityFlagBitsEXT
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = DebugUtilsMessageSeverityFlagBitsEXT 0x00000010
pattern $mDEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT :: forall {r}.
DebugUtilsMessageSeverityFlagBitsEXT
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT = DebugUtilsMessageSeverityFlagBitsEXT 0x00000100
pattern $mDEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT :: forall {r}.
DebugUtilsMessageSeverityFlagBitsEXT
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT = DebugUtilsMessageSeverityFlagBitsEXT 0x00001000
conNameDebugUtilsMessageSeverityFlagBitsEXT :: String
conNameDebugUtilsMessageSeverityFlagBitsEXT :: String
conNameDebugUtilsMessageSeverityFlagBitsEXT = String
"DebugUtilsMessageSeverityFlagBitsEXT"
enumPrefixDebugUtilsMessageSeverityFlagBitsEXT :: String
enumPrefixDebugUtilsMessageSeverityFlagBitsEXT :: String
enumPrefixDebugUtilsMessageSeverityFlagBitsEXT = String
"DEBUG_UTILS_MESSAGE_SEVERITY_"
showTableDebugUtilsMessageSeverityFlagBitsEXT :: [(DebugUtilsMessageSeverityFlagBitsEXT, String)]
showTableDebugUtilsMessageSeverityFlagBitsEXT :: [(DebugUtilsMessageSeverityFlagBitsEXT, String)]
showTableDebugUtilsMessageSeverityFlagBitsEXT =
[
( DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT
, String
"VERBOSE_BIT_EXT"
)
,
( DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT
, String
"INFO_BIT_EXT"
)
,
( DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT
, String
"WARNING_BIT_EXT"
)
,
( DebugUtilsMessageSeverityFlagBitsEXT
DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT
, String
"ERROR_BIT_EXT"
)
]
instance Show DebugUtilsMessageSeverityFlagBitsEXT where
showsPrec :: Int -> DebugUtilsMessageSeverityFlagBitsEXT -> ShowS
showsPrec =
String
-> [(DebugUtilsMessageSeverityFlagBitsEXT, String)]
-> String
-> (DebugUtilsMessageSeverityFlagBitsEXT -> Word32)
-> (Word32 -> ShowS)
-> Int
-> DebugUtilsMessageSeverityFlagBitsEXT
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDebugUtilsMessageSeverityFlagBitsEXT
[(DebugUtilsMessageSeverityFlagBitsEXT, String)]
showTableDebugUtilsMessageSeverityFlagBitsEXT
String
conNameDebugUtilsMessageSeverityFlagBitsEXT
(\(DebugUtilsMessageSeverityFlagBitsEXT Word32
x) -> Word32
x)
(\Word32
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word32 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word32
x)
instance Read DebugUtilsMessageSeverityFlagBitsEXT where
readPrec :: ReadPrec DebugUtilsMessageSeverityFlagBitsEXT
readPrec =
String
-> [(DebugUtilsMessageSeverityFlagBitsEXT, String)]
-> String
-> (Word32 -> DebugUtilsMessageSeverityFlagBitsEXT)
-> ReadPrec DebugUtilsMessageSeverityFlagBitsEXT
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDebugUtilsMessageSeverityFlagBitsEXT
[(DebugUtilsMessageSeverityFlagBitsEXT, String)]
showTableDebugUtilsMessageSeverityFlagBitsEXT
String
conNameDebugUtilsMessageSeverityFlagBitsEXT
Word32 -> DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT
type DebugUtilsMessageTypeFlagsEXT = DebugUtilsMessageTypeFlagBitsEXT
newtype DebugUtilsMessageTypeFlagBitsEXT = DebugUtilsMessageTypeFlagBitsEXT Flags
deriving newtype (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
(("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> Eq ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
== :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
$c/= :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
/= :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
Eq, Eq ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
Eq ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) =>
(("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Ordering)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Ord ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Ordering
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Ordering
compare :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Ordering
$c< :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
< :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
$c<= :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
<= :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
$c> :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
> :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
$c>= :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
>= :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
$cmax :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
max :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cmin :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
min :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
Ord, Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ()
Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> IO ()
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
(("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> (Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT))
-> (Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ())
-> (forall b.
Ptr b
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT))
-> (forall b.
Ptr b
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ())
-> (Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT))
-> (Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> IO ())
-> Storable ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall b.
Ptr b
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall b.
Ptr b
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
sizeOf :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
$calignment :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
alignment :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
$cpeekElemOff :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
peekElemOff :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
$cpokeElemOff :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ()
pokeElemOff :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ()
$cpeekByteOff :: forall b.
Ptr b
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
peekByteOff :: forall b.
Ptr b
-> Int -> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
$cpokeByteOff :: forall b.
Ptr b
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ()
pokeByteOff :: forall b.
Ptr b
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ()
$cpeek :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
peek :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> IO ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
$cpoke :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> IO ()
poke :: Ptr ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> IO ()
Storable, "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Zero ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall a. a -> Zero a
$czero :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
zero :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
Zero, Eq ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
"messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
Eq ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) =>
(("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Maybe Int)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> Bits ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Maybe Int
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int -> Bool
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
.&. :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$c.|. :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
.|. :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cxor :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
xor :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$ccomplement :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
complement :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cshift :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
shift :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$crotate :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
rotate :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$czeroBits :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
zeroBits :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cbit :: Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
bit :: Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$csetBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
setBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cclearBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
clearBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$ccomplementBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
complementBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$ctestBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int -> Bool
testBit :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int -> Bool
$cbitSizeMaybe :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Maybe Int
bitSizeMaybe :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Maybe Int
$cbitSize :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
bitSize :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
$cisSigned :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
isSigned :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Bool
$cshiftL :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
shiftL :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cunsafeShiftL :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
unsafeShiftL :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cshiftR :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
shiftR :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cunsafeShiftR :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
unsafeShiftR :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$crotateL :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
rotateL :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$crotateR :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
rotateR :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> Int -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
$cpopCount :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
popCount :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
Bits, Bits ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
Bits ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) =>
(("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int)
-> FiniteBits ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
finiteBitSize :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
$ccountLeadingZeros :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
countLeadingZeros :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
$ccountTrailingZeros :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
countTrailingZeros :: ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Int
FiniteBits)
pattern $mDEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT :: forall {r}.
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = DebugUtilsMessageTypeFlagBitsEXT 0x00000001
pattern $mDEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT :: forall {r}.
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = DebugUtilsMessageTypeFlagBitsEXT 0x00000002
pattern $mDEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT :: forall {r}.
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = DebugUtilsMessageTypeFlagBitsEXT 0x00000004
pattern $mDEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT :: forall {r}.
("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT :: "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT = DebugUtilsMessageTypeFlagBitsEXT 0x00000008
conNameDebugUtilsMessageTypeFlagBitsEXT :: String
conNameDebugUtilsMessageTypeFlagBitsEXT :: String
conNameDebugUtilsMessageTypeFlagBitsEXT = String
"DebugUtilsMessageTypeFlagBitsEXT"
enumPrefixDebugUtilsMessageTypeFlagBitsEXT :: String
enumPrefixDebugUtilsMessageTypeFlagBitsEXT :: String
enumPrefixDebugUtilsMessageTypeFlagBitsEXT = String
"DEBUG_UTILS_MESSAGE_TYPE_"
showTableDebugUtilsMessageTypeFlagBitsEXT :: [(DebugUtilsMessageTypeFlagBitsEXT, String)]
showTableDebugUtilsMessageTypeFlagBitsEXT :: [("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT, String)]
showTableDebugUtilsMessageTypeFlagBitsEXT =
[
( "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT
, String
"GENERAL_BIT_EXT"
)
,
( "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT
, String
"VALIDATION_BIT_EXT"
)
,
( "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT
, String
"PERFORMANCE_BIT_EXT"
)
,
( "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT
, String
"DEVICE_ADDRESS_BINDING_BIT_EXT"
)
]
instance Show DebugUtilsMessageTypeFlagBitsEXT where
showsPrec :: Int -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ShowS
showsPrec =
String
-> [("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT, String)]
-> String
-> (("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> Word32)
-> (Word32 -> ShowS)
-> Int
-> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDebugUtilsMessageTypeFlagBitsEXT
[("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT, String)]
showTableDebugUtilsMessageTypeFlagBitsEXT
String
conNameDebugUtilsMessageTypeFlagBitsEXT
(\(DebugUtilsMessageTypeFlagBitsEXT Word32
x) -> Word32
x)
(\Word32
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word32 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word32
x)
instance Read DebugUtilsMessageTypeFlagBitsEXT where
readPrec :: ReadPrec ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
readPrec =
String
-> [("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT, String)]
-> String
-> (Word32 -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
-> ReadPrec ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDebugUtilsMessageTypeFlagBitsEXT
[("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT, String)]
showTableDebugUtilsMessageTypeFlagBitsEXT
String
conNameDebugUtilsMessageTypeFlagBitsEXT
Word32 -> "messageTypes" ::: DebugUtilsMessageTypeFlagsEXT
DebugUtilsMessageTypeFlagBitsEXT
type FN_vkDebugUtilsMessengerCallbackEXT = DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr (SomeStruct DebugUtilsMessengerCallbackDataEXT)) -> ("pUserData" ::: Ptr ()) -> IO Bool32
type PFN_vkDebugUtilsMessengerCallbackEXT = FunPtr FN_vkDebugUtilsMessengerCallbackEXT
type EXT_DEBUG_UTILS_SPEC_VERSION = 2
pattern EXT_DEBUG_UTILS_SPEC_VERSION :: forall a . Integral a => a
pattern $mEXT_DEBUG_UTILS_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bEXT_DEBUG_UTILS_SPEC_VERSION :: forall a. Integral a => a
EXT_DEBUG_UTILS_SPEC_VERSION = 2
type EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils"
pattern EXT_DEBUG_UTILS_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $mEXT_DEBUG_UTILS_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bEXT_DEBUG_UTILS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils"