module Data.SpirV.Reflect.BlockVariable ( BlockVariable(..) ) 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 } deriving (BlockVariable -> BlockVariable -> Bool (BlockVariable -> BlockVariable -> Bool) -> (BlockVariable -> BlockVariable -> Bool) -> Eq BlockVariable forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: BlockVariable -> BlockVariable -> Bool $c/= :: BlockVariable -> BlockVariable -> Bool == :: BlockVariable -> BlockVariable -> Bool $c== :: 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 showList :: [BlockVariable] -> ShowS $cshowList :: [BlockVariable] -> ShowS show :: BlockVariable -> String $cshow :: BlockVariable -> String showsPrec :: Int -> BlockVariable -> ShowS $cshowsPrec :: Int -> 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 $cto :: forall x. Rep BlockVariable x -> BlockVariable $cfrom :: forall x. BlockVariable -> Rep BlockVariable x Generic)