{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.DynamicState (VkDynamicState(VkDynamicState, VK_DYNAMIC_STATE_VIEWPORT, VK_DYNAMIC_STATE_SCISSOR, VK_DYNAMIC_STATE_LINE_WIDTH, VK_DYNAMIC_STATE_DEPTH_BIAS, VK_DYNAMIC_STATE_BLEND_CONSTANTS, VK_DYNAMIC_STATE_DEPTH_BOUNDS, VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK, VK_DYNAMIC_STATE_STENCIL_WRITE_MASK, VK_DYNAMIC_STATE_STENCIL_REFERENCE)) where import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic) 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 (..)) -- | type = @enum@ -- -- newtype VkDynamicState = VkDynamicState Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic) instance Show VkDynamicState where showsPrec _ VK_DYNAMIC_STATE_VIEWPORT = showString "VK_DYNAMIC_STATE_VIEWPORT" showsPrec _ VK_DYNAMIC_STATE_SCISSOR = showString "VK_DYNAMIC_STATE_SCISSOR" showsPrec _ VK_DYNAMIC_STATE_LINE_WIDTH = showString "VK_DYNAMIC_STATE_LINE_WIDTH" showsPrec _ VK_DYNAMIC_STATE_DEPTH_BIAS = showString "VK_DYNAMIC_STATE_DEPTH_BIAS" showsPrec _ VK_DYNAMIC_STATE_BLEND_CONSTANTS = showString "VK_DYNAMIC_STATE_BLEND_CONSTANTS" showsPrec _ VK_DYNAMIC_STATE_DEPTH_BOUNDS = showString "VK_DYNAMIC_STATE_DEPTH_BOUNDS" showsPrec _ VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = showString "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK" showsPrec _ VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = showString "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK" showsPrec _ VK_DYNAMIC_STATE_STENCIL_REFERENCE = showString "VK_DYNAMIC_STATE_STENCIL_REFERENCE" showsPrec p (VkDynamicState x) = showParen (p >= 11) (showString "VkDynamicState " . showsPrec 11 x) instance Read VkDynamicState where readPrec = parens (choose [("VK_DYNAMIC_STATE_VIEWPORT", pure VK_DYNAMIC_STATE_VIEWPORT), ("VK_DYNAMIC_STATE_SCISSOR", pure VK_DYNAMIC_STATE_SCISSOR), ("VK_DYNAMIC_STATE_LINE_WIDTH", pure VK_DYNAMIC_STATE_LINE_WIDTH), ("VK_DYNAMIC_STATE_DEPTH_BIAS", pure VK_DYNAMIC_STATE_DEPTH_BIAS), ("VK_DYNAMIC_STATE_BLEND_CONSTANTS", pure VK_DYNAMIC_STATE_BLEND_CONSTANTS), ("VK_DYNAMIC_STATE_DEPTH_BOUNDS", pure VK_DYNAMIC_STATE_DEPTH_BOUNDS), ("VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK", pure VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK), ("VK_DYNAMIC_STATE_STENCIL_WRITE_MASK", pure VK_DYNAMIC_STATE_STENCIL_WRITE_MASK), ("VK_DYNAMIC_STATE_STENCIL_REFERENCE", pure VK_DYNAMIC_STATE_STENCIL_REFERENCE)] +++ prec 10 (expectP (Ident "VkDynamicState") >> (VkDynamicState <$> step readPrec))) pattern VK_DYNAMIC_STATE_VIEWPORT :: VkDynamicState pattern VK_DYNAMIC_STATE_VIEWPORT = VkDynamicState 0 pattern VK_DYNAMIC_STATE_SCISSOR :: VkDynamicState pattern VK_DYNAMIC_STATE_SCISSOR = VkDynamicState 1 pattern VK_DYNAMIC_STATE_LINE_WIDTH :: VkDynamicState pattern VK_DYNAMIC_STATE_LINE_WIDTH = VkDynamicState 2 pattern VK_DYNAMIC_STATE_DEPTH_BIAS :: VkDynamicState pattern VK_DYNAMIC_STATE_DEPTH_BIAS = VkDynamicState 3 pattern VK_DYNAMIC_STATE_BLEND_CONSTANTS :: VkDynamicState pattern VK_DYNAMIC_STATE_BLEND_CONSTANTS = VkDynamicState 4 pattern VK_DYNAMIC_STATE_DEPTH_BOUNDS :: VkDynamicState pattern VK_DYNAMIC_STATE_DEPTH_BOUNDS = VkDynamicState 5 pattern VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK :: VkDynamicState pattern VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = VkDynamicState 6 pattern VK_DYNAMIC_STATE_STENCIL_WRITE_MASK :: VkDynamicState pattern VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = VkDynamicState 7 pattern VK_DYNAMIC_STATE_STENCIL_REFERENCE :: VkDynamicState pattern VK_DYNAMIC_STATE_STENCIL_REFERENCE = VkDynamicState 8