aboutsummaryrefslogtreecommitdiff
path: root/tests/canonical/le_test_file.pdl
diff options
context:
space:
mode:
Diffstat (limited to 'tests/canonical/le_test_file.pdl')
-rw-r--r--tests/canonical/le_test_file.pdl60
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/canonical/le_test_file.pdl b/tests/canonical/le_test_file.pdl
index 6bc140c..fa87314 100644
--- a/tests/canonical/le_test_file.pdl
+++ b/tests/canonical/le_test_file.pdl
@@ -362,6 +362,30 @@ packet Packet_Array_Field_UnsizedElement_VariableCount_Padded {
_padding_ [16],
}
+packet Packet_Optional_Scalar_Field {
+ c0: 1,
+ c1: 1,
+ _reserved_: 6,
+ a: 24 if c0 = 0,
+ b: 32 if c1 = 1,
+}
+
+packet Packet_Optional_Enum_Field {
+ c0: 1,
+ c1: 1,
+ _reserved_: 6,
+ a: Enum16 if c0 = 0,
+ b: Enum16 if c1 = 1,
+}
+
+packet Packet_Optional_Struct_Field {
+ c0: 1,
+ c1: 1,
+ _reserved_: 6,
+ a: SizedStruct if c0 = 0,
+ b: UnsizedStruct if c1 = 1,
+}
+
// Packet inheritance
// The parser must handle specialization into
@@ -778,3 +802,39 @@ struct Struct_Array_Field_UnsizedElement_VariableCount_Padded_ {
packet Struct_Array_Field_UnsizedElement_VariableCount_Padded {
s: Struct_Array_Field_UnsizedElement_VariableCount_Padded_,
}
+
+struct Struct_Optional_Scalar_Field_ {
+ c0: 1,
+ c1: 1,
+ _reserved_: 6,
+ a: 24 if c0 = 0,
+ b: 32 if c1 = 1,
+}
+
+packet Struct_Optional_Scalar_Field {
+ s: Struct_Optional_Scalar_Field_,
+}
+
+struct Struct_Optional_Enum_Field_ {
+ c0: 1,
+ c1: 1,
+ _reserved_: 6,
+ a: Enum16 if c0 = 0,
+ b: Enum16 if c1 = 1,
+}
+
+packet Struct_Optional_Enum_Field {
+ s: Struct_Optional_Enum_Field_,
+}
+
+struct Struct_Optional_Struct_Field_ {
+ c0: 1,
+ c1: 1,
+ _reserved_: 6,
+ a: SizedStruct if c0 = 0,
+ b: UnsizedStruct if c1 = 1,
+}
+
+packet Struct_Optional_Struct_Field {
+ s: Struct_Optional_Struct_Field_,
+}