{-# language CPP #-}
module Vulkan.Core10.Enums.ObjectType  (ObjectType( OBJECT_TYPE_UNKNOWN
                                                  , OBJECT_TYPE_INSTANCE
                                                  , OBJECT_TYPE_PHYSICAL_DEVICE
                                                  , OBJECT_TYPE_DEVICE
                                                  , OBJECT_TYPE_QUEUE
                                                  , OBJECT_TYPE_SEMAPHORE
                                                  , OBJECT_TYPE_COMMAND_BUFFER
                                                  , OBJECT_TYPE_FENCE
                                                  , OBJECT_TYPE_DEVICE_MEMORY
                                                  , OBJECT_TYPE_BUFFER
                                                  , OBJECT_TYPE_IMAGE
                                                  , OBJECT_TYPE_EVENT
                                                  , OBJECT_TYPE_QUERY_POOL
                                                  , OBJECT_TYPE_BUFFER_VIEW
                                                  , OBJECT_TYPE_IMAGE_VIEW
                                                  , OBJECT_TYPE_SHADER_MODULE
                                                  , OBJECT_TYPE_PIPELINE_CACHE
                                                  , OBJECT_TYPE_PIPELINE_LAYOUT
                                                  , OBJECT_TYPE_RENDER_PASS
                                                  , OBJECT_TYPE_PIPELINE
                                                  , OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT
                                                  , OBJECT_TYPE_SAMPLER
                                                  , OBJECT_TYPE_DESCRIPTOR_POOL
                                                  , OBJECT_TYPE_DESCRIPTOR_SET
                                                  , OBJECT_TYPE_FRAMEBUFFER
                                                  , OBJECT_TYPE_COMMAND_POOL
                                                  , OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT
                                                  , OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV
                                                  , OBJECT_TYPE_DEFERRED_OPERATION_KHR
                                                  , OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL
                                                  , OBJECT_TYPE_VALIDATION_CACHE_EXT
                                                  , OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR
                                                  , OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT
                                                  , OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT
                                                  , OBJECT_TYPE_DISPLAY_MODE_KHR
                                                  , OBJECT_TYPE_DISPLAY_KHR
                                                  , OBJECT_TYPE_SWAPCHAIN_KHR
                                                  , OBJECT_TYPE_SURFACE_KHR
                                                  , OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE
                                                  , OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION
                                                  , ..
                                                  )) where

import GHC.Read (choose)
import GHC.Read (expectP)
import GHC.Read (parens)
import GHC.Show (showParen)
import GHC.Show (showString)
import GHC.Show (showsPrec)
import Text.ParserCombinators.ReadPrec ((+++))
import Text.ParserCombinators.ReadPrec (prec)
import Text.ParserCombinators.ReadPrec (step)
import Foreign.Storable (Storable)
import Data.Int (Int32)
import GHC.Read (Read(readPrec))
import Text.Read.Lex (Lexeme(Ident))
import Vulkan.Zero (Zero)
-- | VkObjectType - Specify an enumeration to track object handle types
--
-- = Description
--
-- \'
--
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'ObjectType'                                  | Vulkan Handle Type                                        |
-- +===============================================+===========================================================+
-- | 'OBJECT_TYPE_UNKNOWN'                         | Unknown\/Undefined Handle                                 |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_INSTANCE'                        | 'Vulkan.Core10.Handles.Instance'                          |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_PHYSICAL_DEVICE'                 | 'Vulkan.Core10.Handles.PhysicalDevice'                    |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DEVICE'                          | 'Vulkan.Core10.Handles.Device'                            |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_QUEUE'                           | 'Vulkan.Core10.Handles.Queue'                             |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_SEMAPHORE'                       | 'Vulkan.Core10.Handles.Semaphore'                         |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_COMMAND_BUFFER'                  | 'Vulkan.Core10.Handles.CommandBuffer'                     |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_FENCE'                           | 'Vulkan.Core10.Handles.Fence'                             |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DEVICE_MEMORY'                   | 'Vulkan.Core10.Handles.DeviceMemory'                      |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_BUFFER'                          | 'Vulkan.Core10.Handles.Buffer'                            |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_IMAGE'                           | 'Vulkan.Core10.Handles.Image'                             |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_EVENT'                           | 'Vulkan.Core10.Handles.Event'                             |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_QUERY_POOL'                      | 'Vulkan.Core10.Handles.QueryPool'                         |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_BUFFER_VIEW'                     | 'Vulkan.Core10.Handles.BufferView'                        |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_IMAGE_VIEW'                      | 'Vulkan.Core10.Handles.ImageView'                         |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_SHADER_MODULE'                   | 'Vulkan.Core10.Handles.ShaderModule'                      |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_PIPELINE_CACHE'                  | 'Vulkan.Core10.Handles.PipelineCache'                     |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_PIPELINE_LAYOUT'                 | 'Vulkan.Core10.Handles.PipelineLayout'                    |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_RENDER_PASS'                     | 'Vulkan.Core10.Handles.RenderPass'                        |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_PIPELINE'                        | 'Vulkan.Core10.Handles.Pipeline'                          |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT'           | 'Vulkan.Core10.Handles.DescriptorSetLayout'               |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_SAMPLER'                         | 'Vulkan.Core10.Handles.Sampler'                           |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DESCRIPTOR_POOL'                 | 'Vulkan.Core10.Handles.DescriptorPool'                    |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DESCRIPTOR_SET'                  | 'Vulkan.Core10.Handles.DescriptorSet'                     |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_FRAMEBUFFER'                     | 'Vulkan.Core10.Handles.Framebuffer'                       |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_COMMAND_POOL'                    | 'Vulkan.Core10.Handles.CommandPool'                       |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION'        | 'Vulkan.Core11.Handles.SamplerYcbcrConversion'            |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE'      | 'Vulkan.Core11.Handles.DescriptorUpdateTemplate'          |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_SURFACE_KHR'                     | 'Vulkan.Extensions.Handles.SurfaceKHR'                    |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_SWAPCHAIN_KHR'                   | 'Vulkan.Extensions.Handles.SwapchainKHR'                  |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DISPLAY_KHR'                     | 'Vulkan.Extensions.Handles.DisplayKHR'                    |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DISPLAY_MODE_KHR'                | 'Vulkan.Extensions.Handles.DisplayModeKHR'                |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT'       | 'Vulkan.Extensions.Handles.DebugReportCallbackEXT'        |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV'     | 'Vulkan.Extensions.Handles.IndirectCommandsLayoutNV'      |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT'       | 'Vulkan.Extensions.Handles.DebugUtilsMessengerEXT'        |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_VALIDATION_CACHE_EXT'            | 'Vulkan.Extensions.Handles.ValidationCacheEXT'            |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR'      | 'Vulkan.Extensions.Handles.AccelerationStructureKHR'      |
-- +-----------------------------------------------+-----------------------------------------------------------+
-- | 'OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL' | 'Vulkan.Extensions.Handles.PerformanceConfigurationINTEL' |
-- +-----------------------------------------------+-----------------------------------------------------------+
--
-- VkObjectType and Vulkan Handle Relationship
--
-- = See Also
--
-- 'Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectNameInfoEXT',
-- 'Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT',
-- 'Vulkan.Extensions.VK_EXT_private_data.getPrivateDataEXT',
-- 'Vulkan.Extensions.VK_EXT_private_data.setPrivateDataEXT'
newtype ObjectType = ObjectType Int32
  deriving newtype (ObjectType -> ObjectType -> Bool
(ObjectType -> ObjectType -> Bool)
-> (ObjectType -> ObjectType -> Bool) -> Eq ObjectType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ObjectType -> ObjectType -> Bool
$c/= :: ObjectType -> ObjectType -> Bool
== :: ObjectType -> ObjectType -> Bool
$c== :: ObjectType -> ObjectType -> Bool
Eq, Eq ObjectType
Eq ObjectType =>
(ObjectType -> ObjectType -> Ordering)
-> (ObjectType -> ObjectType -> Bool)
-> (ObjectType -> ObjectType -> Bool)
-> (ObjectType -> ObjectType -> Bool)
-> (ObjectType -> ObjectType -> Bool)
-> (ObjectType -> ObjectType -> ObjectType)
-> (ObjectType -> ObjectType -> ObjectType)
-> Ord ObjectType
ObjectType -> ObjectType -> Bool
ObjectType -> ObjectType -> Ordering
ObjectType -> ObjectType -> ObjectType
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
min :: ObjectType -> ObjectType -> ObjectType
$cmin :: ObjectType -> ObjectType -> ObjectType
max :: ObjectType -> ObjectType -> ObjectType
$cmax :: ObjectType -> ObjectType -> ObjectType
>= :: ObjectType -> ObjectType -> Bool
$c>= :: ObjectType -> ObjectType -> Bool
> :: ObjectType -> ObjectType -> Bool
$c> :: ObjectType -> ObjectType -> Bool
<= :: ObjectType -> ObjectType -> Bool
$c<= :: ObjectType -> ObjectType -> Bool
< :: ObjectType -> ObjectType -> Bool
$c< :: ObjectType -> ObjectType -> Bool
compare :: ObjectType -> ObjectType -> Ordering
$ccompare :: ObjectType -> ObjectType -> Ordering
$cp1Ord :: Eq ObjectType
Ord, Ptr b -> Int -> IO ObjectType
Ptr b -> Int -> ObjectType -> IO ()
Ptr ObjectType -> IO ObjectType
Ptr ObjectType -> Int -> IO ObjectType
Ptr ObjectType -> Int -> ObjectType -> IO ()
Ptr ObjectType -> ObjectType -> IO ()
ObjectType -> Int
(ObjectType -> Int)
-> (ObjectType -> Int)
-> (Ptr ObjectType -> Int -> IO ObjectType)
-> (Ptr ObjectType -> Int -> ObjectType -> IO ())
-> (forall b. Ptr b -> Int -> IO ObjectType)
-> (forall b. Ptr b -> Int -> ObjectType -> IO ())
-> (Ptr ObjectType -> IO ObjectType)
-> (Ptr ObjectType -> ObjectType -> IO ())
-> Storable ObjectType
forall b. Ptr b -> Int -> IO ObjectType
forall b. Ptr b -> Int -> ObjectType -> 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
poke :: Ptr ObjectType -> ObjectType -> IO ()
$cpoke :: Ptr ObjectType -> ObjectType -> IO ()
peek :: Ptr ObjectType -> IO ObjectType
$cpeek :: Ptr ObjectType -> IO ObjectType
pokeByteOff :: Ptr b -> Int -> ObjectType -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> ObjectType -> IO ()
peekByteOff :: Ptr b -> Int -> IO ObjectType
$cpeekByteOff :: forall b. Ptr b -> Int -> IO ObjectType
pokeElemOff :: Ptr ObjectType -> Int -> ObjectType -> IO ()
$cpokeElemOff :: Ptr ObjectType -> Int -> ObjectType -> IO ()
peekElemOff :: Ptr ObjectType -> Int -> IO ObjectType
$cpeekElemOff :: Ptr ObjectType -> Int -> IO ObjectType
alignment :: ObjectType -> Int
$calignment :: ObjectType -> Int
sizeOf :: ObjectType -> Int
$csizeOf :: ObjectType -> Int
Storable, ObjectType
ObjectType -> Zero ObjectType
forall a. a -> Zero a
zero :: ObjectType
$czero :: ObjectType
Zero)

-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_UNKNOWN"
pattern $bOBJECT_TYPE_UNKNOWN :: ObjectType
$mOBJECT_TYPE_UNKNOWN :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_UNKNOWN = ObjectType 0
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_INSTANCE"
pattern $bOBJECT_TYPE_INSTANCE :: ObjectType
$mOBJECT_TYPE_INSTANCE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_INSTANCE = ObjectType 1
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_PHYSICAL_DEVICE"
pattern $bOBJECT_TYPE_PHYSICAL_DEVICE :: ObjectType
$mOBJECT_TYPE_PHYSICAL_DEVICE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_PHYSICAL_DEVICE = ObjectType 2
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DEVICE"
pattern $bOBJECT_TYPE_DEVICE :: ObjectType
$mOBJECT_TYPE_DEVICE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DEVICE = ObjectType 3
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_QUEUE"
pattern $bOBJECT_TYPE_QUEUE :: ObjectType
$mOBJECT_TYPE_QUEUE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_QUEUE = ObjectType 4
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_SEMAPHORE"
pattern $bOBJECT_TYPE_SEMAPHORE :: ObjectType
$mOBJECT_TYPE_SEMAPHORE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_SEMAPHORE = ObjectType 5
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_COMMAND_BUFFER"
pattern $bOBJECT_TYPE_COMMAND_BUFFER :: ObjectType
$mOBJECT_TYPE_COMMAND_BUFFER :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_COMMAND_BUFFER = ObjectType 6
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_FENCE"
pattern $bOBJECT_TYPE_FENCE :: ObjectType
$mOBJECT_TYPE_FENCE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_FENCE = ObjectType 7
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DEVICE_MEMORY"
pattern $bOBJECT_TYPE_DEVICE_MEMORY :: ObjectType
$mOBJECT_TYPE_DEVICE_MEMORY :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DEVICE_MEMORY = ObjectType 8
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_BUFFER"
pattern $bOBJECT_TYPE_BUFFER :: ObjectType
$mOBJECT_TYPE_BUFFER :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_BUFFER = ObjectType 9
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_IMAGE"
pattern $bOBJECT_TYPE_IMAGE :: ObjectType
$mOBJECT_TYPE_IMAGE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_IMAGE = ObjectType 10
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_EVENT"
pattern $bOBJECT_TYPE_EVENT :: ObjectType
$mOBJECT_TYPE_EVENT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_EVENT = ObjectType 11
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_QUERY_POOL"
pattern $bOBJECT_TYPE_QUERY_POOL :: ObjectType
$mOBJECT_TYPE_QUERY_POOL :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_QUERY_POOL = ObjectType 12
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_BUFFER_VIEW"
pattern $bOBJECT_TYPE_BUFFER_VIEW :: ObjectType
$mOBJECT_TYPE_BUFFER_VIEW :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_BUFFER_VIEW = ObjectType 13
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_IMAGE_VIEW"
pattern $bOBJECT_TYPE_IMAGE_VIEW :: ObjectType
$mOBJECT_TYPE_IMAGE_VIEW :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_IMAGE_VIEW = ObjectType 14
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_SHADER_MODULE"
pattern $bOBJECT_TYPE_SHADER_MODULE :: ObjectType
$mOBJECT_TYPE_SHADER_MODULE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_SHADER_MODULE = ObjectType 15
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_PIPELINE_CACHE"
pattern $bOBJECT_TYPE_PIPELINE_CACHE :: ObjectType
$mOBJECT_TYPE_PIPELINE_CACHE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_PIPELINE_CACHE = ObjectType 16
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_PIPELINE_LAYOUT"
pattern $bOBJECT_TYPE_PIPELINE_LAYOUT :: ObjectType
$mOBJECT_TYPE_PIPELINE_LAYOUT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_PIPELINE_LAYOUT = ObjectType 17
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_RENDER_PASS"
pattern $bOBJECT_TYPE_RENDER_PASS :: ObjectType
$mOBJECT_TYPE_RENDER_PASS :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_RENDER_PASS = ObjectType 18
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_PIPELINE"
pattern $bOBJECT_TYPE_PIPELINE :: ObjectType
$mOBJECT_TYPE_PIPELINE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_PIPELINE = ObjectType 19
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"
pattern $bOBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: ObjectType
$mOBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = ObjectType 20
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_SAMPLER"
pattern $bOBJECT_TYPE_SAMPLER :: ObjectType
$mOBJECT_TYPE_SAMPLER :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_SAMPLER = ObjectType 21
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DESCRIPTOR_POOL"
pattern $bOBJECT_TYPE_DESCRIPTOR_POOL :: ObjectType
$mOBJECT_TYPE_DESCRIPTOR_POOL :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DESCRIPTOR_POOL = ObjectType 22
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DESCRIPTOR_SET"
pattern $bOBJECT_TYPE_DESCRIPTOR_SET :: ObjectType
$mOBJECT_TYPE_DESCRIPTOR_SET :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DESCRIPTOR_SET = ObjectType 23
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_FRAMEBUFFER"
pattern $bOBJECT_TYPE_FRAMEBUFFER :: ObjectType
$mOBJECT_TYPE_FRAMEBUFFER :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_FRAMEBUFFER = ObjectType 24
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_COMMAND_POOL"
pattern $bOBJECT_TYPE_COMMAND_POOL :: ObjectType
$mOBJECT_TYPE_COMMAND_POOL :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_COMMAND_POOL = ObjectType 25
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"
pattern $bOBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: ObjectType
$mOBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = ObjectType 1000295000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV"
pattern $bOBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: ObjectType
$mOBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = ObjectType 1000277000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"
pattern $bOBJECT_TYPE_DEFERRED_OPERATION_KHR :: ObjectType
$mOBJECT_TYPE_DEFERRED_OPERATION_KHR :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DEFERRED_OPERATION_KHR = ObjectType 1000268000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"
pattern $bOBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: ObjectType
$mOBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = ObjectType 1000210000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT"
pattern $bOBJECT_TYPE_VALIDATION_CACHE_EXT :: ObjectType
$mOBJECT_TYPE_VALIDATION_CACHE_EXT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_VALIDATION_CACHE_EXT = ObjectType 1000160000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"
pattern $bOBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: ObjectType
$mOBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = ObjectType 1000165000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT"
pattern $bOBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: ObjectType
$mOBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = ObjectType 1000128000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"
pattern $bOBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: ObjectType
$mOBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = ObjectType 1000011000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DISPLAY_MODE_KHR"
pattern $bOBJECT_TYPE_DISPLAY_MODE_KHR :: ObjectType
$mOBJECT_TYPE_DISPLAY_MODE_KHR :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DISPLAY_MODE_KHR = ObjectType 1000002001
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DISPLAY_KHR"
pattern $bOBJECT_TYPE_DISPLAY_KHR :: ObjectType
$mOBJECT_TYPE_DISPLAY_KHR :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DISPLAY_KHR = ObjectType 1000002000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_SWAPCHAIN_KHR"
pattern $bOBJECT_TYPE_SWAPCHAIN_KHR :: ObjectType
$mOBJECT_TYPE_SWAPCHAIN_KHR :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_SWAPCHAIN_KHR = ObjectType 1000001000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_SURFACE_KHR"
pattern $bOBJECT_TYPE_SURFACE_KHR :: ObjectType
$mOBJECT_TYPE_SURFACE_KHR :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_SURFACE_KHR = ObjectType 1000000000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE"
pattern $bOBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: ObjectType
$mOBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE = ObjectType 1000085000
-- No documentation found for Nested "VkObjectType" "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"
pattern $bOBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: ObjectType
$mOBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: forall r. ObjectType -> (Void# -> r) -> (Void# -> r) -> r
OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION = ObjectType 1000156000
{-# complete OBJECT_TYPE_UNKNOWN,
             OBJECT_TYPE_INSTANCE,
             OBJECT_TYPE_PHYSICAL_DEVICE,
             OBJECT_TYPE_DEVICE,
             OBJECT_TYPE_QUEUE,
             OBJECT_TYPE_SEMAPHORE,
             OBJECT_TYPE_COMMAND_BUFFER,
             OBJECT_TYPE_FENCE,
             OBJECT_TYPE_DEVICE_MEMORY,
             OBJECT_TYPE_BUFFER,
             OBJECT_TYPE_IMAGE,
             OBJECT_TYPE_EVENT,
             OBJECT_TYPE_QUERY_POOL,
             OBJECT_TYPE_BUFFER_VIEW,
             OBJECT_TYPE_IMAGE_VIEW,
             OBJECT_TYPE_SHADER_MODULE,
             OBJECT_TYPE_PIPELINE_CACHE,
             OBJECT_TYPE_PIPELINE_LAYOUT,
             OBJECT_TYPE_RENDER_PASS,
             OBJECT_TYPE_PIPELINE,
             OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT,
             OBJECT_TYPE_SAMPLER,
             OBJECT_TYPE_DESCRIPTOR_POOL,
             OBJECT_TYPE_DESCRIPTOR_SET,
             OBJECT_TYPE_FRAMEBUFFER,
             OBJECT_TYPE_COMMAND_POOL,
             OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT,
             OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV,
             OBJECT_TYPE_DEFERRED_OPERATION_KHR,
             OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL,
             OBJECT_TYPE_VALIDATION_CACHE_EXT,
             OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR,
             OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT,
             OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT,
             OBJECT_TYPE_DISPLAY_MODE_KHR,
             OBJECT_TYPE_DISPLAY_KHR,
             OBJECT_TYPE_SWAPCHAIN_KHR,
             OBJECT_TYPE_SURFACE_KHR,
             OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
             OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: ObjectType #-}

instance Show ObjectType where
  showsPrec :: Int -> ObjectType -> ShowS
showsPrec p :: Int
p = \case
    OBJECT_TYPE_UNKNOWN -> String -> ShowS
showString "OBJECT_TYPE_UNKNOWN"
    OBJECT_TYPE_INSTANCE -> String -> ShowS
showString "OBJECT_TYPE_INSTANCE"
    OBJECT_TYPE_PHYSICAL_DEVICE -> String -> ShowS
showString "OBJECT_TYPE_PHYSICAL_DEVICE"
    OBJECT_TYPE_DEVICE -> String -> ShowS
showString "OBJECT_TYPE_DEVICE"
    OBJECT_TYPE_QUEUE -> String -> ShowS
showString "OBJECT_TYPE_QUEUE"
    OBJECT_TYPE_SEMAPHORE -> String -> ShowS
showString "OBJECT_TYPE_SEMAPHORE"
    OBJECT_TYPE_COMMAND_BUFFER -> String -> ShowS
showString "OBJECT_TYPE_COMMAND_BUFFER"
    OBJECT_TYPE_FENCE -> String -> ShowS
showString "OBJECT_TYPE_FENCE"
    OBJECT_TYPE_DEVICE_MEMORY -> String -> ShowS
showString "OBJECT_TYPE_DEVICE_MEMORY"
    OBJECT_TYPE_BUFFER -> String -> ShowS
showString "OBJECT_TYPE_BUFFER"
    OBJECT_TYPE_IMAGE -> String -> ShowS
showString "OBJECT_TYPE_IMAGE"
    OBJECT_TYPE_EVENT -> String -> ShowS
showString "OBJECT_TYPE_EVENT"
    OBJECT_TYPE_QUERY_POOL -> String -> ShowS
showString "OBJECT_TYPE_QUERY_POOL"
    OBJECT_TYPE_BUFFER_VIEW -> String -> ShowS
showString "OBJECT_TYPE_BUFFER_VIEW"
    OBJECT_TYPE_IMAGE_VIEW -> String -> ShowS
showString "OBJECT_TYPE_IMAGE_VIEW"
    OBJECT_TYPE_SHADER_MODULE -> String -> ShowS
showString "OBJECT_TYPE_SHADER_MODULE"
    OBJECT_TYPE_PIPELINE_CACHE -> String -> ShowS
showString "OBJECT_TYPE_PIPELINE_CACHE"
    OBJECT_TYPE_PIPELINE_LAYOUT -> String -> ShowS
showString "OBJECT_TYPE_PIPELINE_LAYOUT"
    OBJECT_TYPE_RENDER_PASS -> String -> ShowS
showString "OBJECT_TYPE_RENDER_PASS"
    OBJECT_TYPE_PIPELINE -> String -> ShowS
showString "OBJECT_TYPE_PIPELINE"
    OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT -> String -> ShowS
showString "OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"
    OBJECT_TYPE_SAMPLER -> String -> ShowS
showString "OBJECT_TYPE_SAMPLER"
    OBJECT_TYPE_DESCRIPTOR_POOL -> String -> ShowS
showString "OBJECT_TYPE_DESCRIPTOR_POOL"
    OBJECT_TYPE_DESCRIPTOR_SET -> String -> ShowS
showString "OBJECT_TYPE_DESCRIPTOR_SET"
    OBJECT_TYPE_FRAMEBUFFER -> String -> ShowS
showString "OBJECT_TYPE_FRAMEBUFFER"
    OBJECT_TYPE_COMMAND_POOL -> String -> ShowS
showString "OBJECT_TYPE_COMMAND_POOL"
    OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT -> String -> ShowS
showString "OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"
    OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV -> String -> ShowS
showString "OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV"
    OBJECT_TYPE_DEFERRED_OPERATION_KHR -> String -> ShowS
showString "OBJECT_TYPE_DEFERRED_OPERATION_KHR"
    OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL -> String -> ShowS
showString "OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"
    OBJECT_TYPE_VALIDATION_CACHE_EXT -> String -> ShowS
showString "OBJECT_TYPE_VALIDATION_CACHE_EXT"
    OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR -> String -> ShowS
showString "OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"
    OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT -> String -> ShowS
showString "OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT"
    OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT -> String -> ShowS
showString "OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"
    OBJECT_TYPE_DISPLAY_MODE_KHR -> String -> ShowS
showString "OBJECT_TYPE_DISPLAY_MODE_KHR"
    OBJECT_TYPE_DISPLAY_KHR -> String -> ShowS
showString "OBJECT_TYPE_DISPLAY_KHR"
    OBJECT_TYPE_SWAPCHAIN_KHR -> String -> ShowS
showString "OBJECT_TYPE_SWAPCHAIN_KHR"
    OBJECT_TYPE_SURFACE_KHR -> String -> ShowS
showString "OBJECT_TYPE_SURFACE_KHR"
    OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE -> String -> ShowS
showString "OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE"
    OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION -> String -> ShowS
showString "OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"
    ObjectType x :: Int32
x -> Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= 11) (String -> ShowS
showString "ObjectType " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec 11 Int32
x)

instance Read ObjectType where
  readPrec :: ReadPrec ObjectType
readPrec = ReadPrec ObjectType -> ReadPrec ObjectType
forall a. ReadPrec a -> ReadPrec a
parens ([(String, ReadPrec ObjectType)] -> ReadPrec ObjectType
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose [("OBJECT_TYPE_UNKNOWN", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_UNKNOWN)
                            , ("OBJECT_TYPE_INSTANCE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_INSTANCE)
                            , ("OBJECT_TYPE_PHYSICAL_DEVICE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_PHYSICAL_DEVICE)
                            , ("OBJECT_TYPE_DEVICE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DEVICE)
                            , ("OBJECT_TYPE_QUEUE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_QUEUE)
                            , ("OBJECT_TYPE_SEMAPHORE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_SEMAPHORE)
                            , ("OBJECT_TYPE_COMMAND_BUFFER", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_COMMAND_BUFFER)
                            , ("OBJECT_TYPE_FENCE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_FENCE)
                            , ("OBJECT_TYPE_DEVICE_MEMORY", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DEVICE_MEMORY)
                            , ("OBJECT_TYPE_BUFFER", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_BUFFER)
                            , ("OBJECT_TYPE_IMAGE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_IMAGE)
                            , ("OBJECT_TYPE_EVENT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_EVENT)
                            , ("OBJECT_TYPE_QUERY_POOL", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_QUERY_POOL)
                            , ("OBJECT_TYPE_BUFFER_VIEW", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_BUFFER_VIEW)
                            , ("OBJECT_TYPE_IMAGE_VIEW", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_IMAGE_VIEW)
                            , ("OBJECT_TYPE_SHADER_MODULE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_SHADER_MODULE)
                            , ("OBJECT_TYPE_PIPELINE_CACHE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_PIPELINE_CACHE)
                            , ("OBJECT_TYPE_PIPELINE_LAYOUT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_PIPELINE_LAYOUT)
                            , ("OBJECT_TYPE_RENDER_PASS", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_RENDER_PASS)
                            , ("OBJECT_TYPE_PIPELINE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_PIPELINE)
                            , ("OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT)
                            , ("OBJECT_TYPE_SAMPLER", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_SAMPLER)
                            , ("OBJECT_TYPE_DESCRIPTOR_POOL", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DESCRIPTOR_POOL)
                            , ("OBJECT_TYPE_DESCRIPTOR_SET", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DESCRIPTOR_SET)
                            , ("OBJECT_TYPE_FRAMEBUFFER", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_FRAMEBUFFER)
                            , ("OBJECT_TYPE_COMMAND_POOL", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_COMMAND_POOL)
                            , ("OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT)
                            , ("OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV)
                            , ("OBJECT_TYPE_DEFERRED_OPERATION_KHR", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DEFERRED_OPERATION_KHR)
                            , ("OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL)
                            , ("OBJECT_TYPE_VALIDATION_CACHE_EXT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_VALIDATION_CACHE_EXT)
                            , ("OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR)
                            , ("OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT)
                            , ("OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT)
                            , ("OBJECT_TYPE_DISPLAY_MODE_KHR", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DISPLAY_MODE_KHR)
                            , ("OBJECT_TYPE_DISPLAY_KHR", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DISPLAY_KHR)
                            , ("OBJECT_TYPE_SWAPCHAIN_KHR", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_SWAPCHAIN_KHR)
                            , ("OBJECT_TYPE_SURFACE_KHR", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_SURFACE_KHR)
                            , ("OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE)
                            , ("OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION", ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure ObjectType
OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION)]
                     ReadPrec ObjectType -> ReadPrec ObjectType -> ReadPrec ObjectType
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                     Int -> ReadPrec ObjectType -> ReadPrec ObjectType
forall a. Int -> ReadPrec a -> ReadPrec a
prec 10 (do
                       Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident "ObjectType")
                       Int32
v <- ReadPrec Int32 -> ReadPrec Int32
forall a. ReadPrec a -> ReadPrec a
step ReadPrec Int32
forall a. Read a => ReadPrec a
readPrec
                       ObjectType -> ReadPrec ObjectType
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Int32 -> ObjectType
ObjectType Int32
v)))