{-# language CPP #-}
module Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits ( ExternalFenceFeatureFlags
, ExternalFenceFeatureFlagBits( EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
, EXTERNAL_FENCE_FEATURE_IMPORTABLE_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 ExternalFenceFeatureFlags = ExternalFenceFeatureFlagBits
newtype ExternalFenceFeatureFlagBits = ExternalFenceFeatureFlagBits Flags
deriving newtype (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
$c/= :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
== :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
$c== :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
Eq, Eq ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Ordering
ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
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 :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
$cmin :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
max :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
$cmax :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
>= :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
$c>= :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
> :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
$c> :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
<= :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
$c<= :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
< :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
$c< :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool
compare :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Ordering
$ccompare :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Ordering
Ord, Ptr ExternalFenceFeatureFlagBits -> IO ExternalFenceFeatureFlagBits
Ptr ExternalFenceFeatureFlagBits
-> Int -> IO ExternalFenceFeatureFlagBits
Ptr ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits -> IO ()
Ptr ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> IO ()
ExternalFenceFeatureFlagBits -> Int
forall b. Ptr b -> Int -> IO ExternalFenceFeatureFlagBits
forall b. Ptr b -> Int -> ExternalFenceFeatureFlagBits -> 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 ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> IO ()
$cpoke :: Ptr ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> IO ()
peek :: Ptr ExternalFenceFeatureFlagBits -> IO ExternalFenceFeatureFlagBits
$cpeek :: Ptr ExternalFenceFeatureFlagBits -> IO ExternalFenceFeatureFlagBits
pokeByteOff :: forall b. Ptr b -> Int -> ExternalFenceFeatureFlagBits -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> ExternalFenceFeatureFlagBits -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO ExternalFenceFeatureFlagBits
$cpeekByteOff :: forall b. Ptr b -> Int -> IO ExternalFenceFeatureFlagBits
pokeElemOff :: Ptr ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits -> IO ()
$cpokeElemOff :: Ptr ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits -> IO ()
peekElemOff :: Ptr ExternalFenceFeatureFlagBits
-> Int -> IO ExternalFenceFeatureFlagBits
$cpeekElemOff :: Ptr ExternalFenceFeatureFlagBits
-> Int -> IO ExternalFenceFeatureFlagBits
alignment :: ExternalFenceFeatureFlagBits -> Int
$calignment :: ExternalFenceFeatureFlagBits -> Int
sizeOf :: ExternalFenceFeatureFlagBits -> Int
$csizeOf :: ExternalFenceFeatureFlagBits -> Int
Storable, ExternalFenceFeatureFlagBits
forall a. a -> Zero a
zero :: ExternalFenceFeatureFlagBits
$czero :: ExternalFenceFeatureFlagBits
Zero, Eq ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits
Int -> ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits -> Bool
ExternalFenceFeatureFlagBits -> Int
ExternalFenceFeatureFlagBits -> Maybe Int
ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits -> Int -> Bool
ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
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 :: ExternalFenceFeatureFlagBits -> Int
$cpopCount :: ExternalFenceFeatureFlagBits -> Int
rotateR :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$crotateR :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
rotateL :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$crotateL :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
unsafeShiftR :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$cunsafeShiftR :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
shiftR :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$cshiftR :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
unsafeShiftL :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$cunsafeShiftL :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
shiftL :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$cshiftL :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
isSigned :: ExternalFenceFeatureFlagBits -> Bool
$cisSigned :: ExternalFenceFeatureFlagBits -> Bool
bitSize :: ExternalFenceFeatureFlagBits -> Int
$cbitSize :: ExternalFenceFeatureFlagBits -> Int
bitSizeMaybe :: ExternalFenceFeatureFlagBits -> Maybe Int
$cbitSizeMaybe :: ExternalFenceFeatureFlagBits -> Maybe Int
testBit :: ExternalFenceFeatureFlagBits -> Int -> Bool
$ctestBit :: ExternalFenceFeatureFlagBits -> Int -> Bool
complementBit :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$ccomplementBit :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
clearBit :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$cclearBit :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
setBit :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$csetBit :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
bit :: Int -> ExternalFenceFeatureFlagBits
$cbit :: Int -> ExternalFenceFeatureFlagBits
zeroBits :: ExternalFenceFeatureFlagBits
$czeroBits :: ExternalFenceFeatureFlagBits
rotate :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$crotate :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
shift :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
$cshift :: ExternalFenceFeatureFlagBits -> Int -> ExternalFenceFeatureFlagBits
complement :: ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
$ccomplement :: ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
xor :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
$cxor :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
.|. :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
$c.|. :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
.&. :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
$c.&. :: ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits
Bits, Bits ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: ExternalFenceFeatureFlagBits -> Int
$ccountTrailingZeros :: ExternalFenceFeatureFlagBits -> Int
countLeadingZeros :: ExternalFenceFeatureFlagBits -> Int
$ccountLeadingZeros :: ExternalFenceFeatureFlagBits -> Int
finiteBitSize :: ExternalFenceFeatureFlagBits -> Int
$cfiniteBitSize :: ExternalFenceFeatureFlagBits -> Int
FiniteBits)
pattern $bEXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: ExternalFenceFeatureFlagBits
$mEXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: forall {r}.
ExternalFenceFeatureFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = ExternalFenceFeatureFlagBits 0x00000001
pattern $bEXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: ExternalFenceFeatureFlagBits
$mEXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: forall {r}.
ExternalFenceFeatureFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = ExternalFenceFeatureFlagBits 0x00000002
conNameExternalFenceFeatureFlagBits :: String
conNameExternalFenceFeatureFlagBits :: String
conNameExternalFenceFeatureFlagBits = String
"ExternalFenceFeatureFlagBits"
enumPrefixExternalFenceFeatureFlagBits :: String
enumPrefixExternalFenceFeatureFlagBits :: String
enumPrefixExternalFenceFeatureFlagBits = String
"EXTERNAL_FENCE_FEATURE_"
showTableExternalFenceFeatureFlagBits :: [(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits :: [(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits =
[
( ExternalFenceFeatureFlagBits
EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
, String
"EXPORTABLE_BIT"
)
,
( ExternalFenceFeatureFlagBits
EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
, String
"IMPORTABLE_BIT"
)
]
instance Show ExternalFenceFeatureFlagBits where
showsPrec :: Int -> ExternalFenceFeatureFlagBits -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixExternalFenceFeatureFlagBits
[(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits
String
conNameExternalFenceFeatureFlagBits
(\(ExternalFenceFeatureFlagBits 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 ExternalFenceFeatureFlagBits where
readPrec :: ReadPrec ExternalFenceFeatureFlagBits
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixExternalFenceFeatureFlagBits
[(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits
String
conNameExternalFenceFeatureFlagBits
Flags -> ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits