blob: 49330c68adc268bb06008e147de6dc7fec942bf3 [file] [log] [blame]
big_endian_packets
// Preliminary definitions
enum Enum7 : 7 {
A = 1,
B = 2,
}
enum Enum16 : 16 {
A = 0xaabb,
B = 0xccdd,
}
struct SizedStruct {
a: 8,
}
struct UnsizedStruct {
_size_(array): 2,
_reserved_: 6,
array: 8[],
}
enum MaxDiscriminantEnum : 64 {
Max = 0xffffffffffffffff,
}
// Packet bit fields
// The parser must be able to handle bit fields with scalar values
// up to 64 bits wide. The parser should generate a static size guard.
packet Packet_Scalar_Field {
a: 7,
c: 57,
}
// The parser must be able to handle bit fields with enum values
// up to 64 bits wide. The parser should generate a static size guard.
packet Packet_Enum_Field {
a: Enum7,
c: 57,
}
// Array fields
// Array element types
// The parser must be able to handle bit fields with size fields
// up to 64 bits wide. The parser should generate a static size guard.
packet Packet_Size_Field {
_size_(b): 3,
a: 61,
b: 8[],
}
// The parser must be able to handle bit fields with count fields
// up to 64 bits wide. The parser should generate a static size guard.
packet Packet_Count_Field {
_count_(b): 3,
a: 61,
b: 8[],
}
packet Packet_Array_Field_ByteElement_ConstantSize {
array: 8[4],
}
packet Packet_Array_Field_ByteElement_UnknownSize {
array: 8[],
}
packet Packet_Array_Field_ScalarElement_ConstantSize {
array: 16[4],
}
packet Packet_Array_Field_ScalarElement_UnknownSize {
array: 16[],
}
packet Packet_Array_Field_EnumElement_ConstantSize {
array: Enum16[4],
}
packet Packet_Array_Field_EnumElement_UnknownSize {
array: Enum16[],
}
packet Packet_Array_Field_SizedElement_ConstantSize {
array: SizedStruct[4],
}
packet Packet_Array_Field_SizedElement_UnknownSize {
array: SizedStruct[],
}
packet Packet_Array_Field_UnsizedElement_ConstantSize {
array: UnsizedStruct[4],
}
packet Packet_Array_Field_UnsizedElement_VariableSize {
_size_(array) : 4,
_reserved_: 4,
array: UnsizedStruct[],
}
packet Packet_Array_Field_UnsizedElement_VariableCount {
_count_(array) : 4,
_reserved_: 4,
array: UnsizedStruct[],
}
packet Packet_Array_Field_UnsizedElement_UnknownSize {
array: UnsizedStruct[],
}