{-# language CPP #-}
-- No documentation found for Chapter "PipelineCreateFlags2"
module Vulkan.Core14.Enums.PipelineCreateFlags2  ( PipelineCreateFlags2
                                                 , PipelineCreateFlagBits2( PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT
                                                                          , PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT
                                                                          , PIPELINE_CREATE_2_DERIVATIVE_BIT
                                                                          , PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT
                                                                          , PIPELINE_CREATE_2_DISPATCH_BASE_BIT
                                                                          , PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT
                                                                          , PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT
                                                                          , PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT
                                                                          , PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT
                                                                          , PIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT
                                                                          , PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE
                                                                          , PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM
                                                                          , PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT
                                                                          , PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR
                                                                          , PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV
                                                                          , PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
                                                                          , PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT
                                                                          , PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT
                                                                          , PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV
                                                                          , PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR
                                                                          , PIPELINE_CREATE_2_LIBRARY_BIT_KHR
                                                                          , PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT
                                                                          , PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT
                                                                          , PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR
                                                                          , PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV
                                                                          , PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT
                                                                          , PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV
                                                                          , PIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT
                                                                          , PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX
                                                                          , ..
                                                                          )
                                                 ) where

import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showString)
import Numeric (showHex)
import Vulkan.Zero (Zero)
import Foreign.Storable (Storable)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Vulkan.Core10.FundamentalTypes (Flags64)
type PipelineCreateFlags2 = PipelineCreateFlagBits2

-- | VkPipelineCreateFlagBits2 - Bitmask controlling how a pipeline is
-- created
--
-- = Description
--
-- -   'PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT' specifies that the
--     created pipeline will not be optimized. Using this flag /may/ reduce
--     the time taken to create the pipeline.
--
-- -   'PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT' specifies that the
--     pipeline to be created is allowed to be the parent of a pipeline
--     that will be created in a subsequent pipeline creation call.
--
-- -   'PIPELINE_CREATE_2_DERIVATIVE_BIT' specifies that the pipeline to be
--     created will be a child of a previously created parent pipeline.
--
-- -   'PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT' specifies that
--     any shader input variables decorated as @ViewIndex@ will be assigned
--     values as if they were decorated as @DeviceIndex@.
--
-- -   'PIPELINE_CREATE_2_DISPATCH_BASE_BIT' specifies that a compute
--     pipeline /can/ be used with
--     'Vulkan.Core11.Promoted_From_VK_KHR_device_group.cmdDispatchBase'
--     with a non-zero base workgroup.
--
-- -   'PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV' specifies that a pipeline
--     is created with all shaders in the deferred state. Before using the
--     pipeline the application /must/ call
--     'Vulkan.Extensions.VK_NV_ray_tracing.compileDeferredNV' exactly once
--     on each shader in the pipeline before using the pipeline.
--
-- -   'PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR' specifies that the
--     shader compiler should capture statistics for the pipeline
--     executables produced by the compile process which /can/ later be
--     retrieved by calling
--     'Vulkan.Extensions.VK_KHR_pipeline_executable_properties.getPipelineExecutableStatisticsKHR'.
--     Enabling this flag /must/ not affect the final compiled pipeline but
--     /may/ disable pipeline caching or otherwise affect pipeline creation
--     time.
--
-- -   'PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR'
--     specifies that the shader compiler should capture the internal
--     representations of pipeline executables produced by the compile
--     process which /can/ later be retrieved by calling
--     'Vulkan.Extensions.VK_KHR_pipeline_executable_properties.getPipelineExecutableInternalRepresentationsKHR'.
--     Enabling this flag /must/ not affect the final compiled pipeline but
--     /may/ disable pipeline caching or otherwise affect pipeline creation
--     time. When capturing IR from pipelines created with pipeline
--     libraries, there is no guarantee that IR from libraries /can/ be
--     retrieved from the linked pipeline. Applications /should/ retrieve
--     IR from each library, and any linked pipelines, separately.
--
-- -   'PIPELINE_CREATE_2_LIBRARY_BIT_KHR' specifies that the pipeline
--     /cannot/ be used directly, and instead defines a /pipeline library/
--     that /can/ be combined with other pipelines using the
--     'Vulkan.Extensions.VK_KHR_pipeline_library.PipelineLibraryCreateInfoKHR'
--     structure. This is available in ray tracing and graphics pipelines.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR'
--     specifies that an any-hit shader will always be present when an
--     any-hit shader would be executed. A NULL any-hit shader is an
--     any-hit shader which is effectively
--     'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as from a
--     shader group consisting entirely of zeros.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR'
--     specifies that a closest hit shader will always be present when a
--     closest hit shader would be executed. A NULL closest hit shader is a
--     closest hit shader which is effectively
--     'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as from a
--     shader group consisting entirely of zeros.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR'
--     specifies that a miss shader will always be present when a miss
--     shader would be executed. A NULL miss shader is a miss shader which
--     is effectively 'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such
--     as from a shader group consisting entirely of zeros.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR'
--     specifies that an intersection shader will always be present when an
--     intersection shader would be executed. A NULL intersection shader is
--     an intersection shader which is effectively
--     'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as from a
--     shader group consisting entirely of zeros.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR' specifies
--     that all built-in primitives including triangles, spheres, and LSS
--     primitives will be skipped during traversal using
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#glossary-pipeline-trace-ray pipeline trace ray>
--     instructions.
--
-- -   'Vulkan.Extensions.VK_KHR_ray_tracing_pipeline.PIPELINE_CREATE_2_RAY_TRACING_SKIP_BUILT_IN_PRIMITIVES_BIT_KHR'
--     is an alias for
--     'PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR'.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR' specifies that
--     AABB primitives will be skipped during traversal using
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#glossary-pipeline-trace-ray pipeline trace ray>
--     instructions.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR'
--     specifies that the shader group handles /can/ be saved and reused on
--     a subsequent run (e.g. for trace capture and replay).
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV'
--     specifies that the pipeline is allowed to use spheres or linear
--     swept spheres as a geometry type in the acceleration structures.
--     Using this flag /may/ affect performance.
--
-- -   'PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV' specifies that the
--     pipeline can be used in combination with
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#device-generated-commands>.
--
-- -   'PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT' specifies that the
--     pipeline /can/ be used in a
--     'Vulkan.Extensions.Handles.IndirectExecutionSetEXT'.
--
-- -   'PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT' specifies
--     that pipeline creation will fail if a compile is required for
--     creation of a valid 'Vulkan.Core10.Handles.Pipeline' object;
--     'Vulkan.Core10.Enums.Result.PIPELINE_COMPILE_REQUIRED' will be
--     returned by pipeline creation, and the
--     'Vulkan.Core10.Handles.Pipeline' will be
--     'Vulkan.Core10.APIConstants.NULL_HANDLE'.
--
-- -   When creating multiple pipelines,
--     'PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT' specifies that
--     control will be returned to the application if any individual
--     pipeline returns a result which is not
--     'Vulkan.Core10.Enums.Result.SUCCESS' rather than continuing to
--     create additional pipelines.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV' specifies that
--     the pipeline is allowed to use @OpTraceRayMotionNV@.
--
-- -   'PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR'
--     specifies that the pipeline will be used with a fragment shading
--     rate attachment.
--
-- -   'PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT'
--     specifies that the pipeline will be used with a fragment density map
--     attachment.
--
-- -   'PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE' specifies
--     that the pipeline /can/ be used with layered fragment density maps.
--
-- -   'PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT' specifies that
--     pipeline libraries being linked into this library /should/ have link
--     time optimizations applied. If this bit is omitted, implementations
--     /should/ instead perform linking as rapidly as possible.
--
-- -   'PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT'
--     specifies that pipeline libraries should retain any information
--     necessary to later perform an optimal link with
--     'PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT'.
--
-- -   'PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT' specifies that a
--     pipeline will be used with
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#descriptorbuffers descriptor buffers>,
--     rather than
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#descriptorsets descriptor sets>.
--
-- -   'PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT' specifies
--     that the pipeline /may/ be used with an attachment
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#renderpass-feedbackloop feedback loop>
--     including color attachments.
--
-- -   'PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT'
--     specifies that the pipeline /may/ be used with an attachment
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#renderpass-feedbackloop feedback loop>
--     including depth-stencil attachments.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT' specifies
--     that the ray tracing pipeline /can/ be used with acceleration
--     structures which reference an opacity micromap array.
--
-- -   'PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV'
--     specifies that the ray tracing pipeline /can/ be used with
--     acceleration structures which reference a displacement micromap
--     array.
--
-- -   'PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT' specifies that the
--     pipeline /must/ not be bound to a protected command buffer.
--
-- -   'PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT' specifies that the
--     pipeline /must/ not be bound to an unprotected command buffer.
--
-- -   'PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR' specifies that
--     'Vulkan.Extensions.Handles.PipelineBinaryKHR' objects /can/ be
--     created from the pipeline. If
--     'PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR' is used, implementations
--     /should/ not store pipeline data to an internal cache, if such a
--     cache exists as stated by
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#limits-pipelineBinaryInternalCache pipelineBinaryInternalCache>.
--     If
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#limits-pipelineBinaryPrefersInternalCache pipelineBinaryPrefersInternalCache>
--     is 'Vulkan.Core10.FundamentalTypes.TRUE', applications /should/ not
--     use 'PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR'.
--
-- -   'PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT' specifies that
--     the pipeline will be used in a render pass that is begun with
--     'Vulkan.Core13.Enums.RenderingFlagBits.RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT'.
--
-- -   'PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX' specifies that the
--     pipeline will be used in an
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#executiongraphs execution graph>
--
-- -   'PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM' specifies that
--     the pipeline /must/ not be used with acceleration structures which
--     reference an opacity micromap array.
--
-- -   'PIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT' specifies that the
--     pipeline enables
--     <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#spirvenv-64bindexing 64-bit indexing>.
--
-- -   'PIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT' specifies that the
--     pipeline will use descriptor heap mappings instead of descriptor set
--     layouts.
--
-- It is valid to set both 'PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT' and
-- 'PIPELINE_CREATE_2_DERIVATIVE_BIT'. This allows a pipeline to be both a
-- parent and possibly a child in a pipeline hierarchy. See
-- <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#pipelines-pipeline-derivatives Pipeline Derivatives>
-- for more information.
--
-- When an implementation is looking up a pipeline in a
-- <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#pipelines-cache pipeline cache>,
-- if that pipeline is being created using linked libraries,
-- implementations /should/ always return an equivalent pipeline created
-- with 'PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT' if available,
-- whether or not that bit was specified.
--
-- Using 'PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT' (or not) when
-- linking pipeline libraries is intended as a performance tradeoff between
-- host and device. If the bit is omitted, linking should be faster and
-- produce a pipeline more rapidly, but performance of the pipeline on the
-- target device may be reduced. If the bit is included, linking may be
-- slower but should produce a pipeline with device performance comparable
-- to a monolithically created pipeline. Using both options can allow
-- latency-sensitive applications to generate a suboptimal but usable
-- pipeline quickly, and then perform an optimal link in the background,
-- substituting the result for the suboptimally linked pipeline as soon as
-- it is available.
--
-- = See Also
--
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_KHR_maintenance5 VK_KHR_maintenance5>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_VERSION_1_4 VK_VERSION_1_4>,
-- 'PipelineCreateFlags2'
newtype PipelineCreateFlagBits2 = PipelineCreateFlagBits2 Flags64
  deriving newtype (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
(PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool)
-> (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool)
-> Eq PipelineCreateFlagBits2
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
== :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
$c/= :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
/= :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
Eq, Eq PipelineCreateFlagBits2
Eq PipelineCreateFlagBits2 =>
(PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Ordering)
-> (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool)
-> (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool)
-> (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool)
-> (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool)
-> (PipelineCreateFlagBits2
    -> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2
    -> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2)
-> Ord PipelineCreateFlagBits2
PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Ordering
PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Ordering
compare :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Ordering
$c< :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
< :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
$c<= :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
<= :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
$c> :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
> :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
$c>= :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
>= :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> Bool
$cmax :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
max :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
$cmin :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
min :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
Ord, Ptr PipelineCreateFlagBits2 -> IO PipelineCreateFlagBits2
Ptr PipelineCreateFlagBits2 -> Int -> IO PipelineCreateFlagBits2
Ptr PipelineCreateFlagBits2
-> Int -> PipelineCreateFlagBits2 -> IO ()
Ptr PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> IO ()
PipelineCreateFlagBits2 -> Int
(PipelineCreateFlagBits2 -> Int)
-> (PipelineCreateFlagBits2 -> Int)
-> (Ptr PipelineCreateFlagBits2
    -> Int -> IO PipelineCreateFlagBits2)
-> (Ptr PipelineCreateFlagBits2
    -> Int -> PipelineCreateFlagBits2 -> IO ())
-> (forall b. Ptr b -> Int -> IO PipelineCreateFlagBits2)
-> (forall b. Ptr b -> Int -> PipelineCreateFlagBits2 -> IO ())
-> (Ptr PipelineCreateFlagBits2 -> IO PipelineCreateFlagBits2)
-> (Ptr PipelineCreateFlagBits2
    -> PipelineCreateFlagBits2 -> IO ())
-> Storable PipelineCreateFlagBits2
forall b. Ptr b -> Int -> IO PipelineCreateFlagBits2
forall b. Ptr b -> Int -> PipelineCreateFlagBits2 -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: PipelineCreateFlagBits2 -> Int
sizeOf :: PipelineCreateFlagBits2 -> Int
$calignment :: PipelineCreateFlagBits2 -> Int
alignment :: PipelineCreateFlagBits2 -> Int
$cpeekElemOff :: Ptr PipelineCreateFlagBits2 -> Int -> IO PipelineCreateFlagBits2
peekElemOff :: Ptr PipelineCreateFlagBits2 -> Int -> IO PipelineCreateFlagBits2
$cpokeElemOff :: Ptr PipelineCreateFlagBits2
-> Int -> PipelineCreateFlagBits2 -> IO ()
pokeElemOff :: Ptr PipelineCreateFlagBits2
-> Int -> PipelineCreateFlagBits2 -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PipelineCreateFlagBits2
peekByteOff :: forall b. Ptr b -> Int -> IO PipelineCreateFlagBits2
$cpokeByteOff :: forall b. Ptr b -> Int -> PipelineCreateFlagBits2 -> IO ()
pokeByteOff :: forall b. Ptr b -> Int -> PipelineCreateFlagBits2 -> IO ()
$cpeek :: Ptr PipelineCreateFlagBits2 -> IO PipelineCreateFlagBits2
peek :: Ptr PipelineCreateFlagBits2 -> IO PipelineCreateFlagBits2
$cpoke :: Ptr PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> IO ()
poke :: Ptr PipelineCreateFlagBits2 -> PipelineCreateFlagBits2 -> IO ()
Storable, PipelineCreateFlagBits2
PipelineCreateFlagBits2 -> Zero PipelineCreateFlagBits2
forall a. a -> Zero a
$czero :: PipelineCreateFlagBits2
zero :: PipelineCreateFlagBits2
Zero, Eq PipelineCreateFlagBits2
PipelineCreateFlagBits2
Eq PipelineCreateFlagBits2 =>
(PipelineCreateFlagBits2
 -> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2
    -> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2
    -> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> PipelineCreateFlagBits2
-> (Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> Bool)
-> (PipelineCreateFlagBits2 -> Maybe Int)
-> (PipelineCreateFlagBits2 -> Int)
-> (PipelineCreateFlagBits2 -> Bool)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2)
-> (PipelineCreateFlagBits2 -> Int)
-> Bits PipelineCreateFlagBits2
Int -> PipelineCreateFlagBits2
PipelineCreateFlagBits2 -> Bool
PipelineCreateFlagBits2 -> Int
PipelineCreateFlagBits2 -> Maybe Int
PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
PipelineCreateFlagBits2 -> Int -> Bool
PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
.&. :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
$c.|. :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
.|. :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
$cxor :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
xor :: PipelineCreateFlagBits2
-> PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
$ccomplement :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
complement :: PipelineCreateFlagBits2 -> PipelineCreateFlagBits2
$cshift :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
shift :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$crotate :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
rotate :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$czeroBits :: PipelineCreateFlagBits2
zeroBits :: PipelineCreateFlagBits2
$cbit :: Int -> PipelineCreateFlagBits2
bit :: Int -> PipelineCreateFlagBits2
$csetBit :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
setBit :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$cclearBit :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
clearBit :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$ccomplementBit :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
complementBit :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$ctestBit :: PipelineCreateFlagBits2 -> Int -> Bool
testBit :: PipelineCreateFlagBits2 -> Int -> Bool
$cbitSizeMaybe :: PipelineCreateFlagBits2 -> Maybe Int
bitSizeMaybe :: PipelineCreateFlagBits2 -> Maybe Int
$cbitSize :: PipelineCreateFlagBits2 -> Int
bitSize :: PipelineCreateFlagBits2 -> Int
$cisSigned :: PipelineCreateFlagBits2 -> Bool
isSigned :: PipelineCreateFlagBits2 -> Bool
$cshiftL :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
shiftL :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$cunsafeShiftL :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
unsafeShiftL :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$cshiftR :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
shiftR :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$cunsafeShiftR :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
unsafeShiftR :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$crotateL :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
rotateL :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$crotateR :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
rotateR :: PipelineCreateFlagBits2 -> Int -> PipelineCreateFlagBits2
$cpopCount :: PipelineCreateFlagBits2 -> Int
popCount :: PipelineCreateFlagBits2 -> Int
Bits, Bits PipelineCreateFlagBits2
Bits PipelineCreateFlagBits2 =>
(PipelineCreateFlagBits2 -> Int)
-> (PipelineCreateFlagBits2 -> Int)
-> (PipelineCreateFlagBits2 -> Int)
-> FiniteBits PipelineCreateFlagBits2
PipelineCreateFlagBits2 -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: PipelineCreateFlagBits2 -> Int
finiteBitSize :: PipelineCreateFlagBits2 -> Int
$ccountLeadingZeros :: PipelineCreateFlagBits2 -> Int
countLeadingZeros :: PipelineCreateFlagBits2 -> Int
$ccountTrailingZeros :: PipelineCreateFlagBits2 -> Int
countTrailingZeros :: PipelineCreateFlagBits2 -> Int
FiniteBits)

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT"
pattern $mPIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT = PipelineCreateFlagBits2 0x0000000000000001

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT"
pattern $mPIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT = PipelineCreateFlagBits2 0x0000000000000002

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DERIVATIVE_BIT"
pattern $mPIPELINE_CREATE_2_DERIVATIVE_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DERIVATIVE_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DERIVATIVE_BIT = PipelineCreateFlagBits2 0x0000000000000004

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"
pattern $mPIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = PipelineCreateFlagBits2 0x0000000000000008

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT"
pattern $mPIPELINE_CREATE_2_DISPATCH_BASE_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DISPATCH_BASE_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DISPATCH_BASE_BIT = PipelineCreateFlagBits2 0x0000000000000010

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT"
pattern $mPIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT = PipelineCreateFlagBits2 0x0000000000000100

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT"
pattern $mPIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT = PipelineCreateFlagBits2 0x0000000000000200

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT"
pattern $mPIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT = PipelineCreateFlagBits2 0x0000000008000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT"
pattern $mPIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT = PipelineCreateFlagBits2 0x0000000040000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT"
pattern $mPIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT = PipelineCreateFlagBits2 0x0000080000000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE"
pattern $mPIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE = PipelineCreateFlagBits2 0x0000010000000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM"
pattern $mPIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM = PipelineCreateFlagBits2 0x0000002000000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT"
pattern $mPIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT = PipelineCreateFlagBits2 0x0000004000000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR"
pattern $mPIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR = PipelineCreateFlagBits2 0x0000000080000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT"
pattern $mPIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT = PipelineCreateFlagBits2 0x0000000020000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV = PipelineCreateFlagBits2 0x0000000010000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"
pattern $mPIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = PipelineCreateFlagBits2 0x0000000004000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"
pattern $mPIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = PipelineCreateFlagBits2 0x0000000002000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = PipelineCreateFlagBits2 0x0000000001000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"
pattern $mPIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = PipelineCreateFlagBits2 0x0000000000400000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = PipelineCreateFlagBits2 0x0000000000200000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV = PipelineCreateFlagBits2 0x0000000000100000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV"
pattern $mPIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV = PipelineCreateFlagBits2 0x0000000000040000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR = PipelineCreateFlagBits2 0x0000000000080000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000020000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000010000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000008000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000004000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000002000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR = PipelineCreateFlagBits2 0x0000000000001000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_LIBRARY_BIT_KHR"
pattern $mPIPELINE_CREATE_2_LIBRARY_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_LIBRARY_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_LIBRARY_BIT_KHR = PipelineCreateFlagBits2 0x0000000000000800

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT"
pattern $mPIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT = PipelineCreateFlagBits2 0x0000000000800000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT"
pattern $mPIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT = PipelineCreateFlagBits2 0x0000000000000400

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000000080

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR"
pattern $mPIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR = PipelineCreateFlagBits2 0x0000000000000040

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV"
pattern $mPIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV = PipelineCreateFlagBits2 0x0000000000000020

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT"
pattern $mPIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT = PipelineCreateFlagBits2 0x0000000400000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV"
pattern $mPIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV = PipelineCreateFlagBits2 0x0000000200000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT"
pattern $mPIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT = PipelineCreateFlagBits2 0x0000001000000000

-- No documentation found for Nested "VkPipelineCreateFlagBits2" "VK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX"
pattern $mPIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX :: forall {r}.
PipelineCreateFlagBits2 -> ((# #) -> r) -> ((# #) -> r) -> r
$bPIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX :: PipelineCreateFlagBits2
PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX = PipelineCreateFlagBits2 0x0000000100000000

conNamePipelineCreateFlagBits2 :: String
conNamePipelineCreateFlagBits2 :: String
conNamePipelineCreateFlagBits2 = String
"PipelineCreateFlagBits2"

enumPrefixPipelineCreateFlagBits2 :: String
enumPrefixPipelineCreateFlagBits2 :: String
enumPrefixPipelineCreateFlagBits2 = String
"PIPELINE_CREATE_2_"

showTablePipelineCreateFlagBits2 :: [(PipelineCreateFlagBits2, String)]
showTablePipelineCreateFlagBits2 :: [(PipelineCreateFlagBits2, String)]
showTablePipelineCreateFlagBits2 =
  [
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT
    , String
"DISABLE_OPTIMIZATION_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT
    , String
"ALLOW_DERIVATIVES_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DERIVATIVE_BIT
    , String
"DERIVATIVE_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT
    , String
"VIEW_INDEX_FROM_DEVICE_INDEX_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DISPATCH_BASE_BIT
    , String
"DISPATCH_BASE_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT
    , String
"FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT
    , String
"EARLY_RETURN_ON_FAILURE_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT
    , String
"NO_PROTECTED_ACCESS_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT
    , String
"PROTECTED_ACCESS_ONLY_BIT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT
    , String
"64_BIT_INDEXING_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE
    , String
"PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM
    , String
"DISALLOW_OPACITY_MICROMAP_BIT_ARM"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT
    , String
"INDIRECT_BINDABLE_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR
    , String
"CAPTURE_DATA_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT
    , String
"DESCRIPTOR_BUFFER_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV
    , String
"RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
    , String
"DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
    , String
"COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT
    , String
"RAY_TRACING_OPACITY_MICROMAP_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT
    , String
"RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
    , String
"RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV
    , String
"RAY_TRACING_ALLOW_MOTION_BIT_NV"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV
    , String
"INDIRECT_BINDABLE_BIT_NV"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
    , String
"RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR
    , String
"RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR
    , String
"RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR
    , String
"RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR
    , String
"RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR
    , String
"RAY_TRACING_SKIP_AABBS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR
    , String
"RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_LIBRARY_BIT_KHR
    , String
"LIBRARY_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT
    , String
"RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT
    , String
"LINK_TIME_OPTIMIZATION_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR
    , String
"CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR
    , String
"CAPTURE_STATISTICS_BIT_KHR"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV
    , String
"DEFER_COMPILE_BIT_NV"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT
    , String
"ENABLE_LEGACY_DITHERING_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV
    , String
"RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT
    , String
"DESCRIPTOR_HEAP_BIT_EXT"
    )
  ,
    ( PipelineCreateFlagBits2
PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX
    , String
"EXECUTION_GRAPH_BIT_AMDX"
    )
  ]

instance Show PipelineCreateFlagBits2 where
  showsPrec :: Int -> PipelineCreateFlagBits2 -> ShowS
showsPrec =
    String
-> [(PipelineCreateFlagBits2, String)]
-> String
-> (PipelineCreateFlagBits2 -> Word64)
-> (Word64 -> ShowS)
-> Int
-> PipelineCreateFlagBits2
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
      String
enumPrefixPipelineCreateFlagBits2
      [(PipelineCreateFlagBits2, String)]
showTablePipelineCreateFlagBits2
      String
conNamePipelineCreateFlagBits2
      (\(PipelineCreateFlagBits2 Word64
x) -> Word64
x)
      (\Word64
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word64 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word64
x)

instance Read PipelineCreateFlagBits2 where
  readPrec :: ReadPrec PipelineCreateFlagBits2
readPrec =
    String
-> [(PipelineCreateFlagBits2, String)]
-> String
-> (Word64 -> PipelineCreateFlagBits2)
-> ReadPrec PipelineCreateFlagBits2
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
      String
enumPrefixPipelineCreateFlagBits2
      [(PipelineCreateFlagBits2, String)]
showTablePipelineCreateFlagBits2
      String
conNamePipelineCreateFlagBits2
      Word64 -> PipelineCreateFlagBits2
PipelineCreateFlagBits2