module Graphics.Vulkan.Types.Enum.SwapchainCreateFlagsKHR
(VkSwapchainCreateBitmaskKHR(VkSwapchainCreateBitmaskKHR,
VkSwapchainCreateFlagsKHR, VkSwapchainCreateFlagBitsKHR),
VkSwapchainCreateFlagsKHR, VkSwapchainCreateFlagBitsKHR)
where
import Data.Bits (Bits, FiniteBits)
import Data.Data (Data)
import Foreign.Storable (Storable)
import GHC.Generics (Generic)
import GHC.Read (choose, expectP)
import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)
import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))
import Text.ParserCombinators.ReadPrec (prec, step, (+++))
import Text.Read (Read (..), parens)
import Text.Read.Lex (Lexeme (..))
newtype VkSwapchainCreateBitmaskKHR (a ::
FlagType) = VkSwapchainCreateBitmaskKHR VkFlags
deriving (Eq, Ord, Storable, Data, Generic)
type VkSwapchainCreateFlagsKHR =
VkSwapchainCreateBitmaskKHR FlagMask
type VkSwapchainCreateFlagBitsKHR =
VkSwapchainCreateBitmaskKHR FlagBit
pattern VkSwapchainCreateFlagBitsKHR ::
VkFlags -> VkSwapchainCreateBitmaskKHR FlagBit
pattern VkSwapchainCreateFlagBitsKHR n =
VkSwapchainCreateBitmaskKHR n
pattern VkSwapchainCreateFlagsKHR ::
VkFlags -> VkSwapchainCreateBitmaskKHR FlagMask
pattern VkSwapchainCreateFlagsKHR n = VkSwapchainCreateBitmaskKHR n
deriving instance Bits (VkSwapchainCreateBitmaskKHR FlagMask)
deriving instance FiniteBits (VkSwapchainCreateBitmaskKHR FlagMask)
deriving instance Integral (VkSwapchainCreateBitmaskKHR FlagMask)
deriving instance Num (VkSwapchainCreateBitmaskKHR FlagMask)
deriving instance Bounded (VkSwapchainCreateBitmaskKHR FlagMask)
deriving instance Enum (VkSwapchainCreateBitmaskKHR FlagMask)
deriving instance Real (VkSwapchainCreateBitmaskKHR FlagMask)
instance Show (VkSwapchainCreateBitmaskKHR a) where
showsPrec p (VkSwapchainCreateBitmaskKHR x)
= showParen (p >= 11)
(showString "VkSwapchainCreateBitmaskKHR " . showsPrec 11 x)
instance Read (VkSwapchainCreateBitmaskKHR a) where
readPrec
= parens
(choose [] +++
prec 10
(expectP (Ident "VkSwapchainCreateBitmaskKHR") >>
(VkSwapchainCreateBitmaskKHR <$> step readPrec)))