{-# language CPP #-}
module Vulkan.Core10.Enums.StencilFaceFlagBits ( pattern STENCIL_FRONT_AND_BACK
, StencilFaceFlags
, StencilFaceFlagBits( STENCIL_FACE_FRONT_BIT
, STENCIL_FACE_BACK_BIT
, STENCIL_FACE_FRONT_AND_BACK
, ..
)
) 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)
pattern $bSTENCIL_FRONT_AND_BACK :: StencilFaceFlagBits
$mSTENCIL_FRONT_AND_BACK :: forall {r}.
StencilFaceFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
STENCIL_FRONT_AND_BACK = STENCIL_FACE_FRONT_AND_BACK
type StencilFaceFlags = StencilFaceFlagBits
newtype StencilFaceFlagBits = StencilFaceFlagBits Flags
deriving newtype (StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
$c/= :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
== :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
$c== :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
Eq, Eq StencilFaceFlagBits
StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
StencilFaceFlagBits -> StencilFaceFlagBits -> Ordering
StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
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 :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
$cmin :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
max :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
$cmax :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
>= :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
$c>= :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
> :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
$c> :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
<= :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
$c<= :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
< :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
$c< :: StencilFaceFlagBits -> StencilFaceFlagBits -> Bool
compare :: StencilFaceFlagBits -> StencilFaceFlagBits -> Ordering
$ccompare :: StencilFaceFlagBits -> StencilFaceFlagBits -> Ordering
Ord, Ptr StencilFaceFlagBits -> IO StencilFaceFlagBits
Ptr StencilFaceFlagBits -> Int -> IO StencilFaceFlagBits
Ptr StencilFaceFlagBits -> Int -> StencilFaceFlagBits -> IO ()
Ptr StencilFaceFlagBits -> StencilFaceFlagBits -> IO ()
StencilFaceFlagBits -> Int
forall b. Ptr b -> Int -> IO StencilFaceFlagBits
forall b. Ptr b -> Int -> StencilFaceFlagBits -> 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 StencilFaceFlagBits -> StencilFaceFlagBits -> IO ()
$cpoke :: Ptr StencilFaceFlagBits -> StencilFaceFlagBits -> IO ()
peek :: Ptr StencilFaceFlagBits -> IO StencilFaceFlagBits
$cpeek :: Ptr StencilFaceFlagBits -> IO StencilFaceFlagBits
pokeByteOff :: forall b. Ptr b -> Int -> StencilFaceFlagBits -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> StencilFaceFlagBits -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO StencilFaceFlagBits
$cpeekByteOff :: forall b. Ptr b -> Int -> IO StencilFaceFlagBits
pokeElemOff :: Ptr StencilFaceFlagBits -> Int -> StencilFaceFlagBits -> IO ()
$cpokeElemOff :: Ptr StencilFaceFlagBits -> Int -> StencilFaceFlagBits -> IO ()
peekElemOff :: Ptr StencilFaceFlagBits -> Int -> IO StencilFaceFlagBits
$cpeekElemOff :: Ptr StencilFaceFlagBits -> Int -> IO StencilFaceFlagBits
alignment :: StencilFaceFlagBits -> Int
$calignment :: StencilFaceFlagBits -> Int
sizeOf :: StencilFaceFlagBits -> Int
$csizeOf :: StencilFaceFlagBits -> Int
Storable, StencilFaceFlagBits
forall a. a -> Zero a
zero :: StencilFaceFlagBits
$czero :: StencilFaceFlagBits
Zero, Eq StencilFaceFlagBits
StencilFaceFlagBits
Int -> StencilFaceFlagBits
StencilFaceFlagBits -> Bool
StencilFaceFlagBits -> Int
StencilFaceFlagBits -> Maybe Int
StencilFaceFlagBits -> StencilFaceFlagBits
StencilFaceFlagBits -> Int -> Bool
StencilFaceFlagBits -> Int -> StencilFaceFlagBits
StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
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 :: StencilFaceFlagBits -> Int
$cpopCount :: StencilFaceFlagBits -> Int
rotateR :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$crotateR :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
rotateL :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$crotateL :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
unsafeShiftR :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$cunsafeShiftR :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
shiftR :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$cshiftR :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
unsafeShiftL :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$cunsafeShiftL :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
shiftL :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$cshiftL :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
isSigned :: StencilFaceFlagBits -> Bool
$cisSigned :: StencilFaceFlagBits -> Bool
bitSize :: StencilFaceFlagBits -> Int
$cbitSize :: StencilFaceFlagBits -> Int
bitSizeMaybe :: StencilFaceFlagBits -> Maybe Int
$cbitSizeMaybe :: StencilFaceFlagBits -> Maybe Int
testBit :: StencilFaceFlagBits -> Int -> Bool
$ctestBit :: StencilFaceFlagBits -> Int -> Bool
complementBit :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$ccomplementBit :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
clearBit :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$cclearBit :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
setBit :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$csetBit :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
bit :: Int -> StencilFaceFlagBits
$cbit :: Int -> StencilFaceFlagBits
zeroBits :: StencilFaceFlagBits
$czeroBits :: StencilFaceFlagBits
rotate :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$crotate :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
shift :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
$cshift :: StencilFaceFlagBits -> Int -> StencilFaceFlagBits
complement :: StencilFaceFlagBits -> StencilFaceFlagBits
$ccomplement :: StencilFaceFlagBits -> StencilFaceFlagBits
xor :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
$cxor :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
.|. :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
$c.|. :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
.&. :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
$c.&. :: StencilFaceFlagBits -> StencilFaceFlagBits -> StencilFaceFlagBits
Bits, Bits StencilFaceFlagBits
StencilFaceFlagBits -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: StencilFaceFlagBits -> Int
$ccountTrailingZeros :: StencilFaceFlagBits -> Int
countLeadingZeros :: StencilFaceFlagBits -> Int
$ccountLeadingZeros :: StencilFaceFlagBits -> Int
finiteBitSize :: StencilFaceFlagBits -> Int
$cfiniteBitSize :: StencilFaceFlagBits -> Int
FiniteBits)
pattern $bSTENCIL_FACE_FRONT_BIT :: StencilFaceFlagBits
$mSTENCIL_FACE_FRONT_BIT :: forall {r}.
StencilFaceFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
STENCIL_FACE_FRONT_BIT = StencilFaceFlagBits 0x00000001
pattern $bSTENCIL_FACE_BACK_BIT :: StencilFaceFlagBits
$mSTENCIL_FACE_BACK_BIT :: forall {r}.
StencilFaceFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
STENCIL_FACE_BACK_BIT = StencilFaceFlagBits 0x00000002
pattern $bSTENCIL_FACE_FRONT_AND_BACK :: StencilFaceFlagBits
$mSTENCIL_FACE_FRONT_AND_BACK :: forall {r}.
StencilFaceFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
STENCIL_FACE_FRONT_AND_BACK = StencilFaceFlagBits 0x00000003
conNameStencilFaceFlagBits :: String
conNameStencilFaceFlagBits :: String
conNameStencilFaceFlagBits = String
"StencilFaceFlagBits"
enumPrefixStencilFaceFlagBits :: String
enumPrefixStencilFaceFlagBits :: String
enumPrefixStencilFaceFlagBits = String
"STENCIL_FACE_"
showTableStencilFaceFlagBits :: [(StencilFaceFlagBits, String)]
showTableStencilFaceFlagBits :: [(StencilFaceFlagBits, String)]
showTableStencilFaceFlagBits =
[ (StencilFaceFlagBits
STENCIL_FACE_FRONT_BIT, String
"FRONT_BIT")
, (StencilFaceFlagBits
STENCIL_FACE_BACK_BIT, String
"BACK_BIT")
,
( StencilFaceFlagBits
STENCIL_FACE_FRONT_AND_BACK
, String
"FRONT_AND_BACK"
)
]
instance Show StencilFaceFlagBits where
showsPrec :: Int -> StencilFaceFlagBits -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixStencilFaceFlagBits
[(StencilFaceFlagBits, String)]
showTableStencilFaceFlagBits
String
conNameStencilFaceFlagBits
(\(StencilFaceFlagBits 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 StencilFaceFlagBits where
readPrec :: ReadPrec StencilFaceFlagBits
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixStencilFaceFlagBits
[(StencilFaceFlagBits, String)]
showTableStencilFaceFlagBits
String
conNameStencilFaceFlagBits
Flags -> StencilFaceFlagBits
StencilFaceFlagBits