xref: /qemu/tests/qapi-schema/qapi-schema-test.out (revision b359f4b203fc8a3cc2967bf55d532dcf05928c8a)
1dcac6471SMarkus Armbrustermodule None
28a84767cSMarkus Armbrusterobject q_empty
31e381b65SMarc-André Lureauenum QType
48a84767cSMarkus Armbruster    prefix QTYPE
51e381b65SMarc-André Lureau    member none
61e381b65SMarc-André Lureau    member qnull
71e381b65SMarc-André Lureau    member qnum
81e381b65SMarc-André Lureau    member qstring
91e381b65SMarc-André Lureau    member qdict
101e381b65SMarc-André Lureau    member qlist
111e381b65SMarc-André Lureau    member qbool
12cf40a0a5SMarkus Armbrustermodule qapi-schema-test.json
138a84767cSMarkus Armbrusterobject TestStruct
148a84767cSMarkus Armbruster    member integer: int optional=False
158a84767cSMarkus Armbruster    member boolean: bool optional=False
168a84767cSMarkus Armbruster    member string: str optional=False
178a84767cSMarkus Armbrusterobject NestedEnumsOne
188a84767cSMarkus Armbruster    member enum1: EnumOne optional=False
198a84767cSMarkus Armbruster    member enum2: EnumOne optional=True
208a84767cSMarkus Armbruster    member enum3: EnumOne optional=False
218a84767cSMarkus Armbruster    member enum4: EnumOne optional=True
221e381b65SMarc-André Lureauenum MyEnum
238a84767cSMarkus Armbrusterobject Empty1
248a84767cSMarkus Armbrusterobject Empty2
258a84767cSMarkus Armbruster    base Empty1
268a84767cSMarkus Armbrustercommand user_def_cmd0 Empty2 -> Empty2
277b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
281e381b65SMarc-André Lureauenum QEnumTwo
298a84767cSMarkus Armbruster    prefix QENUM_TWO
301e381b65SMarc-André Lureau    member value1
311e381b65SMarc-André Lureau    member value2
328a84767cSMarkus Armbrusterobject UserDefOne
338a84767cSMarkus Armbruster    base UserDefZero
348a84767cSMarkus Armbruster    member string: str optional=False
358a84767cSMarkus Armbruster    member enum1: EnumOne optional=True
361e381b65SMarc-André Lureauenum EnumOne
371e381b65SMarc-André Lureau    member value1
381e381b65SMarc-André Lureau    member value2
391e381b65SMarc-André Lureau    member value3
401e381b65SMarc-André Lureau    member value4
418a84767cSMarkus Armbrusterobject UserDefZero
428a84767cSMarkus Armbruster    member integer: int optional=False
438a84767cSMarkus Armbrusterobject UserDefTwoDictDict
448a84767cSMarkus Armbruster    member userdef: UserDefOne optional=False
458a84767cSMarkus Armbruster    member string: str optional=False
468a84767cSMarkus Armbrusterobject UserDefTwoDict
478a84767cSMarkus Armbruster    member string1: str optional=False
488a84767cSMarkus Armbruster    member dict2: UserDefTwoDictDict optional=False
498a84767cSMarkus Armbruster    member dict3: UserDefTwoDictDict optional=True
508a84767cSMarkus Armbrusterobject UserDefTwo
518a84767cSMarkus Armbruster    member string0: str optional=False
528a84767cSMarkus Armbruster    member dict1: UserDefTwoDict optional=False
53967c8851SMarc-André Lureauobject UserDefThree
54967c8851SMarc-André Lureau    member string0: str optional=False
55ca0ac758SMarkus Armbrusterarray UserDefOneList UserDefOne
56ca0ac758SMarkus Armbrusterarray UserDefTwoList UserDefTwo
57ca0ac758SMarkus Armbrusterarray TestStructList TestStruct
588a84767cSMarkus Armbrusterobject ForceArrays
598a84767cSMarkus Armbruster    member unused1: UserDefOneList optional=False
608a84767cSMarkus Armbruster    member unused2: UserDefTwoList optional=False
618a84767cSMarkus Armbruster    member unused3: TestStructList optional=False
628a84767cSMarkus Armbrusterobject UserDefA
638a84767cSMarkus Armbruster    member boolean: bool optional=False
648a84767cSMarkus Armbruster    member a_b: int optional=True
658a84767cSMarkus Armbrusterobject UserDefB
668a84767cSMarkus Armbruster    member intb: int optional=False
678a84767cSMarkus Armbruster    member a-b: bool optional=True
688a84767cSMarkus Armbrusterobject UserDefFlatUnion
698a84767cSMarkus Armbruster    base UserDefUnionBase
708a84767cSMarkus Armbruster    tag enum1
718a84767cSMarkus Armbruster    case value1: UserDefA
728a84767cSMarkus Armbruster    case value2: UserDefB
738a84767cSMarkus Armbruster    case value3: UserDefB
74800877bbSAnton Nefedov    case value4: q_empty
758a84767cSMarkus Armbrusterobject UserDefUnionBase
768a84767cSMarkus Armbruster    base UserDefZero
778a84767cSMarkus Armbruster    member string: str optional=False
788a84767cSMarkus Armbruster    member enum1: EnumOne optional=False
798a84767cSMarkus Armbrusterobject q_obj_UserDefFlatUnion2-base
808a84767cSMarkus Armbruster    member integer: int optional=True
818a84767cSMarkus Armbruster    member string: str optional=False
828a84767cSMarkus Armbruster    member enum1: QEnumTwo optional=False
838a84767cSMarkus Armbrusterobject UserDefFlatUnion2
848a84767cSMarkus Armbruster    base q_obj_UserDefFlatUnion2-base
858a84767cSMarkus Armbruster    tag enum1
868a84767cSMarkus Armbruster    case value1: UserDefC
878a84767cSMarkus Armbruster    case value2: UserDefB
888a84767cSMarkus Armbrusterobject WrapAlternate
898a84767cSMarkus Armbruster    member alt: UserDefAlternate optional=False
908a84767cSMarkus Armbrusteralternate UserDefAlternate
918a84767cSMarkus Armbruster    tag type
928a84767cSMarkus Armbruster    case udfu: UserDefFlatUnion
938a84767cSMarkus Armbruster    case e: EnumOne
948a84767cSMarkus Armbruster    case i: int
958a84767cSMarkus Armbruster    case n: null
968a84767cSMarkus Armbrusterobject UserDefC
978a84767cSMarkus Armbruster    member string1: str optional=False
988a84767cSMarkus Armbruster    member string2: str optional=False
998168ca8eSMarkus Armbrusteralternate AltEnumBool
1008168ca8eSMarkus Armbruster    tag type
1018168ca8eSMarkus Armbruster    case e: EnumOne
1028168ca8eSMarkus Armbruster    case b: bool
1038168ca8eSMarkus Armbrusteralternate AltEnumNum
1048168ca8eSMarkus Armbruster    tag type
1058168ca8eSMarkus Armbruster    case e: EnumOne
1068168ca8eSMarkus Armbruster    case n: number
1078168ca8eSMarkus Armbrusteralternate AltNumEnum
1088168ca8eSMarkus Armbruster    tag type
1098168ca8eSMarkus Armbruster    case n: number
1108168ca8eSMarkus Armbruster    case e: EnumOne
1118a84767cSMarkus Armbrusteralternate AltEnumInt
1128a84767cSMarkus Armbruster    tag type
1138a84767cSMarkus Armbruster    case e: EnumOne
1148a84767cSMarkus Armbruster    case i: int
115c0644771SMarkus Armbrusteralternate AltStrObj
116da9cb193SEric Blake    tag type
1179c51b441SEric Blake    case s: str
118c0644771SMarkus Armbruster    case o: TestStruct
1198a84767cSMarkus Armbrusterobject q_obj_intList-wrapper
1208a84767cSMarkus Armbruster    member data: intList optional=False
1218a84767cSMarkus Armbrusterobject q_obj_int8List-wrapper
1228a84767cSMarkus Armbruster    member data: int8List optional=False
1238a84767cSMarkus Armbrusterobject q_obj_int16List-wrapper
1248a84767cSMarkus Armbruster    member data: int16List optional=False
1258a84767cSMarkus Armbrusterobject q_obj_int32List-wrapper
1268a84767cSMarkus Armbruster    member data: int32List optional=False
1278a84767cSMarkus Armbrusterobject q_obj_int64List-wrapper
1288a84767cSMarkus Armbruster    member data: int64List optional=False
1298a84767cSMarkus Armbrusterobject q_obj_uint8List-wrapper
1308a84767cSMarkus Armbruster    member data: uint8List optional=False
1318a84767cSMarkus Armbrusterobject q_obj_uint16List-wrapper
1328a84767cSMarkus Armbruster    member data: uint16List optional=False
1338a84767cSMarkus Armbrusterobject q_obj_uint32List-wrapper
1348a84767cSMarkus Armbruster    member data: uint32List optional=False
1358a84767cSMarkus Armbrusterobject q_obj_uint64List-wrapper
1368a84767cSMarkus Armbruster    member data: uint64List optional=False
1378a84767cSMarkus Armbrusterobject q_obj_numberList-wrapper
1388a84767cSMarkus Armbruster    member data: numberList optional=False
1398a84767cSMarkus Armbrusterobject q_obj_boolList-wrapper
1408a84767cSMarkus Armbruster    member data: boolList optional=False
1418a84767cSMarkus Armbrusterobject q_obj_strList-wrapper
1428a84767cSMarkus Armbruster    member data: strList optional=False
1438a84767cSMarkus Armbrusterobject q_obj_sizeList-wrapper
1448a84767cSMarkus Armbruster    member data: sizeList optional=False
1458a84767cSMarkus Armbrusterobject q_obj_anyList-wrapper
1468a84767cSMarkus Armbruster    member data: anyList optional=False
147*b359f4b2SMarkus Armbrusterenum UserDefListUnionKind
1481e381b65SMarc-André Lureau    member integer
1491e381b65SMarc-André Lureau    member s8
1501e381b65SMarc-André Lureau    member s16
1511e381b65SMarc-André Lureau    member s32
1521e381b65SMarc-André Lureau    member s64
1531e381b65SMarc-André Lureau    member u8
1541e381b65SMarc-André Lureau    member u16
1551e381b65SMarc-André Lureau    member u32
1561e381b65SMarc-André Lureau    member u64
1571e381b65SMarc-André Lureau    member number
1581e381b65SMarc-André Lureau    member boolean
1591e381b65SMarc-André Lureau    member string
1601e381b65SMarc-André Lureau    member sizes
1611e381b65SMarc-André Lureau    member any
162*b359f4b2SMarkus Armbrusterobject UserDefListUnion
163*b359f4b2SMarkus Armbruster    member type: UserDefListUnionKind optional=False
164da9cb193SEric Blake    tag type
1657599697cSEric Blake    case integer: q_obj_intList-wrapper
1667599697cSEric Blake    case s8: q_obj_int8List-wrapper
1677599697cSEric Blake    case s16: q_obj_int16List-wrapper
1687599697cSEric Blake    case s32: q_obj_int32List-wrapper
1697599697cSEric Blake    case s64: q_obj_int64List-wrapper
1707599697cSEric Blake    case u8: q_obj_uint8List-wrapper
1717599697cSEric Blake    case u16: q_obj_uint16List-wrapper
1727599697cSEric Blake    case u32: q_obj_uint32List-wrapper
1737599697cSEric Blake    case u64: q_obj_uint64List-wrapper
1747599697cSEric Blake    case number: q_obj_numberList-wrapper
1757599697cSEric Blake    case boolean: q_obj_boolList-wrapper
1767599697cSEric Blake    case string: q_obj_strList-wrapper
1777599697cSEric Blake    case sizes: q_obj_sizeList-wrapper
1787599697cSEric Blake    case any: q_obj_anyList-wrapper
179709395f8SMarkus Armbrusterinclude include/sub-module.json
180709395f8SMarkus Armbrustermodule include/sub-module.json
181709395f8SMarkus Armbrusterinclude sub-sub-module.json
182709395f8SMarkus Armbrustermodule sub-sub-module.json
183709395f8SMarkus Armbrusterenum Status
184709395f8SMarkus Armbruster    member good
185709395f8SMarkus Armbruster    member bad
186709395f8SMarkus Armbruster    member ugly
187709395f8SMarkus Armbrustermodule qapi-schema-test.json
1888a84767cSMarkus Armbrustercommand user_def_cmd None -> None
1897b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
1908a84767cSMarkus Armbrusterobject q_obj_user_def_cmd1-arg
1918a84767cSMarkus Armbruster    member ud1a: UserDefOne optional=False
1928a84767cSMarkus Armbrustercommand user_def_cmd1 q_obj_user_def_cmd1-arg -> None
1937b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
1948a84767cSMarkus Armbrusterobject q_obj_user_def_cmd2-arg
1958a84767cSMarkus Armbruster    member ud1a: UserDefOne optional=False
1968a84767cSMarkus Armbruster    member ud1b: UserDefOne optional=True
1978a84767cSMarkus Armbrustercommand user_def_cmd2 q_obj_user_def_cmd2-arg -> UserDefTwo
1987b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
199ae6bf766SMarc-André Lureaucommand cmd-success-response None -> None
200ae6bf766SMarc-André Lureau   gen=True success_response=False boxed=False oob=False preconfig=False
2018a84767cSMarkus Armbrusterobject q_obj_guest-get-time-arg
2028a84767cSMarkus Armbruster    member a: int optional=False
2038a84767cSMarkus Armbruster    member b: int optional=True
2048a84767cSMarkus Armbrustercommand guest-get-time q_obj_guest-get-time-arg -> int
2057b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
2068a84767cSMarkus Armbrusterobject q_obj_guest-sync-arg
2078a84767cSMarkus Armbruster    member arg: any optional=False
2088a84767cSMarkus Armbrustercommand guest-sync q_obj_guest-sync-arg -> any
2097b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
2108a84767cSMarkus Armbrustercommand boxed-struct UserDefZero -> None
2117b13f2c2SIgor Mammedov   gen=True success_response=True boxed=True oob=False preconfig=False
212*b359f4b2SMarkus Armbrustercommand boxed-union UserDefListUnion -> None
2137b13f2c2SIgor Mammedov   gen=True success_response=True boxed=True oob=False preconfig=False
2147b13f2c2SIgor Mammedovcommand test-flags-command None -> None
2157b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=True preconfig=True
216156402e5SMarkus Armbrusterobject UserDefOptions
217156402e5SMarkus Armbruster    member i64: intList optional=True
218156402e5SMarkus Armbruster    member u64: uint64List optional=True
219156402e5SMarkus Armbruster    member u16: uint16List optional=True
220156402e5SMarkus Armbruster    member i64x: int optional=True
221156402e5SMarkus Armbruster    member u64x: uint64 optional=True
2228a84767cSMarkus Armbrusterobject EventStructOne
2238a84767cSMarkus Armbruster    member struct1: UserDefOne optional=False
224156402e5SMarkus Armbruster    member string: str optional=False
2258a84767cSMarkus Armbruster    member enum2: EnumOne optional=True
2268a84767cSMarkus Armbrusterevent EVENT_A None
22748825ca4SEric Blake   boxed=False
2288a84767cSMarkus Armbrusterevent EVENT_B None
2298a84767cSMarkus Armbruster   boxed=False
2307599697cSEric Blakeobject q_obj_EVENT_C-arg
2317599697cSEric Blake    member a: int optional=True
2327599697cSEric Blake    member b: UserDefOne optional=True
2337599697cSEric Blake    member c: str optional=False
2348a84767cSMarkus Armbrusterevent EVENT_C q_obj_EVENT_C-arg
2358a84767cSMarkus Armbruster   boxed=False
2367599697cSEric Blakeobject q_obj_EVENT_D-arg
2377599697cSEric Blake    member a: EventStructOne optional=False
2387599697cSEric Blake    member b: str optional=False
2397599697cSEric Blake    member c: str optional=True
2407599697cSEric Blake    member enum3: EnumOne optional=True
2418a84767cSMarkus Armbrusterevent EVENT_D q_obj_EVENT_D-arg
2428a84767cSMarkus Armbruster   boxed=False
2438a84767cSMarkus Armbrusterevent EVENT_E UserDefZero
2448a84767cSMarkus Armbruster   boxed=True
2458a84767cSMarkus Armbrusterevent EVENT_F UserDefAlternate
2468a84767cSMarkus Armbruster   boxed=True
2471e381b65SMarc-André Lureauenum __org.qemu_x-Enum
2481e381b65SMarc-André Lureau    member __org.qemu_x-value
2498a84767cSMarkus Armbrusterobject __org.qemu_x-Base
2508a84767cSMarkus Armbruster    member __org.qemu_x-member1: __org.qemu_x-Enum optional=False
2518a84767cSMarkus Armbrusterobject __org.qemu_x-Struct
2528a84767cSMarkus Armbruster    base __org.qemu_x-Base
2538a84767cSMarkus Armbruster    member __org.qemu_x-member2: str optional=False
2548a84767cSMarkus Armbruster    member wchar-t: int optional=True
2558a84767cSMarkus Armbrusterobject q_obj_str-wrapper
2568a84767cSMarkus Armbruster    member data: str optional=False
2571e381b65SMarc-André Lureauenum __org.qemu_x-Union1Kind
2581e381b65SMarc-André Lureau    member __org.qemu_x-branch
2598a84767cSMarkus Armbrusterobject __org.qemu_x-Union1
2608a84767cSMarkus Armbruster    member type: __org.qemu_x-Union1Kind optional=False
2618a84767cSMarkus Armbruster    tag type
2628a84767cSMarkus Armbruster    case __org.qemu_x-branch: q_obj_str-wrapper
263ca0ac758SMarkus Armbrusterarray __org.qemu_x-Union1List __org.qemu_x-Union1
2648a84767cSMarkus Armbrusterobject __org.qemu_x-Struct2
2658a84767cSMarkus Armbruster    member array: __org.qemu_x-Union1List optional=False
2668a84767cSMarkus Armbrusterobject __org.qemu_x-Union2
2678a84767cSMarkus Armbruster    base __org.qemu_x-Base
2688a84767cSMarkus Armbruster    tag __org.qemu_x-member1
2698a84767cSMarkus Armbruster    case __org.qemu_x-value: __org.qemu_x-Struct2
2708a84767cSMarkus Armbrusteralternate __org.qemu_x-Alt
2718a84767cSMarkus Armbruster    tag type
2728a84767cSMarkus Armbruster    case __org.qemu_x-branch: str
2738a84767cSMarkus Armbruster    case b: __org.qemu_x-Base
2748a84767cSMarkus Armbrusterevent __ORG.QEMU_X-EVENT __org.qemu_x-Struct
2758a84767cSMarkus Armbruster   boxed=False
276ca0ac758SMarkus Armbrusterarray __org.qemu_x-EnumList __org.qemu_x-Enum
277ca0ac758SMarkus Armbrusterarray __org.qemu_x-StructList __org.qemu_x-Struct
2787599697cSEric Blakeobject q_obj___org.qemu_x-command-arg
2797599697cSEric Blake    member a: __org.qemu_x-EnumList optional=False
2807599697cSEric Blake    member b: __org.qemu_x-StructList optional=False
2817599697cSEric Blake    member c: __org.qemu_x-Union2 optional=False
2827599697cSEric Blake    member d: __org.qemu_x-Alt optional=False
2838a84767cSMarkus Armbrustercommand __org.qemu_x-command q_obj___org.qemu_x-command-arg -> __org.qemu_x-Union1
2847b13f2c2SIgor Mammedov   gen=True success_response=True boxed=False oob=False preconfig=False
285967c8851SMarc-André Lureauobject TestIfStruct
286967c8851SMarc-André Lureau    member foo: int optional=False
287ccadd6bcSMarc-André Lureau    member bar: int optional=False
288ccadd6bcSMarc-André Lureau        if ['defined(TEST_IF_STRUCT_BAR)']
289fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_STRUCT)']
2901e381b65SMarc-André Lureauenum TestIfEnum
2911e381b65SMarc-André Lureau    member foo
2921e381b65SMarc-André Lureau    member bar
2936cc32b0eSMarc-André Lureau        if ['defined(TEST_IF_ENUM_BAR)']
294fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_ENUM)']
295967c8851SMarc-André Lureauobject q_obj_TestStruct-wrapper
296967c8851SMarc-André Lureau    member data: TestStruct optional=False
2971e381b65SMarc-André Lureauenum TestIfUnionKind
2981e381b65SMarc-André Lureau    member foo
299a2724280SMarc-André Lureau    member union_bar
300a2724280SMarc-André Lureau        if ['defined(TEST_IF_UNION_BAR)']
301fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_UNION) && defined(TEST_IF_STRUCT)']
302967c8851SMarc-André Lureauobject TestIfUnion
303967c8851SMarc-André Lureau    member type: TestIfUnionKind optional=False
304967c8851SMarc-André Lureau    tag type
305967c8851SMarc-André Lureau    case foo: q_obj_TestStruct-wrapper
306a2724280SMarc-André Lureau    case union_bar: q_obj_str-wrapper
307a2724280SMarc-André Lureau        if ['defined(TEST_IF_UNION_BAR)']
308fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_UNION) && defined(TEST_IF_STRUCT)']
309f8c4fdd6SMarc-André Lureauobject q_obj_TestIfUnionCmd-arg
310f8c4fdd6SMarc-André Lureau    member union_cmd_arg: TestIfUnion optional=False
311f8c4fdd6SMarc-André Lureau    if ['defined(TEST_IF_UNION)']
312f8c4fdd6SMarc-André Lureaucommand TestIfUnionCmd q_obj_TestIfUnionCmd-arg -> None
313f8c4fdd6SMarc-André Lureau   gen=True success_response=True boxed=False oob=False preconfig=False
314f8c4fdd6SMarc-André Lureau    if ['defined(TEST_IF_UNION)']
315967c8851SMarc-André Lureaualternate TestIfAlternate
316967c8851SMarc-André Lureau    tag type
317967c8851SMarc-André Lureau    case foo: int
318967c8851SMarc-André Lureau    case bar: TestStruct
3193e270dcaSMarc-André Lureau        if ['defined(TEST_IF_ALT_BAR)']
320fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_ALT) && defined(TEST_IF_STRUCT)']
321f8c4fdd6SMarc-André Lureauobject q_obj_TestIfAlternateCmd-arg
322f8c4fdd6SMarc-André Lureau    member alt_cmd_arg: TestIfAlternate optional=False
323f8c4fdd6SMarc-André Lureau    if ['defined(TEST_IF_ALT)']
324f8c4fdd6SMarc-André Lureaucommand TestIfAlternateCmd q_obj_TestIfAlternateCmd-arg -> None
325f8c4fdd6SMarc-André Lureau   gen=True success_response=True boxed=False oob=False preconfig=False
326f8c4fdd6SMarc-André Lureau    if ['defined(TEST_IF_ALT)']
327967c8851SMarc-André Lureauobject q_obj_TestIfCmd-arg
328967c8851SMarc-André Lureau    member foo: TestIfStruct optional=False
3296cc32b0eSMarc-André Lureau    member bar: TestIfEnum optional=False
330ccadd6bcSMarc-André Lureau        if ['defined(TEST_IF_CMD_BAR)']
331fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_CMD)', 'defined(TEST_IF_STRUCT)']
332967c8851SMarc-André Lureaucommand TestIfCmd q_obj_TestIfCmd-arg -> UserDefThree
333967c8851SMarc-André Lureau   gen=True success_response=True boxed=False oob=False preconfig=False
334fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_CMD)', 'defined(TEST_IF_STRUCT)']
335967c8851SMarc-André Lureaucommand TestCmdReturnDefThree None -> UserDefThree
336967c8851SMarc-André Lureau   gen=True success_response=True boxed=False oob=False preconfig=False
3370f20628bSMarkus Armbrusterarray TestIfEnumList TestIfEnum
3380f20628bSMarkus Armbruster    if ['defined(TEST_IF_ENUM)']
339967c8851SMarc-André Lureauobject q_obj_TestIfEvent-arg
340967c8851SMarc-André Lureau    member foo: TestIfStruct optional=False
3410f20628bSMarkus Armbruster    member bar: TestIfEnumList optional=False
342ccadd6bcSMarc-André Lureau        if ['defined(TEST_IF_EVT_BAR)']
343fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_EVT) && defined(TEST_IF_STRUCT)']
344967c8851SMarc-André Lureauevent TestIfEvent q_obj_TestIfEvent-arg
345967c8851SMarc-André Lureau   boxed=False
346fbf09a2fSMarc-André Lureau    if ['defined(TEST_IF_EVT) && defined(TEST_IF_STRUCT)']
347