{-# OPTIONS_HADDOCK ignore-exports#-}
{-# LANGUAGE DataKinds                  #-}
{-# LANGUAGE DeriveDataTypeable         #-}
{-# LANGUAGE DeriveGeneric              #-}
{-# LANGUAGE FlexibleInstances          #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE KindSignatures             #-}
{-# LANGUAGE PatternSynonyms            #-}
{-# LANGUAGE StandaloneDeriving         #-}
{-# LANGUAGE Strict                     #-}
{-# LANGUAGE TypeSynonymInstances       #-}
module Graphics.Vulkan.Types.Enum.Descriptor
       (VkDescriptorBindingBitmaskEXT(VkDescriptorBindingBitmaskEXT,
                                      VkDescriptorBindingFlagsEXT, VkDescriptorBindingFlagBitsEXT,
                                      VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT,
                                      VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT,
                                      VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT,
                                      VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT),
        VkDescriptorBindingFlagsEXT, VkDescriptorBindingFlagBitsEXT,
        VkDescriptorPoolCreateBitmask(VkDescriptorPoolCreateBitmask,
                                      VkDescriptorPoolCreateFlags, VkDescriptorPoolCreateFlagBits,
                                      VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT),
        VkDescriptorPoolCreateFlags, VkDescriptorPoolCreateFlagBits,
        VkDescriptorSetLayoutCreateBitmask(VkDescriptorSetLayoutCreateBitmask,
                                           VkDescriptorSetLayoutCreateFlags,
                                           VkDescriptorSetLayoutCreateFlagBits),
        VkDescriptorSetLayoutCreateFlags,
        VkDescriptorSetLayoutCreateFlagBits,
        VkDescriptorType(VkDescriptorType, VK_DESCRIPTOR_TYPE_SAMPLER,
                         VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
                         VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, VK_DESCRIPTOR_TYPE_STORAGE_IMAGE,
                         VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER,
                         VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER,
                         VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER,
                         VK_DESCRIPTOR_TYPE_STORAGE_BUFFER,
                         VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC,
                         VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC,
                         VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT),
        VkDescriptorUpdateTemplateType(VkDescriptorUpdateTemplateType,
                                       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET),
        VkDescriptorUpdateTemplateTypeKHR(..))
       where
import           Data.Bits                       (Bits, FiniteBits)
import           Data.Coerce                     (coerce)
import           Data.Data                       (Data)
import           Foreign.Storable                (Storable)
import           GHC.Generics                    (Generic)
import           GHC.Read                        (choose, expectP)
import           Graphics.Vulkan.Marshal         (FlagBit, FlagMask, FlagType,
                                                  Int32)
import           Graphics.Vulkan.Types.BaseTypes (VkFlags (..))
import           Text.ParserCombinators.ReadPrec (prec, step, (+++))
import           Text.Read                       (Read (..), parens)
import           Text.Read.Lex                   (Lexeme (..))

newtype VkDescriptorBindingBitmaskEXT (a ::
                                         FlagType) = VkDescriptorBindingBitmaskEXT VkFlags
                                                       deriving (VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
(VkDescriptorBindingBitmaskEXT a
 -> VkDescriptorBindingBitmaskEXT a -> Bool)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a -> Bool)
-> Eq (VkDescriptorBindingBitmaskEXT a)
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
/= :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
$c/= :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
== :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
$c== :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
Eq, Eq (VkDescriptorBindingBitmaskEXT a)
Eq (VkDescriptorBindingBitmaskEXT a)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a -> Ordering)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a -> Bool)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a -> Bool)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a -> Bool)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a -> Bool)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a)
-> (VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a)
-> Ord (VkDescriptorBindingBitmaskEXT a)
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Ordering
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
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
forall (a :: FlagType). Eq (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Ordering
forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
min :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
$cmin :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
max :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
$cmax :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
>= :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
$c>= :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
> :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
$c> :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
<= :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
$c<= :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
< :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
$c< :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Bool
compare :: VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Ordering
$ccompare :: forall (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a -> Ordering
$cp1Ord :: forall (a :: FlagType). Eq (VkDescriptorBindingBitmaskEXT a)
Ord, Ptr b -> Int -> IO (VkDescriptorBindingBitmaskEXT a)
Ptr b -> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
Ptr (VkDescriptorBindingBitmaskEXT a)
-> IO (VkDescriptorBindingBitmaskEXT a)
Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> IO (VkDescriptorBindingBitmaskEXT a)
Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
Ptr (VkDescriptorBindingBitmaskEXT a)
-> VkDescriptorBindingBitmaskEXT a -> IO ()
VkDescriptorBindingBitmaskEXT a -> Int
(VkDescriptorBindingBitmaskEXT a -> Int)
-> (VkDescriptorBindingBitmaskEXT a -> Int)
-> (Ptr (VkDescriptorBindingBitmaskEXT a)
    -> Int -> IO (VkDescriptorBindingBitmaskEXT a))
-> (Ptr (VkDescriptorBindingBitmaskEXT a)
    -> Int -> VkDescriptorBindingBitmaskEXT a -> IO ())
-> (forall b. Ptr b -> Int -> IO (VkDescriptorBindingBitmaskEXT a))
-> (forall b.
    Ptr b -> Int -> VkDescriptorBindingBitmaskEXT a -> IO ())
-> (Ptr (VkDescriptorBindingBitmaskEXT a)
    -> IO (VkDescriptorBindingBitmaskEXT a))
-> (Ptr (VkDescriptorBindingBitmaskEXT a)
    -> VkDescriptorBindingBitmaskEXT a -> IO ())
-> Storable (VkDescriptorBindingBitmaskEXT a)
forall b. Ptr b -> Int -> IO (VkDescriptorBindingBitmaskEXT a)
forall b. Ptr b -> Int -> VkDescriptorBindingBitmaskEXT a -> 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
forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> IO (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> IO (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> VkDescriptorBindingBitmaskEXT a -> IO ()
forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a -> Int
forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType) b.
Ptr b -> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
poke :: Ptr (VkDescriptorBindingBitmaskEXT a)
-> VkDescriptorBindingBitmaskEXT a -> IO ()
$cpoke :: forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> VkDescriptorBindingBitmaskEXT a -> IO ()
peek :: Ptr (VkDescriptorBindingBitmaskEXT a)
-> IO (VkDescriptorBindingBitmaskEXT a)
$cpeek :: forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> IO (VkDescriptorBindingBitmaskEXT a)
pokeByteOff :: Ptr b -> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
$cpokeByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
peekByteOff :: Ptr b -> Int -> IO (VkDescriptorBindingBitmaskEXT a)
$cpeekByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkDescriptorBindingBitmaskEXT a)
pokeElemOff :: Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
$cpokeElemOff :: forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> VkDescriptorBindingBitmaskEXT a -> IO ()
peekElemOff :: Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> IO (VkDescriptorBindingBitmaskEXT a)
$cpeekElemOff :: forall (a :: FlagType).
Ptr (VkDescriptorBindingBitmaskEXT a)
-> Int -> IO (VkDescriptorBindingBitmaskEXT a)
alignment :: VkDescriptorBindingBitmaskEXT a -> Int
$calignment :: forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a -> Int
sizeOf :: VkDescriptorBindingBitmaskEXT a -> Int
$csizeOf :: forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a -> Int
Storable, Typeable (VkDescriptorBindingBitmaskEXT a)
DataType
Constr
Typeable (VkDescriptorBindingBitmaskEXT a)
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkDescriptorBindingBitmaskEXT a
    -> c (VkDescriptorBindingBitmaskEXT a))
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c (VkDescriptorBindingBitmaskEXT a))
-> (VkDescriptorBindingBitmaskEXT a -> Constr)
-> (VkDescriptorBindingBitmaskEXT a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c (VkDescriptorBindingBitmaskEXT a)))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c (VkDescriptorBindingBitmaskEXT a)))
-> ((forall b. Data b => b -> b)
    -> VkDescriptorBindingBitmaskEXT a
    -> VkDescriptorBindingBitmaskEXT a)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorBindingBitmaskEXT a
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorBindingBitmaskEXT a
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> VkDescriptorBindingBitmaskEXT a -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> VkDescriptorBindingBitmaskEXT a
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorBindingBitmaskEXT a
    -> m (VkDescriptorBindingBitmaskEXT a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorBindingBitmaskEXT a
    -> m (VkDescriptorBindingBitmaskEXT a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorBindingBitmaskEXT a
    -> m (VkDescriptorBindingBitmaskEXT a))
-> Data (VkDescriptorBindingBitmaskEXT a)
VkDescriptorBindingBitmaskEXT a -> DataType
VkDescriptorBindingBitmaskEXT a -> Constr
(forall b. Data b => b -> b)
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorBindingBitmaskEXT a
-> c (VkDescriptorBindingBitmaskEXT a)
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorBindingBitmaskEXT a)
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a
-> u
forall u.
(forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
forall (a :: FlagType).
Typeable a =>
Typeable (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType).
Typeable a =>
VkDescriptorBindingBitmaskEXT a -> DataType
forall (a :: FlagType).
Typeable a =>
VkDescriptorBindingBitmaskEXT a -> Constr
forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType) u.
Typeable a =>
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a
-> u
forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a -> [u]
forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorBindingBitmaskEXT a
-> c (VkDescriptorBindingBitmaskEXT a)
forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorBindingBitmaskEXT a)
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorBindingBitmaskEXT a
-> c (VkDescriptorBindingBitmaskEXT a)
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
$cVkDescriptorBindingBitmaskEXT :: Constr
$tVkDescriptorBindingBitmaskEXT :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
$cgmapMo :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
gmapMp :: (forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
$cgmapMp :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
gmapM :: (forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
$cgmapM :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorBindingBitmaskEXT a
-> m (VkDescriptorBindingBitmaskEXT a)
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a
-> u
$cgmapQi :: forall (a :: FlagType) u.
Typeable a =>
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a
-> u
gmapQ :: (forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a -> [u]
$cgmapQ :: forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u)
-> VkDescriptorBindingBitmaskEXT a -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
$cgmapQr :: forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
$cgmapQl :: forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorBindingBitmaskEXT a
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
$cgmapT :: forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkDescriptorBindingBitmaskEXT a
-> VkDescriptorBindingBitmaskEXT a
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
$cdataCast2 :: forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
$cdataCast1 :: forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorBindingBitmaskEXT a))
dataTypeOf :: VkDescriptorBindingBitmaskEXT a -> DataType
$cdataTypeOf :: forall (a :: FlagType).
Typeable a =>
VkDescriptorBindingBitmaskEXT a -> DataType
toConstr :: VkDescriptorBindingBitmaskEXT a -> Constr
$ctoConstr :: forall (a :: FlagType).
Typeable a =>
VkDescriptorBindingBitmaskEXT a -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorBindingBitmaskEXT a)
$cgunfold :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorBindingBitmaskEXT a)
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorBindingBitmaskEXT a
-> c (VkDescriptorBindingBitmaskEXT a)
$cgfoldl :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorBindingBitmaskEXT a
-> c (VkDescriptorBindingBitmaskEXT a)
$cp1Data :: forall (a :: FlagType).
Typeable a =>
Typeable (VkDescriptorBindingBitmaskEXT a)
Data, (forall x.
 VkDescriptorBindingBitmaskEXT a
 -> Rep (VkDescriptorBindingBitmaskEXT a) x)
-> (forall x.
    Rep (VkDescriptorBindingBitmaskEXT a) x
    -> VkDescriptorBindingBitmaskEXT a)
-> Generic (VkDescriptorBindingBitmaskEXT a)
forall x.
Rep (VkDescriptorBindingBitmaskEXT a) x
-> VkDescriptorBindingBitmaskEXT a
forall x.
VkDescriptorBindingBitmaskEXT a
-> Rep (VkDescriptorBindingBitmaskEXT a) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (a :: FlagType) x.
Rep (VkDescriptorBindingBitmaskEXT a) x
-> VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType) x.
VkDescriptorBindingBitmaskEXT a
-> Rep (VkDescriptorBindingBitmaskEXT a) x
$cto :: forall (a :: FlagType) x.
Rep (VkDescriptorBindingBitmaskEXT a) x
-> VkDescriptorBindingBitmaskEXT a
$cfrom :: forall (a :: FlagType) x.
VkDescriptorBindingBitmaskEXT a
-> Rep (VkDescriptorBindingBitmaskEXT a) x
Generic)

type VkDescriptorBindingFlagsEXT =
     VkDescriptorBindingBitmaskEXT FlagMask

type VkDescriptorBindingFlagBitsEXT =
     VkDescriptorBindingBitmaskEXT FlagBit

pattern VkDescriptorBindingFlagBitsEXT ::
        VkFlags -> VkDescriptorBindingBitmaskEXT FlagBit

pattern $bVkDescriptorBindingFlagBitsEXT :: VkFlags -> VkDescriptorBindingBitmaskEXT FlagBit
$mVkDescriptorBindingFlagBitsEXT :: forall r.
VkDescriptorBindingBitmaskEXT FlagBit
-> (VkFlags -> r) -> (Void# -> r) -> r
VkDescriptorBindingFlagBitsEXT n =
        VkDescriptorBindingBitmaskEXT n

pattern VkDescriptorBindingFlagsEXT ::
        VkFlags -> VkDescriptorBindingBitmaskEXT FlagMask

pattern $bVkDescriptorBindingFlagsEXT :: VkFlags -> VkDescriptorBindingBitmaskEXT FlagMask
$mVkDescriptorBindingFlagsEXT :: forall r.
VkDescriptorBindingBitmaskEXT FlagMask
-> (VkFlags -> r) -> (Void# -> r) -> r
VkDescriptorBindingFlagsEXT n =
        VkDescriptorBindingBitmaskEXT n

deriving instance Bits (VkDescriptorBindingBitmaskEXT FlagMask)

deriving instance
         FiniteBits (VkDescriptorBindingBitmaskEXT FlagMask)

deriving instance Integral (VkDescriptorBindingBitmaskEXT FlagMask)

deriving instance Num (VkDescriptorBindingBitmaskEXT FlagMask)

deriving instance Bounded (VkDescriptorBindingBitmaskEXT FlagMask)

deriving instance Enum (VkDescriptorBindingBitmaskEXT FlagMask)

deriving instance Real (VkDescriptorBindingBitmaskEXT FlagMask)

instance Show (VkDescriptorBindingBitmaskEXT a) where
        showsPrec :: Int -> VkDescriptorBindingBitmaskEXT a -> ShowS
showsPrec Int
_ VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT
          = String -> ShowS
showString String
"VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT"
        showsPrec Int
_
          VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT
          = String -> ShowS
showString
              String
"VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT"
        showsPrec Int
_ VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT
          = String -> ShowS
showString String
"VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT"
        showsPrec Int
_ VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT
          = String -> ShowS
showString
              String
"VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT"
        showsPrec Int
p (VkDescriptorBindingBitmaskEXT VkFlags
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkDescriptorBindingBitmaskEXT " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> VkFlags -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 VkFlags
x)

instance Read (VkDescriptorBindingBitmaskEXT a) where
        readPrec :: ReadPrec (VkDescriptorBindingBitmaskEXT a)
readPrec
          = ReadPrec (VkDescriptorBindingBitmaskEXT a)
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec (VkDescriptorBindingBitmaskEXT a))]
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT",
                   VkDescriptorBindingBitmaskEXT a
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT),
                  (String
"VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT",
                   VkDescriptorBindingBitmaskEXT a
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT),
                  (String
"VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT",
                   VkDescriptorBindingBitmaskEXT a
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT),
                  (String
"VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT",
                   VkDescriptorBindingBitmaskEXT a
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType). VkDescriptorBindingBitmaskEXT a
VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT)]
                 ReadPrec (VkDescriptorBindingBitmaskEXT a)
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkDescriptorBindingBitmaskEXT") ReadPrec ()
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
-> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (VkFlags -> VkDescriptorBindingBitmaskEXT a
forall (a :: FlagType). VkFlags -> VkDescriptorBindingBitmaskEXT a
VkDescriptorBindingBitmaskEXT (VkFlags -> VkDescriptorBindingBitmaskEXT a)
-> ReadPrec VkFlags -> ReadPrec (VkDescriptorBindingBitmaskEXT a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec VkFlags -> ReadPrec VkFlags
forall a. ReadPrec a -> ReadPrec a
step ReadPrec VkFlags
forall a. Read a => ReadPrec a
readPrec)))

-- | bitpos = @0@
pattern VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT ::
        VkDescriptorBindingBitmaskEXT a

pattern $bVK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT :: VkDescriptorBindingBitmaskEXT a
$mVK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT :: forall r (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT =
        VkDescriptorBindingBitmaskEXT 1

-- | bitpos = @1@
pattern VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT
        :: VkDescriptorBindingBitmaskEXT a

pattern $bVK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT :: VkDescriptorBindingBitmaskEXT a
$mVK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT :: forall r (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT =
        VkDescriptorBindingBitmaskEXT 2

-- | bitpos = @2@
pattern VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT ::
        VkDescriptorBindingBitmaskEXT a

pattern $bVK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT :: VkDescriptorBindingBitmaskEXT a
$mVK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT :: forall r (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT =
        VkDescriptorBindingBitmaskEXT 4

-- | bitpos = @3@
pattern VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT ::
        VkDescriptorBindingBitmaskEXT a

pattern $bVK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT :: VkDescriptorBindingBitmaskEXT a
$mVK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT :: forall r (a :: FlagType).
VkDescriptorBindingBitmaskEXT a
-> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT =
        VkDescriptorBindingBitmaskEXT 8

newtype VkDescriptorPoolCreateBitmask (a ::
                                         FlagType) = VkDescriptorPoolCreateBitmask VkFlags
                                                       deriving (VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
(VkDescriptorPoolCreateBitmask a
 -> VkDescriptorPoolCreateBitmask a -> Bool)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a -> Bool)
-> Eq (VkDescriptorPoolCreateBitmask a)
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
/= :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
$c/= :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
== :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
$c== :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
Eq, Eq (VkDescriptorPoolCreateBitmask a)
Eq (VkDescriptorPoolCreateBitmask a)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a -> Ordering)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a -> Bool)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a -> Bool)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a -> Bool)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a -> Bool)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a)
-> (VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a)
-> Ord (VkDescriptorPoolCreateBitmask a)
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Ordering
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
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
forall (a :: FlagType). Eq (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Ordering
forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
min :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
$cmin :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
max :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
$cmax :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
>= :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
$c>= :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
> :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
$c> :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
<= :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
$c<= :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
< :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
$c< :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Bool
compare :: VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Ordering
$ccompare :: forall (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a -> Ordering
$cp1Ord :: forall (a :: FlagType). Eq (VkDescriptorPoolCreateBitmask a)
Ord, Ptr b -> Int -> IO (VkDescriptorPoolCreateBitmask a)
Ptr b -> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
Ptr (VkDescriptorPoolCreateBitmask a)
-> IO (VkDescriptorPoolCreateBitmask a)
Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> IO (VkDescriptorPoolCreateBitmask a)
Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
Ptr (VkDescriptorPoolCreateBitmask a)
-> VkDescriptorPoolCreateBitmask a -> IO ()
VkDescriptorPoolCreateBitmask a -> Int
(VkDescriptorPoolCreateBitmask a -> Int)
-> (VkDescriptorPoolCreateBitmask a -> Int)
-> (Ptr (VkDescriptorPoolCreateBitmask a)
    -> Int -> IO (VkDescriptorPoolCreateBitmask a))
-> (Ptr (VkDescriptorPoolCreateBitmask a)
    -> Int -> VkDescriptorPoolCreateBitmask a -> IO ())
-> (forall b. Ptr b -> Int -> IO (VkDescriptorPoolCreateBitmask a))
-> (forall b.
    Ptr b -> Int -> VkDescriptorPoolCreateBitmask a -> IO ())
-> (Ptr (VkDescriptorPoolCreateBitmask a)
    -> IO (VkDescriptorPoolCreateBitmask a))
-> (Ptr (VkDescriptorPoolCreateBitmask a)
    -> VkDescriptorPoolCreateBitmask a -> IO ())
-> Storable (VkDescriptorPoolCreateBitmask a)
forall b. Ptr b -> Int -> IO (VkDescriptorPoolCreateBitmask a)
forall b. Ptr b -> Int -> VkDescriptorPoolCreateBitmask a -> 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
forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> IO (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> IO (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> VkDescriptorPoolCreateBitmask a -> IO ()
forall (a :: FlagType). VkDescriptorPoolCreateBitmask a -> Int
forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType) b.
Ptr b -> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
poke :: Ptr (VkDescriptorPoolCreateBitmask a)
-> VkDescriptorPoolCreateBitmask a -> IO ()
$cpoke :: forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> VkDescriptorPoolCreateBitmask a -> IO ()
peek :: Ptr (VkDescriptorPoolCreateBitmask a)
-> IO (VkDescriptorPoolCreateBitmask a)
$cpeek :: forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> IO (VkDescriptorPoolCreateBitmask a)
pokeByteOff :: Ptr b -> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
$cpokeByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
peekByteOff :: Ptr b -> Int -> IO (VkDescriptorPoolCreateBitmask a)
$cpeekByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkDescriptorPoolCreateBitmask a)
pokeElemOff :: Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
$cpokeElemOff :: forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> VkDescriptorPoolCreateBitmask a -> IO ()
peekElemOff :: Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> IO (VkDescriptorPoolCreateBitmask a)
$cpeekElemOff :: forall (a :: FlagType).
Ptr (VkDescriptorPoolCreateBitmask a)
-> Int -> IO (VkDescriptorPoolCreateBitmask a)
alignment :: VkDescriptorPoolCreateBitmask a -> Int
$calignment :: forall (a :: FlagType). VkDescriptorPoolCreateBitmask a -> Int
sizeOf :: VkDescriptorPoolCreateBitmask a -> Int
$csizeOf :: forall (a :: FlagType). VkDescriptorPoolCreateBitmask a -> Int
Storable, Typeable (VkDescriptorPoolCreateBitmask a)
DataType
Constr
Typeable (VkDescriptorPoolCreateBitmask a)
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkDescriptorPoolCreateBitmask a
    -> c (VkDescriptorPoolCreateBitmask a))
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c (VkDescriptorPoolCreateBitmask a))
-> (VkDescriptorPoolCreateBitmask a -> Constr)
-> (VkDescriptorPoolCreateBitmask a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c (VkDescriptorPoolCreateBitmask a)))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c (VkDescriptorPoolCreateBitmask a)))
-> ((forall b. Data b => b -> b)
    -> VkDescriptorPoolCreateBitmask a
    -> VkDescriptorPoolCreateBitmask a)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorPoolCreateBitmask a
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorPoolCreateBitmask a
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> VkDescriptorPoolCreateBitmask a -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> VkDescriptorPoolCreateBitmask a
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorPoolCreateBitmask a
    -> m (VkDescriptorPoolCreateBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorPoolCreateBitmask a
    -> m (VkDescriptorPoolCreateBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorPoolCreateBitmask a
    -> m (VkDescriptorPoolCreateBitmask a))
-> Data (VkDescriptorPoolCreateBitmask a)
VkDescriptorPoolCreateBitmask a -> DataType
VkDescriptorPoolCreateBitmask a -> Constr
(forall b. Data b => b -> b)
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorPoolCreateBitmask a
-> c (VkDescriptorPoolCreateBitmask a)
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorPoolCreateBitmask a)
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a
-> u
forall u.
(forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
forall (a :: FlagType).
Typeable a =>
Typeable (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType).
Typeable a =>
VkDescriptorPoolCreateBitmask a -> DataType
forall (a :: FlagType).
Typeable a =>
VkDescriptorPoolCreateBitmask a -> Constr
forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
forall (a :: FlagType) u.
Typeable a =>
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a
-> u
forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a -> [u]
forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorPoolCreateBitmask a
-> c (VkDescriptorPoolCreateBitmask a)
forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorPoolCreateBitmask a)
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorPoolCreateBitmask a
-> c (VkDescriptorPoolCreateBitmask a)
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
$cVkDescriptorPoolCreateBitmask :: Constr
$tVkDescriptorPoolCreateBitmask :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
$cgmapMo :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
gmapMp :: (forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
$cgmapMp :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
gmapM :: (forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
$cgmapM :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorPoolCreateBitmask a
-> m (VkDescriptorPoolCreateBitmask a)
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a
-> u
$cgmapQi :: forall (a :: FlagType) u.
Typeable a =>
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a
-> u
gmapQ :: (forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a -> [u]
$cgmapQ :: forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u)
-> VkDescriptorPoolCreateBitmask a -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
$cgmapQr :: forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
$cgmapQl :: forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorPoolCreateBitmask a
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
$cgmapT :: forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkDescriptorPoolCreateBitmask a
-> VkDescriptorPoolCreateBitmask a
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
$cdataCast2 :: forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
$cdataCast1 :: forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorPoolCreateBitmask a))
dataTypeOf :: VkDescriptorPoolCreateBitmask a -> DataType
$cdataTypeOf :: forall (a :: FlagType).
Typeable a =>
VkDescriptorPoolCreateBitmask a -> DataType
toConstr :: VkDescriptorPoolCreateBitmask a -> Constr
$ctoConstr :: forall (a :: FlagType).
Typeable a =>
VkDescriptorPoolCreateBitmask a -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorPoolCreateBitmask a)
$cgunfold :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorPoolCreateBitmask a)
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorPoolCreateBitmask a
-> c (VkDescriptorPoolCreateBitmask a)
$cgfoldl :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorPoolCreateBitmask a
-> c (VkDescriptorPoolCreateBitmask a)
$cp1Data :: forall (a :: FlagType).
Typeable a =>
Typeable (VkDescriptorPoolCreateBitmask a)
Data, (forall x.
 VkDescriptorPoolCreateBitmask a
 -> Rep (VkDescriptorPoolCreateBitmask a) x)
-> (forall x.
    Rep (VkDescriptorPoolCreateBitmask a) x
    -> VkDescriptorPoolCreateBitmask a)
-> Generic (VkDescriptorPoolCreateBitmask a)
forall x.
Rep (VkDescriptorPoolCreateBitmask a) x
-> VkDescriptorPoolCreateBitmask a
forall x.
VkDescriptorPoolCreateBitmask a
-> Rep (VkDescriptorPoolCreateBitmask a) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (a :: FlagType) x.
Rep (VkDescriptorPoolCreateBitmask a) x
-> VkDescriptorPoolCreateBitmask a
forall (a :: FlagType) x.
VkDescriptorPoolCreateBitmask a
-> Rep (VkDescriptorPoolCreateBitmask a) x
$cto :: forall (a :: FlagType) x.
Rep (VkDescriptorPoolCreateBitmask a) x
-> VkDescriptorPoolCreateBitmask a
$cfrom :: forall (a :: FlagType) x.
VkDescriptorPoolCreateBitmask a
-> Rep (VkDescriptorPoolCreateBitmask a) x
Generic)

type VkDescriptorPoolCreateFlags =
     VkDescriptorPoolCreateBitmask FlagMask

type VkDescriptorPoolCreateFlagBits =
     VkDescriptorPoolCreateBitmask FlagBit

pattern VkDescriptorPoolCreateFlagBits ::
        VkFlags -> VkDescriptorPoolCreateBitmask FlagBit

pattern $bVkDescriptorPoolCreateFlagBits :: VkFlags -> VkDescriptorPoolCreateBitmask FlagBit
$mVkDescriptorPoolCreateFlagBits :: forall r.
VkDescriptorPoolCreateBitmask FlagBit
-> (VkFlags -> r) -> (Void# -> r) -> r
VkDescriptorPoolCreateFlagBits n =
        VkDescriptorPoolCreateBitmask n

pattern VkDescriptorPoolCreateFlags ::
        VkFlags -> VkDescriptorPoolCreateBitmask FlagMask

pattern $bVkDescriptorPoolCreateFlags :: VkFlags -> VkDescriptorPoolCreateBitmask FlagMask
$mVkDescriptorPoolCreateFlags :: forall r.
VkDescriptorPoolCreateBitmask FlagMask
-> (VkFlags -> r) -> (Void# -> r) -> r
VkDescriptorPoolCreateFlags n =
        VkDescriptorPoolCreateBitmask n

deriving instance Bits (VkDescriptorPoolCreateBitmask FlagMask)

deriving instance
         FiniteBits (VkDescriptorPoolCreateBitmask FlagMask)

deriving instance Integral (VkDescriptorPoolCreateBitmask FlagMask)

deriving instance Num (VkDescriptorPoolCreateBitmask FlagMask)

deriving instance Bounded (VkDescriptorPoolCreateBitmask FlagMask)

deriving instance Enum (VkDescriptorPoolCreateBitmask FlagMask)

deriving instance Real (VkDescriptorPoolCreateBitmask FlagMask)

instance Show (VkDescriptorPoolCreateBitmask a) where
        showsPrec :: Int -> VkDescriptorPoolCreateBitmask a -> ShowS
showsPrec Int
_ VkDescriptorPoolCreateBitmask a
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT
          = String -> ShowS
showString String
"VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"
        showsPrec Int
p (VkDescriptorPoolCreateBitmask VkFlags
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkDescriptorPoolCreateBitmask " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> VkFlags -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 VkFlags
x)

instance Read (VkDescriptorPoolCreateBitmask a) where
        readPrec :: ReadPrec (VkDescriptorPoolCreateBitmask a)
readPrec
          = ReadPrec (VkDescriptorPoolCreateBitmask a)
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec (VkDescriptorPoolCreateBitmask a))]
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT",
                   VkDescriptorPoolCreateBitmask a
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorPoolCreateBitmask a
forall (a :: FlagType). VkDescriptorPoolCreateBitmask a
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT)]
                 ReadPrec (VkDescriptorPoolCreateBitmask a)
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkDescriptorPoolCreateBitmask") ReadPrec ()
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
-> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (VkFlags -> VkDescriptorPoolCreateBitmask a
forall (a :: FlagType). VkFlags -> VkDescriptorPoolCreateBitmask a
VkDescriptorPoolCreateBitmask (VkFlags -> VkDescriptorPoolCreateBitmask a)
-> ReadPrec VkFlags -> ReadPrec (VkDescriptorPoolCreateBitmask a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec VkFlags -> ReadPrec VkFlags
forall a. ReadPrec a -> ReadPrec a
step ReadPrec VkFlags
forall a. Read a => ReadPrec a
readPrec)))

-- | Descriptor sets may be freed individually
--
--   bitpos = @0@
pattern VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT ::
        VkDescriptorPoolCreateBitmask a

pattern $bVK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT :: VkDescriptorPoolCreateBitmask a
$mVK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT :: forall r (a :: FlagType).
VkDescriptorPoolCreateBitmask a
-> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT =
        VkDescriptorPoolCreateBitmask 1

newtype VkDescriptorSetLayoutCreateBitmask (a ::
                                              FlagType) = VkDescriptorSetLayoutCreateBitmask VkFlags
                                                            deriving (VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
(VkDescriptorSetLayoutCreateBitmask a
 -> VkDescriptorSetLayoutCreateBitmask a -> Bool)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a -> Bool)
-> Eq (VkDescriptorSetLayoutCreateBitmask a)
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
/= :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
$c/= :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
== :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
$c== :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
Eq, Eq (VkDescriptorSetLayoutCreateBitmask a)
Eq (VkDescriptorSetLayoutCreateBitmask a)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a -> Ordering)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a -> Bool)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a -> Bool)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a -> Bool)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a -> Bool)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a)
-> (VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a)
-> Ord (VkDescriptorSetLayoutCreateBitmask a)
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Ordering
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
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
forall (a :: FlagType). Eq (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Ordering
forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
min :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
$cmin :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
max :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
$cmax :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
>= :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
$c>= :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
> :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
$c> :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
<= :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
$c<= :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
< :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
$c< :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Bool
compare :: VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Ordering
$ccompare :: forall (a :: FlagType).
VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a -> Ordering
$cp1Ord :: forall (a :: FlagType). Eq (VkDescriptorSetLayoutCreateBitmask a)
Ord, Ptr b -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
Ptr b -> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> IO (VkDescriptorSetLayoutCreateBitmask a)
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> VkDescriptorSetLayoutCreateBitmask a -> IO ()
VkDescriptorSetLayoutCreateBitmask a -> Int
(VkDescriptorSetLayoutCreateBitmask a -> Int)
-> (VkDescriptorSetLayoutCreateBitmask a -> Int)
-> (Ptr (VkDescriptorSetLayoutCreateBitmask a)
    -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a))
-> (Ptr (VkDescriptorSetLayoutCreateBitmask a)
    -> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ())
-> (forall b.
    Ptr b -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a))
-> (forall b.
    Ptr b -> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ())
-> (Ptr (VkDescriptorSetLayoutCreateBitmask a)
    -> IO (VkDescriptorSetLayoutCreateBitmask a))
-> (Ptr (VkDescriptorSetLayoutCreateBitmask a)
    -> VkDescriptorSetLayoutCreateBitmask a -> IO ())
-> Storable (VkDescriptorSetLayoutCreateBitmask a)
forall b. Ptr b -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
forall b.
Ptr b -> Int -> VkDescriptorSetLayoutCreateBitmask a -> 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
forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> IO (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> VkDescriptorSetLayoutCreateBitmask a -> IO ()
forall (a :: FlagType). VkDescriptorSetLayoutCreateBitmask a -> Int
forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType) b.
Ptr b -> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
poke :: Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> VkDescriptorSetLayoutCreateBitmask a -> IO ()
$cpoke :: forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> VkDescriptorSetLayoutCreateBitmask a -> IO ()
peek :: Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> IO (VkDescriptorSetLayoutCreateBitmask a)
$cpeek :: forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> IO (VkDescriptorSetLayoutCreateBitmask a)
pokeByteOff :: Ptr b -> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
$cpokeByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
peekByteOff :: Ptr b -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
$cpeekByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
pokeElemOff :: Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
$cpokeElemOff :: forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> VkDescriptorSetLayoutCreateBitmask a -> IO ()
peekElemOff :: Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
$cpeekElemOff :: forall (a :: FlagType).
Ptr (VkDescriptorSetLayoutCreateBitmask a)
-> Int -> IO (VkDescriptorSetLayoutCreateBitmask a)
alignment :: VkDescriptorSetLayoutCreateBitmask a -> Int
$calignment :: forall (a :: FlagType). VkDescriptorSetLayoutCreateBitmask a -> Int
sizeOf :: VkDescriptorSetLayoutCreateBitmask a -> Int
$csizeOf :: forall (a :: FlagType). VkDescriptorSetLayoutCreateBitmask a -> Int
Storable, Typeable (VkDescriptorSetLayoutCreateBitmask a)
DataType
Constr
Typeable (VkDescriptorSetLayoutCreateBitmask a)
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkDescriptorSetLayoutCreateBitmask a
    -> c (VkDescriptorSetLayoutCreateBitmask a))
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c (VkDescriptorSetLayoutCreateBitmask a))
-> (VkDescriptorSetLayoutCreateBitmask a -> Constr)
-> (VkDescriptorSetLayoutCreateBitmask a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c (VkDescriptorSetLayoutCreateBitmask a)))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c (VkDescriptorSetLayoutCreateBitmask a)))
-> ((forall b. Data b => b -> b)
    -> VkDescriptorSetLayoutCreateBitmask a
    -> VkDescriptorSetLayoutCreateBitmask a)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorSetLayoutCreateBitmask a
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorSetLayoutCreateBitmask a
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> VkDescriptorSetLayoutCreateBitmask a -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> VkDescriptorSetLayoutCreateBitmask a
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorSetLayoutCreateBitmask a
    -> m (VkDescriptorSetLayoutCreateBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorSetLayoutCreateBitmask a
    -> m (VkDescriptorSetLayoutCreateBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorSetLayoutCreateBitmask a
    -> m (VkDescriptorSetLayoutCreateBitmask a))
-> Data (VkDescriptorSetLayoutCreateBitmask a)
VkDescriptorSetLayoutCreateBitmask a -> DataType
VkDescriptorSetLayoutCreateBitmask a -> Constr
(forall b. Data b => b -> b)
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorSetLayoutCreateBitmask a
-> c (VkDescriptorSetLayoutCreateBitmask a)
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorSetLayoutCreateBitmask a)
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a
-> u
forall u.
(forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
forall (a :: FlagType).
Typeable a =>
Typeable (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType).
Typeable a =>
VkDescriptorSetLayoutCreateBitmask a -> DataType
forall (a :: FlagType).
Typeable a =>
VkDescriptorSetLayoutCreateBitmask a -> Constr
forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
forall (a :: FlagType) u.
Typeable a =>
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a
-> u
forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a -> [u]
forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorSetLayoutCreateBitmask a
-> c (VkDescriptorSetLayoutCreateBitmask a)
forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorSetLayoutCreateBitmask a)
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorSetLayoutCreateBitmask a
-> c (VkDescriptorSetLayoutCreateBitmask a)
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
$cVkDescriptorSetLayoutCreateBitmask :: Constr
$tVkDescriptorSetLayoutCreateBitmask :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
$cgmapMo :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
gmapMp :: (forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
$cgmapMp :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
gmapM :: (forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
$cgmapM :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkDescriptorSetLayoutCreateBitmask a
-> m (VkDescriptorSetLayoutCreateBitmask a)
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a
-> u
$cgmapQi :: forall (a :: FlagType) u.
Typeable a =>
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a
-> u
gmapQ :: (forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a -> [u]
$cgmapQ :: forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u)
-> VkDescriptorSetLayoutCreateBitmask a -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
$cgmapQr :: forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
$cgmapQl :: forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorSetLayoutCreateBitmask a
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
$cgmapT :: forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkDescriptorSetLayoutCreateBitmask a
-> VkDescriptorSetLayoutCreateBitmask a
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
$cdataCast2 :: forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
$cdataCast1 :: forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkDescriptorSetLayoutCreateBitmask a))
dataTypeOf :: VkDescriptorSetLayoutCreateBitmask a -> DataType
$cdataTypeOf :: forall (a :: FlagType).
Typeable a =>
VkDescriptorSetLayoutCreateBitmask a -> DataType
toConstr :: VkDescriptorSetLayoutCreateBitmask a -> Constr
$ctoConstr :: forall (a :: FlagType).
Typeable a =>
VkDescriptorSetLayoutCreateBitmask a -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorSetLayoutCreateBitmask a)
$cgunfold :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c (VkDescriptorSetLayoutCreateBitmask a)
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorSetLayoutCreateBitmask a
-> c (VkDescriptorSetLayoutCreateBitmask a)
$cgfoldl :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorSetLayoutCreateBitmask a
-> c (VkDescriptorSetLayoutCreateBitmask a)
$cp1Data :: forall (a :: FlagType).
Typeable a =>
Typeable (VkDescriptorSetLayoutCreateBitmask a)
Data,
                                                                      (forall x.
 VkDescriptorSetLayoutCreateBitmask a
 -> Rep (VkDescriptorSetLayoutCreateBitmask a) x)
-> (forall x.
    Rep (VkDescriptorSetLayoutCreateBitmask a) x
    -> VkDescriptorSetLayoutCreateBitmask a)
-> Generic (VkDescriptorSetLayoutCreateBitmask a)
forall x.
Rep (VkDescriptorSetLayoutCreateBitmask a) x
-> VkDescriptorSetLayoutCreateBitmask a
forall x.
VkDescriptorSetLayoutCreateBitmask a
-> Rep (VkDescriptorSetLayoutCreateBitmask a) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (a :: FlagType) x.
Rep (VkDescriptorSetLayoutCreateBitmask a) x
-> VkDescriptorSetLayoutCreateBitmask a
forall (a :: FlagType) x.
VkDescriptorSetLayoutCreateBitmask a
-> Rep (VkDescriptorSetLayoutCreateBitmask a) x
$cto :: forall (a :: FlagType) x.
Rep (VkDescriptorSetLayoutCreateBitmask a) x
-> VkDescriptorSetLayoutCreateBitmask a
$cfrom :: forall (a :: FlagType) x.
VkDescriptorSetLayoutCreateBitmask a
-> Rep (VkDescriptorSetLayoutCreateBitmask a) x
Generic)

type VkDescriptorSetLayoutCreateFlags =
     VkDescriptorSetLayoutCreateBitmask FlagMask

type VkDescriptorSetLayoutCreateFlagBits =
     VkDescriptorSetLayoutCreateBitmask FlagBit

pattern VkDescriptorSetLayoutCreateFlagBits ::
        VkFlags -> VkDescriptorSetLayoutCreateBitmask FlagBit

pattern $bVkDescriptorSetLayoutCreateFlagBits :: VkFlags -> VkDescriptorSetLayoutCreateBitmask FlagBit
$mVkDescriptorSetLayoutCreateFlagBits :: forall r.
VkDescriptorSetLayoutCreateBitmask FlagBit
-> (VkFlags -> r) -> (Void# -> r) -> r
VkDescriptorSetLayoutCreateFlagBits n =
        VkDescriptorSetLayoutCreateBitmask n

pattern VkDescriptorSetLayoutCreateFlags ::
        VkFlags -> VkDescriptorSetLayoutCreateBitmask FlagMask

pattern $bVkDescriptorSetLayoutCreateFlags :: VkFlags -> VkDescriptorSetLayoutCreateBitmask FlagMask
$mVkDescriptorSetLayoutCreateFlags :: forall r.
VkDescriptorSetLayoutCreateBitmask FlagMask
-> (VkFlags -> r) -> (Void# -> r) -> r
VkDescriptorSetLayoutCreateFlags n =
        VkDescriptorSetLayoutCreateBitmask n

deriving instance
         Bits (VkDescriptorSetLayoutCreateBitmask FlagMask)

deriving instance
         FiniteBits (VkDescriptorSetLayoutCreateBitmask FlagMask)

deriving instance
         Integral (VkDescriptorSetLayoutCreateBitmask FlagMask)

deriving instance Num (VkDescriptorSetLayoutCreateBitmask FlagMask)

deriving instance
         Bounded (VkDescriptorSetLayoutCreateBitmask FlagMask)

deriving instance
         Enum (VkDescriptorSetLayoutCreateBitmask FlagMask)

deriving instance
         Real (VkDescriptorSetLayoutCreateBitmask FlagMask)

instance Show (VkDescriptorSetLayoutCreateBitmask a) where
        showsPrec :: Int -> VkDescriptorSetLayoutCreateBitmask a -> ShowS
showsPrec Int
p (VkDescriptorSetLayoutCreateBitmask VkFlags
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkDescriptorSetLayoutCreateBitmask " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> VkFlags -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 VkFlags
x)

instance Read (VkDescriptorSetLayoutCreateBitmask a) where
        readPrec :: ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
readPrec
          = ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec (VkDescriptorSetLayoutCreateBitmask a))]
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose [] ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkDescriptorSetLayoutCreateBitmask") ReadPrec ()
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (VkFlags -> VkDescriptorSetLayoutCreateBitmask a
forall (a :: FlagType).
VkFlags -> VkDescriptorSetLayoutCreateBitmask a
VkDescriptorSetLayoutCreateBitmask (VkFlags -> VkDescriptorSetLayoutCreateBitmask a)
-> ReadPrec VkFlags
-> ReadPrec (VkDescriptorSetLayoutCreateBitmask a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec VkFlags -> ReadPrec VkFlags
forall a. ReadPrec a -> ReadPrec a
step ReadPrec VkFlags
forall a. Read a => ReadPrec a
readPrec)))

-- | type = @enum@
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkDescriptorType VkDescriptorType registry at www.khronos.org>
newtype VkDescriptorType = VkDescriptorType Int32
                             deriving (VkDescriptorType -> VkDescriptorType -> Bool
(VkDescriptorType -> VkDescriptorType -> Bool)
-> (VkDescriptorType -> VkDescriptorType -> Bool)
-> Eq VkDescriptorType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VkDescriptorType -> VkDescriptorType -> Bool
$c/= :: VkDescriptorType -> VkDescriptorType -> Bool
== :: VkDescriptorType -> VkDescriptorType -> Bool
$c== :: VkDescriptorType -> VkDescriptorType -> Bool
Eq, Eq VkDescriptorType
Eq VkDescriptorType
-> (VkDescriptorType -> VkDescriptorType -> Ordering)
-> (VkDescriptorType -> VkDescriptorType -> Bool)
-> (VkDescriptorType -> VkDescriptorType -> Bool)
-> (VkDescriptorType -> VkDescriptorType -> Bool)
-> (VkDescriptorType -> VkDescriptorType -> Bool)
-> (VkDescriptorType -> VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType -> VkDescriptorType)
-> Ord VkDescriptorType
VkDescriptorType -> VkDescriptorType -> Bool
VkDescriptorType -> VkDescriptorType -> Ordering
VkDescriptorType -> VkDescriptorType -> VkDescriptorType
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 :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
$cmin :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
max :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
$cmax :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
>= :: VkDescriptorType -> VkDescriptorType -> Bool
$c>= :: VkDescriptorType -> VkDescriptorType -> Bool
> :: VkDescriptorType -> VkDescriptorType -> Bool
$c> :: VkDescriptorType -> VkDescriptorType -> Bool
<= :: VkDescriptorType -> VkDescriptorType -> Bool
$c<= :: VkDescriptorType -> VkDescriptorType -> Bool
< :: VkDescriptorType -> VkDescriptorType -> Bool
$c< :: VkDescriptorType -> VkDescriptorType -> Bool
compare :: VkDescriptorType -> VkDescriptorType -> Ordering
$ccompare :: VkDescriptorType -> VkDescriptorType -> Ordering
$cp1Ord :: Eq VkDescriptorType
Ord, Integer -> VkDescriptorType
VkDescriptorType -> VkDescriptorType
VkDescriptorType -> VkDescriptorType -> VkDescriptorType
(VkDescriptorType -> VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType)
-> (Integer -> VkDescriptorType)
-> Num VkDescriptorType
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> VkDescriptorType
$cfromInteger :: Integer -> VkDescriptorType
signum :: VkDescriptorType -> VkDescriptorType
$csignum :: VkDescriptorType -> VkDescriptorType
abs :: VkDescriptorType -> VkDescriptorType
$cabs :: VkDescriptorType -> VkDescriptorType
negate :: VkDescriptorType -> VkDescriptorType
$cnegate :: VkDescriptorType -> VkDescriptorType
* :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
$c* :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
- :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
$c- :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
+ :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
$c+ :: VkDescriptorType -> VkDescriptorType -> VkDescriptorType
Num, VkDescriptorType
VkDescriptorType -> VkDescriptorType -> Bounded VkDescriptorType
forall a. a -> a -> Bounded a
maxBound :: VkDescriptorType
$cmaxBound :: VkDescriptorType
minBound :: VkDescriptorType
$cminBound :: VkDescriptorType
Bounded, Ptr b -> Int -> IO VkDescriptorType
Ptr b -> Int -> VkDescriptorType -> IO ()
Ptr VkDescriptorType -> IO VkDescriptorType
Ptr VkDescriptorType -> Int -> IO VkDescriptorType
Ptr VkDescriptorType -> Int -> VkDescriptorType -> IO ()
Ptr VkDescriptorType -> VkDescriptorType -> IO ()
VkDescriptorType -> Int
(VkDescriptorType -> Int)
-> (VkDescriptorType -> Int)
-> (Ptr VkDescriptorType -> Int -> IO VkDescriptorType)
-> (Ptr VkDescriptorType -> Int -> VkDescriptorType -> IO ())
-> (forall b. Ptr b -> Int -> IO VkDescriptorType)
-> (forall b. Ptr b -> Int -> VkDescriptorType -> IO ())
-> (Ptr VkDescriptorType -> IO VkDescriptorType)
-> (Ptr VkDescriptorType -> VkDescriptorType -> IO ())
-> Storable VkDescriptorType
forall b. Ptr b -> Int -> IO VkDescriptorType
forall b. Ptr b -> Int -> VkDescriptorType -> 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 VkDescriptorType -> VkDescriptorType -> IO ()
$cpoke :: Ptr VkDescriptorType -> VkDescriptorType -> IO ()
peek :: Ptr VkDescriptorType -> IO VkDescriptorType
$cpeek :: Ptr VkDescriptorType -> IO VkDescriptorType
pokeByteOff :: Ptr b -> Int -> VkDescriptorType -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> VkDescriptorType -> IO ()
peekByteOff :: Ptr b -> Int -> IO VkDescriptorType
$cpeekByteOff :: forall b. Ptr b -> Int -> IO VkDescriptorType
pokeElemOff :: Ptr VkDescriptorType -> Int -> VkDescriptorType -> IO ()
$cpokeElemOff :: Ptr VkDescriptorType -> Int -> VkDescriptorType -> IO ()
peekElemOff :: Ptr VkDescriptorType -> Int -> IO VkDescriptorType
$cpeekElemOff :: Ptr VkDescriptorType -> Int -> IO VkDescriptorType
alignment :: VkDescriptorType -> Int
$calignment :: VkDescriptorType -> Int
sizeOf :: VkDescriptorType -> Int
$csizeOf :: VkDescriptorType -> Int
Storable, Int -> VkDescriptorType
VkDescriptorType -> Int
VkDescriptorType -> [VkDescriptorType]
VkDescriptorType -> VkDescriptorType
VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
VkDescriptorType
-> VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
(VkDescriptorType -> VkDescriptorType)
-> (VkDescriptorType -> VkDescriptorType)
-> (Int -> VkDescriptorType)
-> (VkDescriptorType -> Int)
-> (VkDescriptorType -> [VkDescriptorType])
-> (VkDescriptorType -> VkDescriptorType -> [VkDescriptorType])
-> (VkDescriptorType -> VkDescriptorType -> [VkDescriptorType])
-> (VkDescriptorType
    -> VkDescriptorType -> VkDescriptorType -> [VkDescriptorType])
-> Enum VkDescriptorType
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: VkDescriptorType
-> VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
$cenumFromThenTo :: VkDescriptorType
-> VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
enumFromTo :: VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
$cenumFromTo :: VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
enumFromThen :: VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
$cenumFromThen :: VkDescriptorType -> VkDescriptorType -> [VkDescriptorType]
enumFrom :: VkDescriptorType -> [VkDescriptorType]
$cenumFrom :: VkDescriptorType -> [VkDescriptorType]
fromEnum :: VkDescriptorType -> Int
$cfromEnum :: VkDescriptorType -> Int
toEnum :: Int -> VkDescriptorType
$ctoEnum :: Int -> VkDescriptorType
pred :: VkDescriptorType -> VkDescriptorType
$cpred :: VkDescriptorType -> VkDescriptorType
succ :: VkDescriptorType -> VkDescriptorType
$csucc :: VkDescriptorType -> VkDescriptorType
Enum, Typeable VkDescriptorType
DataType
Constr
Typeable VkDescriptorType
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> VkDescriptorType -> c VkDescriptorType)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c VkDescriptorType)
-> (VkDescriptorType -> Constr)
-> (VkDescriptorType -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c VkDescriptorType))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c VkDescriptorType))
-> ((forall b. Data b => b -> b)
    -> VkDescriptorType -> VkDescriptorType)
-> (forall r r'.
    (r -> r' -> r)
    -> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r)
-> (forall u.
    (forall d. Data d => d -> u) -> VkDescriptorType -> [u])
-> (forall u.
    Int -> (forall d. Data d => d -> u) -> VkDescriptorType -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorType -> m VkDescriptorType)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorType -> m VkDescriptorType)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorType -> m VkDescriptorType)
-> Data VkDescriptorType
VkDescriptorType -> DataType
VkDescriptorType -> Constr
(forall b. Data b => b -> b)
-> VkDescriptorType -> VkDescriptorType
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> VkDescriptorType -> c VkDescriptorType
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkDescriptorType
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> VkDescriptorType -> u
forall u. (forall d. Data d => d -> u) -> VkDescriptorType -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkDescriptorType
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> VkDescriptorType -> c VkDescriptorType
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c VkDescriptorType)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorType)
$cVkDescriptorType :: Constr
$tVkDescriptorType :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
gmapMp :: (forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
gmapM :: (forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorType -> m VkDescriptorType
gmapQi :: Int -> (forall d. Data d => d -> u) -> VkDescriptorType -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> VkDescriptorType -> u
gmapQ :: (forall d. Data d => d -> u) -> VkDescriptorType -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> VkDescriptorType -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> VkDescriptorType -> r
gmapT :: (forall b. Data b => b -> b)
-> VkDescriptorType -> VkDescriptorType
$cgmapT :: (forall b. Data b => b -> b)
-> VkDescriptorType -> VkDescriptorType
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorType)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorType)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c VkDescriptorType)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c VkDescriptorType)
dataTypeOf :: VkDescriptorType -> DataType
$cdataTypeOf :: VkDescriptorType -> DataType
toConstr :: VkDescriptorType -> Constr
$ctoConstr :: VkDescriptorType -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkDescriptorType
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkDescriptorType
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> VkDescriptorType -> c VkDescriptorType
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> VkDescriptorType -> c VkDescriptorType
$cp1Data :: Typeable VkDescriptorType
Data, (forall x. VkDescriptorType -> Rep VkDescriptorType x)
-> (forall x. Rep VkDescriptorType x -> VkDescriptorType)
-> Generic VkDescriptorType
forall x. Rep VkDescriptorType x -> VkDescriptorType
forall x. VkDescriptorType -> Rep VkDescriptorType x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep VkDescriptorType x -> VkDescriptorType
$cfrom :: forall x. VkDescriptorType -> Rep VkDescriptorType x
Generic)

instance Show VkDescriptorType where
        showsPrec :: Int -> VkDescriptorType -> ShowS
showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_SAMPLER
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_SAMPLER"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_IMAGE
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_STORAGE_IMAGE"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_STORAGE_BUFFER"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC"
        showsPrec Int
_ VkDescriptorType
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT
          = String -> ShowS
showString String
"VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT"
        showsPrec Int
p (VkDescriptorType Int32
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkDescriptorType " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 Int32
x)

instance Read VkDescriptorType where
        readPrec :: ReadPrec VkDescriptorType
readPrec
          = ReadPrec VkDescriptorType -> ReadPrec VkDescriptorType
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec VkDescriptorType)] -> ReadPrec VkDescriptorType
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_DESCRIPTOR_TYPE_SAMPLER", VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_SAMPLER),
                  (String
"VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER),
                  (String
"VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE),
                  (String
"VK_DESCRIPTOR_TYPE_STORAGE_IMAGE",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_IMAGE),
                  (String
"VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER),
                  (String
"VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER),
                  (String
"VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER),
                  (String
"VK_DESCRIPTOR_TYPE_STORAGE_BUFFER",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER),
                  (String
"VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC),
                  (String
"VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC),
                  (String
"VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT",
                   VkDescriptorType -> ReadPrec VkDescriptorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorType
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT)]
                 ReadPrec VkDescriptorType
-> ReadPrec VkDescriptorType -> ReadPrec VkDescriptorType
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int -> ReadPrec VkDescriptorType -> ReadPrec VkDescriptorType
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkDescriptorType") ReadPrec ()
-> ReadPrec VkDescriptorType -> ReadPrec VkDescriptorType
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (Int32 -> VkDescriptorType
VkDescriptorType (Int32 -> VkDescriptorType)
-> ReadPrec Int32 -> ReadPrec VkDescriptorType
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec Int32 -> ReadPrec Int32
forall a. ReadPrec a -> ReadPrec a
step ReadPrec Int32
forall a. Read a => ReadPrec a
readPrec)))

pattern VK_DESCRIPTOR_TYPE_SAMPLER :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_SAMPLER :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_SAMPLER :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_SAMPLER = VkDescriptorType 0

pattern VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER ::
        VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER =
        VkDescriptorType 1

pattern VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_SAMPLED_IMAGE :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_SAMPLED_IMAGE :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = VkDescriptorType 2

pattern VK_DESCRIPTOR_TYPE_STORAGE_IMAGE :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_STORAGE_IMAGE :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_STORAGE_IMAGE :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = VkDescriptorType 3

pattern VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER =
        VkDescriptorType 4

pattern VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER =
        VkDescriptorType 5

pattern VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = VkDescriptorType 6

pattern VK_DESCRIPTOR_TYPE_STORAGE_BUFFER :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_STORAGE_BUFFER :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_STORAGE_BUFFER :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = VkDescriptorType 7

pattern VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC ::
        VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC =
        VkDescriptorType 8

pattern VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC ::
        VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC =
        VkDescriptorType 9

pattern VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT :: VkDescriptorType

pattern $bVK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT :: VkDescriptorType
$mVK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT :: forall r. VkDescriptorType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = VkDescriptorType 10

-- | type = @enum@
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkDescriptorUpdateTemplateType VkDescriptorUpdateTemplateType registry at www.khronos.org>
newtype VkDescriptorUpdateTemplateType = VkDescriptorUpdateTemplateType Int32
                                           deriving (VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
(VkDescriptorUpdateTemplateType
 -> VkDescriptorUpdateTemplateType -> Bool)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> Bool)
-> Eq VkDescriptorUpdateTemplateType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
$c/= :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
== :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
$c== :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
Eq, Eq VkDescriptorUpdateTemplateType
Eq VkDescriptorUpdateTemplateType
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> Ordering)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> Bool)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> Bool)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> Bool)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> Bool)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> Ord VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Ordering
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
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 :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$cmin :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
max :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$cmax :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
>= :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
$c>= :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
> :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
$c> :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
<= :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
$c<= :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
< :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
$c< :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Bool
compare :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Ordering
$ccompare :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> Ordering
$cp1Ord :: Eq VkDescriptorUpdateTemplateType
Ord, Integer -> VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
(VkDescriptorUpdateTemplateType
 -> VkDescriptorUpdateTemplateType
 -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (Integer -> VkDescriptorUpdateTemplateType)
-> Num VkDescriptorUpdateTemplateType
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> VkDescriptorUpdateTemplateType
$cfromInteger :: Integer -> VkDescriptorUpdateTemplateType
signum :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$csignum :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
abs :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$cabs :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
negate :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$cnegate :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
* :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$c* :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
- :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$c- :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
+ :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$c+ :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
Num, VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> Bounded VkDescriptorUpdateTemplateType
forall a. a -> a -> Bounded a
maxBound :: VkDescriptorUpdateTemplateType
$cmaxBound :: VkDescriptorUpdateTemplateType
minBound :: VkDescriptorUpdateTemplateType
$cminBound :: VkDescriptorUpdateTemplateType
Bounded, Ptr b -> Int -> IO VkDescriptorUpdateTemplateType
Ptr b -> Int -> VkDescriptorUpdateTemplateType -> IO ()
Ptr VkDescriptorUpdateTemplateType
-> IO VkDescriptorUpdateTemplateType
Ptr VkDescriptorUpdateTemplateType
-> Int -> IO VkDescriptorUpdateTemplateType
Ptr VkDescriptorUpdateTemplateType
-> Int -> VkDescriptorUpdateTemplateType -> IO ()
Ptr VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> IO ()
VkDescriptorUpdateTemplateType -> Int
(VkDescriptorUpdateTemplateType -> Int)
-> (VkDescriptorUpdateTemplateType -> Int)
-> (Ptr VkDescriptorUpdateTemplateType
    -> Int -> IO VkDescriptorUpdateTemplateType)
-> (Ptr VkDescriptorUpdateTemplateType
    -> Int -> VkDescriptorUpdateTemplateType -> IO ())
-> (forall b. Ptr b -> Int -> IO VkDescriptorUpdateTemplateType)
-> (forall b.
    Ptr b -> Int -> VkDescriptorUpdateTemplateType -> IO ())
-> (Ptr VkDescriptorUpdateTemplateType
    -> IO VkDescriptorUpdateTemplateType)
-> (Ptr VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType -> IO ())
-> Storable VkDescriptorUpdateTemplateType
forall b. Ptr b -> Int -> IO VkDescriptorUpdateTemplateType
forall b. Ptr b -> Int -> VkDescriptorUpdateTemplateType -> 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 VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> IO ()
$cpoke :: Ptr VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType -> IO ()
peek :: Ptr VkDescriptorUpdateTemplateType
-> IO VkDescriptorUpdateTemplateType
$cpeek :: Ptr VkDescriptorUpdateTemplateType
-> IO VkDescriptorUpdateTemplateType
pokeByteOff :: Ptr b -> Int -> VkDescriptorUpdateTemplateType -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> VkDescriptorUpdateTemplateType -> IO ()
peekByteOff :: Ptr b -> Int -> IO VkDescriptorUpdateTemplateType
$cpeekByteOff :: forall b. Ptr b -> Int -> IO VkDescriptorUpdateTemplateType
pokeElemOff :: Ptr VkDescriptorUpdateTemplateType
-> Int -> VkDescriptorUpdateTemplateType -> IO ()
$cpokeElemOff :: Ptr VkDescriptorUpdateTemplateType
-> Int -> VkDescriptorUpdateTemplateType -> IO ()
peekElemOff :: Ptr VkDescriptorUpdateTemplateType
-> Int -> IO VkDescriptorUpdateTemplateType
$cpeekElemOff :: Ptr VkDescriptorUpdateTemplateType
-> Int -> IO VkDescriptorUpdateTemplateType
alignment :: VkDescriptorUpdateTemplateType -> Int
$calignment :: VkDescriptorUpdateTemplateType -> Int
sizeOf :: VkDescriptorUpdateTemplateType -> Int
$csizeOf :: VkDescriptorUpdateTemplateType -> Int
Storable, Int -> VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType -> Int
VkDescriptorUpdateTemplateType -> [VkDescriptorUpdateTemplateType]
VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
(VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (Int -> VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType -> Int)
-> (VkDescriptorUpdateTemplateType
    -> [VkDescriptorUpdateTemplateType])
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> [VkDescriptorUpdateTemplateType])
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> [VkDescriptorUpdateTemplateType])
-> (VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType
    -> [VkDescriptorUpdateTemplateType])
-> Enum VkDescriptorUpdateTemplateType
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
$cenumFromThenTo :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
enumFromTo :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
$cenumFromTo :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
enumFromThen :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
$cenumFromThen :: VkDescriptorUpdateTemplateType
-> VkDescriptorUpdateTemplateType
-> [VkDescriptorUpdateTemplateType]
enumFrom :: VkDescriptorUpdateTemplateType -> [VkDescriptorUpdateTemplateType]
$cenumFrom :: VkDescriptorUpdateTemplateType -> [VkDescriptorUpdateTemplateType]
fromEnum :: VkDescriptorUpdateTemplateType -> Int
$cfromEnum :: VkDescriptorUpdateTemplateType -> Int
toEnum :: Int -> VkDescriptorUpdateTemplateType
$ctoEnum :: Int -> VkDescriptorUpdateTemplateType
pred :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$cpred :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
succ :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$csucc :: VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
Enum, Typeable VkDescriptorUpdateTemplateType
DataType
Constr
Typeable VkDescriptorUpdateTemplateType
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkDescriptorUpdateTemplateType
    -> c VkDescriptorUpdateTemplateType)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c VkDescriptorUpdateTemplateType)
-> (VkDescriptorUpdateTemplateType -> Constr)
-> (VkDescriptorUpdateTemplateType -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c VkDescriptorUpdateTemplateType))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c VkDescriptorUpdateTemplateType))
-> ((forall b. Data b => b -> b)
    -> VkDescriptorUpdateTemplateType
    -> VkDescriptorUpdateTemplateType)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorUpdateTemplateType
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorUpdateTemplateType
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> VkDescriptorUpdateTemplateType -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> VkDescriptorUpdateTemplateType
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorUpdateTemplateType
    -> m VkDescriptorUpdateTemplateType)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorUpdateTemplateType
    -> m VkDescriptorUpdateTemplateType)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorUpdateTemplateType
    -> m VkDescriptorUpdateTemplateType)
-> Data VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType -> DataType
VkDescriptorUpdateTemplateType -> Constr
(forall b. Data b => b -> b)
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateType
-> c VkDescriptorUpdateTemplateType
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateType
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateType
-> u
forall u.
(forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateType -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateType
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateType
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateType
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateType
-> c VkDescriptorUpdateTemplateType
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkDescriptorUpdateTemplateType)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorUpdateTemplateType)
$cVkDescriptorUpdateTemplateType :: Constr
$tVkDescriptorUpdateTemplateType :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
gmapMp :: (forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
gmapM :: (forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateType
-> m VkDescriptorUpdateTemplateType
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateType
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateType
-> u
gmapQ :: (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateType -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateType -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateType
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateType
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateType
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateType
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
$cgmapT :: (forall b. Data b => b -> b)
-> VkDescriptorUpdateTemplateType -> VkDescriptorUpdateTemplateType
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorUpdateTemplateType)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorUpdateTemplateType)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c VkDescriptorUpdateTemplateType)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkDescriptorUpdateTemplateType)
dataTypeOf :: VkDescriptorUpdateTemplateType -> DataType
$cdataTypeOf :: VkDescriptorUpdateTemplateType -> DataType
toConstr :: VkDescriptorUpdateTemplateType -> Constr
$ctoConstr :: VkDescriptorUpdateTemplateType -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateType
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateType
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateType
-> c VkDescriptorUpdateTemplateType
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateType
-> c VkDescriptorUpdateTemplateType
$cp1Data :: Typeable VkDescriptorUpdateTemplateType
Data,
                                                     (forall x.
 VkDescriptorUpdateTemplateType
 -> Rep VkDescriptorUpdateTemplateType x)
-> (forall x.
    Rep VkDescriptorUpdateTemplateType x
    -> VkDescriptorUpdateTemplateType)
-> Generic VkDescriptorUpdateTemplateType
forall x.
Rep VkDescriptorUpdateTemplateType x
-> VkDescriptorUpdateTemplateType
forall x.
VkDescriptorUpdateTemplateType
-> Rep VkDescriptorUpdateTemplateType x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep VkDescriptorUpdateTemplateType x
-> VkDescriptorUpdateTemplateType
$cfrom :: forall x.
VkDescriptorUpdateTemplateType
-> Rep VkDescriptorUpdateTemplateType x
Generic)

instance Show VkDescriptorUpdateTemplateType where
        showsPrec :: Int -> VkDescriptorUpdateTemplateType -> ShowS
showsPrec Int
_ VkDescriptorUpdateTemplateType
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET
          = String -> ShowS
showString String
"VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET"
        showsPrec Int
p (VkDescriptorUpdateTemplateType Int32
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkDescriptorUpdateTemplateType " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 Int32
x)

instance Read VkDescriptorUpdateTemplateType where
        readPrec :: ReadPrec VkDescriptorUpdateTemplateType
readPrec
          = ReadPrec VkDescriptorUpdateTemplateType
-> ReadPrec VkDescriptorUpdateTemplateType
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec VkDescriptorUpdateTemplateType)]
-> ReadPrec VkDescriptorUpdateTemplateType
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET",
                   VkDescriptorUpdateTemplateType
-> ReadPrec VkDescriptorUpdateTemplateType
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkDescriptorUpdateTemplateType
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET)]
                 ReadPrec VkDescriptorUpdateTemplateType
-> ReadPrec VkDescriptorUpdateTemplateType
-> ReadPrec VkDescriptorUpdateTemplateType
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec VkDescriptorUpdateTemplateType
-> ReadPrec VkDescriptorUpdateTemplateType
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkDescriptorUpdateTemplateType") ReadPrec ()
-> ReadPrec VkDescriptorUpdateTemplateType
-> ReadPrec VkDescriptorUpdateTemplateType
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (Int32 -> VkDescriptorUpdateTemplateType
VkDescriptorUpdateTemplateType (Int32 -> VkDescriptorUpdateTemplateType)
-> ReadPrec Int32 -> ReadPrec VkDescriptorUpdateTemplateType
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec Int32 -> ReadPrec Int32
forall a. ReadPrec a -> ReadPrec a
step ReadPrec Int32
forall a. Read a => ReadPrec a
readPrec)))

-- | Create descriptor update template for descriptor set updates
pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET ::
        VkDescriptorUpdateTemplateType

pattern $bVK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET :: VkDescriptorUpdateTemplateType
$mVK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET :: forall r.
VkDescriptorUpdateTemplateType -> (Void# -> r) -> (Void# -> r) -> r
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET =
        VkDescriptorUpdateTemplateType 0

newtype VkDescriptorUpdateTemplateTypeKHR = VkDescriptorUpdateTemplateTypeKHR VkFlags
                                              deriving (VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
(VkDescriptorUpdateTemplateTypeKHR
 -> VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> Eq VkDescriptorUpdateTemplateTypeKHR
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
$c/= :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
== :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
$c== :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
Eq, Eq VkDescriptorUpdateTemplateTypeKHR
Eq VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> Ordering)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> Ord VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Ordering
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
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 :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cmin :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
max :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cmax :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
>= :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
$c>= :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
> :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
$c> :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
<= :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
$c<= :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
< :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
$c< :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Bool
compare :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Ordering
$ccompare :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> Ordering
$cp1Ord :: Eq VkDescriptorUpdateTemplateTypeKHR
Ord, Integer -> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
(VkDescriptorUpdateTemplateTypeKHR
 -> VkDescriptorUpdateTemplateTypeKHR
 -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (Integer -> VkDescriptorUpdateTemplateTypeKHR)
-> Num VkDescriptorUpdateTemplateTypeKHR
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> VkDescriptorUpdateTemplateTypeKHR
$cfromInteger :: Integer -> VkDescriptorUpdateTemplateTypeKHR
signum :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$csignum :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
abs :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cabs :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
negate :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cnegate :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
* :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$c* :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
- :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$c- :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
+ :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$c+ :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
Num, VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> Bounded VkDescriptorUpdateTemplateTypeKHR
forall a. a -> a -> Bounded a
maxBound :: VkDescriptorUpdateTemplateTypeKHR
$cmaxBound :: VkDescriptorUpdateTemplateTypeKHR
minBound :: VkDescriptorUpdateTemplateTypeKHR
$cminBound :: VkDescriptorUpdateTemplateTypeKHR
Bounded, Int -> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> Int
VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
(VkDescriptorUpdateTemplateTypeKHR
 -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> [VkDescriptorUpdateTemplateTypeKHR])
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> [VkDescriptorUpdateTemplateTypeKHR])
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> [VkDescriptorUpdateTemplateTypeKHR])
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> [VkDescriptorUpdateTemplateTypeKHR])
-> Enum VkDescriptorUpdateTemplateTypeKHR
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
$cenumFromThenTo :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
enumFromTo :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
$cenumFromTo :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
enumFromThen :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
$cenumFromThen :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
enumFrom :: VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
$cenumFrom :: VkDescriptorUpdateTemplateTypeKHR
-> [VkDescriptorUpdateTemplateTypeKHR]
fromEnum :: VkDescriptorUpdateTemplateTypeKHR -> Int
$cfromEnum :: VkDescriptorUpdateTemplateTypeKHR -> Int
toEnum :: Int -> VkDescriptorUpdateTemplateTypeKHR
$ctoEnum :: Int -> VkDescriptorUpdateTemplateTypeKHR
pred :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cpred :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
succ :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$csucc :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
Enum, Enum VkDescriptorUpdateTemplateTypeKHR
Real VkDescriptorUpdateTemplateTypeKHR
Real VkDescriptorUpdateTemplateTypeKHR
-> Enum VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> (VkDescriptorUpdateTemplateTypeKHR,
        VkDescriptorUpdateTemplateTypeKHR))
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> (VkDescriptorUpdateTemplateTypeKHR,
        VkDescriptorUpdateTemplateTypeKHR))
-> (VkDescriptorUpdateTemplateTypeKHR -> Integer)
-> Integral VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> Integer
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR,
    VkDescriptorUpdateTemplateTypeKHR)
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
forall a.
Real a
-> Enum a
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> (a, a))
-> (a -> a -> (a, a))
-> (a -> Integer)
-> Integral a
toInteger :: VkDescriptorUpdateTemplateTypeKHR -> Integer
$ctoInteger :: VkDescriptorUpdateTemplateTypeKHR -> Integer
divMod :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR,
    VkDescriptorUpdateTemplateTypeKHR)
$cdivMod :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR,
    VkDescriptorUpdateTemplateTypeKHR)
quotRem :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR,
    VkDescriptorUpdateTemplateTypeKHR)
$cquotRem :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR,
    VkDescriptorUpdateTemplateTypeKHR)
mod :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cmod :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
div :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cdiv :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
rem :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$crem :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
quot :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cquot :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cp2Integral :: Enum VkDescriptorUpdateTemplateTypeKHR
$cp1Integral :: Real VkDescriptorUpdateTemplateTypeKHR
Integral, Eq VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
Eq VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> VkDescriptorUpdateTemplateTypeKHR
-> (Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR -> Maybe Int)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> (VkDescriptorUpdateTemplateTypeKHR -> Bool)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> Bits VkDescriptorUpdateTemplateTypeKHR
Int -> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> Bool
VkDescriptorUpdateTemplateTypeKHR -> Int
VkDescriptorUpdateTemplateTypeKHR -> Maybe Int
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> Int -> Bool
VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
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
popCount :: VkDescriptorUpdateTemplateTypeKHR -> Int
$cpopCount :: VkDescriptorUpdateTemplateTypeKHR -> Int
rotateR :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$crotateR :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
rotateL :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$crotateL :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
unsafeShiftR :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$cunsafeShiftR :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
shiftR :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$cshiftR :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
unsafeShiftL :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$cunsafeShiftL :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
shiftL :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$cshiftL :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
isSigned :: VkDescriptorUpdateTemplateTypeKHR -> Bool
$cisSigned :: VkDescriptorUpdateTemplateTypeKHR -> Bool
bitSize :: VkDescriptorUpdateTemplateTypeKHR -> Int
$cbitSize :: VkDescriptorUpdateTemplateTypeKHR -> Int
bitSizeMaybe :: VkDescriptorUpdateTemplateTypeKHR -> Maybe Int
$cbitSizeMaybe :: VkDescriptorUpdateTemplateTypeKHR -> Maybe Int
testBit :: VkDescriptorUpdateTemplateTypeKHR -> Int -> Bool
$ctestBit :: VkDescriptorUpdateTemplateTypeKHR -> Int -> Bool
complementBit :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$ccomplementBit :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
clearBit :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$cclearBit :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
setBit :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$csetBit :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
bit :: Int -> VkDescriptorUpdateTemplateTypeKHR
$cbit :: Int -> VkDescriptorUpdateTemplateTypeKHR
zeroBits :: VkDescriptorUpdateTemplateTypeKHR
$czeroBits :: VkDescriptorUpdateTemplateTypeKHR
rotate :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$crotate :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
shift :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
$cshift :: VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR
complement :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$ccomplement :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
xor :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cxor :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
.|. :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$c.|. :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
.&. :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$c.&. :: VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cp1Bits :: Eq VkDescriptorUpdateTemplateTypeKHR
Bits,
                                                        Bits VkDescriptorUpdateTemplateTypeKHR
Bits VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> FiniteBits VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: VkDescriptorUpdateTemplateTypeKHR -> Int
$ccountTrailingZeros :: VkDescriptorUpdateTemplateTypeKHR -> Int
countLeadingZeros :: VkDescriptorUpdateTemplateTypeKHR -> Int
$ccountLeadingZeros :: VkDescriptorUpdateTemplateTypeKHR -> Int
finiteBitSize :: VkDescriptorUpdateTemplateTypeKHR -> Int
$cfiniteBitSize :: VkDescriptorUpdateTemplateTypeKHR -> Int
$cp1FiniteBits :: Bits VkDescriptorUpdateTemplateTypeKHR
FiniteBits, Ptr b -> Int -> IO VkDescriptorUpdateTemplateTypeKHR
Ptr b -> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ()
Ptr VkDescriptorUpdateTemplateTypeKHR
-> IO VkDescriptorUpdateTemplateTypeKHR
Ptr VkDescriptorUpdateTemplateTypeKHR
-> Int -> IO VkDescriptorUpdateTemplateTypeKHR
Ptr VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ()
Ptr VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> IO ()
VkDescriptorUpdateTemplateTypeKHR -> Int
(VkDescriptorUpdateTemplateTypeKHR -> Int)
-> (VkDescriptorUpdateTemplateTypeKHR -> Int)
-> (Ptr VkDescriptorUpdateTemplateTypeKHR
    -> Int -> IO VkDescriptorUpdateTemplateTypeKHR)
-> (Ptr VkDescriptorUpdateTemplateTypeKHR
    -> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ())
-> (forall b. Ptr b -> Int -> IO VkDescriptorUpdateTemplateTypeKHR)
-> (forall b.
    Ptr b -> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ())
-> (Ptr VkDescriptorUpdateTemplateTypeKHR
    -> IO VkDescriptorUpdateTemplateTypeKHR)
-> (Ptr VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR -> IO ())
-> Storable VkDescriptorUpdateTemplateTypeKHR
forall b. Ptr b -> Int -> IO VkDescriptorUpdateTemplateTypeKHR
forall b.
Ptr b -> Int -> VkDescriptorUpdateTemplateTypeKHR -> 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 VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> IO ()
$cpoke :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR -> IO ()
peek :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> IO VkDescriptorUpdateTemplateTypeKHR
$cpeek :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> IO VkDescriptorUpdateTemplateTypeKHR
pokeByteOff :: Ptr b -> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ()
$cpokeByteOff :: forall b.
Ptr b -> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ()
peekByteOff :: Ptr b -> Int -> IO VkDescriptorUpdateTemplateTypeKHR
$cpeekByteOff :: forall b. Ptr b -> Int -> IO VkDescriptorUpdateTemplateTypeKHR
pokeElemOff :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ()
$cpokeElemOff :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> Int -> VkDescriptorUpdateTemplateTypeKHR -> IO ()
peekElemOff :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> Int -> IO VkDescriptorUpdateTemplateTypeKHR
$cpeekElemOff :: Ptr VkDescriptorUpdateTemplateTypeKHR
-> Int -> IO VkDescriptorUpdateTemplateTypeKHR
alignment :: VkDescriptorUpdateTemplateTypeKHR -> Int
$calignment :: VkDescriptorUpdateTemplateTypeKHR -> Int
sizeOf :: VkDescriptorUpdateTemplateTypeKHR -> Int
$csizeOf :: VkDescriptorUpdateTemplateTypeKHR -> Int
Storable, Num VkDescriptorUpdateTemplateTypeKHR
Ord VkDescriptorUpdateTemplateTypeKHR
Num VkDescriptorUpdateTemplateTypeKHR
-> Ord VkDescriptorUpdateTemplateTypeKHR
-> (VkDescriptorUpdateTemplateTypeKHR -> Rational)
-> Real VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> Rational
forall a. Num a -> Ord a -> (a -> Rational) -> Real a
toRational :: VkDescriptorUpdateTemplateTypeKHR -> Rational
$ctoRational :: VkDescriptorUpdateTemplateTypeKHR -> Rational
$cp2Real :: Ord VkDescriptorUpdateTemplateTypeKHR
$cp1Real :: Num VkDescriptorUpdateTemplateTypeKHR
Real, Typeable VkDescriptorUpdateTemplateTypeKHR
DataType
Constr
Typeable VkDescriptorUpdateTemplateTypeKHR
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkDescriptorUpdateTemplateTypeKHR
    -> c VkDescriptorUpdateTemplateTypeKHR)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c VkDescriptorUpdateTemplateTypeKHR)
-> (VkDescriptorUpdateTemplateTypeKHR -> Constr)
-> (VkDescriptorUpdateTemplateTypeKHR -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c VkDescriptorUpdateTemplateTypeKHR))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c VkDescriptorUpdateTemplateTypeKHR))
-> ((forall b. Data b => b -> b)
    -> VkDescriptorUpdateTemplateTypeKHR
    -> VkDescriptorUpdateTemplateTypeKHR)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorUpdateTemplateTypeKHR
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkDescriptorUpdateTemplateTypeKHR
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> VkDescriptorUpdateTemplateTypeKHR -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> VkDescriptorUpdateTemplateTypeKHR
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorUpdateTemplateTypeKHR
    -> m VkDescriptorUpdateTemplateTypeKHR)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorUpdateTemplateTypeKHR
    -> m VkDescriptorUpdateTemplateTypeKHR)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkDescriptorUpdateTemplateTypeKHR
    -> m VkDescriptorUpdateTemplateTypeKHR)
-> Data VkDescriptorUpdateTemplateTypeKHR
VkDescriptorUpdateTemplateTypeKHR -> DataType
VkDescriptorUpdateTemplateTypeKHR -> Constr
(forall b. Data b => b -> b)
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateTypeKHR
-> c VkDescriptorUpdateTemplateTypeKHR
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateTypeKHR
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateTypeKHR
-> u
forall u.
(forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateTypeKHR -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateTypeKHR
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateTypeKHR
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateTypeKHR
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateTypeKHR
-> c VkDescriptorUpdateTemplateTypeKHR
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkDescriptorUpdateTemplateTypeKHR)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorUpdateTemplateTypeKHR)
$cVkDescriptorUpdateTemplateTypeKHR :: Constr
$tVkDescriptorUpdateTemplateTypeKHR :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
gmapMp :: (forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
gmapM :: (forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkDescriptorUpdateTemplateTypeKHR
-> m VkDescriptorUpdateTemplateTypeKHR
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateTypeKHR
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateTypeKHR
-> u
gmapQ :: (forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateTypeKHR -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> VkDescriptorUpdateTemplateTypeKHR -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateTypeKHR
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateTypeKHR
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateTypeKHR
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkDescriptorUpdateTemplateTypeKHR
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
$cgmapT :: (forall b. Data b => b -> b)
-> VkDescriptorUpdateTemplateTypeKHR
-> VkDescriptorUpdateTemplateTypeKHR
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorUpdateTemplateTypeKHR)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkDescriptorUpdateTemplateTypeKHR)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c VkDescriptorUpdateTemplateTypeKHR)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkDescriptorUpdateTemplateTypeKHR)
dataTypeOf :: VkDescriptorUpdateTemplateTypeKHR -> DataType
$cdataTypeOf :: VkDescriptorUpdateTemplateTypeKHR -> DataType
toConstr :: VkDescriptorUpdateTemplateTypeKHR -> Constr
$ctoConstr :: VkDescriptorUpdateTemplateTypeKHR -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateTypeKHR
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkDescriptorUpdateTemplateTypeKHR
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateTypeKHR
-> c VkDescriptorUpdateTemplateTypeKHR
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkDescriptorUpdateTemplateTypeKHR
-> c VkDescriptorUpdateTemplateTypeKHR
$cp1Data :: Typeable VkDescriptorUpdateTemplateTypeKHR
Data, (forall x.
 VkDescriptorUpdateTemplateTypeKHR
 -> Rep VkDescriptorUpdateTemplateTypeKHR x)
-> (forall x.
    Rep VkDescriptorUpdateTemplateTypeKHR x
    -> VkDescriptorUpdateTemplateTypeKHR)
-> Generic VkDescriptorUpdateTemplateTypeKHR
forall x.
Rep VkDescriptorUpdateTemplateTypeKHR x
-> VkDescriptorUpdateTemplateTypeKHR
forall x.
VkDescriptorUpdateTemplateTypeKHR
-> Rep VkDescriptorUpdateTemplateTypeKHR x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep VkDescriptorUpdateTemplateTypeKHR x
-> VkDescriptorUpdateTemplateTypeKHR
$cfrom :: forall x.
VkDescriptorUpdateTemplateTypeKHR
-> Rep VkDescriptorUpdateTemplateTypeKHR x
Generic)

instance Show VkDescriptorUpdateTemplateTypeKHR where
        {-# INLINE show #-}
        show :: VkDescriptorUpdateTemplateTypeKHR -> String
show (VkDescriptorUpdateTemplateTypeKHR VkFlags
x) = VkFlags -> String
forall a. Show a => a -> String
show VkFlags
x

instance Read VkDescriptorUpdateTemplateTypeKHR where
        {-# INLINE readsPrec #-}
        readsPrec :: Int -> ReadS VkDescriptorUpdateTemplateTypeKHR
readsPrec = (Int -> ReadS VkFlags)
-> Int -> ReadS VkDescriptorUpdateTemplateTypeKHR
coerce (Int -> ReadS VkFlags
forall a. Read a => Int -> ReadS a
readsPrec :: Int -> ReadS VkFlags)