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
(ModuleFlagBits -> ModuleFlagBits -> Bool)
-> (ModuleFlagBits -> ModuleFlagBits -> Bool) -> Eq ModuleFlagBits
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
Eq ModuleFlagBits
-> (ModuleFlagBits -> ModuleFlagBits -> Ordering)
-> (ModuleFlagBits -> ModuleFlagBits -> Bool)
-> (ModuleFlagBits -> ModuleFlagBits -> Bool)
-> (ModuleFlagBits -> ModuleFlagBits -> Bool)
-> (ModuleFlagBits -> ModuleFlagBits -> Bool)
-> (ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits)
-> (ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits)
-> Ord 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
$cp1Ord :: Eq ModuleFlagBits
Ord, Int -> ModuleFlagBits -> ShowS
[ModuleFlagBits] -> ShowS
ModuleFlagBits -> String
(Int -> ModuleFlagBits -> ShowS)
-> (ModuleFlagBits -> String)
-> ([ModuleFlagBits] -> ShowS)
-> Show ModuleFlagBits
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
Eq ModuleFlagBits
-> (ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits)
-> (ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits)
-> (ModuleFlagBits -> ModuleFlagBits -> ModuleFlagBits)
-> (ModuleFlagBits -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> ModuleFlagBits
-> (Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> Bool)
-> (ModuleFlagBits -> Maybe Int)
-> (ModuleFlagBits -> Int)
-> (ModuleFlagBits -> Bool)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int -> ModuleFlagBits)
-> (ModuleFlagBits -> Int)
-> Bits 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
$cp1Bits :: Eq ModuleFlagBits
Bits, Bits ModuleFlagBits
Bits ModuleFlagBits
-> (ModuleFlagBits -> Int)
-> (ModuleFlagBits -> Int)
-> (ModuleFlagBits -> Int)
-> FiniteBits 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
$cp1FiniteBits :: Bits ModuleFlagBits
FiniteBits)

pattern MODULE_FLAG_NONE :: ModuleFlagBits
pattern $bMODULE_FLAG_NONE :: ModuleFlagBits
$mMODULE_FLAG_NONE :: forall r. ModuleFlagBits -> (Void# -> r) -> (Void# -> 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 -> (Void# -> r) -> (Void# -> r) -> r
MODULE_FLAG_NO_COPY = ModuleFlagBits 0x00000001