{-# 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
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$c/= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
== :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$c== :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
Eq, Eq 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
min :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$cmin :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
max :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$cmax :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
>= :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Bool
$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
compare :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Ordering
$ccompare :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> Ordering
Ord, Ptr PipelineVertexInputStateCreateFlags
-> IO PipelineVertexInputStateCreateFlags
Ptr PipelineVertexInputStateCreateFlags
-> Int -> IO PipelineVertexInputStateCreateFlags
Ptr PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags -> IO ()
Ptr PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> IO ()
PipelineVertexInputStateCreateFlags -> Int
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
poke :: Ptr PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> IO ()
$cpoke :: Ptr PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags -> IO ()
peek :: Ptr PipelineVertexInputStateCreateFlags
-> IO PipelineVertexInputStateCreateFlags
$cpeek :: Ptr PipelineVertexInputStateCreateFlags
-> IO PipelineVertexInputStateCreateFlags
pokeByteOff :: forall b.
Ptr b -> Int -> PipelineVertexInputStateCreateFlags -> IO ()
$cpokeByteOff :: forall b.
Ptr b -> Int -> PipelineVertexInputStateCreateFlags -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO PipelineVertexInputStateCreateFlags
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PipelineVertexInputStateCreateFlags
pokeElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags -> IO ()
$cpokeElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags -> IO ()
peekElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> IO PipelineVertexInputStateCreateFlags
$cpeekElemOff :: Ptr PipelineVertexInputStateCreateFlags
-> Int -> IO PipelineVertexInputStateCreateFlags
alignment :: PipelineVertexInputStateCreateFlags -> Int
$calignment :: PipelineVertexInputStateCreateFlags -> Int
sizeOf :: PipelineVertexInputStateCreateFlags -> Int
$csizeOf :: PipelineVertexInputStateCreateFlags -> Int
Storable, PipelineVertexInputStateCreateFlags
forall a. a -> Zero a
zero :: PipelineVertexInputStateCreateFlags
$czero :: PipelineVertexInputStateCreateFlags
Zero, Eq PipelineVertexInputStateCreateFlags
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
popCount :: PipelineVertexInputStateCreateFlags -> Int
$cpopCount :: PipelineVertexInputStateCreateFlags -> Int
rotateR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$crotateR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
rotateL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$crotateL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
unsafeShiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cunsafeShiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
shiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cshiftR :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
unsafeShiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cunsafeShiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
shiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cshiftL :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
isSigned :: PipelineVertexInputStateCreateFlags -> Bool
$cisSigned :: PipelineVertexInputStateCreateFlags -> Bool
bitSize :: PipelineVertexInputStateCreateFlags -> Int
$cbitSize :: PipelineVertexInputStateCreateFlags -> Int
bitSizeMaybe :: PipelineVertexInputStateCreateFlags -> Maybe Int
$cbitSizeMaybe :: PipelineVertexInputStateCreateFlags -> Maybe Int
testBit :: PipelineVertexInputStateCreateFlags -> Int -> Bool
$ctestBit :: PipelineVertexInputStateCreateFlags -> Int -> Bool
complementBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$ccomplementBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
clearBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cclearBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
setBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$csetBit :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
bit :: Int -> PipelineVertexInputStateCreateFlags
$cbit :: Int -> PipelineVertexInputStateCreateFlags
zeroBits :: PipelineVertexInputStateCreateFlags
$czeroBits :: PipelineVertexInputStateCreateFlags
rotate :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$crotate :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
shift :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
$cshift :: PipelineVertexInputStateCreateFlags
-> Int -> PipelineVertexInputStateCreateFlags
complement :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$ccomplement :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
xor :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$cxor :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
.|. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$c.|. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
.&. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
$c.&. :: PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
-> PipelineVertexInputStateCreateFlags
Bits, Bits PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: PipelineVertexInputStateCreateFlags -> Int
$ccountTrailingZeros :: PipelineVertexInputStateCreateFlags -> Int
countLeadingZeros :: PipelineVertexInputStateCreateFlags -> Int
$ccountLeadingZeros :: PipelineVertexInputStateCreateFlags -> Int
finiteBitSize :: PipelineVertexInputStateCreateFlags -> Int
$cfiniteBitSize :: 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 =
    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" forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. (Integral a, Show a) => a -> ShowS
showHex Flags
x)

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