Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Foreign.Storable.HeteroList
Contents
Synopsis
- wholeSize :: forall as. SizeAlignmentList as => Int
- sizeAlignments :: forall as. SizeAlignmentList as => [(Int, Int)]
- infixOffsetSize :: forall (part :: [Type]) (whole :: [Type]). InfixOffsetSize part whole => (Offset, Size)
- class SizeAlignmentList ts
- class SizeAlignmentList whole => InfixOffsetSize (part :: [Type]) whole
- class PrefixSize (part :: [Type]) whole
- class SizeAlignmentList as => PokableList (as :: [Type]) where
SIZE AND ALIGNMENT
wholeSize :: forall as. SizeAlignmentList as => Int Source #
sizeAlignments :: forall as. SizeAlignmentList as => [(Int, Int)] Source #
infixOffsetSize :: forall (part :: [Type]) (whole :: [Type]). InfixOffsetSize part whole => (Offset, Size) Source #
class SizeAlignmentList ts Source #
Minimal complete definition
sizeAlignmentList
Instances
SizeAlignmentList ('[] :: [Type]) Source # | |
Defined in Foreign.Storable.HeteroList Methods sizeAlignmentList :: PL SizeAlignmentOfType '[] | |
(Sizable t, SizeAlignmentList ts) => SizeAlignmentList (t ': ts) Source # | |
Defined in Foreign.Storable.HeteroList Methods sizeAlignmentList :: PL SizeAlignmentOfType (t ': ts) |
class SizeAlignmentList whole => InfixOffsetSize (part :: [Type]) whole Source #
Minimal complete definition
infixOffsetSizeFromSizeAlignmentList
Instances
(Sizable t, InfixOffsetSize ts whole) => InfixOffsetSize ts (t ': whole) Source # | |
Defined in Foreign.Storable.HeteroList Methods infixOffsetSizeFromSizeAlignmentList :: Size -> PL SizeAlignmentOfType (t ': whole) -> (Offset, Size) | |
(Sizable t, SizeAlignmentList whole, PrefixSize (t ': ts) (t ': whole)) => InfixOffsetSize (t ': ts) (t ': whole) Source # | |
Defined in Foreign.Storable.HeteroList Methods infixOffsetSizeFromSizeAlignmentList :: Size -> PL SizeAlignmentOfType (t ': whole) -> (Offset, Size) |
class PrefixSize (part :: [Type]) whole Source #
Minimal complete definition
prefixSizeFromSizeAlignmentList
Instances
PrefixSize ('[] :: [Type]) whole Source # | |
Defined in Foreign.Storable.HeteroList Methods prefixSizeFromSizeAlignmentList :: Size -> PL SizeAlignmentOfType whole -> Size | |
PrefixSize ts whole => PrefixSize (t ': ts) (t ': whole) Source # | |
Defined in Foreign.Storable.HeteroList Methods prefixSizeFromSizeAlignmentList :: Size -> PL SizeAlignmentOfType (t ': whole) -> Size |
POKABLE
class SizeAlignmentList as => PokableList (as :: [Type]) where Source #
Instances
PokableList ('[] :: [Type]) Source # | |
(Pokable a, PokableList as) => PokableList (a ': as) Source # | |