{-# language CPP #-}
module Vulkan.Core11.Enums.PointClippingBehavior (PointClippingBehavior( POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
, POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
, ..
)) where
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showsPrec)
import Vulkan.Zero (Zero)
import Foreign.Storable (Storable)
import Data.Int (Int32)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
newtype PointClippingBehavior = PointClippingBehavior Int32
deriving newtype (PointClippingBehavior -> PointClippingBehavior -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PointClippingBehavior -> PointClippingBehavior -> Bool
$c/= :: PointClippingBehavior -> PointClippingBehavior -> Bool
== :: PointClippingBehavior -> PointClippingBehavior -> Bool
$c== :: PointClippingBehavior -> PointClippingBehavior -> Bool
Eq, Eq PointClippingBehavior
PointClippingBehavior -> PointClippingBehavior -> Bool
PointClippingBehavior -> PointClippingBehavior -> Ordering
PointClippingBehavior
-> PointClippingBehavior -> PointClippingBehavior
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 :: PointClippingBehavior
-> PointClippingBehavior -> PointClippingBehavior
$cmin :: PointClippingBehavior
-> PointClippingBehavior -> PointClippingBehavior
max :: PointClippingBehavior
-> PointClippingBehavior -> PointClippingBehavior
$cmax :: PointClippingBehavior
-> PointClippingBehavior -> PointClippingBehavior
>= :: PointClippingBehavior -> PointClippingBehavior -> Bool
$c>= :: PointClippingBehavior -> PointClippingBehavior -> Bool
> :: PointClippingBehavior -> PointClippingBehavior -> Bool
$c> :: PointClippingBehavior -> PointClippingBehavior -> Bool
<= :: PointClippingBehavior -> PointClippingBehavior -> Bool
$c<= :: PointClippingBehavior -> PointClippingBehavior -> Bool
< :: PointClippingBehavior -> PointClippingBehavior -> Bool
$c< :: PointClippingBehavior -> PointClippingBehavior -> Bool
compare :: PointClippingBehavior -> PointClippingBehavior -> Ordering
$ccompare :: PointClippingBehavior -> PointClippingBehavior -> Ordering
Ord, Ptr PointClippingBehavior -> IO PointClippingBehavior
Ptr PointClippingBehavior -> Int -> IO PointClippingBehavior
Ptr PointClippingBehavior -> Int -> PointClippingBehavior -> IO ()
Ptr PointClippingBehavior -> PointClippingBehavior -> IO ()
PointClippingBehavior -> Int
forall b. Ptr b -> Int -> IO PointClippingBehavior
forall b. Ptr b -> Int -> PointClippingBehavior -> 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
poke :: Ptr PointClippingBehavior -> PointClippingBehavior -> IO ()
$cpoke :: Ptr PointClippingBehavior -> PointClippingBehavior -> IO ()
peek :: Ptr PointClippingBehavior -> IO PointClippingBehavior
$cpeek :: Ptr PointClippingBehavior -> IO PointClippingBehavior
pokeByteOff :: forall b. Ptr b -> Int -> PointClippingBehavior -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> PointClippingBehavior -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO PointClippingBehavior
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PointClippingBehavior
pokeElemOff :: Ptr PointClippingBehavior -> Int -> PointClippingBehavior -> IO ()
$cpokeElemOff :: Ptr PointClippingBehavior -> Int -> PointClippingBehavior -> IO ()
peekElemOff :: Ptr PointClippingBehavior -> Int -> IO PointClippingBehavior
$cpeekElemOff :: Ptr PointClippingBehavior -> Int -> IO PointClippingBehavior
alignment :: PointClippingBehavior -> Int
$calignment :: PointClippingBehavior -> Int
sizeOf :: PointClippingBehavior -> Int
$csizeOf :: PointClippingBehavior -> Int
Storable, PointClippingBehavior
forall a. a -> Zero a
zero :: PointClippingBehavior
$czero :: PointClippingBehavior
Zero)
pattern $bPOINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES :: PointClippingBehavior
$mPOINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES :: forall {r}.
PointClippingBehavior -> ((# #) -> r) -> ((# #) -> r) -> r
POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = PointClippingBehavior 0
pattern $bPOINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY :: PointClippingBehavior
$mPOINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY :: forall {r}.
PointClippingBehavior -> ((# #) -> r) -> ((# #) -> r) -> r
POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY = PointClippingBehavior 1
{-# COMPLETE
POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
, POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY ::
PointClippingBehavior
#-}
conNamePointClippingBehavior :: String
conNamePointClippingBehavior :: String
conNamePointClippingBehavior = String
"PointClippingBehavior"
enumPrefixPointClippingBehavior :: String
enumPrefixPointClippingBehavior :: String
enumPrefixPointClippingBehavior = String
"POINT_CLIPPING_BEHAVIOR_"
showTablePointClippingBehavior :: [(PointClippingBehavior, String)]
showTablePointClippingBehavior :: [(PointClippingBehavior, String)]
showTablePointClippingBehavior =
[
( PointClippingBehavior
POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
, String
"ALL_CLIP_PLANES"
)
,
( PointClippingBehavior
POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
, String
"USER_CLIP_PLANES_ONLY"
)
]
instance Show PointClippingBehavior where
showsPrec :: Int -> PointClippingBehavior -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixPointClippingBehavior
[(PointClippingBehavior, String)]
showTablePointClippingBehavior
String
conNamePointClippingBehavior
(\(PointClippingBehavior Int32
x) -> Int32
x)
(forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read PointClippingBehavior where
readPrec :: ReadPrec PointClippingBehavior
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixPointClippingBehavior
[(PointClippingBehavior, String)]
showTablePointClippingBehavior
String
conNamePointClippingBehavior
Int32 -> PointClippingBehavior
PointClippingBehavior