module Data.SpirV.Reflect.Enums.ModuleFlags where

import Data.SpirV.Reflect.Enums.Common

type ModuleFlags = ModuleFlagBits

newtype ModuleFlagBits = ModuleFlagBits Word32
  deriving newtype (ModuleFlagBits -> ModuleFlagBits -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ModuleFlagBits -> ModuleFlagBits -> Bool
$c/= :: ModuleFlagBits -> ModuleFlagBits -> Bool
== :: ModuleFlagBits -> ModuleFlagBits -> Bool
$c== :: ModuleFlagBits -> ModuleFlagBits -> Bool
Eq, Eq ModuleFlagBits
ModuleFlagBits -> ModuleFlagBits -> Bool
ModuleFlagBits -> ModuleFlagBits -> Ordering
ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
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 :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
$cmin :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
max :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
$cmax :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
>= :: ModuleFlagBits -> ModuleFlagBits -> Bool
$c>= :: ModuleFlagBits -> ModuleFlagBits -> Bool
> :: ModuleFlagBits -> ModuleFlagBits -> Bool
$c> :: ModuleFlagBits -> ModuleFlagBits -> Bool
<= :: ModuleFlagBits -> ModuleFlagBits -> Bool
$c<= :: ModuleFlagBits -> ModuleFlagBits -> Bool
< :: ModuleFlagBits -> ModuleFlagBits -> Bool
$c< :: ModuleFlagBits -> ModuleFlagBits -> Bool
compare :: ModuleFlagBits -> ModuleFlagBits -> Ordering
$ccompare :: ModuleFlagBits -> ModuleFlagBits -> Ordering
Ord, Int -> ModuleFlagBits -> ShowS
[ModuleFlagBits] -> ShowS
ModuleFlagBits -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ModuleFlagBits] -> ShowS
$cshowList :: [ModuleFlagBits] -> ShowS
show :: ModuleFlagBits -> String
$cshow :: ModuleFlagBits -> String
showsPrec :: Int -> ModuleFlagBits -> ShowS
$cshowsPrec :: Int -> ModuleFlagBits -> ShowS
Show, Eq ModuleFlagBits
ModuleFlagBits
Int -> ModuleFlagBits
ModuleFlagBits -> Bool
ModuleFlagBits -> Int
ModuleFlagBits -> Maybe Int
ModuleFlagBits -> ModuleFlagBits
ModuleFlagBits -> Int -> Bool
ModuleFlagBits -> Int -> ModuleFlagBits
ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
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 :: ModuleFlagBits -> Int
$cpopCount :: ModuleFlagBits -> Int
rotateR :: ModuleFlagBits -> Int -> ModuleFlagBits
$crotateR :: ModuleFlagBits -> Int -> ModuleFlagBits
rotateL :: ModuleFlagBits -> Int -> ModuleFlagBits
$crotateL :: ModuleFlagBits -> Int -> ModuleFlagBits
unsafeShiftR :: ModuleFlagBits -> Int -> ModuleFlagBits
$cunsafeShiftR :: ModuleFlagBits -> Int -> ModuleFlagBits
shiftR :: ModuleFlagBits -> Int -> ModuleFlagBits
$cshiftR :: ModuleFlagBits -> Int -> ModuleFlagBits
unsafeShiftL :: ModuleFlagBits -> Int -> ModuleFlagBits
$cunsafeShiftL :: ModuleFlagBits -> Int -> ModuleFlagBits
shiftL :: ModuleFlagBits -> Int -> ModuleFlagBits
$cshiftL :: ModuleFlagBits -> Int -> ModuleFlagBits
isSigned :: ModuleFlagBits -> Bool
$cisSigned :: ModuleFlagBits -> Bool
bitSize :: ModuleFlagBits -> Int
$cbitSize :: ModuleFlagBits -> Int
bitSizeMaybe :: ModuleFlagBits -> Maybe Int
$cbitSizeMaybe :: ModuleFlagBits -> Maybe Int
testBit :: ModuleFlagBits -> Int -> Bool
$ctestBit :: ModuleFlagBits -> Int -> Bool
complementBit :: ModuleFlagBits -> Int -> ModuleFlagBits
$ccomplementBit :: ModuleFlagBits -> Int -> ModuleFlagBits
clearBit :: ModuleFlagBits -> Int -> ModuleFlagBits
$cclearBit :: ModuleFlagBits -> Int -> ModuleFlagBits
setBit :: ModuleFlagBits -> Int -> ModuleFlagBits
$csetBit :: ModuleFlagBits -> Int -> ModuleFlagBits
bit :: Int -> ModuleFlagBits
$cbit :: Int -> ModuleFlagBits
zeroBits :: ModuleFlagBits
$czeroBits :: ModuleFlagBits
rotate :: ModuleFlagBits -> Int -> ModuleFlagBits
$crotate :: ModuleFlagBits -> Int -> ModuleFlagBits
shift :: ModuleFlagBits -> Int -> ModuleFlagBits
$cshift :: ModuleFlagBits -> Int -> ModuleFlagBits
complement :: ModuleFlagBits -> ModuleFlagBits
$ccomplement :: ModuleFlagBits -> ModuleFlagBits
xor :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
$cxor :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
.|. :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
$c.|. :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
.&. :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
$c.&. :: ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits
Bits, Bits ModuleFlagBits
ModuleFlagBits -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: ModuleFlagBits -> Int
$ccountTrailingZeros :: ModuleFlagBits -> Int
countLeadingZeros :: ModuleFlagBits -> Int
$ccountLeadingZeros :: ModuleFlagBits -> Int
finiteBitSize :: ModuleFlagBits -> Int
$cfiniteBitSize :: ModuleFlagBits -> Int
FiniteBits)

pattern MODULE_FLAG_NONE :: ModuleFlagBits
pattern $bMODULE_FLAG_NONE :: ModuleFlagBits
$mMODULE_FLAG_NONE :: forall {r}. ModuleFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
MODULE_FLAG_NONE = ModuleFlagBits 0x00000000

pattern MODULE_FLAG_NO_COPY :: ModuleFlagBits
pattern $bMODULE_FLAG_NO_COPY :: ModuleFlagBits
$mMODULE_FLAG_NO_COPY :: forall {r}. ModuleFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
MODULE_FLAG_NO_COPY = ModuleFlagBits 0x00000001