{-# OPTIONS_HADDOCK ignore-exports#-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE Strict #-}
module Graphics.Vulkan.Types.Enum.TimeDomainEXT
(VkTimeDomainEXT(VkTimeDomainEXT, VK_TIME_DOMAIN_DEVICE_EXT,
VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT,
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT,
VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT))
where
import Foreign.Storable (Storable)
import GHC.Read (choose, expectP)
import Graphics.Vulkan.Marshal (Int32)
import Text.ParserCombinators.ReadPrec (prec, step, (+++))
import Text.Read (Read (..), parens)
import Text.Read.Lex (Lexeme (..))
newtype VkTimeDomainEXT = VkTimeDomainEXT Int32
deriving (VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
(VkTimeDomainEXT -> VkTimeDomainEXT -> Bool)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> Bool)
-> Eq VkTimeDomainEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
$c/= :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
== :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
$c== :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
Eq, Eq VkTimeDomainEXT
Eq VkTimeDomainEXT
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> Ordering)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> Bool)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> Bool)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> Bool)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> Bool)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT)
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT)
-> Ord VkTimeDomainEXT
VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
VkTimeDomainEXT -> VkTimeDomainEXT -> Ordering
VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT
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 :: VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT
$cmin :: VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT
max :: VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT
$cmax :: VkTimeDomainEXT -> VkTimeDomainEXT -> VkTimeDomainEXT
>= :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
$c>= :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
> :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
$c> :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
<= :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
$c<= :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
< :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
$c< :: VkTimeDomainEXT -> VkTimeDomainEXT -> Bool
compare :: VkTimeDomainEXT -> VkTimeDomainEXT -> Ordering
$ccompare :: VkTimeDomainEXT -> VkTimeDomainEXT -> Ordering
Ord, Int -> VkTimeDomainEXT
VkTimeDomainEXT -> Int
VkTimeDomainEXT -> [VkTimeDomainEXT]
VkTimeDomainEXT -> VkTimeDomainEXT
VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
VkTimeDomainEXT
-> VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
(VkTimeDomainEXT -> VkTimeDomainEXT)
-> (VkTimeDomainEXT -> VkTimeDomainEXT)
-> (Int -> VkTimeDomainEXT)
-> (VkTimeDomainEXT -> Int)
-> (VkTimeDomainEXT -> [VkTimeDomainEXT])
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT])
-> (VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT])
-> (VkTimeDomainEXT
-> VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT])
-> Enum VkTimeDomainEXT
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 :: VkTimeDomainEXT
-> VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
$cenumFromThenTo :: VkTimeDomainEXT
-> VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
enumFromTo :: VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
$cenumFromTo :: VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
enumFromThen :: VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
$cenumFromThen :: VkTimeDomainEXT -> VkTimeDomainEXT -> [VkTimeDomainEXT]
enumFrom :: VkTimeDomainEXT -> [VkTimeDomainEXT]
$cenumFrom :: VkTimeDomainEXT -> [VkTimeDomainEXT]
fromEnum :: VkTimeDomainEXT -> Int
$cfromEnum :: VkTimeDomainEXT -> Int
toEnum :: Int -> VkTimeDomainEXT
$ctoEnum :: Int -> VkTimeDomainEXT
pred :: VkTimeDomainEXT -> VkTimeDomainEXT
$cpred :: VkTimeDomainEXT -> VkTimeDomainEXT
succ :: VkTimeDomainEXT -> VkTimeDomainEXT
$csucc :: VkTimeDomainEXT -> VkTimeDomainEXT
Enum, Ptr VkTimeDomainEXT -> IO VkTimeDomainEXT
Ptr VkTimeDomainEXT -> Int -> IO VkTimeDomainEXT
Ptr VkTimeDomainEXT -> Int -> VkTimeDomainEXT -> IO ()
Ptr VkTimeDomainEXT -> VkTimeDomainEXT -> IO ()
VkTimeDomainEXT -> Int
(VkTimeDomainEXT -> Int)
-> (VkTimeDomainEXT -> Int)
-> (Ptr VkTimeDomainEXT -> Int -> IO VkTimeDomainEXT)
-> (Ptr VkTimeDomainEXT -> Int -> VkTimeDomainEXT -> IO ())
-> (forall b. Ptr b -> Int -> IO VkTimeDomainEXT)
-> (forall b. Ptr b -> Int -> VkTimeDomainEXT -> IO ())
-> (Ptr VkTimeDomainEXT -> IO VkTimeDomainEXT)
-> (Ptr VkTimeDomainEXT -> VkTimeDomainEXT -> IO ())
-> Storable VkTimeDomainEXT
forall b. Ptr b -> Int -> IO VkTimeDomainEXT
forall b. Ptr b -> Int -> VkTimeDomainEXT -> 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 VkTimeDomainEXT -> VkTimeDomainEXT -> IO ()
$cpoke :: Ptr VkTimeDomainEXT -> VkTimeDomainEXT -> IO ()
peek :: Ptr VkTimeDomainEXT -> IO VkTimeDomainEXT
$cpeek :: Ptr VkTimeDomainEXT -> IO VkTimeDomainEXT
pokeByteOff :: forall b. Ptr b -> Int -> VkTimeDomainEXT -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> VkTimeDomainEXT -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO VkTimeDomainEXT
$cpeekByteOff :: forall b. Ptr b -> Int -> IO VkTimeDomainEXT
pokeElemOff :: Ptr VkTimeDomainEXT -> Int -> VkTimeDomainEXT -> IO ()
$cpokeElemOff :: Ptr VkTimeDomainEXT -> Int -> VkTimeDomainEXT -> IO ()
peekElemOff :: Ptr VkTimeDomainEXT -> Int -> IO VkTimeDomainEXT
$cpeekElemOff :: Ptr VkTimeDomainEXT -> Int -> IO VkTimeDomainEXT
alignment :: VkTimeDomainEXT -> Int
$calignment :: VkTimeDomainEXT -> Int
sizeOf :: VkTimeDomainEXT -> Int
$csizeOf :: VkTimeDomainEXT -> Int
Storable)
instance Show VkTimeDomainEXT where
showsPrec :: Int -> VkTimeDomainEXT -> ShowS
showsPrec Int
_ VkTimeDomainEXT
VK_TIME_DOMAIN_DEVICE_EXT
= String -> ShowS
showString String
"VK_TIME_DOMAIN_DEVICE_EXT"
showsPrec Int
_ VkTimeDomainEXT
VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT
= String -> ShowS
showString String
"VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT"
showsPrec Int
_ VkTimeDomainEXT
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT
= String -> ShowS
showString String
"VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT"
showsPrec Int
_ VkTimeDomainEXT
VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT
= String -> ShowS
showString String
"VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT"
showsPrec Int
p (VkTimeDomainEXT Int32
x)
= Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
(String -> ShowS
showString String
"VkTimeDomainEXT " 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 VkTimeDomainEXT where
readPrec :: ReadPrec VkTimeDomainEXT
readPrec
= ReadPrec VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall a. ReadPrec a -> ReadPrec a
parens
([(String, ReadPrec VkTimeDomainEXT)] -> ReadPrec VkTimeDomainEXT
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
[(String
"VK_TIME_DOMAIN_DEVICE_EXT", VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkTimeDomainEXT
VK_TIME_DOMAIN_DEVICE_EXT),
(String
"VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT",
VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkTimeDomainEXT
VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT),
(String
"VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT",
VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkTimeDomainEXT
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT),
(String
"VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT",
VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkTimeDomainEXT
VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT)]
ReadPrec VkTimeDomainEXT
-> ReadPrec VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
Int -> ReadPrec VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
(Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkTimeDomainEXT") ReadPrec () -> ReadPrec VkTimeDomainEXT -> ReadPrec VkTimeDomainEXT
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
(Int32 -> VkTimeDomainEXT
VkTimeDomainEXT (Int32 -> VkTimeDomainEXT)
-> ReadPrec Int32 -> ReadPrec VkTimeDomainEXT
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_TIME_DOMAIN_DEVICE_EXT :: VkTimeDomainEXT
pattern $bVK_TIME_DOMAIN_DEVICE_EXT :: VkTimeDomainEXT
$mVK_TIME_DOMAIN_DEVICE_EXT :: forall {r}. VkTimeDomainEXT -> (Void# -> r) -> (Void# -> r) -> r
VK_TIME_DOMAIN_DEVICE_EXT = VkTimeDomainEXT 0
pattern VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT :: VkTimeDomainEXT
pattern $bVK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT :: VkTimeDomainEXT
$mVK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT :: forall {r}. VkTimeDomainEXT -> (Void# -> r) -> (Void# -> r) -> r
VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT = VkTimeDomainEXT 1
pattern VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: VkTimeDomainEXT
pattern $bVK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: VkTimeDomainEXT
$mVK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: forall {r}. VkTimeDomainEXT -> (Void# -> r) -> (Void# -> r) -> r
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = VkTimeDomainEXT 2
pattern VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT ::
VkTimeDomainEXT
pattern $bVK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT :: VkTimeDomainEXT
$mVK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT :: forall {r}. VkTimeDomainEXT -> (Void# -> r) -> (Void# -> r) -> r
VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT =
VkTimeDomainEXT 3