{-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkDeviceCreateFlagBits (VkDeviceCreateFlagBits(..)) where import Data.Bits (Bits, FiniteBits) import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic) import Graphics.Vulkan.Types.BaseTypes (VkFlags) newtype VkDeviceCreateFlagBits = VkDeviceCreateFlagBits VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic) instance Show VkDeviceCreateFlagBits where {-# INLINE show #-} show (VkDeviceCreateFlagBits x) = show x instance Read VkDeviceCreateFlagBits where {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)