{-# language CPP #-}
module Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits ( PeerMemoryFeatureFlags
, PeerMemoryFeatureFlagBits( PEER_MEMORY_FEATURE_COPY_SRC_BIT
, PEER_MEMORY_FEATURE_COPY_DST_BIT
, PEER_MEMORY_FEATURE_GENERIC_SRC_BIT
, PEER_MEMORY_FEATURE_GENERIC_DST_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 PeerMemoryFeatureFlags = PeerMemoryFeatureFlagBits
newtype PeerMemoryFeatureFlagBits = PeerMemoryFeatureFlagBits Flags
deriving newtype (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
(PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool)
-> (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool)
-> Eq PeerMemoryFeatureFlagBits
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
$c/= :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
== :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
$c== :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
Eq, Eq PeerMemoryFeatureFlagBits
Eq PeerMemoryFeatureFlagBits =>
(PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> Ordering)
-> (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool)
-> (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool)
-> (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool)
-> (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool)
-> (PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits)
-> Ord PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Ordering
PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
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 :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$cmin :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
max :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$cmax :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
>= :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
$c>= :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
> :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
$c> :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
<= :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
$c<= :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
< :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
$c< :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Bool
compare :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Ordering
$ccompare :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> Ordering
$cp1Ord :: Eq PeerMemoryFeatureFlagBits
Ord, Ptr b -> Int -> IO PeerMemoryFeatureFlagBits
Ptr b -> Int -> PeerMemoryFeatureFlagBits -> IO ()
Ptr PeerMemoryFeatureFlagBits -> IO PeerMemoryFeatureFlagBits
Ptr PeerMemoryFeatureFlagBits
-> Int -> IO PeerMemoryFeatureFlagBits
Ptr PeerMemoryFeatureFlagBits
-> Int -> PeerMemoryFeatureFlagBits -> IO ()
Ptr PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> IO ()
PeerMemoryFeatureFlagBits -> Int
(PeerMemoryFeatureFlagBits -> Int)
-> (PeerMemoryFeatureFlagBits -> Int)
-> (Ptr PeerMemoryFeatureFlagBits
-> Int -> IO PeerMemoryFeatureFlagBits)
-> (Ptr PeerMemoryFeatureFlagBits
-> Int -> PeerMemoryFeatureFlagBits -> IO ())
-> (forall b. Ptr b -> Int -> IO PeerMemoryFeatureFlagBits)
-> (forall b. Ptr b -> Int -> PeerMemoryFeatureFlagBits -> IO ())
-> (Ptr PeerMemoryFeatureFlagBits -> IO PeerMemoryFeatureFlagBits)
-> (Ptr PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> IO ())
-> Storable PeerMemoryFeatureFlagBits
forall b. Ptr b -> Int -> IO PeerMemoryFeatureFlagBits
forall b. Ptr b -> Int -> PeerMemoryFeatureFlagBits -> 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 PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> IO ()
$cpoke :: Ptr PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> IO ()
peek :: Ptr PeerMemoryFeatureFlagBits -> IO PeerMemoryFeatureFlagBits
$cpeek :: Ptr PeerMemoryFeatureFlagBits -> IO PeerMemoryFeatureFlagBits
pokeByteOff :: Ptr b -> Int -> PeerMemoryFeatureFlagBits -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> PeerMemoryFeatureFlagBits -> IO ()
peekByteOff :: Ptr b -> Int -> IO PeerMemoryFeatureFlagBits
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PeerMemoryFeatureFlagBits
pokeElemOff :: Ptr PeerMemoryFeatureFlagBits
-> Int -> PeerMemoryFeatureFlagBits -> IO ()
$cpokeElemOff :: Ptr PeerMemoryFeatureFlagBits
-> Int -> PeerMemoryFeatureFlagBits -> IO ()
peekElemOff :: Ptr PeerMemoryFeatureFlagBits
-> Int -> IO PeerMemoryFeatureFlagBits
$cpeekElemOff :: Ptr PeerMemoryFeatureFlagBits
-> Int -> IO PeerMemoryFeatureFlagBits
alignment :: PeerMemoryFeatureFlagBits -> Int
$calignment :: PeerMemoryFeatureFlagBits -> Int
sizeOf :: PeerMemoryFeatureFlagBits -> Int
$csizeOf :: PeerMemoryFeatureFlagBits -> Int
Storable, PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits -> Zero PeerMemoryFeatureFlagBits
forall a. a -> Zero a
zero :: PeerMemoryFeatureFlagBits
$czero :: PeerMemoryFeatureFlagBits
Zero, Eq PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits
Eq PeerMemoryFeatureFlagBits =>
(PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> PeerMemoryFeatureFlagBits
-> (Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> Bool)
-> (PeerMemoryFeatureFlagBits -> Maybe Int)
-> (PeerMemoryFeatureFlagBits -> Int)
-> (PeerMemoryFeatureFlagBits -> Bool)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits)
-> (PeerMemoryFeatureFlagBits -> Int)
-> Bits PeerMemoryFeatureFlagBits
Int -> PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits -> Bool
PeerMemoryFeatureFlagBits -> Int
PeerMemoryFeatureFlagBits -> Maybe Int
PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits -> Int -> Bool
PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
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 :: PeerMemoryFeatureFlagBits -> Int
$cpopCount :: PeerMemoryFeatureFlagBits -> Int
rotateR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$crotateR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
rotateL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$crotateL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
unsafeShiftR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$cunsafeShiftR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
shiftR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$cshiftR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
unsafeShiftL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$cunsafeShiftL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
shiftL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$cshiftL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
isSigned :: PeerMemoryFeatureFlagBits -> Bool
$cisSigned :: PeerMemoryFeatureFlagBits -> Bool
bitSize :: PeerMemoryFeatureFlagBits -> Int
$cbitSize :: PeerMemoryFeatureFlagBits -> Int
bitSizeMaybe :: PeerMemoryFeatureFlagBits -> Maybe Int
$cbitSizeMaybe :: PeerMemoryFeatureFlagBits -> Maybe Int
testBit :: PeerMemoryFeatureFlagBits -> Int -> Bool
$ctestBit :: PeerMemoryFeatureFlagBits -> Int -> Bool
complementBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$ccomplementBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
clearBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$cclearBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
setBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$csetBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
bit :: Int -> PeerMemoryFeatureFlagBits
$cbit :: Int -> PeerMemoryFeatureFlagBits
zeroBits :: PeerMemoryFeatureFlagBits
$czeroBits :: PeerMemoryFeatureFlagBits
rotate :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$crotate :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
shift :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
$cshift :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits
complement :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$ccomplement :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
xor :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$cxor :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
.|. :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$c.|. :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
.&. :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$c.&. :: PeerMemoryFeatureFlagBits
-> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits
$cp1Bits :: Eq PeerMemoryFeatureFlagBits
Bits, Bits PeerMemoryFeatureFlagBits
Bits PeerMemoryFeatureFlagBits =>
(PeerMemoryFeatureFlagBits -> Int)
-> (PeerMemoryFeatureFlagBits -> Int)
-> (PeerMemoryFeatureFlagBits -> Int)
-> FiniteBits PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: PeerMemoryFeatureFlagBits -> Int
$ccountTrailingZeros :: PeerMemoryFeatureFlagBits -> Int
countLeadingZeros :: PeerMemoryFeatureFlagBits -> Int
$ccountLeadingZeros :: PeerMemoryFeatureFlagBits -> Int
finiteBitSize :: PeerMemoryFeatureFlagBits -> Int
$cfiniteBitSize :: PeerMemoryFeatureFlagBits -> Int
$cp1FiniteBits :: Bits PeerMemoryFeatureFlagBits
FiniteBits)
pattern $bPEER_MEMORY_FEATURE_COPY_SRC_BIT :: PeerMemoryFeatureFlagBits
$mPEER_MEMORY_FEATURE_COPY_SRC_BIT :: forall r.
PeerMemoryFeatureFlagBits -> (Void# -> r) -> (Void# -> r) -> r
PEER_MEMORY_FEATURE_COPY_SRC_BIT = PeerMemoryFeatureFlagBits 0x00000001
pattern $bPEER_MEMORY_FEATURE_COPY_DST_BIT :: PeerMemoryFeatureFlagBits
$mPEER_MEMORY_FEATURE_COPY_DST_BIT :: forall r.
PeerMemoryFeatureFlagBits -> (Void# -> r) -> (Void# -> r) -> r
PEER_MEMORY_FEATURE_COPY_DST_BIT = PeerMemoryFeatureFlagBits 0x00000002
pattern $bPEER_MEMORY_FEATURE_GENERIC_SRC_BIT :: PeerMemoryFeatureFlagBits
$mPEER_MEMORY_FEATURE_GENERIC_SRC_BIT :: forall r.
PeerMemoryFeatureFlagBits -> (Void# -> r) -> (Void# -> r) -> r
PEER_MEMORY_FEATURE_GENERIC_SRC_BIT = PeerMemoryFeatureFlagBits 0x00000004
pattern $bPEER_MEMORY_FEATURE_GENERIC_DST_BIT :: PeerMemoryFeatureFlagBits
$mPEER_MEMORY_FEATURE_GENERIC_DST_BIT :: forall r.
PeerMemoryFeatureFlagBits -> (Void# -> r) -> (Void# -> r) -> r
PEER_MEMORY_FEATURE_GENERIC_DST_BIT = PeerMemoryFeatureFlagBits 0x00000008
conNamePeerMemoryFeatureFlagBits :: String
conNamePeerMemoryFeatureFlagBits :: String
conNamePeerMemoryFeatureFlagBits = "PeerMemoryFeatureFlagBits"
enumPrefixPeerMemoryFeatureFlagBits :: String
enumPrefixPeerMemoryFeatureFlagBits :: String
enumPrefixPeerMemoryFeatureFlagBits = "PEER_MEMORY_FEATURE_"
showTablePeerMemoryFeatureFlagBits :: [(PeerMemoryFeatureFlagBits, String)]
showTablePeerMemoryFeatureFlagBits :: [(PeerMemoryFeatureFlagBits, String)]
showTablePeerMemoryFeatureFlagBits =
[ (PeerMemoryFeatureFlagBits
PEER_MEMORY_FEATURE_COPY_SRC_BIT , "COPY_SRC_BIT")
, (PeerMemoryFeatureFlagBits
PEER_MEMORY_FEATURE_COPY_DST_BIT , "COPY_DST_BIT")
, (PeerMemoryFeatureFlagBits
PEER_MEMORY_FEATURE_GENERIC_SRC_BIT, "GENERIC_SRC_BIT")
, (PeerMemoryFeatureFlagBits
PEER_MEMORY_FEATURE_GENERIC_DST_BIT, "GENERIC_DST_BIT")
]
instance Show PeerMemoryFeatureFlagBits where
showsPrec :: Int -> PeerMemoryFeatureFlagBits -> ShowS
showsPrec = String
-> [(PeerMemoryFeatureFlagBits, String)]
-> String
-> (PeerMemoryFeatureFlagBits -> Flags)
-> (Flags -> ShowS)
-> Int
-> PeerMemoryFeatureFlagBits
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec String
enumPrefixPeerMemoryFeatureFlagBits
[(PeerMemoryFeatureFlagBits, String)]
showTablePeerMemoryFeatureFlagBits
String
conNamePeerMemoryFeatureFlagBits
(\(PeerMemoryFeatureFlagBits 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 PeerMemoryFeatureFlagBits where
readPrec :: ReadPrec PeerMemoryFeatureFlagBits
readPrec = String
-> [(PeerMemoryFeatureFlagBits, String)]
-> String
-> (Flags -> PeerMemoryFeatureFlagBits)
-> ReadPrec PeerMemoryFeatureFlagBits
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec String
enumPrefixPeerMemoryFeatureFlagBits
[(PeerMemoryFeatureFlagBits, String)]
showTablePeerMemoryFeatureFlagBits
String
conNamePeerMemoryFeatureFlagBits
Flags -> PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits