{-# OPTIONS_HADDOCK ignore-exports#-}
{-# LANGUAGE DataKinds                  #-}
{-# LANGUAGE DeriveDataTypeable         #-}
{-# LANGUAGE DeriveGeneric              #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE PatternSynonyms            #-}
{-# LANGUAGE Strict                     #-}
module Graphics.Vulkan.Types.Enum.TessellationDomainOrigin
       (VkTessellationDomainOrigin(VkTessellationDomainOrigin,
                                   VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,
                                   VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT),
        VkTessellationDomainOriginKHR(..))
       where
import           Data.Bits                       (Bits, FiniteBits)
import           Data.Coerce                     (coerce)
import           Data.Data                       (Data)
import           Foreign.Storable                (Storable)
import           GHC.Generics                    (Generic)
import           GHC.Read                        (choose, expectP)
import           Graphics.Vulkan.Marshal         (Int32)
import           Graphics.Vulkan.Types.BaseTypes (VkFlags)
import           Text.ParserCombinators.ReadPrec (prec, step, (+++))
import           Text.Read                       (Read (..), parens)
import           Text.Read.Lex                   (Lexeme (..))

-- | type = @enum@
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkTessellationDomainOrigin VkTessellationDomainOrigin registry at www.khronos.org>
newtype VkTessellationDomainOrigin = VkTessellationDomainOrigin Int32
                                       deriving (VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
(VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> Bool)
-> Eq VkTessellationDomainOrigin
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
$c/= :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
== :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
$c== :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
Eq, Eq VkTessellationDomainOrigin
Eq VkTessellationDomainOrigin
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> Ordering)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> Bool)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> Bool)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> Bool)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> Bool)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> Ord VkTessellationDomainOrigin
VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> Ordering
VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
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 :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$cmin :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
max :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$cmax :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
>= :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
$c>= :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
> :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
$c> :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
<= :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
$c<= :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
< :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
$c< :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin -> Bool
compare :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> Ordering
$ccompare :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> Ordering
$cp1Ord :: Eq VkTessellationDomainOrigin
Ord, Integer -> VkTessellationDomainOrigin
VkTessellationDomainOrigin -> VkTessellationDomainOrigin
VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
(VkTessellationDomainOrigin
 -> VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (Integer -> VkTessellationDomainOrigin)
-> Num VkTessellationDomainOrigin
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> VkTessellationDomainOrigin
$cfromInteger :: Integer -> VkTessellationDomainOrigin
signum :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$csignum :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
abs :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$cabs :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
negate :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$cnegate :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
* :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$c* :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
- :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$c- :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
+ :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$c+ :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
Num, VkTessellationDomainOrigin
VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> Bounded VkTessellationDomainOrigin
forall a. a -> a -> Bounded a
maxBound :: VkTessellationDomainOrigin
$cmaxBound :: VkTessellationDomainOrigin
minBound :: VkTessellationDomainOrigin
$cminBound :: VkTessellationDomainOrigin
Bounded, Ptr b -> Int -> IO VkTessellationDomainOrigin
Ptr b -> Int -> VkTessellationDomainOrigin -> IO ()
Ptr VkTessellationDomainOrigin -> IO VkTessellationDomainOrigin
Ptr VkTessellationDomainOrigin
-> Int -> IO VkTessellationDomainOrigin
Ptr VkTessellationDomainOrigin
-> Int -> VkTessellationDomainOrigin -> IO ()
Ptr VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> IO ()
VkTessellationDomainOrigin -> Int
(VkTessellationDomainOrigin -> Int)
-> (VkTessellationDomainOrigin -> Int)
-> (Ptr VkTessellationDomainOrigin
    -> Int -> IO VkTessellationDomainOrigin)
-> (Ptr VkTessellationDomainOrigin
    -> Int -> VkTessellationDomainOrigin -> IO ())
-> (forall b. Ptr b -> Int -> IO VkTessellationDomainOrigin)
-> (forall b. Ptr b -> Int -> VkTessellationDomainOrigin -> IO ())
-> (Ptr VkTessellationDomainOrigin
    -> IO VkTessellationDomainOrigin)
-> (Ptr VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> IO ())
-> Storable VkTessellationDomainOrigin
forall b. Ptr b -> Int -> IO VkTessellationDomainOrigin
forall b. Ptr b -> Int -> VkTessellationDomainOrigin -> 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 VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> IO ()
$cpoke :: Ptr VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> IO ()
peek :: Ptr VkTessellationDomainOrigin -> IO VkTessellationDomainOrigin
$cpeek :: Ptr VkTessellationDomainOrigin -> IO VkTessellationDomainOrigin
pokeByteOff :: Ptr b -> Int -> VkTessellationDomainOrigin -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> VkTessellationDomainOrigin -> IO ()
peekByteOff :: Ptr b -> Int -> IO VkTessellationDomainOrigin
$cpeekByteOff :: forall b. Ptr b -> Int -> IO VkTessellationDomainOrigin
pokeElemOff :: Ptr VkTessellationDomainOrigin
-> Int -> VkTessellationDomainOrigin -> IO ()
$cpokeElemOff :: Ptr VkTessellationDomainOrigin
-> Int -> VkTessellationDomainOrigin -> IO ()
peekElemOff :: Ptr VkTessellationDomainOrigin
-> Int -> IO VkTessellationDomainOrigin
$cpeekElemOff :: Ptr VkTessellationDomainOrigin
-> Int -> IO VkTessellationDomainOrigin
alignment :: VkTessellationDomainOrigin -> Int
$calignment :: VkTessellationDomainOrigin -> Int
sizeOf :: VkTessellationDomainOrigin -> Int
$csizeOf :: VkTessellationDomainOrigin -> Int
Storable, Int -> VkTessellationDomainOrigin
VkTessellationDomainOrigin -> Int
VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
VkTessellationDomainOrigin -> VkTessellationDomainOrigin
VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
VkTessellationDomainOrigin
-> VkTessellationDomainOrigin
-> VkTessellationDomainOrigin
-> [VkTessellationDomainOrigin]
(VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (Int -> VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin -> Int)
-> (VkTessellationDomainOrigin -> [VkTessellationDomainOrigin])
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin])
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin])
-> (VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin
    -> VkTessellationDomainOrigin
    -> [VkTessellationDomainOrigin])
-> Enum VkTessellationDomainOrigin
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin
-> VkTessellationDomainOrigin
-> [VkTessellationDomainOrigin]
$cenumFromThenTo :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin
-> VkTessellationDomainOrigin
-> [VkTessellationDomainOrigin]
enumFromTo :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
$cenumFromTo :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
enumFromThen :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
$cenumFromThen :: VkTessellationDomainOrigin
-> VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
enumFrom :: VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
$cenumFrom :: VkTessellationDomainOrigin -> [VkTessellationDomainOrigin]
fromEnum :: VkTessellationDomainOrigin -> Int
$cfromEnum :: VkTessellationDomainOrigin -> Int
toEnum :: Int -> VkTessellationDomainOrigin
$ctoEnum :: Int -> VkTessellationDomainOrigin
pred :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$cpred :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
succ :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$csucc :: VkTessellationDomainOrigin -> VkTessellationDomainOrigin
Enum, Typeable VkTessellationDomainOrigin
DataType
Constr
Typeable VkTessellationDomainOrigin
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkTessellationDomainOrigin
    -> c VkTessellationDomainOrigin)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c VkTessellationDomainOrigin)
-> (VkTessellationDomainOrigin -> Constr)
-> (VkTessellationDomainOrigin -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c VkTessellationDomainOrigin))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c VkTessellationDomainOrigin))
-> ((forall b. Data b => b -> b)
    -> VkTessellationDomainOrigin -> VkTessellationDomainOrigin)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkTessellationDomainOrigin
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkTessellationDomainOrigin
    -> r)
-> (forall u.
    (forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin)
-> Data VkTessellationDomainOrigin
VkTessellationDomainOrigin -> DataType
VkTessellationDomainOrigin -> Constr
(forall b. Data b => b -> b)
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOrigin
-> c VkTessellationDomainOrigin
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkTessellationDomainOrigin
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> u
forall u.
(forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOrigin
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOrigin
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkTessellationDomainOrigin
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOrigin
-> c VkTessellationDomainOrigin
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkTessellationDomainOrigin)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkTessellationDomainOrigin)
$cVkTessellationDomainOrigin :: Constr
$tVkTessellationDomainOrigin :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
gmapMp :: (forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
gmapM :: (forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOrigin -> m VkTessellationDomainOrigin
gmapQi :: Int
-> (forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> u
gmapQ :: (forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> VkTessellationDomainOrigin -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOrigin
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOrigin
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOrigin
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOrigin
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
$cgmapT :: (forall b. Data b => b -> b)
-> VkTessellationDomainOrigin -> VkTessellationDomainOrigin
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkTessellationDomainOrigin)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkTessellationDomainOrigin)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c VkTessellationDomainOrigin)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkTessellationDomainOrigin)
dataTypeOf :: VkTessellationDomainOrigin -> DataType
$cdataTypeOf :: VkTessellationDomainOrigin -> DataType
toConstr :: VkTessellationDomainOrigin -> Constr
$ctoConstr :: VkTessellationDomainOrigin -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkTessellationDomainOrigin
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c VkTessellationDomainOrigin
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOrigin
-> c VkTessellationDomainOrigin
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOrigin
-> c VkTessellationDomainOrigin
$cp1Data :: Typeable VkTessellationDomainOrigin
Data,
                                                 (forall x.
 VkTessellationDomainOrigin -> Rep VkTessellationDomainOrigin x)
-> (forall x.
    Rep VkTessellationDomainOrigin x -> VkTessellationDomainOrigin)
-> Generic VkTessellationDomainOrigin
forall x.
Rep VkTessellationDomainOrigin x -> VkTessellationDomainOrigin
forall x.
VkTessellationDomainOrigin -> Rep VkTessellationDomainOrigin x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep VkTessellationDomainOrigin x -> VkTessellationDomainOrigin
$cfrom :: forall x.
VkTessellationDomainOrigin -> Rep VkTessellationDomainOrigin x
Generic)

instance Show VkTessellationDomainOrigin where
        showsPrec :: Int -> VkTessellationDomainOrigin -> ShowS
showsPrec Int
_ VkTessellationDomainOrigin
VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT
          = String -> ShowS
showString String
"VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT"
        showsPrec Int
_ VkTessellationDomainOrigin
VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT
          = String -> ShowS
showString String
"VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT"
        showsPrec Int
p (VkTessellationDomainOrigin Int32
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkTessellationDomainOrigin " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 Int32
x)

instance Read VkTessellationDomainOrigin where
        readPrec :: ReadPrec VkTessellationDomainOrigin
readPrec
          = ReadPrec VkTessellationDomainOrigin
-> ReadPrec VkTessellationDomainOrigin
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec VkTessellationDomainOrigin)]
-> ReadPrec VkTessellationDomainOrigin
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT",
                   VkTessellationDomainOrigin -> ReadPrec VkTessellationDomainOrigin
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkTessellationDomainOrigin
VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT),
                  (String
"VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT",
                   VkTessellationDomainOrigin -> ReadPrec VkTessellationDomainOrigin
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkTessellationDomainOrigin
VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT)]
                 ReadPrec VkTessellationDomainOrigin
-> ReadPrec VkTessellationDomainOrigin
-> ReadPrec VkTessellationDomainOrigin
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec VkTessellationDomainOrigin
-> ReadPrec VkTessellationDomainOrigin
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkTessellationDomainOrigin") ReadPrec ()
-> ReadPrec VkTessellationDomainOrigin
-> ReadPrec VkTessellationDomainOrigin
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (Int32 -> VkTessellationDomainOrigin
VkTessellationDomainOrigin (Int32 -> VkTessellationDomainOrigin)
-> ReadPrec Int32 -> ReadPrec VkTessellationDomainOrigin
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec Int32 -> ReadPrec Int32
forall a. ReadPrec a -> ReadPrec a
step ReadPrec Int32
forall a. Read a => ReadPrec a
readPrec)))

pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT ::
        VkTessellationDomainOrigin

pattern $bVK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT :: VkTessellationDomainOrigin
$mVK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT :: forall r.
VkTessellationDomainOrigin -> (Void# -> r) -> (Void# -> r) -> r
VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT =
        VkTessellationDomainOrigin 0

pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT ::
        VkTessellationDomainOrigin

pattern $bVK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT :: VkTessellationDomainOrigin
$mVK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT :: forall r.
VkTessellationDomainOrigin -> (Void# -> r) -> (Void# -> r) -> r
VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT =
        VkTessellationDomainOrigin 1

newtype VkTessellationDomainOriginKHR = VkTessellationDomainOriginKHR VkFlags
                                          deriving (VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
(VkTessellationDomainOriginKHR
 -> VkTessellationDomainOriginKHR -> Bool)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> Bool)
-> Eq VkTessellationDomainOriginKHR
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
$c/= :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
== :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
$c== :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
Eq, Eq VkTessellationDomainOriginKHR
Eq VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> Ordering)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> Bool)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> Bool)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> Bool)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> Bool)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> Ord VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Ordering
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
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 :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cmin :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
max :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cmax :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
>= :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
$c>= :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
> :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
$c> :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
<= :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
$c<= :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
< :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
$c< :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Bool
compare :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Ordering
$ccompare :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> Ordering
$cp1Ord :: Eq VkTessellationDomainOriginKHR
Ord, Integer -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
(VkTessellationDomainOriginKHR
 -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (Integer -> VkTessellationDomainOriginKHR)
-> Num VkTessellationDomainOriginKHR
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> VkTessellationDomainOriginKHR
$cfromInteger :: Integer -> VkTessellationDomainOriginKHR
signum :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$csignum :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
abs :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cabs :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
negate :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cnegate :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
* :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$c* :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
- :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$c- :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
+ :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$c+ :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
Num, VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> Bounded VkTessellationDomainOriginKHR
forall a. a -> a -> Bounded a
maxBound :: VkTessellationDomainOriginKHR
$cmaxBound :: VkTessellationDomainOriginKHR
minBound :: VkTessellationDomainOriginKHR
$cminBound :: VkTessellationDomainOriginKHR
Bounded, Int -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> Int
VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> [VkTessellationDomainOriginKHR]
(VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> Int)
-> (VkTessellationDomainOriginKHR
    -> [VkTessellationDomainOriginKHR])
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR
    -> [VkTessellationDomainOriginKHR])
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR
    -> [VkTessellationDomainOriginKHR])
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR
    -> [VkTessellationDomainOriginKHR])
-> Enum VkTessellationDomainOriginKHR
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> [VkTessellationDomainOriginKHR]
$cenumFromThenTo :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> [VkTessellationDomainOriginKHR]
enumFromTo :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
$cenumFromTo :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
enumFromThen :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
$cenumFromThen :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
enumFrom :: VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
$cenumFrom :: VkTessellationDomainOriginKHR -> [VkTessellationDomainOriginKHR]
fromEnum :: VkTessellationDomainOriginKHR -> Int
$cfromEnum :: VkTessellationDomainOriginKHR -> Int
toEnum :: Int -> VkTessellationDomainOriginKHR
$ctoEnum :: Int -> VkTessellationDomainOriginKHR
pred :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cpred :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
succ :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$csucc :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
Enum, Enum VkTessellationDomainOriginKHR
Real VkTessellationDomainOriginKHR
Real VkTessellationDomainOriginKHR
-> Enum VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR
    -> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR))
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR
    -> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR))
-> (VkTessellationDomainOriginKHR -> Integer)
-> Integral VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> Integer
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR)
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
forall a.
Real a
-> Enum a
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> (a, a))
-> (a -> a -> (a, a))
-> (a -> Integer)
-> Integral a
toInteger :: VkTessellationDomainOriginKHR -> Integer
$ctoInteger :: VkTessellationDomainOriginKHR -> Integer
divMod :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR)
$cdivMod :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR)
quotRem :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR)
$cquotRem :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR, VkTessellationDomainOriginKHR)
mod :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cmod :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
div :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cdiv :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
rem :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$crem :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
quot :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cquot :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cp2Integral :: Enum VkTessellationDomainOriginKHR
$cp1Integral :: Real VkTessellationDomainOriginKHR
Integral, Eq VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR
Eq VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> VkTessellationDomainOriginKHR
-> (Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> Int -> Bool)
-> (VkTessellationDomainOriginKHR -> Maybe Int)
-> (VkTessellationDomainOriginKHR -> Int)
-> (VkTessellationDomainOriginKHR -> Bool)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> Int)
-> Bits VkTessellationDomainOriginKHR
Int -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> Bool
VkTessellationDomainOriginKHR -> Int
VkTessellationDomainOriginKHR -> Maybe Int
VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> Int -> Bool
VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
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 :: VkTessellationDomainOriginKHR -> Int
$cpopCount :: VkTessellationDomainOriginKHR -> Int
rotateR :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$crotateR :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
rotateL :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$crotateL :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
unsafeShiftR :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$cunsafeShiftR :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
shiftR :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$cshiftR :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
unsafeShiftL :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$cunsafeShiftL :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
shiftL :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$cshiftL :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
isSigned :: VkTessellationDomainOriginKHR -> Bool
$cisSigned :: VkTessellationDomainOriginKHR -> Bool
bitSize :: VkTessellationDomainOriginKHR -> Int
$cbitSize :: VkTessellationDomainOriginKHR -> Int
bitSizeMaybe :: VkTessellationDomainOriginKHR -> Maybe Int
$cbitSizeMaybe :: VkTessellationDomainOriginKHR -> Maybe Int
testBit :: VkTessellationDomainOriginKHR -> Int -> Bool
$ctestBit :: VkTessellationDomainOriginKHR -> Int -> Bool
complementBit :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$ccomplementBit :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
clearBit :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$cclearBit :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
setBit :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$csetBit :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
bit :: Int -> VkTessellationDomainOriginKHR
$cbit :: Int -> VkTessellationDomainOriginKHR
zeroBits :: VkTessellationDomainOriginKHR
$czeroBits :: VkTessellationDomainOriginKHR
rotate :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$crotate :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
shift :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
$cshift :: VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR
complement :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$ccomplement :: VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
xor :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cxor :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
.|. :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$c.|. :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
.&. :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$c.&. :: VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cp1Bits :: Eq VkTessellationDomainOriginKHR
Bits,
                                                    Bits VkTessellationDomainOriginKHR
Bits VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR -> Int)
-> (VkTessellationDomainOriginKHR -> Int)
-> (VkTessellationDomainOriginKHR -> Int)
-> FiniteBits VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: VkTessellationDomainOriginKHR -> Int
$ccountTrailingZeros :: VkTessellationDomainOriginKHR -> Int
countLeadingZeros :: VkTessellationDomainOriginKHR -> Int
$ccountLeadingZeros :: VkTessellationDomainOriginKHR -> Int
finiteBitSize :: VkTessellationDomainOriginKHR -> Int
$cfiniteBitSize :: VkTessellationDomainOriginKHR -> Int
$cp1FiniteBits :: Bits VkTessellationDomainOriginKHR
FiniteBits, Ptr b -> Int -> IO VkTessellationDomainOriginKHR
Ptr b -> Int -> VkTessellationDomainOriginKHR -> IO ()
Ptr VkTessellationDomainOriginKHR
-> IO VkTessellationDomainOriginKHR
Ptr VkTessellationDomainOriginKHR
-> Int -> IO VkTessellationDomainOriginKHR
Ptr VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR -> IO ()
Ptr VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> IO ()
VkTessellationDomainOriginKHR -> Int
(VkTessellationDomainOriginKHR -> Int)
-> (VkTessellationDomainOriginKHR -> Int)
-> (Ptr VkTessellationDomainOriginKHR
    -> Int -> IO VkTessellationDomainOriginKHR)
-> (Ptr VkTessellationDomainOriginKHR
    -> Int -> VkTessellationDomainOriginKHR -> IO ())
-> (forall b. Ptr b -> Int -> IO VkTessellationDomainOriginKHR)
-> (forall b.
    Ptr b -> Int -> VkTessellationDomainOriginKHR -> IO ())
-> (Ptr VkTessellationDomainOriginKHR
    -> IO VkTessellationDomainOriginKHR)
-> (Ptr VkTessellationDomainOriginKHR
    -> VkTessellationDomainOriginKHR -> IO ())
-> Storable VkTessellationDomainOriginKHR
forall b. Ptr b -> Int -> IO VkTessellationDomainOriginKHR
forall b. Ptr b -> Int -> VkTessellationDomainOriginKHR -> 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 VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> IO ()
$cpoke :: Ptr VkTessellationDomainOriginKHR
-> VkTessellationDomainOriginKHR -> IO ()
peek :: Ptr VkTessellationDomainOriginKHR
-> IO VkTessellationDomainOriginKHR
$cpeek :: Ptr VkTessellationDomainOriginKHR
-> IO VkTessellationDomainOriginKHR
pokeByteOff :: Ptr b -> Int -> VkTessellationDomainOriginKHR -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> VkTessellationDomainOriginKHR -> IO ()
peekByteOff :: Ptr b -> Int -> IO VkTessellationDomainOriginKHR
$cpeekByteOff :: forall b. Ptr b -> Int -> IO VkTessellationDomainOriginKHR
pokeElemOff :: Ptr VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR -> IO ()
$cpokeElemOff :: Ptr VkTessellationDomainOriginKHR
-> Int -> VkTessellationDomainOriginKHR -> IO ()
peekElemOff :: Ptr VkTessellationDomainOriginKHR
-> Int -> IO VkTessellationDomainOriginKHR
$cpeekElemOff :: Ptr VkTessellationDomainOriginKHR
-> Int -> IO VkTessellationDomainOriginKHR
alignment :: VkTessellationDomainOriginKHR -> Int
$calignment :: VkTessellationDomainOriginKHR -> Int
sizeOf :: VkTessellationDomainOriginKHR -> Int
$csizeOf :: VkTessellationDomainOriginKHR -> Int
Storable, Num VkTessellationDomainOriginKHR
Ord VkTessellationDomainOriginKHR
Num VkTessellationDomainOriginKHR
-> Ord VkTessellationDomainOriginKHR
-> (VkTessellationDomainOriginKHR -> Rational)
-> Real VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> Rational
forall a. Num a -> Ord a -> (a -> Rational) -> Real a
toRational :: VkTessellationDomainOriginKHR -> Rational
$ctoRational :: VkTessellationDomainOriginKHR -> Rational
$cp2Real :: Ord VkTessellationDomainOriginKHR
$cp1Real :: Num VkTessellationDomainOriginKHR
Real, Typeable VkTessellationDomainOriginKHR
DataType
Constr
Typeable VkTessellationDomainOriginKHR
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkTessellationDomainOriginKHR
    -> c VkTessellationDomainOriginKHR)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c VkTessellationDomainOriginKHR)
-> (VkTessellationDomainOriginKHR -> Constr)
-> (VkTessellationDomainOriginKHR -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c VkTessellationDomainOriginKHR))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c VkTessellationDomainOriginKHR))
-> ((forall b. Data b => b -> b)
    -> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkTessellationDomainOriginKHR
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkTessellationDomainOriginKHR
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> VkTessellationDomainOriginKHR -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> VkTessellationDomainOriginKHR
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkTessellationDomainOriginKHR
    -> m VkTessellationDomainOriginKHR)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkTessellationDomainOriginKHR
    -> m VkTessellationDomainOriginKHR)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkTessellationDomainOriginKHR
    -> m VkTessellationDomainOriginKHR)
-> Data VkTessellationDomainOriginKHR
VkTessellationDomainOriginKHR -> DataType
VkTessellationDomainOriginKHR -> Constr
(forall b. Data b => b -> b)
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOriginKHR
-> c VkTessellationDomainOriginKHR
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkTessellationDomainOriginKHR
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> VkTessellationDomainOriginKHR
-> u
forall u.
(forall d. Data d => d -> u)
-> VkTessellationDomainOriginKHR -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOriginKHR
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOriginKHR
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkTessellationDomainOriginKHR
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOriginKHR
-> c VkTessellationDomainOriginKHR
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkTessellationDomainOriginKHR)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkTessellationDomainOriginKHR)
$cVkTessellationDomainOriginKHR :: Constr
$tVkTessellationDomainOriginKHR :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
gmapMp :: (forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
gmapM :: (forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkTessellationDomainOriginKHR -> m VkTessellationDomainOriginKHR
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> VkTessellationDomainOriginKHR
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> VkTessellationDomainOriginKHR
-> u
gmapQ :: (forall d. Data d => d -> u)
-> VkTessellationDomainOriginKHR -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> VkTessellationDomainOriginKHR -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOriginKHR
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOriginKHR
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOriginKHR
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkTessellationDomainOriginKHR
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
$cgmapT :: (forall b. Data b => b -> b)
-> VkTessellationDomainOriginKHR -> VkTessellationDomainOriginKHR
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkTessellationDomainOriginKHR)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c VkTessellationDomainOriginKHR)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c VkTessellationDomainOriginKHR)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c VkTessellationDomainOriginKHR)
dataTypeOf :: VkTessellationDomainOriginKHR -> DataType
$cdataTypeOf :: VkTessellationDomainOriginKHR -> DataType
toConstr :: VkTessellationDomainOriginKHR -> Constr
$ctoConstr :: VkTessellationDomainOriginKHR -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkTessellationDomainOriginKHR
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c VkTessellationDomainOriginKHR
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOriginKHR
-> c VkTessellationDomainOriginKHR
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkTessellationDomainOriginKHR
-> c VkTessellationDomainOriginKHR
$cp1Data :: Typeable VkTessellationDomainOriginKHR
Data, (forall x.
 VkTessellationDomainOriginKHR
 -> Rep VkTessellationDomainOriginKHR x)
-> (forall x.
    Rep VkTessellationDomainOriginKHR x
    -> VkTessellationDomainOriginKHR)
-> Generic VkTessellationDomainOriginKHR
forall x.
Rep VkTessellationDomainOriginKHR x
-> VkTessellationDomainOriginKHR
forall x.
VkTessellationDomainOriginKHR
-> Rep VkTessellationDomainOriginKHR x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep VkTessellationDomainOriginKHR x
-> VkTessellationDomainOriginKHR
$cfrom :: forall x.
VkTessellationDomainOriginKHR
-> Rep VkTessellationDomainOriginKHR x
Generic)

instance Show VkTessellationDomainOriginKHR where
        {-# INLINE show #-}
        show :: VkTessellationDomainOriginKHR -> String
show (VkTessellationDomainOriginKHR VkFlags
x) = VkFlags -> String
forall a. Show a => a -> String
show VkFlags
x

instance Read VkTessellationDomainOriginKHR where
        {-# INLINE readsPrec #-}
        readsPrec :: Int -> ReadS VkTessellationDomainOriginKHR
readsPrec = (Int -> ReadS VkFlags)
-> Int -> ReadS VkTessellationDomainOriginKHR
coerce (Int -> ReadS VkFlags
forall a. Read a => Int -> ReadS a
readsPrec :: Int -> ReadS VkFlags)