module Data.SpirV.Reflect.DescriptorBinding ( DescriptorBinding(..) , WordOffset(..) ) where import Data.Text (Text) import Data.Vector (Vector) import Data.Word (Word32) import GHC.Generics (Generic) import Data.SpirV.Reflect.BlockVariable (BlockVariable) import Data.SpirV.Reflect.Enums qualified as Enums import Data.SpirV.Reflect.Traits qualified as Traits import Data.SpirV.Reflect.TypeDescription (TypeDescription) data DescriptorBinding = DescriptorBinding { DescriptorBinding -> Maybe Word32 spirv_id :: Maybe Word32 , DescriptorBinding -> Text name :: Text , DescriptorBinding -> Word32 binding :: Word32 , DescriptorBinding -> Word32 input_attachment_index :: Word32 , DescriptorBinding -> Word32 set :: Word32 , DescriptorBinding -> DescriptorType descriptor_type :: Enums.DescriptorType , DescriptorBinding -> ResourceFlags resource_type :: Enums.ResourceFlags , DescriptorBinding -> Image image :: Traits.Image , DescriptorBinding -> Maybe BlockVariable block :: Maybe BlockVariable , DescriptorBinding -> Array array :: Traits.Array , DescriptorBinding -> Maybe Word32 count :: Maybe Word32 , DescriptorBinding -> Word32 accessed :: Word32 , DescriptorBinding -> Word32 uav_counter_id :: Word32 , DescriptorBinding -> Maybe DescriptorBinding uav_counter_binding :: Maybe DescriptorBinding , DescriptorBinding -> Vector Word32 byte_address_buffer_offsets :: Vector Word32 , DescriptorBinding -> Maybe TypeDescription type_description :: Maybe TypeDescription , DescriptorBinding -> WordOffset word_offset :: WordOffset , DescriptorBinding -> DecorationFlags decoration_flags :: Enums.DecorationFlags , DescriptorBinding -> Maybe UserType user_type :: Maybe Enums.UserType } deriving (DescriptorBinding -> DescriptorBinding -> Bool (DescriptorBinding -> DescriptorBinding -> Bool) -> (DescriptorBinding -> DescriptorBinding -> Bool) -> Eq DescriptorBinding forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: DescriptorBinding -> DescriptorBinding -> Bool == :: DescriptorBinding -> DescriptorBinding -> Bool $c/= :: DescriptorBinding -> DescriptorBinding -> Bool /= :: DescriptorBinding -> DescriptorBinding -> Bool Eq, Int -> DescriptorBinding -> ShowS [DescriptorBinding] -> ShowS DescriptorBinding -> String (Int -> DescriptorBinding -> ShowS) -> (DescriptorBinding -> String) -> ([DescriptorBinding] -> ShowS) -> Show DescriptorBinding forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> DescriptorBinding -> ShowS showsPrec :: Int -> DescriptorBinding -> ShowS $cshow :: DescriptorBinding -> String show :: DescriptorBinding -> String $cshowList :: [DescriptorBinding] -> ShowS showList :: [DescriptorBinding] -> ShowS Show, (forall x. DescriptorBinding -> Rep DescriptorBinding x) -> (forall x. Rep DescriptorBinding x -> DescriptorBinding) -> Generic DescriptorBinding forall x. Rep DescriptorBinding x -> DescriptorBinding forall x. DescriptorBinding -> Rep DescriptorBinding x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. DescriptorBinding -> Rep DescriptorBinding x from :: forall x. DescriptorBinding -> Rep DescriptorBinding x $cto :: forall x. Rep DescriptorBinding x -> DescriptorBinding to :: forall x. Rep DescriptorBinding x -> DescriptorBinding Generic) data WordOffset = WordOffset { WordOffset -> Word32 binding :: Word32 , WordOffset -> Word32 set :: Word32 } deriving (WordOffset -> WordOffset -> Bool (WordOffset -> WordOffset -> Bool) -> (WordOffset -> WordOffset -> Bool) -> Eq WordOffset forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: WordOffset -> WordOffset -> Bool == :: WordOffset -> WordOffset -> Bool $c/= :: WordOffset -> WordOffset -> Bool /= :: WordOffset -> WordOffset -> Bool Eq, Int -> WordOffset -> ShowS [WordOffset] -> ShowS WordOffset -> String (Int -> WordOffset -> ShowS) -> (WordOffset -> String) -> ([WordOffset] -> ShowS) -> Show WordOffset forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> WordOffset -> ShowS showsPrec :: Int -> WordOffset -> ShowS $cshow :: WordOffset -> String show :: WordOffset -> String $cshowList :: [WordOffset] -> ShowS showList :: [WordOffset] -> ShowS Show, (forall x. WordOffset -> Rep WordOffset x) -> (forall x. Rep WordOffset x -> WordOffset) -> Generic WordOffset forall x. Rep WordOffset x -> WordOffset forall x. WordOffset -> Rep WordOffset x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. WordOffset -> Rep WordOffset x from :: forall x. WordOffset -> Rep WordOffset x $cto :: forall x. Rep WordOffset x -> WordOffset to :: forall x. Rep WordOffset x -> WordOffset Generic)