{-# OPTIONS_HADDOCK ignore-exports#-}
{-# LANGUAGE DataKinds                  #-}
{-# LANGUAGE DeriveDataTypeable         #-}
{-# LANGUAGE DeriveGeneric              #-}
{-# LANGUAGE FlexibleInstances          #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE KindSignatures             #-}
{-# LANGUAGE PatternSynonyms            #-}
{-# LANGUAGE StandaloneDeriving         #-}
{-# LANGUAGE Strict                     #-}
{-# LANGUAGE TypeSynonymInstances       #-}
module Graphics.Vulkan.Types.Enum.Buffer
       (VkBufferCreateBitmask(VkBufferCreateBitmask, VkBufferCreateFlags,
                              VkBufferCreateFlagBits, VK_BUFFER_CREATE_SPARSE_BINDING_BIT,
                              VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT,
                              VK_BUFFER_CREATE_SPARSE_ALIASED_BIT),
        VkBufferCreateFlags, VkBufferCreateFlagBits,
        VkBufferUsageBitmask(VkBufferUsageBitmask, VkBufferUsageFlags,
                             VkBufferUsageFlagBits, VK_BUFFER_USAGE_TRANSFER_SRC_BIT,
                             VK_BUFFER_USAGE_TRANSFER_DST_BIT,
                             VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT,
                             VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT,
                             VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT,
                             VK_BUFFER_USAGE_STORAGE_BUFFER_BIT,
                             VK_BUFFER_USAGE_INDEX_BUFFER_BIT,
                             VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,
                             VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT),
        VkBufferUsageFlags, VkBufferUsageFlagBits,
        VkBufferViewCreateFlagBits(..))
       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         (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 VkBufferCreateBitmask (a ::
                                 FlagType) = VkBufferCreateBitmask VkFlags
                                               deriving (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
(VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool)
-> (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool)
-> Eq (VkBufferCreateBitmask a)
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
/= :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
$c/= :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
== :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
$c== :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
Eq, Eq (VkBufferCreateBitmask a)
Eq (VkBufferCreateBitmask a)
-> (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Ordering)
-> (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool)
-> (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool)
-> (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool)
-> (VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool)
-> (VkBufferCreateBitmask a
    -> VkBufferCreateBitmask a -> VkBufferCreateBitmask a)
-> (VkBufferCreateBitmask a
    -> VkBufferCreateBitmask a -> VkBufferCreateBitmask a)
-> Ord (VkBufferCreateBitmask a)
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Ordering
VkBufferCreateBitmask a
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
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
forall (a :: FlagType). Eq (VkBufferCreateBitmask a)
forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Ordering
forall (a :: FlagType).
VkBufferCreateBitmask a
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
min :: VkBufferCreateBitmask a
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
$cmin :: forall (a :: FlagType).
VkBufferCreateBitmask a
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
max :: VkBufferCreateBitmask a
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
$cmax :: forall (a :: FlagType).
VkBufferCreateBitmask a
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
>= :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
$c>= :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
> :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
$c> :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
<= :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
$c<= :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
< :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
$c< :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Bool
compare :: VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Ordering
$ccompare :: forall (a :: FlagType).
VkBufferCreateBitmask a -> VkBufferCreateBitmask a -> Ordering
$cp1Ord :: forall (a :: FlagType). Eq (VkBufferCreateBitmask a)
Ord, Ptr b -> Int -> IO (VkBufferCreateBitmask a)
Ptr b -> Int -> VkBufferCreateBitmask a -> IO ()
Ptr (VkBufferCreateBitmask a) -> IO (VkBufferCreateBitmask a)
Ptr (VkBufferCreateBitmask a)
-> Int -> IO (VkBufferCreateBitmask a)
Ptr (VkBufferCreateBitmask a)
-> Int -> VkBufferCreateBitmask a -> IO ()
Ptr (VkBufferCreateBitmask a) -> VkBufferCreateBitmask a -> IO ()
VkBufferCreateBitmask a -> Int
(VkBufferCreateBitmask a -> Int)
-> (VkBufferCreateBitmask a -> Int)
-> (Ptr (VkBufferCreateBitmask a)
    -> Int -> IO (VkBufferCreateBitmask a))
-> (Ptr (VkBufferCreateBitmask a)
    -> Int -> VkBufferCreateBitmask a -> IO ())
-> (forall b. Ptr b -> Int -> IO (VkBufferCreateBitmask a))
-> (forall b. Ptr b -> Int -> VkBufferCreateBitmask a -> IO ())
-> (Ptr (VkBufferCreateBitmask a) -> IO (VkBufferCreateBitmask a))
-> (Ptr (VkBufferCreateBitmask a)
    -> VkBufferCreateBitmask a -> IO ())
-> Storable (VkBufferCreateBitmask a)
forall b. Ptr b -> Int -> IO (VkBufferCreateBitmask a)
forall b. Ptr b -> Int -> VkBufferCreateBitmask a -> 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
forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a) -> IO (VkBufferCreateBitmask a)
forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a)
-> Int -> IO (VkBufferCreateBitmask a)
forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a)
-> Int -> VkBufferCreateBitmask a -> IO ()
forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a) -> VkBufferCreateBitmask a -> IO ()
forall (a :: FlagType). VkBufferCreateBitmask a -> Int
forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkBufferCreateBitmask a)
forall (a :: FlagType) b.
Ptr b -> Int -> VkBufferCreateBitmask a -> IO ()
poke :: Ptr (VkBufferCreateBitmask a) -> VkBufferCreateBitmask a -> IO ()
$cpoke :: forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a) -> VkBufferCreateBitmask a -> IO ()
peek :: Ptr (VkBufferCreateBitmask a) -> IO (VkBufferCreateBitmask a)
$cpeek :: forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a) -> IO (VkBufferCreateBitmask a)
pokeByteOff :: Ptr b -> Int -> VkBufferCreateBitmask a -> IO ()
$cpokeByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> VkBufferCreateBitmask a -> IO ()
peekByteOff :: Ptr b -> Int -> IO (VkBufferCreateBitmask a)
$cpeekByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkBufferCreateBitmask a)
pokeElemOff :: Ptr (VkBufferCreateBitmask a)
-> Int -> VkBufferCreateBitmask a -> IO ()
$cpokeElemOff :: forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a)
-> Int -> VkBufferCreateBitmask a -> IO ()
peekElemOff :: Ptr (VkBufferCreateBitmask a)
-> Int -> IO (VkBufferCreateBitmask a)
$cpeekElemOff :: forall (a :: FlagType).
Ptr (VkBufferCreateBitmask a)
-> Int -> IO (VkBufferCreateBitmask a)
alignment :: VkBufferCreateBitmask a -> Int
$calignment :: forall (a :: FlagType). VkBufferCreateBitmask a -> Int
sizeOf :: VkBufferCreateBitmask a -> Int
$csizeOf :: forall (a :: FlagType). VkBufferCreateBitmask a -> Int
Storable, Typeable (VkBufferCreateBitmask a)
DataType
Constr
Typeable (VkBufferCreateBitmask a)
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkBufferCreateBitmask a
    -> c (VkBufferCreateBitmask a))
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c (VkBufferCreateBitmask a))
-> (VkBufferCreateBitmask a -> Constr)
-> (VkBufferCreateBitmask a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c (VkBufferCreateBitmask a)))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c (VkBufferCreateBitmask a)))
-> ((forall b. Data b => b -> b)
    -> VkBufferCreateBitmask a -> VkBufferCreateBitmask a)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkBufferCreateBitmask a
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkBufferCreateBitmask a
    -> r)
-> (forall u.
    (forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a))
-> Data (VkBufferCreateBitmask a)
VkBufferCreateBitmask a -> DataType
VkBufferCreateBitmask a -> Constr
(forall b. Data b => b -> b)
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferCreateBitmask a
-> c (VkBufferCreateBitmask a)
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferCreateBitmask a)
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) -> VkBufferCreateBitmask a -> u
forall u.
(forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
forall (a :: FlagType).
Typeable a =>
Typeable (VkBufferCreateBitmask a)
forall (a :: FlagType).
Typeable a =>
VkBufferCreateBitmask a -> DataType
forall (a :: FlagType).
Typeable a =>
VkBufferCreateBitmask a -> Constr
forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
forall (a :: FlagType) u.
Typeable a =>
Int -> (forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> u
forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> [u]
forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferCreateBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferCreateBitmask a
-> c (VkBufferCreateBitmask a)
forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkBufferCreateBitmask a))
forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferCreateBitmask a))
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferCreateBitmask a)
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferCreateBitmask a
-> c (VkBufferCreateBitmask a)
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c (VkBufferCreateBitmask a))
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferCreateBitmask a))
$cVkBufferCreateBitmask :: Constr
$tVkBufferCreateBitmask :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
$cgmapMo :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
gmapMp :: (forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
$cgmapMp :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
gmapM :: (forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
$cgmapM :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkBufferCreateBitmask a -> m (VkBufferCreateBitmask a)
gmapQi :: Int -> (forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> u
$cgmapQi :: forall (a :: FlagType) u.
Typeable a =>
Int -> (forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> u
gmapQ :: (forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> [u]
$cgmapQ :: forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u) -> VkBufferCreateBitmask a -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
$cgmapQr :: forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
$cgmapQl :: forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferCreateBitmask a
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
$cgmapT :: forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkBufferCreateBitmask a -> VkBufferCreateBitmask a
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferCreateBitmask a))
$cdataCast2 :: forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferCreateBitmask a))
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c (VkBufferCreateBitmask a))
$cdataCast1 :: forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d))
-> Maybe (c (VkBufferCreateBitmask a))
dataTypeOf :: VkBufferCreateBitmask a -> DataType
$cdataTypeOf :: forall (a :: FlagType).
Typeable a =>
VkBufferCreateBitmask a -> DataType
toConstr :: VkBufferCreateBitmask a -> Constr
$ctoConstr :: forall (a :: FlagType).
Typeable a =>
VkBufferCreateBitmask a -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferCreateBitmask a)
$cgunfold :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferCreateBitmask a)
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferCreateBitmask a
-> c (VkBufferCreateBitmask a)
$cgfoldl :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferCreateBitmask a
-> c (VkBufferCreateBitmask a)
$cp1Data :: forall (a :: FlagType).
Typeable a =>
Typeable (VkBufferCreateBitmask a)
Data, (forall x.
 VkBufferCreateBitmask a -> Rep (VkBufferCreateBitmask a) x)
-> (forall x.
    Rep (VkBufferCreateBitmask a) x -> VkBufferCreateBitmask a)
-> Generic (VkBufferCreateBitmask a)
forall x.
Rep (VkBufferCreateBitmask a) x -> VkBufferCreateBitmask a
forall x.
VkBufferCreateBitmask a -> Rep (VkBufferCreateBitmask a) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (a :: FlagType) x.
Rep (VkBufferCreateBitmask a) x -> VkBufferCreateBitmask a
forall (a :: FlagType) x.
VkBufferCreateBitmask a -> Rep (VkBufferCreateBitmask a) x
$cto :: forall (a :: FlagType) x.
Rep (VkBufferCreateBitmask a) x -> VkBufferCreateBitmask a
$cfrom :: forall (a :: FlagType) x.
VkBufferCreateBitmask a -> Rep (VkBufferCreateBitmask a) x
Generic)

type VkBufferCreateFlags = VkBufferCreateBitmask FlagMask

type VkBufferCreateFlagBits = VkBufferCreateBitmask FlagBit

pattern VkBufferCreateFlagBits ::
        VkFlags -> VkBufferCreateBitmask FlagBit

pattern $bVkBufferCreateFlagBits :: VkFlags -> VkBufferCreateBitmask FlagBit
$mVkBufferCreateFlagBits :: forall r.
VkBufferCreateBitmask FlagBit
-> (VkFlags -> r) -> (Void# -> r) -> r
VkBufferCreateFlagBits n = VkBufferCreateBitmask n

pattern VkBufferCreateFlags ::
        VkFlags -> VkBufferCreateBitmask FlagMask

pattern $bVkBufferCreateFlags :: VkFlags -> VkBufferCreateBitmask FlagMask
$mVkBufferCreateFlags :: forall r.
VkBufferCreateBitmask FlagMask
-> (VkFlags -> r) -> (Void# -> r) -> r
VkBufferCreateFlags n = VkBufferCreateBitmask n

deriving instance Bits (VkBufferCreateBitmask FlagMask)

deriving instance FiniteBits (VkBufferCreateBitmask FlagMask)

deriving instance Integral (VkBufferCreateBitmask FlagMask)

deriving instance Num (VkBufferCreateBitmask FlagMask)

deriving instance Bounded (VkBufferCreateBitmask FlagMask)

deriving instance Enum (VkBufferCreateBitmask FlagMask)

deriving instance Real (VkBufferCreateBitmask FlagMask)

instance Show (VkBufferCreateBitmask a) where
        showsPrec :: Int -> VkBufferCreateBitmask a -> ShowS
showsPrec Int
_ VkBufferCreateBitmask a
VK_BUFFER_CREATE_SPARSE_BINDING_BIT
          = String -> ShowS
showString String
"VK_BUFFER_CREATE_SPARSE_BINDING_BIT"
        showsPrec Int
_ VkBufferCreateBitmask a
VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT
          = String -> ShowS
showString String
"VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"
        showsPrec Int
_ VkBufferCreateBitmask a
VK_BUFFER_CREATE_SPARSE_ALIASED_BIT
          = String -> ShowS
showString String
"VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"
        showsPrec Int
p (VkBufferCreateBitmask VkFlags
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkBufferCreateBitmask " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> VkFlags -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 VkFlags
x)

instance Read (VkBufferCreateBitmask a) where
        readPrec :: ReadPrec (VkBufferCreateBitmask a)
readPrec
          = ReadPrec (VkBufferCreateBitmask a)
-> ReadPrec (VkBufferCreateBitmask a)
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec (VkBufferCreateBitmask a))]
-> ReadPrec (VkBufferCreateBitmask a)
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_BUFFER_CREATE_SPARSE_BINDING_BIT",
                   VkBufferCreateBitmask a -> ReadPrec (VkBufferCreateBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferCreateBitmask a
forall (a :: FlagType). VkBufferCreateBitmask a
VK_BUFFER_CREATE_SPARSE_BINDING_BIT),
                  (String
"VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT",
                   VkBufferCreateBitmask a -> ReadPrec (VkBufferCreateBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferCreateBitmask a
forall (a :: FlagType). VkBufferCreateBitmask a
VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT),
                  (String
"VK_BUFFER_CREATE_SPARSE_ALIASED_BIT",
                   VkBufferCreateBitmask a -> ReadPrec (VkBufferCreateBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferCreateBitmask a
forall (a :: FlagType). VkBufferCreateBitmask a
VK_BUFFER_CREATE_SPARSE_ALIASED_BIT)]
                 ReadPrec (VkBufferCreateBitmask a)
-> ReadPrec (VkBufferCreateBitmask a)
-> ReadPrec (VkBufferCreateBitmask a)
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec (VkBufferCreateBitmask a)
-> ReadPrec (VkBufferCreateBitmask a)
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkBufferCreateBitmask") ReadPrec ()
-> ReadPrec (VkBufferCreateBitmask a)
-> ReadPrec (VkBufferCreateBitmask a)
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (VkFlags -> VkBufferCreateBitmask a
forall (a :: FlagType). VkFlags -> VkBufferCreateBitmask a
VkBufferCreateBitmask (VkFlags -> VkBufferCreateBitmask a)
-> ReadPrec VkFlags -> ReadPrec (VkBufferCreateBitmask a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec VkFlags -> ReadPrec VkFlags
forall a. ReadPrec a -> ReadPrec a
step ReadPrec VkFlags
forall a. Read a => ReadPrec a
readPrec)))

-- | Buffer should support sparse backing
--
--   bitpos = @0@
pattern VK_BUFFER_CREATE_SPARSE_BINDING_BIT ::
        VkBufferCreateBitmask a

pattern $bVK_BUFFER_CREATE_SPARSE_BINDING_BIT :: VkBufferCreateBitmask a
$mVK_BUFFER_CREATE_SPARSE_BINDING_BIT :: forall r (a :: FlagType).
VkBufferCreateBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_CREATE_SPARSE_BINDING_BIT =
        VkBufferCreateBitmask 1

-- | Buffer should support sparse backing with partial residency
--
--   bitpos = @1@
pattern VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT ::
        VkBufferCreateBitmask a

pattern $bVK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: VkBufferCreateBitmask a
$mVK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: forall r (a :: FlagType).
VkBufferCreateBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT =
        VkBufferCreateBitmask 2

-- | Buffer should support constent data access to physical memory ranges mapped into multiple locations of sparse buffers
--
--   bitpos = @2@
pattern VK_BUFFER_CREATE_SPARSE_ALIASED_BIT ::
        VkBufferCreateBitmask a

pattern $bVK_BUFFER_CREATE_SPARSE_ALIASED_BIT :: VkBufferCreateBitmask a
$mVK_BUFFER_CREATE_SPARSE_ALIASED_BIT :: forall r (a :: FlagType).
VkBufferCreateBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_CREATE_SPARSE_ALIASED_BIT =
        VkBufferCreateBitmask 4

newtype VkBufferUsageBitmask (a ::
                                FlagType) = VkBufferUsageBitmask VkFlags
                                              deriving (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
(VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool)
-> (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool)
-> Eq (VkBufferUsageBitmask a)
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
/= :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
$c/= :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
== :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
$c== :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
Eq, Eq (VkBufferUsageBitmask a)
Eq (VkBufferUsageBitmask a)
-> (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Ordering)
-> (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool)
-> (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool)
-> (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool)
-> (VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool)
-> (VkBufferUsageBitmask a
    -> VkBufferUsageBitmask a -> VkBufferUsageBitmask a)
-> (VkBufferUsageBitmask a
    -> VkBufferUsageBitmask a -> VkBufferUsageBitmask a)
-> Ord (VkBufferUsageBitmask a)
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Ordering
VkBufferUsageBitmask a
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
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
forall (a :: FlagType). Eq (VkBufferUsageBitmask a)
forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Ordering
forall (a :: FlagType).
VkBufferUsageBitmask a
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
min :: VkBufferUsageBitmask a
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
$cmin :: forall (a :: FlagType).
VkBufferUsageBitmask a
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
max :: VkBufferUsageBitmask a
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
$cmax :: forall (a :: FlagType).
VkBufferUsageBitmask a
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
>= :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
$c>= :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
> :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
$c> :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
<= :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
$c<= :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
< :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
$c< :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Bool
compare :: VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Ordering
$ccompare :: forall (a :: FlagType).
VkBufferUsageBitmask a -> VkBufferUsageBitmask a -> Ordering
$cp1Ord :: forall (a :: FlagType). Eq (VkBufferUsageBitmask a)
Ord, Ptr b -> Int -> IO (VkBufferUsageBitmask a)
Ptr b -> Int -> VkBufferUsageBitmask a -> IO ()
Ptr (VkBufferUsageBitmask a) -> IO (VkBufferUsageBitmask a)
Ptr (VkBufferUsageBitmask a) -> Int -> IO (VkBufferUsageBitmask a)
Ptr (VkBufferUsageBitmask a)
-> Int -> VkBufferUsageBitmask a -> IO ()
Ptr (VkBufferUsageBitmask a) -> VkBufferUsageBitmask a -> IO ()
VkBufferUsageBitmask a -> Int
(VkBufferUsageBitmask a -> Int)
-> (VkBufferUsageBitmask a -> Int)
-> (Ptr (VkBufferUsageBitmask a)
    -> Int -> IO (VkBufferUsageBitmask a))
-> (Ptr (VkBufferUsageBitmask a)
    -> Int -> VkBufferUsageBitmask a -> IO ())
-> (forall b. Ptr b -> Int -> IO (VkBufferUsageBitmask a))
-> (forall b. Ptr b -> Int -> VkBufferUsageBitmask a -> IO ())
-> (Ptr (VkBufferUsageBitmask a) -> IO (VkBufferUsageBitmask a))
-> (Ptr (VkBufferUsageBitmask a)
    -> VkBufferUsageBitmask a -> IO ())
-> Storable (VkBufferUsageBitmask a)
forall b. Ptr b -> Int -> IO (VkBufferUsageBitmask a)
forall b. Ptr b -> Int -> VkBufferUsageBitmask a -> 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
forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a) -> IO (VkBufferUsageBitmask a)
forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a) -> Int -> IO (VkBufferUsageBitmask a)
forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a)
-> Int -> VkBufferUsageBitmask a -> IO ()
forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a) -> VkBufferUsageBitmask a -> IO ()
forall (a :: FlagType). VkBufferUsageBitmask a -> Int
forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkBufferUsageBitmask a)
forall (a :: FlagType) b.
Ptr b -> Int -> VkBufferUsageBitmask a -> IO ()
poke :: Ptr (VkBufferUsageBitmask a) -> VkBufferUsageBitmask a -> IO ()
$cpoke :: forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a) -> VkBufferUsageBitmask a -> IO ()
peek :: Ptr (VkBufferUsageBitmask a) -> IO (VkBufferUsageBitmask a)
$cpeek :: forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a) -> IO (VkBufferUsageBitmask a)
pokeByteOff :: Ptr b -> Int -> VkBufferUsageBitmask a -> IO ()
$cpokeByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> VkBufferUsageBitmask a -> IO ()
peekByteOff :: Ptr b -> Int -> IO (VkBufferUsageBitmask a)
$cpeekByteOff :: forall (a :: FlagType) b.
Ptr b -> Int -> IO (VkBufferUsageBitmask a)
pokeElemOff :: Ptr (VkBufferUsageBitmask a)
-> Int -> VkBufferUsageBitmask a -> IO ()
$cpokeElemOff :: forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a)
-> Int -> VkBufferUsageBitmask a -> IO ()
peekElemOff :: Ptr (VkBufferUsageBitmask a) -> Int -> IO (VkBufferUsageBitmask a)
$cpeekElemOff :: forall (a :: FlagType).
Ptr (VkBufferUsageBitmask a) -> Int -> IO (VkBufferUsageBitmask a)
alignment :: VkBufferUsageBitmask a -> Int
$calignment :: forall (a :: FlagType). VkBufferUsageBitmask a -> Int
sizeOf :: VkBufferUsageBitmask a -> Int
$csizeOf :: forall (a :: FlagType). VkBufferUsageBitmask a -> Int
Storable, Typeable (VkBufferUsageBitmask a)
DataType
Constr
Typeable (VkBufferUsageBitmask a)
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> VkBufferUsageBitmask a
    -> c (VkBufferUsageBitmask a))
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c (VkBufferUsageBitmask a))
-> (VkBufferUsageBitmask a -> Constr)
-> (VkBufferUsageBitmask a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c (VkBufferUsageBitmask a)))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c (VkBufferUsageBitmask a)))
-> ((forall b. Data b => b -> b)
    -> VkBufferUsageBitmask a -> VkBufferUsageBitmask a)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkBufferUsageBitmask a
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> VkBufferUsageBitmask a
    -> r)
-> (forall u.
    (forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> [u])
-> (forall u.
    Int -> (forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a))
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a))
-> Data (VkBufferUsageBitmask a)
VkBufferUsageBitmask a -> DataType
VkBufferUsageBitmask a -> Constr
(forall b. Data b => b -> b)
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferUsageBitmask a
-> c (VkBufferUsageBitmask a)
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferUsageBitmask a)
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) -> VkBufferUsageBitmask a -> u
forall u.
(forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
forall (a :: FlagType).
Typeable a =>
Typeable (VkBufferUsageBitmask a)
forall (a :: FlagType).
Typeable a =>
VkBufferUsageBitmask a -> DataType
forall (a :: FlagType).
Typeable a =>
VkBufferUsageBitmask a -> Constr
forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
forall (a :: FlagType) u.
Typeable a =>
Int -> (forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> u
forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> [u]
forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferUsageBitmask a)
forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferUsageBitmask a
-> c (VkBufferUsageBitmask a)
forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d)) -> Maybe (c (VkBufferUsageBitmask a))
forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferUsageBitmask a))
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferUsageBitmask a)
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferUsageBitmask a
-> c (VkBufferUsageBitmask a)
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c (VkBufferUsageBitmask a))
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferUsageBitmask a))
$cVkBufferUsageBitmask :: Constr
$tVkBufferUsageBitmask :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
$cgmapMo :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
gmapMp :: (forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
$cgmapMp :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, MonadPlus m) =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
gmapM :: (forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
$cgmapM :: forall (a :: FlagType) (m :: * -> *).
(Typeable a, Monad m) =>
(forall d. Data d => d -> m d)
-> VkBufferUsageBitmask a -> m (VkBufferUsageBitmask a)
gmapQi :: Int -> (forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> u
$cgmapQi :: forall (a :: FlagType) u.
Typeable a =>
Int -> (forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> u
gmapQ :: (forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> [u]
$cgmapQ :: forall (a :: FlagType) u.
Typeable a =>
(forall d. Data d => d -> u) -> VkBufferUsageBitmask a -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
$cgmapQr :: forall (a :: FlagType) r r'.
Typeable a =>
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
$cgmapQl :: forall (a :: FlagType) r r'.
Typeable a =>
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> VkBufferUsageBitmask a
-> r
gmapT :: (forall b. Data b => b -> b)
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
$cgmapT :: forall (a :: FlagType).
Typeable a =>
(forall b. Data b => b -> b)
-> VkBufferUsageBitmask a -> VkBufferUsageBitmask a
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferUsageBitmask a))
$cdataCast2 :: forall (a :: FlagType) (t :: * -> * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c (VkBufferUsageBitmask a))
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c (VkBufferUsageBitmask a))
$cdataCast1 :: forall (a :: FlagType) (t :: * -> *) (c :: * -> *).
(Typeable a, Typeable t) =>
(forall d. Data d => c (t d)) -> Maybe (c (VkBufferUsageBitmask a))
dataTypeOf :: VkBufferUsageBitmask a -> DataType
$cdataTypeOf :: forall (a :: FlagType).
Typeable a =>
VkBufferUsageBitmask a -> DataType
toConstr :: VkBufferUsageBitmask a -> Constr
$ctoConstr :: forall (a :: FlagType).
Typeable a =>
VkBufferUsageBitmask a -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferUsageBitmask a)
$cgunfold :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c (VkBufferUsageBitmask a)
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferUsageBitmask a
-> c (VkBufferUsageBitmask a)
$cgfoldl :: forall (a :: FlagType) (c :: * -> *).
Typeable a =>
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> VkBufferUsageBitmask a
-> c (VkBufferUsageBitmask a)
$cp1Data :: forall (a :: FlagType).
Typeable a =>
Typeable (VkBufferUsageBitmask a)
Data, (forall x.
 VkBufferUsageBitmask a -> Rep (VkBufferUsageBitmask a) x)
-> (forall x.
    Rep (VkBufferUsageBitmask a) x -> VkBufferUsageBitmask a)
-> Generic (VkBufferUsageBitmask a)
forall x. Rep (VkBufferUsageBitmask a) x -> VkBufferUsageBitmask a
forall x. VkBufferUsageBitmask a -> Rep (VkBufferUsageBitmask a) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (a :: FlagType) x.
Rep (VkBufferUsageBitmask a) x -> VkBufferUsageBitmask a
forall (a :: FlagType) x.
VkBufferUsageBitmask a -> Rep (VkBufferUsageBitmask a) x
$cto :: forall (a :: FlagType) x.
Rep (VkBufferUsageBitmask a) x -> VkBufferUsageBitmask a
$cfrom :: forall (a :: FlagType) x.
VkBufferUsageBitmask a -> Rep (VkBufferUsageBitmask a) x
Generic)

type VkBufferUsageFlags = VkBufferUsageBitmask FlagMask

type VkBufferUsageFlagBits = VkBufferUsageBitmask FlagBit

pattern VkBufferUsageFlagBits ::
        VkFlags -> VkBufferUsageBitmask FlagBit

pattern $bVkBufferUsageFlagBits :: VkFlags -> VkBufferUsageBitmask FlagBit
$mVkBufferUsageFlagBits :: forall r.
VkBufferUsageBitmask FlagBit -> (VkFlags -> r) -> (Void# -> r) -> r
VkBufferUsageFlagBits n = VkBufferUsageBitmask n

pattern VkBufferUsageFlags ::
        VkFlags -> VkBufferUsageBitmask FlagMask

pattern $bVkBufferUsageFlags :: VkFlags -> VkBufferUsageBitmask FlagMask
$mVkBufferUsageFlags :: forall r.
VkBufferUsageBitmask FlagMask
-> (VkFlags -> r) -> (Void# -> r) -> r
VkBufferUsageFlags n = VkBufferUsageBitmask n

deriving instance Bits (VkBufferUsageBitmask FlagMask)

deriving instance FiniteBits (VkBufferUsageBitmask FlagMask)

deriving instance Integral (VkBufferUsageBitmask FlagMask)

deriving instance Num (VkBufferUsageBitmask FlagMask)

deriving instance Bounded (VkBufferUsageBitmask FlagMask)

deriving instance Enum (VkBufferUsageBitmask FlagMask)

deriving instance Real (VkBufferUsageBitmask FlagMask)

instance Show (VkBufferUsageBitmask a) where
        showsPrec :: Int -> VkBufferUsageBitmask a -> ShowS
showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_TRANSFER_SRC_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_TRANSFER_SRC_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_TRANSFER_DST_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_TRANSFER_DST_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_STORAGE_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_INDEX_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_INDEX_BUFFER_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"
        showsPrec Int
_ VkBufferUsageBitmask a
VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT
          = String -> ShowS
showString String
"VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"
        showsPrec Int
p (VkBufferUsageBitmask VkFlags
x)
          = Bool -> ShowS -> ShowS
showParen (Int
p Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
11)
              (String -> ShowS
showString String
"VkBufferUsageBitmask " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> VkFlags -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11 VkFlags
x)

instance Read (VkBufferUsageBitmask a) where
        readPrec :: ReadPrec (VkBufferUsageBitmask a)
readPrec
          = ReadPrec (VkBufferUsageBitmask a)
-> ReadPrec (VkBufferUsageBitmask a)
forall a. ReadPrec a -> ReadPrec a
parens
              ([(String, ReadPrec (VkBufferUsageBitmask a))]
-> ReadPrec (VkBufferUsageBitmask a)
forall a. [(String, ReadPrec a)] -> ReadPrec a
choose
                 [(String
"VK_BUFFER_USAGE_TRANSFER_SRC_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_TRANSFER_SRC_BIT),
                  (String
"VK_BUFFER_USAGE_TRANSFER_DST_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_TRANSFER_DST_BIT),
                  (String
"VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT),
                  (String
"VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT),
                  (String
"VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT),
                  (String
"VK_BUFFER_USAGE_STORAGE_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_STORAGE_BUFFER_BIT),
                  (String
"VK_BUFFER_USAGE_INDEX_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_INDEX_BUFFER_BIT),
                  (String
"VK_BUFFER_USAGE_VERTEX_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT),
                  (String
"VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT",
                   VkBufferUsageBitmask a -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a. Applicative f => a -> f a
pure VkBufferUsageBitmask a
forall (a :: FlagType). VkBufferUsageBitmask a
VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT)]
                 ReadPrec (VkBufferUsageBitmask a)
-> ReadPrec (VkBufferUsageBitmask a)
-> ReadPrec (VkBufferUsageBitmask a)
forall a. ReadPrec a -> ReadPrec a -> ReadPrec a
+++
                 Int
-> ReadPrec (VkBufferUsageBitmask a)
-> ReadPrec (VkBufferUsageBitmask a)
forall a. Int -> ReadPrec a -> ReadPrec a
prec Int
10
                   (Lexeme -> ReadPrec ()
expectP (String -> Lexeme
Ident String
"VkBufferUsageBitmask") ReadPrec ()
-> ReadPrec (VkBufferUsageBitmask a)
-> ReadPrec (VkBufferUsageBitmask a)
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>>
                      (VkFlags -> VkBufferUsageBitmask a
forall (a :: FlagType). VkFlags -> VkBufferUsageBitmask a
VkBufferUsageBitmask (VkFlags -> VkBufferUsageBitmask a)
-> ReadPrec VkFlags -> ReadPrec (VkBufferUsageBitmask a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ReadPrec VkFlags -> ReadPrec VkFlags
forall a. ReadPrec a -> ReadPrec a
step ReadPrec VkFlags
forall a. Read a => ReadPrec a
readPrec)))

-- | Can be used as a source of transfer operations
--
--   bitpos = @0@
pattern VK_BUFFER_USAGE_TRANSFER_SRC_BIT :: VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_TRANSFER_SRC_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_TRANSFER_SRC_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_TRANSFER_SRC_BIT = VkBufferUsageBitmask 1

-- | Can be used as a destination of transfer operations
--
--   bitpos = @1@
pattern VK_BUFFER_USAGE_TRANSFER_DST_BIT :: VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_TRANSFER_DST_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_TRANSFER_DST_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_TRANSFER_DST_BIT = VkBufferUsageBitmask 2

-- | Can be used as TBO
--
--   bitpos = @2@
pattern VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT ::
        VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT =
        VkBufferUsageBitmask 4

-- | Can be used as IBO
--
--   bitpos = @3@
pattern VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT ::
        VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT =
        VkBufferUsageBitmask 8

-- | Can be used as UBO
--
--   bitpos = @4@
pattern VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT ::
        VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_UNIFORM_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_UNIFORM_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT =
        VkBufferUsageBitmask 16

-- | Can be used as SSBO
--
--   bitpos = @5@
pattern VK_BUFFER_USAGE_STORAGE_BUFFER_BIT ::
        VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_STORAGE_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_STORAGE_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_STORAGE_BUFFER_BIT =
        VkBufferUsageBitmask 32

-- | Can be used as source of fixed-function index fetch (index buffer)
--
--   bitpos = @6@
pattern VK_BUFFER_USAGE_INDEX_BUFFER_BIT :: VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_INDEX_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_INDEX_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_INDEX_BUFFER_BIT = VkBufferUsageBitmask 64

-- | Can be used as source of fixed-function vertex fetch (VBO)
--
--   bitpos = @7@
pattern VK_BUFFER_USAGE_VERTEX_BUFFER_BIT :: VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_VERTEX_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_VERTEX_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT =
        VkBufferUsageBitmask 128

-- | Can be the source of indirect parameters (e.g. indirect buffer, parameter buffer)
--
--   bitpos = @8@
pattern VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT ::
        VkBufferUsageBitmask a

pattern $bVK_BUFFER_USAGE_INDIRECT_BUFFER_BIT :: VkBufferUsageBitmask a
$mVK_BUFFER_USAGE_INDIRECT_BUFFER_BIT :: forall r (a :: FlagType).
VkBufferUsageBitmask a -> (Void# -> r) -> (Void# -> r) -> r
VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT =
        VkBufferUsageBitmask 256

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

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

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