Safe Haskell | None |
---|---|
Language | Haskell2010 |
Size Fields
- data Sized sf r :: IsA BitRecord
- type Sized8 t = Sized FieldU8 t
- type Sized16 t = Sized FieldU16 t
- type Sized32 t = Sized FieldU32 t
- type Sized64 t = Sized FieldU64 t
- data SizedField sf r :: IsA BitRecord
- type SizedField8 t = SizedField FieldU8 t
- type SizedField16 t = SizedField FieldU16 t
- type SizedField32 t = SizedField FieldU32 t
- type SizedField64 t = SizedField FieldU64 t
- type family SizeFieldValue (c :: k) :: Nat
Documentation
data Sized sf r :: IsA BitRecord Source #
A record with a size member, and a nested record that can be counted
using SizeFieldValue
.
data SizedField sf r :: IsA BitRecord Source #
A record with a size member, and a nested field that can be counted
using SizeFieldValue
.
type Eval BitRecord (SizedField rt k st len t2 rt1 len1 t1 sf r) Source # | |
type SizedField8 t = SizedField FieldU8 t Source #
A convenient alias for a SizedField
with an FieldU8
size field.
type SizedField16 t = SizedField FieldU16 t Source #
A convenient alias for a SizedField
with an FieldU16
size field.
type SizedField32 t = SizedField FieldU32 t Source #
A convenient alias for a SizedField
with an FieldU32
size field.
type SizedField64 t = SizedField FieldU64 t Source #
A convenient alias for a SizedField
with an FieldU64
size field.
type family SizeFieldValue (c :: k) :: Nat Source #
For something to be augmented by a size field there must be an instance of this family to generate the value of the size field, e.g. by counting the elements.
type SizeFieldValue BitRecord b Source # | |
type SizeFieldValue (A Type (BitRecordField rt k st size t) -> Type) (MkField rt k st size t) Source # | |
type SizeFieldValue (A Type (BitRecordField rt * k size t) -> Type) ((:=) rt size k t f v) Source # | |
type SizeFieldValue (A Type (BitRecordField rt k st len t) -> Type) (LabelF rt k st len t l f) Source # | |