Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data O
- type Static (algn :: Alignment) (mnm :: Maybe Symbol) (ot :: ObjectType) v = 'Static_ ('O algn mnm ot v)
- type Dynamic (n :: Nat) (algn :: Alignment) (mnm :: Maybe Symbol) (ot :: ObjectType) v = 'Dynamic n ('O algn mnm ot v)
- type Atom (algn :: Alignment) v (nm :: Symbol) = AtomMaybeName algn v ('Just nm)
- type List (algn :: Alignment) v (nm :: Symbol) = ListMaybeName algn v ('Just nm)
- type Image (algn :: Alignment) v (nm :: Symbol) = ImageMaybeName algn v ('Just nm)
- type AtomNoName (algn :: Alignment) v = AtomMaybeName algn v ('Nothing :: Maybe Symbol)
- type ListNoName (algn :: Alignment) v = ListMaybeName algn v ('Nothing :: Maybe Symbol)
- type ImageNoName (algn :: Alignment) v = ImageMaybeName algn v ('Nothing :: Maybe Symbol)
- type AtomMaybeName (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Static_ (AtomMaybeName algn v mnm)
- type ListMaybeName (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Static_ (ListMaybeName algn v mnm)
- type ImageMaybeName (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Static_ (ImageMaybeName algn v mnm)
- type DynAtomNew (n :: Nat) (algn :: Alignment) v (nm :: Symbol) = 'Dynamic n (AtomNew algn v nm)
- type DynList (n :: Nat) (algn :: Alignment) v (nm :: Symbol) = 'Dynamic n (List algn v nm)
- type DynImage (n :: Nat) (algn :: Alignment) v (nm :: Symbol) = 'Dynamic n (Image algn v nm)
- type DynAtomNoName (n :: Nat) (algn :: Alignment) v = 'Dynamic n (AtomNoName algn v)
- type DynListNoName (n :: Nat) (algn :: Alignment) v = 'Dynamic n (ListNoName algn v)
- type DynImageNoName (n :: Nat) (algn :: Alignment) v = 'Dynamic n (ImageNoName algn v)
- type DynAtomMaybeName (n :: Nat) (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Dynamic n (AtomMaybeName algn v mnm)
- type DynListMaybeName (n :: Nat) (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Dynamic n (ListMaybeName algn v mnm)
- type DynImageMaybeName (n :: Nat) (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Dynamic n (ImageMaybeName algn v mnm)
- type family TypeOf (obj :: O) where ...
- data Length (obj :: O)
- pattern LengthAtom :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (AtomMaybeName algn v mnm))
- pattern LengthList :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Size -> Length ('Static_ (ListMaybeName algn v mnm))
- pattern LengthImage :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Size -> Size -> Size -> Size -> Size -> Length ('Static_ (ImageMaybeName algn v mnm))
- lengthImageRow :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size
- lengthImageWidth :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size
- lengthImageHeight :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size
- lengthImageDepth :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size
- lengthImageLayerCount :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size
- pattern LengthDynAtom :: forall (n :: Nat) (algn :: Alignment) v (nm :: Maybe Symbol). Length ('Dynamic n (Atom algn v nm))
- pattern LengthDynList :: forall (n :: Nat) (algn :: Alignment) v (nm :: Symbol). Size -> Length ('Dynamic n (List algn v nm))
- pattern LengthDynImage :: forall (n :: Nat) (algn :: Alignment) v (nm :: Symbol). Size -> Size -> Size -> Size -> Size -> Length ('Dynamic n (Image algn v nm))
- pattern LengthList' :: forall (algn :: Alignment) v (nm :: Maybe Symbol). Word64 -> Length ('Static_ (ListMaybeName algn v nm))
- class LengthOf (obj :: O) (objs :: [O]) where
- class OnlyDynamicLengths (objs :: [O]) where
- type OnlyDynamics (objs :: [O]) :: [O]
- onlyDynamicLength :: PL Length objs -> PL Length (OnlyDynamics objs)
- class Store v (obj :: O) where
- wholeSize :: forall (objs :: [O]). SizeAlignmentList objs => PL Length objs -> Size
- class WholeAlign (objs :: [O]) where
- wholeAlign :: Size
- offsetRange :: forall (obj :: O) (objs :: [O]) (i :: Nat). OffsetRange obj objs i => Size -> PL Length objs -> (Size, Size)
- offsetSize :: forall (obj :: O) (objs :: [O]) (i :: Nat). OffsetRange obj objs i => Size -> PL Length objs -> (Size, Size)
- class (SizeAlignmentList vs, TypeIndex v vs) => OffsetRange (v :: O) (vs :: [O]) (i :: Nat)
- offsetOfList :: forall {k} (v :: k) (onm :: Symbol) (vs :: [O]). OffsetOfList v onm vs => PL Length vs -> (Size, Size)
- class SizeAlignmentList objs => OffsetOfList (v :: k) (nm :: Symbol) (objs :: [O]) where
- offsetRangeListFromSzAlgns :: Size -> PL SizeAlignmentOf objs -> (Size, Size)
- class SizeAlignmentList (objs :: [O]) where
- sizeAlignmentListWholeAlignment :: ObjAlignment
- sizeAlignmentList :: PL Length objs -> PL SizeAlignmentOf objs
- class SizeAlignment (obj :: O) where
OBJECT
Instances
Synonyms
type Static (algn :: Alignment) (mnm :: Maybe Symbol) (ot :: ObjectType) v = 'Static_ ('O algn mnm ot v) Source #
type Dynamic (n :: Nat) (algn :: Alignment) (mnm :: Maybe Symbol) (ot :: ObjectType) v = 'Dynamic n ('O algn mnm ot v) Source #
static
type AtomNoName (algn :: Alignment) v = AtomMaybeName algn v ('Nothing :: Maybe Symbol) Source #
type ListNoName (algn :: Alignment) v = ListMaybeName algn v ('Nothing :: Maybe Symbol) Source #
type ImageNoName (algn :: Alignment) v = ImageMaybeName algn v ('Nothing :: Maybe Symbol) Source #
type AtomMaybeName (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Static_ (AtomMaybeName algn v mnm) Source #
type ListMaybeName (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Static_ (ListMaybeName algn v mnm) Source #
type ImageMaybeName (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Static_ (ImageMaybeName algn v mnm) Source #
dynamic
type DynAtomNew (n :: Nat) (algn :: Alignment) v (nm :: Symbol) = 'Dynamic n (AtomNew algn v nm) Source #
type DynImage (n :: Nat) (algn :: Alignment) v (nm :: Symbol) = 'Dynamic n (Image algn v nm) Source #
type DynAtomNoName (n :: Nat) (algn :: Alignment) v = 'Dynamic n (AtomNoName algn v) Source #
type DynListNoName (n :: Nat) (algn :: Alignment) v = 'Dynamic n (ListNoName algn v) Source #
type DynImageNoName (n :: Nat) (algn :: Alignment) v = 'Dynamic n (ImageNoName algn v) Source #
type DynAtomMaybeName (n :: Nat) (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Dynamic n (AtomMaybeName algn v mnm) Source #
type DynListMaybeName (n :: Nat) (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Dynamic n (ListMaybeName algn v mnm) Source #
type DynImageMaybeName (n :: Nat) (algn :: Alignment) v (mnm :: Maybe Symbol) = 'Dynamic n (ImageMaybeName algn v mnm) Source #
Type Of Object
OBJECT LENGTH
Synonyms
pattern LengthAtom :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (AtomMaybeName algn v mnm)) Source #
pattern LengthList :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Size -> Length ('Static_ (ListMaybeName algn v mnm)) Source #
pattern LengthImage :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Size -> Size -> Size -> Size -> Size -> Length ('Static_ (ImageMaybeName algn v mnm)) Source #
lengthImageRow :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size Source #
lengthImageWidth :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size Source #
lengthImageHeight :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size Source #
lengthImageDepth :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size Source #
lengthImageLayerCount :: forall (algn :: Alignment) v (mnm :: Maybe Symbol). Length ('Static_ (ImageMaybeName algn v mnm)) -> Size Source #
pattern LengthDynAtom :: forall (n :: Nat) (algn :: Alignment) v (nm :: Maybe Symbol). Length ('Dynamic n (Atom algn v nm)) Source #
pattern LengthDynList :: forall (n :: Nat) (algn :: Alignment) v (nm :: Symbol). Size -> Length ('Dynamic n (List algn v nm)) Source #
pattern LengthDynImage :: forall (n :: Nat) (algn :: Alignment) v (nm :: Symbol). Size -> Size -> Size -> Size -> Size -> Length ('Dynamic n (Image algn v nm)) Source #
pattern LengthList' :: forall (algn :: Alignment) v (nm :: Maybe Symbol). Word64 -> Length ('Static_ (ListMaybeName algn v nm)) Source #
Find Length
ONLY DYNAMIC LENGTHS
class OnlyDynamicLengths (objs :: [O]) where Source #
type OnlyDynamics (objs :: [O]) :: [O] Source #
onlyDynamicLength :: PL Length objs -> PL Length (OnlyDynamics objs) Source #
Instances
OnlyDynamicLengths ('[] :: [O]) Source # | |||||
Defined in Gpu.Vulkan.Object
onlyDynamicLength :: PL Length ('[] :: [O]) -> PL Length (OnlyDynamics ('[] :: [O])) Source # | |||||
OnlyDynamicLengths objs => OnlyDynamicLengths ('Dynamic _n o ': objs) Source # | |||||
Defined in Gpu.Vulkan.Object
onlyDynamicLength :: PL Length ('Dynamic _n o ': objs) -> PL Length (OnlyDynamics ('Dynamic _n o ': objs)) Source # | |||||
OnlyDynamicLengths objs => OnlyDynamicLengths ('Static_ _o ': objs) Source # | |||||
Defined in Gpu.Vulkan.Object
onlyDynamicLength :: PL Length ('Static_ _o ': objs) -> PL Length (OnlyDynamics ('Static_ _o ': objs)) Source # |
STORE
class Store v (obj :: O) where Source #
store :: Ptr (TypeOf obj) -> Length obj -> v -> IO () Source #
SIZE, ALIGNMENT AND OFFSET
Whole Size
class WholeAlign (objs :: [O]) where Source #
wholeAlign :: Size Source #
Instances
WholeAlign ('[] :: [O]) Source # | |
Defined in Gpu.Vulkan.Object wholeAlign :: Size Source # | |
(SizeAlignment obj, WholeAlign objs) => WholeAlign (obj ': objs) Source # | |
Defined in Gpu.Vulkan.Object wholeAlign :: Size Source # |
Offset Range
offsetRange :: forall (obj :: O) (objs :: [O]) (i :: Nat). OffsetRange obj objs i => Size -> PL Length objs -> (Size, Size) Source #
offsetSize :: forall (obj :: O) (objs :: [O]) (i :: Nat). OffsetRange obj objs i => Size -> PL Length objs -> (Size, Size) Source #
class (SizeAlignmentList vs, TypeIndex v vs) => OffsetRange (v :: O) (vs :: [O]) (i :: Nat) Source #
offsetRangeFromSzAlgns', offsetSizeFromSzAlgns'
Instances
(SizeAlignment v, OffsetRange v vs (i - 1)) => OffsetRange v (v ': vs) i Source # | |
Defined in Gpu.Vulkan.Object offsetRangeFromSzAlgns' :: Size -> PL SizeAlignmentOf (v ': vs) -> (Size, Size) offsetSizeFromSzAlgns' :: Size -> PL SizeAlignmentOf (v ': vs) -> (Size, Size) | |
(SizeAlignment v, SizeAlignmentList vs) => OffsetRange v (v ': vs) 0 Source # | |
Defined in Gpu.Vulkan.Object offsetRangeFromSzAlgns' :: Size -> PL SizeAlignmentOf (v ': vs) -> (Size, Size) offsetSizeFromSzAlgns' :: Size -> PL SizeAlignmentOf (v ': vs) -> (Size, Size) | |
(SizeAlignment v', OffsetRange v vs i) => OffsetRange v (v' ': vs) i Source # | |
Defined in Gpu.Vulkan.Object offsetRangeFromSzAlgns' :: Size -> PL SizeAlignmentOf (v' ': vs) -> (Size, Size) offsetSizeFromSzAlgns' :: Size -> PL SizeAlignmentOf (v' ': vs) -> (Size, Size) |
Offset Of List
offsetOfList :: forall {k} (v :: k) (onm :: Symbol) (vs :: [O]). OffsetOfList v onm vs => PL Length vs -> (Size, Size) Source #
class SizeAlignmentList objs => OffsetOfList (v :: k) (nm :: Symbol) (objs :: [O]) where Source #
Instances
(Storable v, KnownNat oalgn, SizeAlignmentList objs) => OffsetOfList (v :: Type) nm (List oalgn v nm ': objs) Source # | |
Defined in Gpu.Vulkan.Object | |
(SizeAlignment obj, OffsetOfList v nm objs) => OffsetOfList (v :: k) nm (obj ': objs) Source # | |
Defined in Gpu.Vulkan.Object |
Size AlignmentList
class SizeAlignmentList (objs :: [O]) where Source #
sizeAlignmentListWholeAlignment :: ObjAlignment Source #
sizeAlignmentList :: PL Length objs -> PL SizeAlignmentOf objs Source #
Instances
SizeAlignmentList ('[] :: [O]) Source # | |
Defined in Gpu.Vulkan.Object | |
(SizeAlignment obj, SizeAlignmentList objs) => SizeAlignmentList (obj ': objs) Source # | |
Defined in Gpu.Vulkan.Object sizeAlignmentListWholeAlignment :: ObjAlignment Source # sizeAlignmentList :: PL Length (obj ': objs) -> PL SizeAlignmentOf (obj ': objs) Source # |
class SizeAlignment (obj :: O) where Source #
Instances
SizeAlignment kobj => SizeAlignment ('Static_ kobj) Source # | |
(KnownNat n, SizeAlignment kobj) => SizeAlignment ('Dynamic n kobj) Source # | |