module Data.SpirV.Reflect.Enums.DecorationFlags where

import Data.SpirV.Reflect.Enums.Common

type DecorationFlags = DecorationFlagBits

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

pattern DECORATION_NONE :: DecorationFlagBits
pattern $bDECORATION_NONE :: DecorationFlagBits
$mDECORATION_NONE :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_NONE = DecorationFlagBits 0x00000000

pattern DECORATION_BLOCK :: DecorationFlagBits
pattern $bDECORATION_BLOCK :: DecorationFlagBits
$mDECORATION_BLOCK :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_BLOCK = DecorationFlagBits 0x00000001

pattern DECORATION_BUFFER_BLOCK :: DecorationFlagBits
pattern $bDECORATION_BUFFER_BLOCK :: DecorationFlagBits
$mDECORATION_BUFFER_BLOCK :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_BUFFER_BLOCK = DecorationFlagBits 0x00000002

pattern DECORATION_ROW_MAJOR :: DecorationFlagBits
pattern $bDECORATION_ROW_MAJOR :: DecorationFlagBits
$mDECORATION_ROW_MAJOR :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_ROW_MAJOR = DecorationFlagBits 0x00000004

pattern DECORATION_COLUMN_MAJOR :: DecorationFlagBits
pattern $bDECORATION_COLUMN_MAJOR :: DecorationFlagBits
$mDECORATION_COLUMN_MAJOR :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_COLUMN_MAJOR = DecorationFlagBits 0x00000008

pattern DECORATION_BUILT_IN :: DecorationFlagBits
pattern $bDECORATION_BUILT_IN :: DecorationFlagBits
$mDECORATION_BUILT_IN :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_BUILT_IN = DecorationFlagBits 0x00000010

pattern DECORATION_NOPERSPECTIVE :: DecorationFlagBits
pattern $bDECORATION_NOPERSPECTIVE :: DecorationFlagBits
$mDECORATION_NOPERSPECTIVE :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_NOPERSPECTIVE = DecorationFlagBits 0x00000020

pattern DECORATION_FLAT :: DecorationFlagBits
pattern $bDECORATION_FLAT :: DecorationFlagBits
$mDECORATION_FLAT :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_FLAT = DecorationFlagBits 0x00000040

pattern DECORATION_NON_WRITABLE :: DecorationFlagBits
pattern $bDECORATION_NON_WRITABLE :: DecorationFlagBits
$mDECORATION_NON_WRITABLE :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_NON_WRITABLE = DecorationFlagBits 0x00000080

pattern DECORATION_RELAXED_PRECISION :: DecorationFlagBits
pattern $bDECORATION_RELAXED_PRECISION :: DecorationFlagBits
$mDECORATION_RELAXED_PRECISION :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_RELAXED_PRECISION = DecorationFlagBits 0x00000100

pattern DECORATION_NON_READABLE :: DecorationFlagBits
pattern $bDECORATION_NON_READABLE :: DecorationFlagBits
$mDECORATION_NON_READABLE :: forall r. DecorationFlagBits -> (Void# -> r) -> (Void# -> r) -> r
DECORATION_NON_READABLE = DecorationFlagBits 0x00000200