{-# language CPP #-}
-- No documentation found for Chapter "CommandPoolTrimFlags"
module Vulkan.Core11.Enums.CommandPoolTrimFlags  (CommandPoolTrimFlags(..)) where

import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showString)
import Numeric (showHex)
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Foreign.Storable (Storable)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Vulkan.Core10.FundamentalTypes (Flags)
import Vulkan.Zero (Zero)
-- | VkCommandPoolTrimFlags - Reserved for future use
--
-- = Description
--
-- 'CommandPoolTrimFlags' is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- = See Also
--
-- 'Vulkan.Core11.Promoted_From_VK_KHR_maintenance1.trimCommandPool',
-- 'Vulkan.Extensions.VK_KHR_maintenance1.trimCommandPoolKHR'
newtype CommandPoolTrimFlags = CommandPoolTrimFlags Flags
  deriving newtype (CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
(CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool)
-> (CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool)
-> Eq CommandPoolTrimFlags
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
$c/= :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
== :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
$c== :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
Eq, Eq CommandPoolTrimFlags
Eq CommandPoolTrimFlags =>
(CommandPoolTrimFlags -> CommandPoolTrimFlags -> Ordering)
-> (CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool)
-> (CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool)
-> (CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool)
-> (CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool)
-> (CommandPoolTrimFlags
    -> CommandPoolTrimFlags -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags
    -> CommandPoolTrimFlags -> CommandPoolTrimFlags)
-> Ord CommandPoolTrimFlags
CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
CommandPoolTrimFlags -> CommandPoolTrimFlags -> Ordering
CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
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 :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
$cmin :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
max :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
$cmax :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
>= :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
$c>= :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
> :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
$c> :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
<= :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
$c<= :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
< :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
$c< :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Bool
compare :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Ordering
$ccompare :: CommandPoolTrimFlags -> CommandPoolTrimFlags -> Ordering
$cp1Ord :: Eq CommandPoolTrimFlags
Ord, Ptr b -> Int -> IO CommandPoolTrimFlags
Ptr b -> Int -> CommandPoolTrimFlags -> IO ()
Ptr CommandPoolTrimFlags -> IO CommandPoolTrimFlags
Ptr CommandPoolTrimFlags -> Int -> IO CommandPoolTrimFlags
Ptr CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags -> IO ()
Ptr CommandPoolTrimFlags -> CommandPoolTrimFlags -> IO ()
CommandPoolTrimFlags -> Int
(CommandPoolTrimFlags -> Int)
-> (CommandPoolTrimFlags -> Int)
-> (Ptr CommandPoolTrimFlags -> Int -> IO CommandPoolTrimFlags)
-> (Ptr CommandPoolTrimFlags
    -> Int -> CommandPoolTrimFlags -> IO ())
-> (forall b. Ptr b -> Int -> IO CommandPoolTrimFlags)
-> (forall b. Ptr b -> Int -> CommandPoolTrimFlags -> IO ())
-> (Ptr CommandPoolTrimFlags -> IO CommandPoolTrimFlags)
-> (Ptr CommandPoolTrimFlags -> CommandPoolTrimFlags -> IO ())
-> Storable CommandPoolTrimFlags
forall b. Ptr b -> Int -> IO CommandPoolTrimFlags
forall b. Ptr b -> Int -> CommandPoolTrimFlags -> 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 CommandPoolTrimFlags -> CommandPoolTrimFlags -> IO ()
$cpoke :: Ptr CommandPoolTrimFlags -> CommandPoolTrimFlags -> IO ()
peek :: Ptr CommandPoolTrimFlags -> IO CommandPoolTrimFlags
$cpeek :: Ptr CommandPoolTrimFlags -> IO CommandPoolTrimFlags
pokeByteOff :: Ptr b -> Int -> CommandPoolTrimFlags -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> CommandPoolTrimFlags -> IO ()
peekByteOff :: Ptr b -> Int -> IO CommandPoolTrimFlags
$cpeekByteOff :: forall b. Ptr b -> Int -> IO CommandPoolTrimFlags
pokeElemOff :: Ptr CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags -> IO ()
$cpokeElemOff :: Ptr CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags -> IO ()
peekElemOff :: Ptr CommandPoolTrimFlags -> Int -> IO CommandPoolTrimFlags
$cpeekElemOff :: Ptr CommandPoolTrimFlags -> Int -> IO CommandPoolTrimFlags
alignment :: CommandPoolTrimFlags -> Int
$calignment :: CommandPoolTrimFlags -> Int
sizeOf :: CommandPoolTrimFlags -> Int
$csizeOf :: CommandPoolTrimFlags -> Int
Storable, CommandPoolTrimFlags
CommandPoolTrimFlags -> Zero CommandPoolTrimFlags
forall a. a -> Zero a
zero :: CommandPoolTrimFlags
$czero :: CommandPoolTrimFlags
Zero, Eq CommandPoolTrimFlags
CommandPoolTrimFlags
Eq CommandPoolTrimFlags =>
(CommandPoolTrimFlags
 -> CommandPoolTrimFlags -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags
    -> CommandPoolTrimFlags -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags
    -> CommandPoolTrimFlags -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> CommandPoolTrimFlags
-> (Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> Bool)
-> (CommandPoolTrimFlags -> Maybe Int)
-> (CommandPoolTrimFlags -> Int)
-> (CommandPoolTrimFlags -> Bool)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags)
-> (CommandPoolTrimFlags -> Int)
-> Bits CommandPoolTrimFlags
Int -> CommandPoolTrimFlags
CommandPoolTrimFlags -> Bool
CommandPoolTrimFlags -> Int
CommandPoolTrimFlags -> Maybe Int
CommandPoolTrimFlags -> CommandPoolTrimFlags
CommandPoolTrimFlags -> Int -> Bool
CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
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 :: CommandPoolTrimFlags -> Int
$cpopCount :: CommandPoolTrimFlags -> Int
rotateR :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$crotateR :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
rotateL :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$crotateL :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
unsafeShiftR :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$cunsafeShiftR :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
shiftR :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$cshiftR :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
unsafeShiftL :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$cunsafeShiftL :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
shiftL :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$cshiftL :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
isSigned :: CommandPoolTrimFlags -> Bool
$cisSigned :: CommandPoolTrimFlags -> Bool
bitSize :: CommandPoolTrimFlags -> Int
$cbitSize :: CommandPoolTrimFlags -> Int
bitSizeMaybe :: CommandPoolTrimFlags -> Maybe Int
$cbitSizeMaybe :: CommandPoolTrimFlags -> Maybe Int
testBit :: CommandPoolTrimFlags -> Int -> Bool
$ctestBit :: CommandPoolTrimFlags -> Int -> Bool
complementBit :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$ccomplementBit :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
clearBit :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$cclearBit :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
setBit :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$csetBit :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
bit :: Int -> CommandPoolTrimFlags
$cbit :: Int -> CommandPoolTrimFlags
zeroBits :: CommandPoolTrimFlags
$czeroBits :: CommandPoolTrimFlags
rotate :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$crotate :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
shift :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
$cshift :: CommandPoolTrimFlags -> Int -> CommandPoolTrimFlags
complement :: CommandPoolTrimFlags -> CommandPoolTrimFlags
$ccomplement :: CommandPoolTrimFlags -> CommandPoolTrimFlags
xor :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
$cxor :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
.|. :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
$c.|. :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
.&. :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
$c.&. :: CommandPoolTrimFlags
-> CommandPoolTrimFlags -> CommandPoolTrimFlags
$cp1Bits :: Eq CommandPoolTrimFlags
Bits, Bits CommandPoolTrimFlags
Bits CommandPoolTrimFlags =>
(CommandPoolTrimFlags -> Int)
-> (CommandPoolTrimFlags -> Int)
-> (CommandPoolTrimFlags -> Int)
-> FiniteBits CommandPoolTrimFlags
CommandPoolTrimFlags -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: CommandPoolTrimFlags -> Int
$ccountTrailingZeros :: CommandPoolTrimFlags -> Int
countLeadingZeros :: CommandPoolTrimFlags -> Int
$ccountLeadingZeros :: CommandPoolTrimFlags -> Int
finiteBitSize :: CommandPoolTrimFlags -> Int
$cfiniteBitSize :: CommandPoolTrimFlags -> Int
$cp1FiniteBits :: Bits CommandPoolTrimFlags
FiniteBits)



conNameCommandPoolTrimFlags :: String
conNameCommandPoolTrimFlags :: String
conNameCommandPoolTrimFlags = "CommandPoolTrimFlags"

enumPrefixCommandPoolTrimFlags :: String
enumPrefixCommandPoolTrimFlags :: String
enumPrefixCommandPoolTrimFlags = ""

showTableCommandPoolTrimFlags :: [(CommandPoolTrimFlags, String)]
showTableCommandPoolTrimFlags :: [(CommandPoolTrimFlags, String)]
showTableCommandPoolTrimFlags = []

instance Show CommandPoolTrimFlags where
  showsPrec :: Int -> CommandPoolTrimFlags -> ShowS
showsPrec = String
-> [(CommandPoolTrimFlags, String)]
-> String
-> (CommandPoolTrimFlags -> Flags)
-> (Flags -> ShowS)
-> Int
-> CommandPoolTrimFlags
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec String
enumPrefixCommandPoolTrimFlags
                            [(CommandPoolTrimFlags, String)]
showTableCommandPoolTrimFlags
                            String
conNameCommandPoolTrimFlags
                            (\(CommandPoolTrimFlags x :: Flags
x) -> Flags
x)
                            (\x :: Flags
x -> String -> ShowS
showString "0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Flags -> ShowS
forall a. (Integral a, Show a) => a -> ShowS
showHex Flags
x)

instance Read CommandPoolTrimFlags where
  readPrec :: ReadPrec CommandPoolTrimFlags
readPrec = String
-> [(CommandPoolTrimFlags, String)]
-> String
-> (Flags -> CommandPoolTrimFlags)
-> ReadPrec CommandPoolTrimFlags
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec String
enumPrefixCommandPoolTrimFlags
                          [(CommandPoolTrimFlags, String)]
showTableCommandPoolTrimFlags
                          String
conNameCommandPoolTrimFlags
                          Flags -> CommandPoolTrimFlags
CommandPoolTrimFlags