{-# language CPP #-}
module Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits ( PipelineShaderStageCreateFlags
, PipelineShaderStageCreateFlagBits( PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT
, PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT
, ..
)
) 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)
type PipelineShaderStageCreateFlags = PipelineShaderStageCreateFlagBits
newtype PipelineShaderStageCreateFlagBits = PipelineShaderStageCreateFlagBits Flags
deriving newtype (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
(PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool)
-> Eq PipelineShaderStageCreateFlagBits
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
== :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
$c/= :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
/= :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
Eq, Eq PipelineShaderStageCreateFlagBits
Eq PipelineShaderStageCreateFlagBits =>
(PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Ordering)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits)
-> Ord PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Ordering
PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
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 :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Ordering
compare :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Ordering
$c< :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
< :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
$c<= :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
<= :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
$c> :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
> :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
$c>= :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
>= :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> Bool
$cmax :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
max :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
$cmin :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
min :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
Ord, Ptr PipelineShaderStageCreateFlagBits
-> IO PipelineShaderStageCreateFlagBits
Ptr PipelineShaderStageCreateFlagBits
-> Int -> IO PipelineShaderStageCreateFlagBits
Ptr PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits -> IO ()
Ptr PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> IO ()
PipelineShaderStageCreateFlagBits -> Int
(PipelineShaderStageCreateFlagBits -> Int)
-> (PipelineShaderStageCreateFlagBits -> Int)
-> (Ptr PipelineShaderStageCreateFlagBits
-> Int -> IO PipelineShaderStageCreateFlagBits)
-> (Ptr PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits -> IO ())
-> (forall b. Ptr b -> Int -> IO PipelineShaderStageCreateFlagBits)
-> (forall b.
Ptr b -> Int -> PipelineShaderStageCreateFlagBits -> IO ())
-> (Ptr PipelineShaderStageCreateFlagBits
-> IO PipelineShaderStageCreateFlagBits)
-> (Ptr PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> IO ())
-> Storable PipelineShaderStageCreateFlagBits
forall b. Ptr b -> Int -> IO PipelineShaderStageCreateFlagBits
forall b.
Ptr b -> Int -> PipelineShaderStageCreateFlagBits -> 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 :: PipelineShaderStageCreateFlagBits -> Int
sizeOf :: PipelineShaderStageCreateFlagBits -> Int
$calignment :: PipelineShaderStageCreateFlagBits -> Int
alignment :: PipelineShaderStageCreateFlagBits -> Int
$cpeekElemOff :: Ptr PipelineShaderStageCreateFlagBits
-> Int -> IO PipelineShaderStageCreateFlagBits
peekElemOff :: Ptr PipelineShaderStageCreateFlagBits
-> Int -> IO PipelineShaderStageCreateFlagBits
$cpokeElemOff :: Ptr PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits -> IO ()
pokeElemOff :: Ptr PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PipelineShaderStageCreateFlagBits
peekByteOff :: forall b. Ptr b -> Int -> IO PipelineShaderStageCreateFlagBits
$cpokeByteOff :: forall b.
Ptr b -> Int -> PipelineShaderStageCreateFlagBits -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> PipelineShaderStageCreateFlagBits -> IO ()
$cpeek :: Ptr PipelineShaderStageCreateFlagBits
-> IO PipelineShaderStageCreateFlagBits
peek :: Ptr PipelineShaderStageCreateFlagBits
-> IO PipelineShaderStageCreateFlagBits
$cpoke :: Ptr PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> IO ()
poke :: Ptr PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits -> IO ()
Storable, PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits
-> Zero PipelineShaderStageCreateFlagBits
forall a. a -> Zero a
$czero :: PipelineShaderStageCreateFlagBits
zero :: PipelineShaderStageCreateFlagBits
Zero, Eq PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits
Eq PipelineShaderStageCreateFlagBits =>
(PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> PipelineShaderStageCreateFlagBits
-> (Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits -> Int -> Bool)
-> (PipelineShaderStageCreateFlagBits -> Maybe Int)
-> (PipelineShaderStageCreateFlagBits -> Int)
-> (PipelineShaderStageCreateFlagBits -> Bool)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits)
-> (PipelineShaderStageCreateFlagBits -> Int)
-> Bits PipelineShaderStageCreateFlagBits
Int -> PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits -> Bool
PipelineShaderStageCreateFlagBits -> Int
PipelineShaderStageCreateFlagBits -> Maybe Int
PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits -> Int -> Bool
PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
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.&. :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
.&. :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
$c.|. :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
.|. :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
$cxor :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
xor :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
$ccomplement :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
complement :: PipelineShaderStageCreateFlagBits
-> PipelineShaderStageCreateFlagBits
$cshift :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
shift :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$crotate :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
rotate :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$czeroBits :: PipelineShaderStageCreateFlagBits
zeroBits :: PipelineShaderStageCreateFlagBits
$cbit :: Int -> PipelineShaderStageCreateFlagBits
bit :: Int -> PipelineShaderStageCreateFlagBits
$csetBit :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
setBit :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$cclearBit :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
clearBit :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$ccomplementBit :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
complementBit :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$ctestBit :: PipelineShaderStageCreateFlagBits -> Int -> Bool
testBit :: PipelineShaderStageCreateFlagBits -> Int -> Bool
$cbitSizeMaybe :: PipelineShaderStageCreateFlagBits -> Maybe Int
bitSizeMaybe :: PipelineShaderStageCreateFlagBits -> Maybe Int
$cbitSize :: PipelineShaderStageCreateFlagBits -> Int
bitSize :: PipelineShaderStageCreateFlagBits -> Int
$cisSigned :: PipelineShaderStageCreateFlagBits -> Bool
isSigned :: PipelineShaderStageCreateFlagBits -> Bool
$cshiftL :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
shiftL :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$cunsafeShiftL :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
unsafeShiftL :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$cshiftR :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
shiftR :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$cunsafeShiftR :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
unsafeShiftR :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$crotateL :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
rotateL :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$crotateR :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
rotateR :: PipelineShaderStageCreateFlagBits
-> Int -> PipelineShaderStageCreateFlagBits
$cpopCount :: PipelineShaderStageCreateFlagBits -> Int
popCount :: PipelineShaderStageCreateFlagBits -> Int
Bits, Bits PipelineShaderStageCreateFlagBits
Bits PipelineShaderStageCreateFlagBits =>
(PipelineShaderStageCreateFlagBits -> Int)
-> (PipelineShaderStageCreateFlagBits -> Int)
-> (PipelineShaderStageCreateFlagBits -> Int)
-> FiniteBits PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: PipelineShaderStageCreateFlagBits -> Int
finiteBitSize :: PipelineShaderStageCreateFlagBits -> Int
$ccountLeadingZeros :: PipelineShaderStageCreateFlagBits -> Int
countLeadingZeros :: PipelineShaderStageCreateFlagBits -> Int
$ccountTrailingZeros :: PipelineShaderStageCreateFlagBits -> Int
countTrailingZeros :: PipelineShaderStageCreateFlagBits -> Int
FiniteBits)
pattern $bPIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT :: PipelineShaderStageCreateFlagBits
$mPIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT :: forall {r}.
PipelineShaderStageCreateFlagBits
-> ((# #) -> r) -> ((# #) -> r) -> r
PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT = PipelineShaderStageCreateFlagBits 0x00000002
pattern $bPIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT :: PipelineShaderStageCreateFlagBits
$mPIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT :: forall {r}.
PipelineShaderStageCreateFlagBits
-> ((# #) -> r) -> ((# #) -> r) -> r
PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT = PipelineShaderStageCreateFlagBits 0x00000001
conNamePipelineShaderStageCreateFlagBits :: String
conNamePipelineShaderStageCreateFlagBits :: String
conNamePipelineShaderStageCreateFlagBits = String
"PipelineShaderStageCreateFlagBits"
enumPrefixPipelineShaderStageCreateFlagBits :: String
enumPrefixPipelineShaderStageCreateFlagBits :: String
enumPrefixPipelineShaderStageCreateFlagBits = String
"PIPELINE_SHADER_STAGE_CREATE_"
showTablePipelineShaderStageCreateFlagBits :: [(PipelineShaderStageCreateFlagBits, String)]
showTablePipelineShaderStageCreateFlagBits :: [(PipelineShaderStageCreateFlagBits, String)]
showTablePipelineShaderStageCreateFlagBits =
[
( PipelineShaderStageCreateFlagBits
PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT
, String
"REQUIRE_FULL_SUBGROUPS_BIT"
)
,
( PipelineShaderStageCreateFlagBits
PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT
, String
"ALLOW_VARYING_SUBGROUP_SIZE_BIT"
)
]
instance Show PipelineShaderStageCreateFlagBits where
showsPrec :: Int -> PipelineShaderStageCreateFlagBits -> ShowS
showsPrec =
String
-> [(PipelineShaderStageCreateFlagBits, String)]
-> String
-> (PipelineShaderStageCreateFlagBits -> Flags)
-> (Flags -> ShowS)
-> Int
-> PipelineShaderStageCreateFlagBits
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixPipelineShaderStageCreateFlagBits
[(PipelineShaderStageCreateFlagBits, String)]
showTablePipelineShaderStageCreateFlagBits
String
conNamePipelineShaderStageCreateFlagBits
(\(PipelineShaderStageCreateFlagBits 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 PipelineShaderStageCreateFlagBits where
readPrec :: ReadPrec PipelineShaderStageCreateFlagBits
readPrec =
String
-> [(PipelineShaderStageCreateFlagBits, String)]
-> String
-> (Flags -> PipelineShaderStageCreateFlagBits)
-> ReadPrec PipelineShaderStageCreateFlagBits
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixPipelineShaderStageCreateFlagBits
[(PipelineShaderStageCreateFlagBits, String)]
showTablePipelineShaderStageCreateFlagBits
String
conNamePipelineShaderStageCreateFlagBits
Flags -> PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits