{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE TypeSynonymInstances #-} module Data.SpirV.Enum.StoreCacheControl where import Data.Word (Word32) import Foreign.Storable (Storable) newtype StoreCacheControl = StoreCacheControl Word32 deriving newtype (StoreCacheControl -> StoreCacheControl -> Bool (StoreCacheControl -> StoreCacheControl -> Bool) -> (StoreCacheControl -> StoreCacheControl -> Bool) -> Eq StoreCacheControl forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: StoreCacheControl -> StoreCacheControl -> Bool == :: StoreCacheControl -> StoreCacheControl -> Bool $c/= :: StoreCacheControl -> StoreCacheControl -> Bool /= :: StoreCacheControl -> StoreCacheControl -> Bool Eq, Eq StoreCacheControl Eq StoreCacheControl => (StoreCacheControl -> StoreCacheControl -> Ordering) -> (StoreCacheControl -> StoreCacheControl -> Bool) -> (StoreCacheControl -> StoreCacheControl -> Bool) -> (StoreCacheControl -> StoreCacheControl -> Bool) -> (StoreCacheControl -> StoreCacheControl -> Bool) -> (StoreCacheControl -> StoreCacheControl -> StoreCacheControl) -> (StoreCacheControl -> StoreCacheControl -> StoreCacheControl) -> Ord StoreCacheControl StoreCacheControl -> StoreCacheControl -> Bool StoreCacheControl -> StoreCacheControl -> Ordering StoreCacheControl -> StoreCacheControl -> StoreCacheControl 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 :: StoreCacheControl -> StoreCacheControl -> Ordering compare :: StoreCacheControl -> StoreCacheControl -> Ordering $c< :: StoreCacheControl -> StoreCacheControl -> Bool < :: StoreCacheControl -> StoreCacheControl -> Bool $c<= :: StoreCacheControl -> StoreCacheControl -> Bool <= :: StoreCacheControl -> StoreCacheControl -> Bool $c> :: StoreCacheControl -> StoreCacheControl -> Bool > :: StoreCacheControl -> StoreCacheControl -> Bool $c>= :: StoreCacheControl -> StoreCacheControl -> Bool >= :: StoreCacheControl -> StoreCacheControl -> Bool $cmax :: StoreCacheControl -> StoreCacheControl -> StoreCacheControl max :: StoreCacheControl -> StoreCacheControl -> StoreCacheControl $cmin :: StoreCacheControl -> StoreCacheControl -> StoreCacheControl min :: StoreCacheControl -> StoreCacheControl -> StoreCacheControl Ord, Ptr StoreCacheControl -> IO StoreCacheControl Ptr StoreCacheControl -> Int -> IO StoreCacheControl Ptr StoreCacheControl -> Int -> StoreCacheControl -> IO () Ptr StoreCacheControl -> StoreCacheControl -> IO () StoreCacheControl -> Int (StoreCacheControl -> Int) -> (StoreCacheControl -> Int) -> (Ptr StoreCacheControl -> Int -> IO StoreCacheControl) -> (Ptr StoreCacheControl -> Int -> StoreCacheControl -> IO ()) -> (forall b. Ptr b -> Int -> IO StoreCacheControl) -> (forall b. Ptr b -> Int -> StoreCacheControl -> IO ()) -> (Ptr StoreCacheControl -> IO StoreCacheControl) -> (Ptr StoreCacheControl -> StoreCacheControl -> IO ()) -> Storable StoreCacheControl forall b. Ptr b -> Int -> IO StoreCacheControl forall b. Ptr b -> Int -> StoreCacheControl -> 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 :: StoreCacheControl -> Int sizeOf :: StoreCacheControl -> Int $calignment :: StoreCacheControl -> Int alignment :: StoreCacheControl -> Int $cpeekElemOff :: Ptr StoreCacheControl -> Int -> IO StoreCacheControl peekElemOff :: Ptr StoreCacheControl -> Int -> IO StoreCacheControl $cpokeElemOff :: Ptr StoreCacheControl -> Int -> StoreCacheControl -> IO () pokeElemOff :: Ptr StoreCacheControl -> Int -> StoreCacheControl -> IO () $cpeekByteOff :: forall b. Ptr b -> Int -> IO StoreCacheControl peekByteOff :: forall b. Ptr b -> Int -> IO StoreCacheControl $cpokeByteOff :: forall b. Ptr b -> Int -> StoreCacheControl -> IO () pokeByteOff :: forall b. Ptr b -> Int -> StoreCacheControl -> IO () $cpeek :: Ptr StoreCacheControl -> IO StoreCacheControl peek :: Ptr StoreCacheControl -> IO StoreCacheControl $cpoke :: Ptr StoreCacheControl -> StoreCacheControl -> IO () poke :: Ptr StoreCacheControl -> StoreCacheControl -> IO () Storable) instance Show StoreCacheControl where showsPrec :: Int -> StoreCacheControl -> ShowS showsPrec Int p (StoreCacheControl Word32 v) = case Word32 v of Word32 0 -> String -> ShowS showString String "UncachedINTEL" Word32 1 -> String -> ShowS showString String "WriteThroughINTEL" Word32 2 -> String -> ShowS showString String "WriteBackINTEL" Word32 3 -> String -> ShowS showString String "StreamingINTEL" Word32 x -> Bool -> ShowS -> ShowS showParen (Int p Int -> Int -> Bool forall a. Ord a => a -> a -> Bool > Int 10) (ShowS -> ShowS) -> ShowS -> ShowS forall a b. (a -> b) -> a -> b $ String -> ShowS showString String "StoreCacheControl " ShowS -> ShowS -> ShowS forall b c a. (b -> c) -> (a -> b) -> a -> c . Int -> Word32 -> ShowS forall a. Show a => Int -> a -> ShowS showsPrec (Int p Int -> Int -> Int forall a. Num a => a -> a -> a + Int 1) Word32 x pattern UncachedINTEL :: StoreCacheControl pattern $mUncachedINTEL :: forall {r}. StoreCacheControl -> ((# #) -> r) -> ((# #) -> r) -> r $bUncachedINTEL :: StoreCacheControl UncachedINTEL = StoreCacheControl 0 pattern WriteThroughINTEL :: StoreCacheControl pattern $mWriteThroughINTEL :: forall {r}. StoreCacheControl -> ((# #) -> r) -> ((# #) -> r) -> r $bWriteThroughINTEL :: StoreCacheControl WriteThroughINTEL = StoreCacheControl 1 pattern WriteBackINTEL :: StoreCacheControl pattern $mWriteBackINTEL :: forall {r}. StoreCacheControl -> ((# #) -> r) -> ((# #) -> r) -> r $bWriteBackINTEL :: StoreCacheControl WriteBackINTEL = StoreCacheControl 2 pattern StreamingINTEL :: StoreCacheControl pattern $mStreamingINTEL :: forall {r}. StoreCacheControl -> ((# #) -> r) -> ((# #) -> r) -> r $bStreamingINTEL :: StoreCacheControl StreamingINTEL = StoreCacheControl 3