{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE TypeSynonymInstances #-} module Data.SpirV.Enum.RawAccessChainOperands where import Data.Bits (Bits, FiniteBits, (.|.)) import Data.Word (Word32) import Foreign.Storable (Storable) type RawAccessChainOperands = RawAccessChainOperandsBits newtype RawAccessChainOperandsBits = RawAccessChainOperandsBits Word32 deriving newtype (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool) -> Eq RawAccessChainOperandsBits forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool == :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool $c/= :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool /= :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool Eq, Eq RawAccessChainOperandsBits Eq RawAccessChainOperandsBits => (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Ordering) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits) -> Ord RawAccessChainOperandsBits RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Ordering RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits 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 :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Ordering compare :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Ordering $c< :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool < :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool $c<= :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool <= :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool $c> :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool > :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool $c>= :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool >= :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> Bool $cmax :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits max :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits $cmin :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits min :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits Ord, Ptr RawAccessChainOperandsBits -> IO RawAccessChainOperandsBits Ptr RawAccessChainOperandsBits -> Int -> IO RawAccessChainOperandsBits Ptr RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits -> IO () Ptr RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> IO () RawAccessChainOperandsBits -> Int (RawAccessChainOperandsBits -> Int) -> (RawAccessChainOperandsBits -> Int) -> (Ptr RawAccessChainOperandsBits -> Int -> IO RawAccessChainOperandsBits) -> (Ptr RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits -> IO ()) -> (forall b. Ptr b -> Int -> IO RawAccessChainOperandsBits) -> (forall b. Ptr b -> Int -> RawAccessChainOperandsBits -> IO ()) -> (Ptr RawAccessChainOperandsBits -> IO RawAccessChainOperandsBits) -> (Ptr RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> IO ()) -> Storable RawAccessChainOperandsBits forall b. Ptr b -> Int -> IO RawAccessChainOperandsBits forall b. Ptr b -> Int -> RawAccessChainOperandsBits -> 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 :: RawAccessChainOperandsBits -> Int sizeOf :: RawAccessChainOperandsBits -> Int $calignment :: RawAccessChainOperandsBits -> Int alignment :: RawAccessChainOperandsBits -> Int $cpeekElemOff :: Ptr RawAccessChainOperandsBits -> Int -> IO RawAccessChainOperandsBits peekElemOff :: Ptr RawAccessChainOperandsBits -> Int -> IO RawAccessChainOperandsBits $cpokeElemOff :: Ptr RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits -> IO () pokeElemOff :: Ptr RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits -> IO () $cpeekByteOff :: forall b. Ptr b -> Int -> IO RawAccessChainOperandsBits peekByteOff :: forall b. Ptr b -> Int -> IO RawAccessChainOperandsBits $cpokeByteOff :: forall b. Ptr b -> Int -> RawAccessChainOperandsBits -> IO () pokeByteOff :: forall b. Ptr b -> Int -> RawAccessChainOperandsBits -> IO () $cpeek :: Ptr RawAccessChainOperandsBits -> IO RawAccessChainOperandsBits peek :: Ptr RawAccessChainOperandsBits -> IO RawAccessChainOperandsBits $cpoke :: Ptr RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> IO () poke :: Ptr RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> IO () Storable, Eq RawAccessChainOperandsBits RawAccessChainOperandsBits Eq RawAccessChainOperandsBits => (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> RawAccessChainOperandsBits -> (Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> Bool) -> (RawAccessChainOperandsBits -> Maybe Int) -> (RawAccessChainOperandsBits -> Int) -> (RawAccessChainOperandsBits -> Bool) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits) -> (RawAccessChainOperandsBits -> Int) -> Bits RawAccessChainOperandsBits Int -> RawAccessChainOperandsBits RawAccessChainOperandsBits -> Bool RawAccessChainOperandsBits -> Int RawAccessChainOperandsBits -> Maybe Int RawAccessChainOperandsBits -> RawAccessChainOperandsBits RawAccessChainOperandsBits -> Int -> Bool RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits 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.&. :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits .&. :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits $c.|. :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits .|. :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits $cxor :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits xor :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits $ccomplement :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits complement :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits $cshift :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits shift :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $crotate :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits rotate :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $czeroBits :: RawAccessChainOperandsBits zeroBits :: RawAccessChainOperandsBits $cbit :: Int -> RawAccessChainOperandsBits bit :: Int -> RawAccessChainOperandsBits $csetBit :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits setBit :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $cclearBit :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits clearBit :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $ccomplementBit :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits complementBit :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $ctestBit :: RawAccessChainOperandsBits -> Int -> Bool testBit :: RawAccessChainOperandsBits -> Int -> Bool $cbitSizeMaybe :: RawAccessChainOperandsBits -> Maybe Int bitSizeMaybe :: RawAccessChainOperandsBits -> Maybe Int $cbitSize :: RawAccessChainOperandsBits -> Int bitSize :: RawAccessChainOperandsBits -> Int $cisSigned :: RawAccessChainOperandsBits -> Bool isSigned :: RawAccessChainOperandsBits -> Bool $cshiftL :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits shiftL :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $cunsafeShiftL :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits unsafeShiftL :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $cshiftR :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits shiftR :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $cunsafeShiftR :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits unsafeShiftR :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $crotateL :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits rotateL :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $crotateR :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits rotateR :: RawAccessChainOperandsBits -> Int -> RawAccessChainOperandsBits $cpopCount :: RawAccessChainOperandsBits -> Int popCount :: RawAccessChainOperandsBits -> Int Bits, Bits RawAccessChainOperandsBits Bits RawAccessChainOperandsBits => (RawAccessChainOperandsBits -> Int) -> (RawAccessChainOperandsBits -> Int) -> (RawAccessChainOperandsBits -> Int) -> FiniteBits RawAccessChainOperandsBits RawAccessChainOperandsBits -> Int forall b. Bits b => (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b $cfiniteBitSize :: RawAccessChainOperandsBits -> Int finiteBitSize :: RawAccessChainOperandsBits -> Int $ccountLeadingZeros :: RawAccessChainOperandsBits -> Int countLeadingZeros :: RawAccessChainOperandsBits -> Int $ccountTrailingZeros :: RawAccessChainOperandsBits -> Int countTrailingZeros :: RawAccessChainOperandsBits -> Int FiniteBits) instance Semigroup RawAccessChainOperands where (RawAccessChainOperandsBits Word32 a) <> :: RawAccessChainOperandsBits -> RawAccessChainOperandsBits -> RawAccessChainOperandsBits <> (RawAccessChainOperandsBits Word32 b) = Word32 -> RawAccessChainOperandsBits RawAccessChainOperandsBits (Word32 a Word32 -> Word32 -> Word32 forall a. Bits a => a -> a -> a .|. Word32 b) instance Monoid RawAccessChainOperands where mempty :: RawAccessChainOperandsBits mempty = Word32 -> RawAccessChainOperandsBits RawAccessChainOperandsBits Word32 0 pattern RobustnessPerComponentNV :: RawAccessChainOperandsBits pattern $mRobustnessPerComponentNV :: forall {r}. RawAccessChainOperandsBits -> ((# #) -> r) -> ((# #) -> r) -> r $bRobustnessPerComponentNV :: RawAccessChainOperandsBits RobustnessPerComponentNV = RawAccessChainOperandsBits 0x00000001 pattern RobustnessPerElementNV :: RawAccessChainOperandsBits pattern $mRobustnessPerElementNV :: forall {r}. RawAccessChainOperandsBits -> ((# #) -> r) -> ((# #) -> r) -> r $bRobustnessPerElementNV :: RawAccessChainOperandsBits RobustnessPerElementNV = RawAccessChainOperandsBits 0x00000002