{-# language CPP #-}
module Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits ( ExternalFenceFeatureFlags
, ExternalFenceFeatureFlagBits( EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
, EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
, ..
)
) where
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showString)
import Numeric (showHex)
import Vulkan.Zero (Zero)
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
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
(ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool)
-> Eq ExternalFenceFeatureFlagBits
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
Eq ExternalFenceFeatureFlagBits =>
(ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Ordering)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> Bool)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits)
-> Ord 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
$cp1Ord :: Eq ExternalFenceFeatureFlagBits
Ord, Ptr b -> Int -> IO ExternalFenceFeatureFlagBits
Ptr b -> Int -> ExternalFenceFeatureFlagBits -> IO ()
Ptr ExternalFenceFeatureFlagBits -> IO ExternalFenceFeatureFlagBits
Ptr ExternalFenceFeatureFlagBits
-> Int -> IO ExternalFenceFeatureFlagBits
Ptr ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits -> IO ()
Ptr ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> IO ()
ExternalFenceFeatureFlagBits -> Int
(ExternalFenceFeatureFlagBits -> Int)
-> (ExternalFenceFeatureFlagBits -> Int)
-> (Ptr ExternalFenceFeatureFlagBits
-> Int -> IO ExternalFenceFeatureFlagBits)
-> (Ptr ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits -> IO ())
-> (forall b. Ptr b -> Int -> IO ExternalFenceFeatureFlagBits)
-> (forall b.
Ptr b -> Int -> ExternalFenceFeatureFlagBits -> IO ())
-> (Ptr ExternalFenceFeatureFlagBits
-> IO ExternalFenceFeatureFlagBits)
-> (Ptr ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> IO ())
-> Storable ExternalFenceFeatureFlagBits
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 :: Ptr b -> Int -> ExternalFenceFeatureFlagBits -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> ExternalFenceFeatureFlagBits -> IO ()
peekByteOff :: 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
ExternalFenceFeatureFlagBits -> Zero ExternalFenceFeatureFlagBits
forall a. a -> Zero a
zero :: ExternalFenceFeatureFlagBits
$czero :: ExternalFenceFeatureFlagBits
Zero, Eq ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits
Eq ExternalFenceFeatureFlagBits =>
(ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> ExternalFenceFeatureFlagBits
-> (Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits -> Int -> Bool)
-> (ExternalFenceFeatureFlagBits -> Maybe Int)
-> (ExternalFenceFeatureFlagBits -> Int)
-> (ExternalFenceFeatureFlagBits -> Bool)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits
-> Int -> ExternalFenceFeatureFlagBits)
-> (ExternalFenceFeatureFlagBits -> Int)
-> Bits 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
$cp1Bits :: Eq ExternalFenceFeatureFlagBits
Bits, Bits ExternalFenceFeatureFlagBits
Bits ExternalFenceFeatureFlagBits =>
(ExternalFenceFeatureFlagBits -> Int)
-> (ExternalFenceFeatureFlagBits -> Int)
-> (ExternalFenceFeatureFlagBits -> Int)
-> FiniteBits 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
$cp1FiniteBits :: Bits ExternalFenceFeatureFlagBits
FiniteBits)
pattern $bEXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: ExternalFenceFeatureFlagBits
$mEXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: forall r.
ExternalFenceFeatureFlagBits -> (Void# -> r) -> (Void# -> r) -> r
EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = ExternalFenceFeatureFlagBits 0x00000001
pattern $bEXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: ExternalFenceFeatureFlagBits
$mEXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: forall r.
ExternalFenceFeatureFlagBits -> (Void# -> r) -> (Void# -> r) -> r
EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = ExternalFenceFeatureFlagBits 0x00000002
conNameExternalFenceFeatureFlagBits :: String
conNameExternalFenceFeatureFlagBits :: String
conNameExternalFenceFeatureFlagBits = "ExternalFenceFeatureFlagBits"
enumPrefixExternalFenceFeatureFlagBits :: String
enumPrefixExternalFenceFeatureFlagBits :: String
enumPrefixExternalFenceFeatureFlagBits = "EXTERNAL_FENCE_FEATURE_"
showTableExternalFenceFeatureFlagBits :: [(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits :: [(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits =
[(ExternalFenceFeatureFlagBits
EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT, "EXPORTABLE_BIT"), (ExternalFenceFeatureFlagBits
EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT, "IMPORTABLE_BIT")]
instance Show ExternalFenceFeatureFlagBits where
showsPrec :: Int -> ExternalFenceFeatureFlagBits -> ShowS
showsPrec = String
-> [(ExternalFenceFeatureFlagBits, String)]
-> String
-> (ExternalFenceFeatureFlagBits -> Flags)
-> (Flags -> ShowS)
-> Int
-> ExternalFenceFeatureFlagBits
-> ShowS
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 x :: Flags
x) -> Flags
x)
(\x :: Flags
x -> String -> ShowS
showString "0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Flags -> ShowS
forall a. (Integral a, Show a) => a -> ShowS
showHex Flags
x)
instance Read ExternalFenceFeatureFlagBits where
readPrec :: ReadPrec ExternalFenceFeatureFlagBits
readPrec = String
-> [(ExternalFenceFeatureFlagBits, String)]
-> String
-> (Flags -> ExternalFenceFeatureFlagBits)
-> ReadPrec ExternalFenceFeatureFlagBits
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec String
enumPrefixExternalFenceFeatureFlagBits
[(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits
String
conNameExternalFenceFeatureFlagBits
Flags -> ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits