{-# language CPP #-}
-- No documentation found for Chapter "PipelineInputAssemblyStateCreateFlags"
module Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags  (PipelineInputAssemblyStateCreateFlags(..)) 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)
-- | VkPipelineInputAssemblyStateCreateFlags - Reserved for future use
--
-- = Description
--
-- 'PipelineInputAssemblyStateCreateFlags' 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.PipelineInputAssemblyStateCreateInfo'
newtype PipelineInputAssemblyStateCreateFlags = PipelineInputAssemblyStateCreateFlags Flags
  deriving newtype (PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
(PipelineInputAssemblyStateCreateFlags
 -> PipelineInputAssemblyStateCreateFlags -> Bool)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags -> Bool)
-> Eq PipelineInputAssemblyStateCreateFlags
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
== :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
$c/= :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
/= :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
Eq, Eq PipelineInputAssemblyStateCreateFlags
Eq PipelineInputAssemblyStateCreateFlags =>
(PipelineInputAssemblyStateCreateFlags
 -> PipelineInputAssemblyStateCreateFlags -> Ordering)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags -> Bool)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags -> Bool)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags -> Bool)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags -> Bool)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags)
-> Ord PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Ordering
PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
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 :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Ordering
compare :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Ordering
$c< :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
< :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
$c<= :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
<= :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
$c> :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
> :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
$c>= :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
>= :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> Bool
$cmax :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
max :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
$cmin :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
min :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
Ord, Ptr PipelineInputAssemblyStateCreateFlags
-> IO PipelineInputAssemblyStateCreateFlags
Ptr PipelineInputAssemblyStateCreateFlags
-> Int -> IO PipelineInputAssemblyStateCreateFlags
Ptr PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags -> IO ()
Ptr PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> IO ()
PipelineInputAssemblyStateCreateFlags -> Int
(PipelineInputAssemblyStateCreateFlags -> Int)
-> (PipelineInputAssemblyStateCreateFlags -> Int)
-> (Ptr PipelineInputAssemblyStateCreateFlags
    -> Int -> IO PipelineInputAssemblyStateCreateFlags)
-> (Ptr PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags -> IO ())
-> (forall b.
    Ptr b -> Int -> IO PipelineInputAssemblyStateCreateFlags)
-> (forall b.
    Ptr b -> Int -> PipelineInputAssemblyStateCreateFlags -> IO ())
-> (Ptr PipelineInputAssemblyStateCreateFlags
    -> IO PipelineInputAssemblyStateCreateFlags)
-> (Ptr PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags -> IO ())
-> Storable PipelineInputAssemblyStateCreateFlags
forall b. Ptr b -> Int -> IO PipelineInputAssemblyStateCreateFlags
forall b.
Ptr b -> Int -> PipelineInputAssemblyStateCreateFlags -> 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 :: PipelineInputAssemblyStateCreateFlags -> Int
sizeOf :: PipelineInputAssemblyStateCreateFlags -> Int
$calignment :: PipelineInputAssemblyStateCreateFlags -> Int
alignment :: PipelineInputAssemblyStateCreateFlags -> Int
$cpeekElemOff :: Ptr PipelineInputAssemblyStateCreateFlags
-> Int -> IO PipelineInputAssemblyStateCreateFlags
peekElemOff :: Ptr PipelineInputAssemblyStateCreateFlags
-> Int -> IO PipelineInputAssemblyStateCreateFlags
$cpokeElemOff :: Ptr PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags -> IO ()
pokeElemOff :: Ptr PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PipelineInputAssemblyStateCreateFlags
peekByteOff :: forall b. Ptr b -> Int -> IO PipelineInputAssemblyStateCreateFlags
$cpokeByteOff :: forall b.
Ptr b -> Int -> PipelineInputAssemblyStateCreateFlags -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> PipelineInputAssemblyStateCreateFlags -> IO ()
$cpeek :: Ptr PipelineInputAssemblyStateCreateFlags
-> IO PipelineInputAssemblyStateCreateFlags
peek :: Ptr PipelineInputAssemblyStateCreateFlags
-> IO PipelineInputAssemblyStateCreateFlags
$cpoke :: Ptr PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> IO ()
poke :: Ptr PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags -> IO ()
Storable, PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags
-> Zero PipelineInputAssemblyStateCreateFlags
forall a. a -> Zero a
$czero :: PipelineInputAssemblyStateCreateFlags
zero :: PipelineInputAssemblyStateCreateFlags
Zero, Eq PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags
Eq PipelineInputAssemblyStateCreateFlags =>
(PipelineInputAssemblyStateCreateFlags
 -> PipelineInputAssemblyStateCreateFlags
 -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> PipelineInputAssemblyStateCreateFlags
-> (Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags -> Int -> Bool)
-> (PipelineInputAssemblyStateCreateFlags -> Maybe Int)
-> (PipelineInputAssemblyStateCreateFlags -> Int)
-> (PipelineInputAssemblyStateCreateFlags -> Bool)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags
    -> Int -> PipelineInputAssemblyStateCreateFlags)
-> (PipelineInputAssemblyStateCreateFlags -> Int)
-> Bits PipelineInputAssemblyStateCreateFlags
Int -> PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags -> Bool
PipelineInputAssemblyStateCreateFlags -> Int
PipelineInputAssemblyStateCreateFlags -> Maybe Int
PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags -> Int -> Bool
PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
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.&. :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
.&. :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
$c.|. :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
.|. :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
$cxor :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
xor :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
$ccomplement :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
complement :: PipelineInputAssemblyStateCreateFlags
-> PipelineInputAssemblyStateCreateFlags
$cshift :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
shift :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$crotate :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
rotate :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$czeroBits :: PipelineInputAssemblyStateCreateFlags
zeroBits :: PipelineInputAssemblyStateCreateFlags
$cbit :: Int -> PipelineInputAssemblyStateCreateFlags
bit :: Int -> PipelineInputAssemblyStateCreateFlags
$csetBit :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
setBit :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$cclearBit :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
clearBit :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$ccomplementBit :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
complementBit :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$ctestBit :: PipelineInputAssemblyStateCreateFlags -> Int -> Bool
testBit :: PipelineInputAssemblyStateCreateFlags -> Int -> Bool
$cbitSizeMaybe :: PipelineInputAssemblyStateCreateFlags -> Maybe Int
bitSizeMaybe :: PipelineInputAssemblyStateCreateFlags -> Maybe Int
$cbitSize :: PipelineInputAssemblyStateCreateFlags -> Int
bitSize :: PipelineInputAssemblyStateCreateFlags -> Int
$cisSigned :: PipelineInputAssemblyStateCreateFlags -> Bool
isSigned :: PipelineInputAssemblyStateCreateFlags -> Bool
$cshiftL :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
shiftL :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$cunsafeShiftL :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
unsafeShiftL :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$cshiftR :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
shiftR :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$cunsafeShiftR :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
unsafeShiftR :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$crotateL :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
rotateL :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$crotateR :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
rotateR :: PipelineInputAssemblyStateCreateFlags
-> Int -> PipelineInputAssemblyStateCreateFlags
$cpopCount :: PipelineInputAssemblyStateCreateFlags -> Int
popCount :: PipelineInputAssemblyStateCreateFlags -> Int
Bits, Bits PipelineInputAssemblyStateCreateFlags
Bits PipelineInputAssemblyStateCreateFlags =>
(PipelineInputAssemblyStateCreateFlags -> Int)
-> (PipelineInputAssemblyStateCreateFlags -> Int)
-> (PipelineInputAssemblyStateCreateFlags -> Int)
-> FiniteBits PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: PipelineInputAssemblyStateCreateFlags -> Int
finiteBitSize :: PipelineInputAssemblyStateCreateFlags -> Int
$ccountLeadingZeros :: PipelineInputAssemblyStateCreateFlags -> Int
countLeadingZeros :: PipelineInputAssemblyStateCreateFlags -> Int
$ccountTrailingZeros :: PipelineInputAssemblyStateCreateFlags -> Int
countTrailingZeros :: PipelineInputAssemblyStateCreateFlags -> Int
FiniteBits)

conNamePipelineInputAssemblyStateCreateFlags :: String
conNamePipelineInputAssemblyStateCreateFlags :: String
conNamePipelineInputAssemblyStateCreateFlags = String
"PipelineInputAssemblyStateCreateFlags"

enumPrefixPipelineInputAssemblyStateCreateFlags :: String
enumPrefixPipelineInputAssemblyStateCreateFlags :: String
enumPrefixPipelineInputAssemblyStateCreateFlags = String
""

showTablePipelineInputAssemblyStateCreateFlags :: [(PipelineInputAssemblyStateCreateFlags, String)]
showTablePipelineInputAssemblyStateCreateFlags :: [(PipelineInputAssemblyStateCreateFlags, String)]
showTablePipelineInputAssemblyStateCreateFlags = []

instance Show PipelineInputAssemblyStateCreateFlags where
  showsPrec :: Int -> PipelineInputAssemblyStateCreateFlags -> ShowS
showsPrec =
    String
-> [(PipelineInputAssemblyStateCreateFlags, String)]
-> String
-> (PipelineInputAssemblyStateCreateFlags -> Flags)
-> (Flags -> ShowS)
-> Int
-> PipelineInputAssemblyStateCreateFlags
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
      String
enumPrefixPipelineInputAssemblyStateCreateFlags
      [(PipelineInputAssemblyStateCreateFlags, String)]
showTablePipelineInputAssemblyStateCreateFlags
      String
conNamePipelineInputAssemblyStateCreateFlags
      (\(PipelineInputAssemblyStateCreateFlags 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 PipelineInputAssemblyStateCreateFlags where
  readPrec :: ReadPrec PipelineInputAssemblyStateCreateFlags
readPrec =
    String
-> [(PipelineInputAssemblyStateCreateFlags, String)]
-> String
-> (Flags -> PipelineInputAssemblyStateCreateFlags)
-> ReadPrec PipelineInputAssemblyStateCreateFlags
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
      String
enumPrefixPipelineInputAssemblyStateCreateFlags
      [(PipelineInputAssemblyStateCreateFlags, String)]
showTablePipelineInputAssemblyStateCreateFlags
      String
conNamePipelineInputAssemblyStateCreateFlags
      Flags -> PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags