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

conNamePipelineTessellationStateCreateFlags :: String
conNamePipelineTessellationStateCreateFlags :: String
conNamePipelineTessellationStateCreateFlags = String
"PipelineTessellationStateCreateFlags"

enumPrefixPipelineTessellationStateCreateFlags :: String
enumPrefixPipelineTessellationStateCreateFlags :: String
enumPrefixPipelineTessellationStateCreateFlags = String
""

showTablePipelineTessellationStateCreateFlags :: [(PipelineTessellationStateCreateFlags, String)]
showTablePipelineTessellationStateCreateFlags :: [(PipelineTessellationStateCreateFlags, String)]
showTablePipelineTessellationStateCreateFlags = []

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