{-# language CPP #-}
-- No documentation found for Chapter "PipelineVertexInputStateCreateFlags"
module Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags  (PipelineVertexInputStateCreateFlags(..)) where

import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showString)
import Numeric (showHex)
import Vulkan.Zero (Zero)
import Foreign.Storable (Storable)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Vulkan.Core10.FundamentalTypes (Flags)
-- | VkPipelineVertexInputStateCreateFlags - Reserved for future use
--
-- = Description
--
-- 'PipelineVertexInputStateCreateFlags' is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- = See Also
--
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_VERSION_1_0 VK_VERSION_1_0>,
-- 'Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo'
newtype PipelineVertexInputStateCreateFlags = PipelineVertexInputStateCreateFlags Flags
  deriving newtype (PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
(PipelineVertexInputStateCreateFlags
 -> PipelineVertexInputStateCreateFlags -> Bool)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags -> Bool)
-> Eq PipelineVertexInputStateCreateFlags
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
== :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$c/= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
/= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
Eq, Eq PipelineVertexInputStateCreateFlags
Eq PipelineVertexInputStateCreateFlags =>
(PipelineVertexInputStateCreateFlags
 -> PipelineVertexInputStateCreateFlags -> Ordering)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags -> Bool)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags -> Bool)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags -> Bool)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags -> Bool)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags)
-> Ord PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Ordering
PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Ordering
compare :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Ordering
$c< :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
< :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$c<= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
<= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$c> :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
> :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$c>= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
>= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$cmax :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
max :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$cmin :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
min :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
Ord, Ptr PipelineVertexInputStateCreateFlags
-> IO PipelineVertexInputStateCreateFlags
Ptr PipelineVertexInputStateCreateFlags
-> Int -> IO PipelineVertexInputStateCreateFlags
Ptr PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags -> IO ()
Ptr PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> IO ()
PipelineVertexInputStateCreateFlags -> Int
(PipelineVertexInputStateCreateFlags -> Int)
-> (PipelineVertexInputStateCreateFlags -> Int)
-> (Ptr PipelineVertexInputStateCreateFlags
    -> Int -> IO PipelineVertexInputStateCreateFlags)
-> (Ptr PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags -> IO ())
-> (forall b.
    Ptr b -> Int -> IO PipelineVertexInputStateCreateFlags)
-> (forall b.
    Ptr b -> Int -> PipelineVertexInputStateCreateFlags -> IO ())
-> (Ptr PipelineVertexInputStateCreateFlags
    -> IO PipelineVertexInputStateCreateFlags)
-> (Ptr PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags -> IO ())
-> Storable PipelineVertexInputStateCreateFlags
forall b. Ptr b -> Int -> IO PipelineVertexInputStateCreateFlags
forall b.
Ptr b -> Int -> PipelineVertexInputStateCreateFlags -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: PipelineVertexInputStateCreateFlags -> Int
sizeOf :: PipelineVertexInputStateCreateFlags -> Int
$calignment :: PipelineVertexInputStateCreateFlags -> Int
alignment :: PipelineVertexInputStateCreateFlags -> Int
$cpeekElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> IO PipelineVertexInputStateCreateFlags
peekElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> IO PipelineVertexInputStateCreateFlags
$cpokeElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags -> IO ()
pokeElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PipelineVertexInputStateCreateFlags
peekByteOff :: forall b. Ptr b -> Int -> IO PipelineVertexInputStateCreateFlags
$cpokeByteOff :: forall b.
Ptr b -> Int -> PipelineVertexInputStateCreateFlags -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> PipelineVertexInputStateCreateFlags -> IO ()
$cpeek :: Ptr PipelineVertexInputStateCreateFlags
-> IO PipelineVertexInputStateCreateFlags
peek :: Ptr PipelineVertexInputStateCreateFlags
-> IO PipelineVertexInputStateCreateFlags
$cpoke :: Ptr PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> IO ()
poke :: Ptr PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> IO ()
Storable, PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags
-> Zero PipelineVertexInputStateCreateFlags
forall a. a -> Zero a
$czero :: PipelineVertexInputStateCreateFlags
zero :: PipelineVertexInputStateCreateFlags
Zero, Eq PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags
Eq PipelineVertexInputStateCreateFlags =>
(PipelineVertexInputStateCreateFlags
 -> PipelineVertexInputStateCreateFlags
 -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> PipelineVertexInputStateCreateFlags
-> (Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags -> Int -> Bool)
-> (PipelineVertexInputStateCreateFlags -> Maybe Int)
-> (PipelineVertexInputStateCreateFlags -> Int)
-> (PipelineVertexInputStateCreateFlags -> Bool)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags
    -> Int -> PipelineVertexInputStateCreateFlags)
-> (PipelineVertexInputStateCreateFlags -> Int)
-> Bits PipelineVertexInputStateCreateFlags
Int -> PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags -> Bool
PipelineVertexInputStateCreateFlags -> Int
PipelineVertexInputStateCreateFlags -> Maybe Int
PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags -> Int -> Bool
PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
.&. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$c.|. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
.|. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$cxor :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
xor :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$ccomplement :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
complement :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$cshift :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
shift :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$crotate :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
rotate :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$czeroBits :: PipelineVertexInputStateCreateFlags
zeroBits :: PipelineVertexInputStateCreateFlags
$cbit :: Int -> PipelineVertexInputStateCreateFlags
bit :: Int -> PipelineVertexInputStateCreateFlags
$csetBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
setBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cclearBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
clearBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$ccomplementBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
complementBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$ctestBit :: PipelineVertexInputStateCreateFlags -> Int -> Bool
testBit :: PipelineVertexInputStateCreateFlags -> Int -> Bool
$cbitSizeMaybe :: PipelineVertexInputStateCreateFlags -> Maybe Int
bitSizeMaybe :: PipelineVertexInputStateCreateFlags -> Maybe Int
$cbitSize :: PipelineVertexInputStateCreateFlags -> Int
bitSize :: PipelineVertexInputStateCreateFlags -> Int
$cisSigned :: PipelineVertexInputStateCreateFlags -> Bool
isSigned :: PipelineVertexInputStateCreateFlags -> Bool
$cshiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
shiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cunsafeShiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
unsafeShiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cshiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
shiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cunsafeShiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
unsafeShiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$crotateL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
rotateL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$crotateR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
rotateR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cpopCount :: PipelineVertexInputStateCreateFlags -> Int
popCount :: PipelineVertexInputStateCreateFlags -> Int
Bits, Bits PipelineVertexInputStateCreateFlags
Bits PipelineVertexInputStateCreateFlags =>
(PipelineVertexInputStateCreateFlags -> Int)
-> (PipelineVertexInputStateCreateFlags -> Int)
-> (PipelineVertexInputStateCreateFlags -> Int)
-> FiniteBits PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: PipelineVertexInputStateCreateFlags -> Int
finiteBitSize :: PipelineVertexInputStateCreateFlags -> Int
$ccountLeadingZeros :: PipelineVertexInputStateCreateFlags -> Int
countLeadingZeros :: PipelineVertexInputStateCreateFlags -> Int
$ccountTrailingZeros :: PipelineVertexInputStateCreateFlags -> Int
countTrailingZeros :: PipelineVertexInputStateCreateFlags -> Int
FiniteBits)

conNamePipelineVertexInputStateCreateFlags :: String
conNamePipelineVertexInputStateCreateFlags :: String
conNamePipelineVertexInputStateCreateFlags = String
"PipelineVertexInputStateCreateFlags"

enumPrefixPipelineVertexInputStateCreateFlags :: String
enumPrefixPipelineVertexInputStateCreateFlags :: String
enumPrefixPipelineVertexInputStateCreateFlags = String
""

showTablePipelineVertexInputStateCreateFlags :: [(PipelineVertexInputStateCreateFlags, String)]
showTablePipelineVertexInputStateCreateFlags :: [(PipelineVertexInputStateCreateFlags, String)]
showTablePipelineVertexInputStateCreateFlags = []

instance Show PipelineVertexInputStateCreateFlags where
  showsPrec :: Int -> PipelineVertexInputStateCreateFlags -> ShowS
showsPrec =
    String
-> [(PipelineVertexInputStateCreateFlags, String)]
-> String
-> (PipelineVertexInputStateCreateFlags -> Flags)
-> (Flags -> ShowS)
-> Int
-> PipelineVertexInputStateCreateFlags
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
      String
enumPrefixPipelineVertexInputStateCreateFlags
      [(PipelineVertexInputStateCreateFlags, String)]
showTablePipelineVertexInputStateCreateFlags
      String
conNamePipelineVertexInputStateCreateFlags
      (\(PipelineVertexInputStateCreateFlags Flags
x) -> Flags
x)
      (\Flags
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Flags -> ShowS
forall a. Integral a => a -> ShowS
showHex Flags
x)

instance Read PipelineVertexInputStateCreateFlags where
  readPrec :: ReadPrec PipelineVertexInputStateCreateFlags
readPrec =
    String
-> [(PipelineVertexInputStateCreateFlags, String)]
-> String
-> (Flags -> PipelineVertexInputStateCreateFlags)
-> ReadPrec PipelineVertexInputStateCreateFlags
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
      String
enumPrefixPipelineVertexInputStateCreateFlags
      [(PipelineVertexInputStateCreateFlags, String)]
showTablePipelineVertexInputStateCreateFlags
      String
conNamePipelineVertexInputStateCreateFlags
      Flags -> PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags