{-# LINE 1 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}


{-# LANGUAGE DataKinds             #-}
{-# LANGUAGE FlexibleInstances     #-}
{-# LANGUAGE MagicHash             #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict                #-}
{-# LANGUAGE TypeApplications      #-}
{-# LANGUAGE TypeFamilies          #-}
module Graphics.Vulkan.Types.Struct.DebugUtilsMessengerCallbackDataEXT
       (VkDebugUtilsMessengerCallbackDataEXT(..)) where
import           Foreign.Storable                                         (Storable (..))
import           GHC.Base                                                 (Addr#,
                                                                           ByteArray#,
                                                                           byteArrayContents#,
                                                                           plusAddr#)
import           Graphics.Vulkan.Marshal
import           Graphics.Vulkan.Marshal.Internal
import           Graphics.Vulkan.Types.Bitmasks                           (VkDebugUtilsMessengerCallbackDataFlagsEXT)
import           Graphics.Vulkan.Types.Enum.StructureType                 (VkStructureType)
import           Graphics.Vulkan.Types.Struct.DebugUtilsLabelEXT          (VkDebugUtilsLabelEXT)
import           Graphics.Vulkan.Types.Struct.DebugUtilsObjectNameInfoEXT (VkDebugUtilsObjectNameInfoEXT)
import           System.IO.Unsafe                                         (unsafeDupablePerformIO)

-- | > typedef struct VkDebugUtilsMessengerCallbackDataEXT {
--   >     VkStructureType sType;
--   >     const void*                                                        pNext;
--   >     VkDebugUtilsMessengerCallbackDataFlagsEXT                          flags;
--   >     const char*                                  pMessageIdName;
--   >     int32_t                                                            messageIdNumber;
--   >     const char*                                                  pMessage;
--   >     uint32_t                                                           queueLabelCount;
--   >     VkDebugUtilsLabelEXT*  pQueueLabels;
--   >     uint32_t                                                           cmdBufLabelCount;
--   >     VkDebugUtilsLabelEXT* pCmdBufLabels;
--   >     uint32_t                                                                           objectCount;
--   >     VkDebugUtilsObjectNameInfoEXT*             pObjects;
--   > } VkDebugUtilsMessengerCallbackDataEXT;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkDebugUtilsMessengerCallbackDataEXT VkDebugUtilsMessengerCallbackDataEXT registry at www.khronos.org>
data VkDebugUtilsMessengerCallbackDataEXT = VkDebugUtilsMessengerCallbackDataEXT# Addr#
                                                                                  ByteArray#

instance Eq VkDebugUtilsMessengerCallbackDataEXT where
        (VkDebugUtilsMessengerCallbackDataEXT# Addr#
a ByteArray#
_) == :: VkDebugUtilsMessengerCallbackDataEXT
-> VkDebugUtilsMessengerCallbackDataEXT -> Bool
==
          x :: VkDebugUtilsMessengerCallbackDataEXT
x@(VkDebugUtilsMessengerCallbackDataEXT# Addr#
b ByteArray#
_)
          = Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
== Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkDebugUtilsMessengerCallbackDataEXT -> Int
forall a. Storable a => a -> Int
sizeOf VkDebugUtilsMessengerCallbackDataEXT
x) Addr#
a Addr#
b

        {-# INLINE (==) #-}

instance Ord VkDebugUtilsMessengerCallbackDataEXT where
        (VkDebugUtilsMessengerCallbackDataEXT# Addr#
a ByteArray#
_) compare :: VkDebugUtilsMessengerCallbackDataEXT
-> VkDebugUtilsMessengerCallbackDataEXT -> Ordering
`compare`
          x :: VkDebugUtilsMessengerCallbackDataEXT
x@(VkDebugUtilsMessengerCallbackDataEXT# Addr#
b ByteArray#
_)
          = Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkDebugUtilsMessengerCallbackDataEXT -> Int
forall a. Storable a => a -> Int
sizeOf VkDebugUtilsMessengerCallbackDataEXT
x) Addr#
a Addr#
b

        {-# INLINE compare #-}

instance Storable VkDebugUtilsMessengerCallbackDataEXT where
        sizeOf :: VkDebugUtilsMessengerCallbackDataEXT -> Int
sizeOf ~VkDebugUtilsMessengerCallbackDataEXT
_
          = (Int
96)
{-# LINE 61 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE sizeOf #-}
        alignment :: VkDebugUtilsMessengerCallbackDataEXT -> Int
alignment ~VkDebugUtilsMessengerCallbackDataEXT
_
          = Int
8
{-# LINE 65 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE alignment #-}
        peek :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO VkDebugUtilsMessengerCallbackDataEXT
peek = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO VkDebugUtilsMessengerCallbackDataEXT
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> IO a
peekVkData#

        {-# INLINE peek #-}
        poke :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> VkDebugUtilsMessengerCallbackDataEXT -> IO ()
poke = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> VkDebugUtilsMessengerCallbackDataEXT -> IO ()
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> a -> IO ()
pokeVkData#

        {-# INLINE poke #-}

instance VulkanMarshalPrim VkDebugUtilsMessengerCallbackDataEXT
         where
        unsafeAddr :: VkDebugUtilsMessengerCallbackDataEXT -> Addr#
unsafeAddr (VkDebugUtilsMessengerCallbackDataEXT# Addr#
a ByteArray#
_) = Addr#
a

        {-# INLINE unsafeAddr #-}
        unsafeByteArray :: VkDebugUtilsMessengerCallbackDataEXT -> ByteArray#
unsafeByteArray (VkDebugUtilsMessengerCallbackDataEXT# Addr#
_ ByteArray#
b) = ByteArray#
b

        {-# INLINE unsafeByteArray #-}
        unsafeFromByteArrayOffset :: Int# -> ByteArray# -> VkDebugUtilsMessengerCallbackDataEXT
unsafeFromByteArrayOffset Int#
off ByteArray#
b
          = Addr# -> ByteArray# -> VkDebugUtilsMessengerCallbackDataEXT
VkDebugUtilsMessengerCallbackDataEXT#
              (Addr# -> Int# -> Addr#
plusAddr# (ByteArray# -> Addr#
byteArrayContents# ByteArray#
b) Int#
off)
              ByteArray#
b

        {-# INLINE unsafeFromByteArrayOffset #-}

instance VulkanMarshal VkDebugUtilsMessengerCallbackDataEXT where
        type StructFields VkDebugUtilsMessengerCallbackDataEXT =
             '["sType", "pNext", "flags", "pMessageIdName", "messageIdNumber", -- ' closing tick for hsc2hs
               "pMessage", "queueLabelCount", "pQueueLabels", "cmdBufLabelCount",
               "pCmdBufLabels", "objectCount", "pObjects"]
        type CUnionType VkDebugUtilsMessengerCallbackDataEXT = 'False -- ' closing tick for hsc2hs
        type ReturnedOnly VkDebugUtilsMessengerCallbackDataEXT = 'False -- ' closing tick for hsc2hs
        type StructExtends VkDebugUtilsMessengerCallbackDataEXT = '[] -- ' closing tick for hsc2hs

instance {-# OVERLAPPING #-}
         HasField "sType" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "sType" VkDebugUtilsMessengerCallbackDataEXT =
             VkStructureType
        type FieldOptional "sType" VkDebugUtilsMessengerCallbackDataEXT =
             'False -- ' closing tick for hsc2hs
        type FieldOffset "sType" VkDebugUtilsMessengerCallbackDataEXT =
             (0)
{-# LINE 106 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "sType" VkDebugUtilsMessengerCallbackDataEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
0)
{-# LINE 115 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "sType" VkDebugUtilsMessengerCallbackDataEXT where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "sType" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO VkStructureType -> VkStructureType
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
0))
{-# LINE 122 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO (FieldType "sType" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
0)
{-# LINE 126 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "sType" VkDebugUtilsMessengerCallbackDataEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "sType" VkDebugUtilsMessengerCallbackDataEXT -> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> VkStructureType -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
0)
{-# LINE 132 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pNext" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "pNext" VkDebugUtilsMessengerCallbackDataEXT =
             Ptr Void
        type FieldOptional "pNext" VkDebugUtilsMessengerCallbackDataEXT =
             'True -- ' closing tick for hsc2hs
        type FieldOffset "pNext" VkDebugUtilsMessengerCallbackDataEXT =
             (8)
{-# LINE 141 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "pNext" VkDebugUtilsMessengerCallbackDataEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
8)
{-# LINE 150 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pNext" VkDebugUtilsMessengerCallbackDataEXT where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pNext" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO (Ptr Void) -> Ptr Void
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
8))
{-# LINE 157 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO (FieldType "pNext" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
8)
{-# LINE 161 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pNext" VkDebugUtilsMessengerCallbackDataEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pNext" VkDebugUtilsMessengerCallbackDataEXT -> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> Ptr Void -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
8)
{-# LINE 167 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "flags" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "flags" VkDebugUtilsMessengerCallbackDataEXT =
             VkDebugUtilsMessengerCallbackDataFlagsEXT
        type FieldOptional "flags" VkDebugUtilsMessengerCallbackDataEXT =
             'True -- ' closing tick for hsc2hs
        type FieldOffset "flags" VkDebugUtilsMessengerCallbackDataEXT =
             (16)
{-# LINE 176 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "flags" VkDebugUtilsMessengerCallbackDataEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
16)
{-# LINE 185 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "flags" VkDebugUtilsMessengerCallbackDataEXT where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "flags" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO VkDebugUtilsMessengerCallbackDataFlagsEXT
-> VkDebugUtilsMessengerCallbackDataFlagsEXT
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO VkDebugUtilsMessengerCallbackDataFlagsEXT
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
16))
{-# LINE 192 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO (FieldType "flags" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO VkDebugUtilsMessengerCallbackDataFlagsEXT
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
16)
{-# LINE 196 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "flags" VkDebugUtilsMessengerCallbackDataEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "flags" VkDebugUtilsMessengerCallbackDataEXT -> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> VkDebugUtilsMessengerCallbackDataFlagsEXT -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
16)
{-# LINE 202 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
         where
        type FieldType "pMessageIdName"
               VkDebugUtilsMessengerCallbackDataEXT
             = CString
        type FieldOptional "pMessageIdName"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "pMessageIdName"
               VkDebugUtilsMessengerCallbackDataEXT
             =
             (24)
{-# LINE 216 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "pMessageIdName"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
24)
{-# LINE 226 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO CString -> CString
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO CString
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
24))
{-# LINE 234 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO CString
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
24)
{-# LINE 238 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> CString -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
24)
{-# LINE 245 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT
         where
        type FieldType "messageIdNumber"
               VkDebugUtilsMessengerCallbackDataEXT
             = Int32
        type FieldOptional "messageIdNumber"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "messageIdNumber"
               VkDebugUtilsMessengerCallbackDataEXT
             =
             (32)
{-# LINE 259 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "messageIdNumber"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
32)
{-# LINE 269 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO Int32 -> Int32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Int32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
32))
{-# LINE 277 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Int32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
32)
{-# LINE 281 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "messageIdNumber"
           VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> Int32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
32)
{-# LINE 289 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pMessage" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "pMessage" VkDebugUtilsMessengerCallbackDataEXT =
             CString
        type FieldOptional "pMessage" VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pMessage" VkDebugUtilsMessengerCallbackDataEXT =
             (40)
{-# LINE 298 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "pMessage" VkDebugUtilsMessengerCallbackDataEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
40)
{-# LINE 307 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pMessage" VkDebugUtilsMessengerCallbackDataEXT where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pMessage" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO CString -> CString
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO CString
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
40))
{-# LINE 314 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO (FieldType "pMessage" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO CString
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
40)
{-# LINE 318 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pMessage" VkDebugUtilsMessengerCallbackDataEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pMessage" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> CString -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
40)
{-# LINE 324 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT
         where
        type FieldType "queueLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = Word32
        type FieldOptional "queueLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "queueLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             =
             (48)
{-# LINE 338 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "queueLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
48)
{-# LINE 348 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
48))
{-# LINE 356 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
48)
{-# LINE 360 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "queueLabelCount"
           VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
48)
{-# LINE 368 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
             = Ptr VkDebugUtilsLabelEXT
        type FieldOptional "pQueueLabels"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "pQueueLabels"
               VkDebugUtilsMessengerCallbackDataEXT
             =
             (56)
{-# LINE 380 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "pQueueLabels"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
56)
{-# LINE 390 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO (Ptr VkDebugUtilsLabelEXT) -> Ptr VkDebugUtilsLabelEXT
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO (Ptr VkDebugUtilsLabelEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
56))
{-# LINE 398 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO (Ptr VkDebugUtilsLabelEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
56)
{-# LINE 402 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> Ptr VkDebugUtilsLabelEXT -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
56)
{-# LINE 409 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT
         where
        type FieldType "cmdBufLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = Word32
        type FieldOptional "cmdBufLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "cmdBufLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             =
             (64)
{-# LINE 423 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "cmdBufLabelCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
64)
{-# LINE 433 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "cmdBufLabelCount"
           VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType
     "cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
64))
{-# LINE 442 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
64)
{-# LINE 446 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "cmdBufLabelCount"
           VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType
     "cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
64)
{-# LINE 454 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT
             = Ptr VkDebugUtilsLabelEXT
        type FieldOptional "pCmdBufLabels"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "pCmdBufLabels"
               VkDebugUtilsMessengerCallbackDataEXT
             =
             (72)
{-# LINE 466 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "pCmdBufLabels"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
72)
{-# LINE 476 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO (Ptr VkDebugUtilsLabelEXT) -> Ptr VkDebugUtilsLabelEXT
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO (Ptr VkDebugUtilsLabelEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
72))
{-# LINE 484 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO (Ptr VkDebugUtilsLabelEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
72)
{-# LINE 488 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> Ptr VkDebugUtilsLabelEXT -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
72)
{-# LINE 495 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "objectCount" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "objectCount" VkDebugUtilsMessengerCallbackDataEXT =
             Word32
        type FieldOptional "objectCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "objectCount" VkDebugUtilsMessengerCallbackDataEXT
             =
             (80)
{-# LINE 506 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "objectCount"
               VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
80)
{-# LINE 516 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "objectCount" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "objectCount" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
80))
{-# LINE 524 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO
     (FieldType "objectCount" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
80)
{-# LINE 528 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "objectCount" VkDebugUtilsMessengerCallbackDataEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "objectCount" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
80)
{-# LINE 535 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pObjects" VkDebugUtilsMessengerCallbackDataEXT where
        type FieldType "pObjects" VkDebugUtilsMessengerCallbackDataEXT =
             Ptr VkDebugUtilsObjectNameInfoEXT
        type FieldOptional "pObjects" VkDebugUtilsMessengerCallbackDataEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pObjects" VkDebugUtilsMessengerCallbackDataEXT =
             (88)
{-# LINE 544 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}
        type FieldIsArray "pObjects" VkDebugUtilsMessengerCallbackDataEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
88)
{-# LINE 553 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pObjects" VkDebugUtilsMessengerCallbackDataEXT where
        {-# NOINLINE getField #-}
        getField :: VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pObjects" VkDebugUtilsMessengerCallbackDataEXT
getField VkDebugUtilsMessengerCallbackDataEXT
x
          = IO (Ptr VkDebugUtilsObjectNameInfoEXT)
-> Ptr VkDebugUtilsObjectNameInfoEXT
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO (Ptr VkDebugUtilsObjectNameInfoEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkDebugUtilsMessengerCallbackDataEXT
-> Ptr VkDebugUtilsMessengerCallbackDataEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkDebugUtilsMessengerCallbackDataEXT
x) (Int
88))
{-# LINE 560 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> IO (FieldType "pObjects" VkDebugUtilsMessengerCallbackDataEXT)
readField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> IO (Ptr VkDebugUtilsObjectNameInfoEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
88)
{-# LINE 564 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pObjects" VkDebugUtilsMessengerCallbackDataEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pObjects" VkDebugUtilsMessengerCallbackDataEXT
-> IO ()
writeField Ptr VkDebugUtilsMessengerCallbackDataEXT
p
          = Ptr VkDebugUtilsMessengerCallbackDataEXT
-> Int -> Ptr VkDebugUtilsObjectNameInfoEXT -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkDebugUtilsMessengerCallbackDataEXT
p (Int
88)
{-# LINE 570 "src-gen/Graphics/Vulkan/Types/Struct/DebugUtilsMessengerCallbackDataEXT.hsc" #-}

instance Show VkDebugUtilsMessengerCallbackDataEXT where
        showsPrec :: Int -> VkDebugUtilsMessengerCallbackDataEXT -> ShowS
showsPrec Int
d VkDebugUtilsMessengerCallbackDataEXT
x
          = String -> ShowS
showString String
"VkDebugUtilsMessengerCallbackDataEXT {" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
              String -> ShowS
showString String
"sType = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                Int -> VkStructureType -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "sType" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"sType" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                    String -> ShowS
showString String
"pNext = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                      Int -> Ptr Void -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pNext" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pNext" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                          String -> ShowS
showString String
"flags = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                            Int -> VkDebugUtilsMessengerCallbackDataFlagsEXT -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "flags" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"flags" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                String -> ShowS
showString String
"pMessageIdName = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                  Int -> CString -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                    String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                      String -> ShowS
showString String
"messageIdNumber = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                        Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                          String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                            String -> ShowS
showString String
"pMessage = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                              Int -> CString -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pMessage" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pMessage" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                  String -> ShowS
showString String
"queueLabelCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                    Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                      String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                        String -> ShowS
showString String
"pQueueLabels = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                          Int -> Ptr VkDebugUtilsLabelEXT -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                            String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                              String -> ShowS
showString String
"cmdBufLabelCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                                  (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType
     "cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT
x)
                                                                  ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                    String -> ShowS
showString String
"pCmdBufLabels = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                      Int -> Ptr VkDebugUtilsLabelEXT -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                                        (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pCmdBufLabels"
                                                                           VkDebugUtilsMessengerCallbackDataEXT
x)
                                                                        ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                          String -> ShowS
showString
                                                                            String
"objectCount = "
                                                                            ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                            Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                                              (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "objectCount" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField
                                                                                 @"objectCount"
                                                                                 VkDebugUtilsMessengerCallbackDataEXT
x)
                                                                              ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                                String -> ShowS
showString
                                                                                  String
"pObjects = "
                                                                                  ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                                  Int -> Ptr VkDebugUtilsObjectNameInfoEXT -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                                                    (VkDebugUtilsMessengerCallbackDataEXT
-> FieldType "pObjects" VkDebugUtilsMessengerCallbackDataEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField
                                                                                       @"pObjects"
                                                                                       VkDebugUtilsMessengerCallbackDataEXT
x)
                                                                                    ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Char -> ShowS
showChar Char
'}'