{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE TypeSynonymInstances #-} module Data.SpirV.Enum.OverflowModes where import Data.Word (Word32) import Foreign.Storable (Storable) newtype OverflowModes = OverflowModes Word32 deriving newtype (OverflowModes -> OverflowModes -> Bool (OverflowModes -> OverflowModes -> Bool) -> (OverflowModes -> OverflowModes -> Bool) -> Eq OverflowModes forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: OverflowModes -> OverflowModes -> Bool == :: OverflowModes -> OverflowModes -> Bool $c/= :: OverflowModes -> OverflowModes -> Bool /= :: OverflowModes -> OverflowModes -> Bool Eq, Eq OverflowModes Eq OverflowModes => (OverflowModes -> OverflowModes -> Ordering) -> (OverflowModes -> OverflowModes -> Bool) -> (OverflowModes -> OverflowModes -> Bool) -> (OverflowModes -> OverflowModes -> Bool) -> (OverflowModes -> OverflowModes -> Bool) -> (OverflowModes -> OverflowModes -> OverflowModes) -> (OverflowModes -> OverflowModes -> OverflowModes) -> Ord OverflowModes OverflowModes -> OverflowModes -> Bool OverflowModes -> OverflowModes -> Ordering OverflowModes -> OverflowModes -> OverflowModes 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 :: OverflowModes -> OverflowModes -> Ordering compare :: OverflowModes -> OverflowModes -> Ordering $c< :: OverflowModes -> OverflowModes -> Bool < :: OverflowModes -> OverflowModes -> Bool $c<= :: OverflowModes -> OverflowModes -> Bool <= :: OverflowModes -> OverflowModes -> Bool $c> :: OverflowModes -> OverflowModes -> Bool > :: OverflowModes -> OverflowModes -> Bool $c>= :: OverflowModes -> OverflowModes -> Bool >= :: OverflowModes -> OverflowModes -> Bool $cmax :: OverflowModes -> OverflowModes -> OverflowModes max :: OverflowModes -> OverflowModes -> OverflowModes $cmin :: OverflowModes -> OverflowModes -> OverflowModes min :: OverflowModes -> OverflowModes -> OverflowModes Ord, Ptr OverflowModes -> IO OverflowModes Ptr OverflowModes -> Int -> IO OverflowModes Ptr OverflowModes -> Int -> OverflowModes -> IO () Ptr OverflowModes -> OverflowModes -> IO () OverflowModes -> Int (OverflowModes -> Int) -> (OverflowModes -> Int) -> (Ptr OverflowModes -> Int -> IO OverflowModes) -> (Ptr OverflowModes -> Int -> OverflowModes -> IO ()) -> (forall b. Ptr b -> Int -> IO OverflowModes) -> (forall b. Ptr b -> Int -> OverflowModes -> IO ()) -> (Ptr OverflowModes -> IO OverflowModes) -> (Ptr OverflowModes -> OverflowModes -> IO ()) -> Storable OverflowModes forall b. Ptr b -> Int -> IO OverflowModes forall b. Ptr b -> Int -> OverflowModes -> 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 :: OverflowModes -> Int sizeOf :: OverflowModes -> Int $calignment :: OverflowModes -> Int alignment :: OverflowModes -> Int $cpeekElemOff :: Ptr OverflowModes -> Int -> IO OverflowModes peekElemOff :: Ptr OverflowModes -> Int -> IO OverflowModes $cpokeElemOff :: Ptr OverflowModes -> Int -> OverflowModes -> IO () pokeElemOff :: Ptr OverflowModes -> Int -> OverflowModes -> IO () $cpeekByteOff :: forall b. Ptr b -> Int -> IO OverflowModes peekByteOff :: forall b. Ptr b -> Int -> IO OverflowModes $cpokeByteOff :: forall b. Ptr b -> Int -> OverflowModes -> IO () pokeByteOff :: forall b. Ptr b -> Int -> OverflowModes -> IO () $cpeek :: Ptr OverflowModes -> IO OverflowModes peek :: Ptr OverflowModes -> IO OverflowModes $cpoke :: Ptr OverflowModes -> OverflowModes -> IO () poke :: Ptr OverflowModes -> OverflowModes -> IO () Storable) instance Show OverflowModes where showsPrec :: Int -> OverflowModes -> ShowS showsPrec Int p (OverflowModes Word32 v) = case Word32 v of Word32 0 -> String -> ShowS showString String "WRAP" Word32 1 -> String -> ShowS showString String "SAT" Word32 2 -> String -> ShowS showString String "SAT_ZERO" Word32 3 -> String -> ShowS showString String "SAT_SYM" 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 "OverflowModes " 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 WRAP :: OverflowModes pattern $mWRAP :: forall {r}. OverflowModes -> ((# #) -> r) -> ((# #) -> r) -> r $bWRAP :: OverflowModes WRAP = OverflowModes 0 pattern SAT :: OverflowModes pattern $mSAT :: forall {r}. OverflowModes -> ((# #) -> r) -> ((# #) -> r) -> r $bSAT :: OverflowModes SAT = OverflowModes 1 pattern SAT_ZERO :: OverflowModes pattern $mSAT_ZERO :: forall {r}. OverflowModes -> ((# #) -> r) -> ((# #) -> r) -> r $bSAT_ZERO :: OverflowModes SAT_ZERO = OverflowModes 2 pattern SAT_SYM :: OverflowModes pattern $mSAT_SYM :: forall {r}. OverflowModes -> ((# #) -> r) -> ((# #) -> r) -> r $bSAT_SYM :: OverflowModes SAT_SYM = OverflowModes 3