module Data.SpirV.Reflect.BlockVariable ( BlockVariable(..) , WordOffset(..) ) where import Data.Text (Text) import Data.Vector (Vector) import GHC.Generics (Generic) import Data.Word (Word32) import Data.SpirV.Reflect.Enums qualified as Enums import Data.SpirV.Reflect.Traits qualified as Traits import Data.SpirV.Reflect.TypeDescription (TypeDescription) data BlockVariable = BlockVariable { BlockVariable -> Maybe Word32 spirv_id :: Maybe Word32 , BlockVariable -> Maybe Text name :: Maybe Text , BlockVariable -> Word32 offset :: Word32 , BlockVariable -> Word32 absolute_offset :: Word32 , BlockVariable -> Word32 size :: Word32 , BlockVariable -> Word32 padded_size :: Word32 , BlockVariable -> DecorationFlags decorations :: Enums.DecorationFlags , BlockVariable -> Numeric numeric :: Traits.Numeric , BlockVariable -> Array array :: Traits.Array , BlockVariable -> Vector BlockVariable members :: Vector BlockVariable , BlockVariable -> Maybe TypeDescription type_description :: Maybe TypeDescription , BlockVariable -> Maybe WordOffset word_offset :: Maybe WordOffset } deriving (BlockVariable -> BlockVariable -> Bool (BlockVariable -> BlockVariable -> Bool) -> (BlockVariable -> BlockVariable -> Bool) -> Eq BlockVariable forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: BlockVariable -> BlockVariable -> Bool == :: BlockVariable -> BlockVariable -> Bool $c/= :: BlockVariable -> BlockVariable -> Bool /= :: BlockVariable -> BlockVariable -> Bool Eq, Int -> BlockVariable -> ShowS [BlockVariable] -> ShowS BlockVariable -> String (Int -> BlockVariable -> ShowS) -> (BlockVariable -> String) -> ([BlockVariable] -> ShowS) -> Show BlockVariable forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> BlockVariable -> ShowS showsPrec :: Int -> BlockVariable -> ShowS $cshow :: BlockVariable -> String show :: BlockVariable -> String $cshowList :: [BlockVariable] -> ShowS showList :: [BlockVariable] -> ShowS Show, (forall x. BlockVariable -> Rep BlockVariable x) -> (forall x. Rep BlockVariable x -> BlockVariable) -> Generic BlockVariable forall x. Rep BlockVariable x -> BlockVariable forall x. BlockVariable -> Rep BlockVariable x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. BlockVariable -> Rep BlockVariable x from :: forall x. BlockVariable -> Rep BlockVariable x $cto :: forall x. Rep BlockVariable x -> BlockVariable to :: forall x. Rep BlockVariable x -> BlockVariable Generic) newtype WordOffset = WordOffset { WordOffset -> Word32 offset :: 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)