1object q_empty
2enum QType
3    prefix QTYPE
4    member none
5    member qnull
6    member qnum
7    member qstring
8    member qdict
9    member qlist
10    member qbool
11module qapi-schema-test.json
12object TestStruct
13    member integer: int optional=False
14    member boolean: bool optional=False
15    member string: str optional=False
16object NestedEnumsOne
17    member enum1: EnumOne optional=False
18    member enum2: EnumOne optional=True
19    member enum3: EnumOne optional=False
20    member enum4: EnumOne optional=True
21enum MyEnum
22object Empty1
23object Empty2
24    base Empty1
25command user_def_cmd0 Empty2 -> Empty2
26   gen=True success_response=True boxed=False oob=False preconfig=False
27enum QEnumTwo
28    prefix QENUM_TWO
29    member value1
30    member value2
31object UserDefOne
32    base UserDefZero
33    member string: str optional=False
34    member enum1: EnumOne optional=True
35enum EnumOne
36    member value1
37    member value2
38    member value3
39    member value4
40object UserDefZero
41    member integer: int optional=False
42object UserDefTwoDictDict
43    member userdef: UserDefOne optional=False
44    member string: str optional=False
45object UserDefTwoDict
46    member string1: str optional=False
47    member dict2: UserDefTwoDictDict optional=False
48    member dict3: UserDefTwoDictDict optional=True
49object UserDefTwo
50    member string0: str optional=False
51    member dict1: UserDefTwoDict optional=False
52object UserDefThree
53    member string0: str optional=False
54object ForceArrays
55    member unused1: UserDefOneList optional=False
56    member unused2: UserDefTwoList optional=False
57    member unused3: TestStructList optional=False
58object UserDefA
59    member boolean: bool optional=False
60    member a_b: int optional=True
61object UserDefB
62    member intb: int optional=False
63    member a-b: bool optional=True
64object UserDefFlatUnion
65    base UserDefUnionBase
66    tag enum1
67    case value1: UserDefA
68    case value2: UserDefB
69    case value3: UserDefB
70    case value4: q_empty
71object UserDefUnionBase
72    base UserDefZero
73    member string: str optional=False
74    member enum1: EnumOne optional=False
75object q_obj_UserDefFlatUnion2-base
76    member integer: int optional=True
77    member string: str optional=False
78    member enum1: QEnumTwo optional=False
79object UserDefFlatUnion2
80    base q_obj_UserDefFlatUnion2-base
81    tag enum1
82    case value1: UserDefC
83    case value2: UserDefB
84object WrapAlternate
85    member alt: UserDefAlternate optional=False
86alternate UserDefAlternate
87    tag type
88    case udfu: UserDefFlatUnion
89    case e: EnumOne
90    case i: int
91    case n: null
92object UserDefC
93    member string1: str optional=False
94    member string2: str optional=False
95alternate AltEnumBool
96    tag type
97    case e: EnumOne
98    case b: bool
99alternate AltEnumNum
100    tag type
101    case e: EnumOne
102    case n: number
103alternate AltNumEnum
104    tag type
105    case n: number
106    case e: EnumOne
107alternate AltEnumInt
108    tag type
109    case e: EnumOne
110    case i: int
111alternate AltStrObj
112    tag type
113    case s: str
114    case o: TestStruct
115object q_obj_intList-wrapper
116    member data: intList optional=False
117object q_obj_int8List-wrapper
118    member data: int8List optional=False
119object q_obj_int16List-wrapper
120    member data: int16List optional=False
121object q_obj_int32List-wrapper
122    member data: int32List optional=False
123object q_obj_int64List-wrapper
124    member data: int64List optional=False
125object q_obj_uint8List-wrapper
126    member data: uint8List optional=False
127object q_obj_uint16List-wrapper
128    member data: uint16List optional=False
129object q_obj_uint32List-wrapper
130    member data: uint32List optional=False
131object q_obj_uint64List-wrapper
132    member data: uint64List optional=False
133object q_obj_numberList-wrapper
134    member data: numberList optional=False
135object q_obj_boolList-wrapper
136    member data: boolList optional=False
137object q_obj_strList-wrapper
138    member data: strList optional=False
139object q_obj_sizeList-wrapper
140    member data: sizeList optional=False
141object q_obj_anyList-wrapper
142    member data: anyList optional=False
143enum UserDefNativeListUnionKind
144    member integer
145    member s8
146    member s16
147    member s32
148    member s64
149    member u8
150    member u16
151    member u32
152    member u64
153    member number
154    member boolean
155    member string
156    member sizes
157    member any
158object UserDefNativeListUnion
159    member type: UserDefNativeListUnionKind optional=False
160    tag type
161    case integer: q_obj_intList-wrapper
162    case s8: q_obj_int8List-wrapper
163    case s16: q_obj_int16List-wrapper
164    case s32: q_obj_int32List-wrapper
165    case s64: q_obj_int64List-wrapper
166    case u8: q_obj_uint8List-wrapper
167    case u16: q_obj_uint16List-wrapper
168    case u32: q_obj_uint32List-wrapper
169    case u64: q_obj_uint64List-wrapper
170    case number: q_obj_numberList-wrapper
171    case boolean: q_obj_boolList-wrapper
172    case string: q_obj_strList-wrapper
173    case sizes: q_obj_sizeList-wrapper
174    case any: q_obj_anyList-wrapper
175command user_def_cmd None -> None
176   gen=True success_response=True boxed=False oob=False preconfig=False
177object q_obj_user_def_cmd1-arg
178    member ud1a: UserDefOne optional=False
179command user_def_cmd1 q_obj_user_def_cmd1-arg -> None
180   gen=True success_response=True boxed=False oob=False preconfig=False
181object q_obj_user_def_cmd2-arg
182    member ud1a: UserDefOne optional=False
183    member ud1b: UserDefOne optional=True
184command user_def_cmd2 q_obj_user_def_cmd2-arg -> UserDefTwo
185   gen=True success_response=True boxed=False oob=False preconfig=False
186command cmd-success-response None -> None
187   gen=True success_response=False boxed=False oob=False preconfig=False
188object q_obj_guest-get-time-arg
189    member a: int optional=False
190    member b: int optional=True
191command guest-get-time q_obj_guest-get-time-arg -> int
192   gen=True success_response=True boxed=False oob=False preconfig=False
193object q_obj_guest-sync-arg
194    member arg: any optional=False
195command guest-sync q_obj_guest-sync-arg -> any
196   gen=True success_response=True boxed=False oob=False preconfig=False
197command boxed-struct UserDefZero -> None
198   gen=True success_response=True boxed=True oob=False preconfig=False
199command boxed-union UserDefNativeListUnion -> None
200   gen=True success_response=True boxed=True oob=False preconfig=False
201command test-flags-command None -> None
202   gen=True success_response=True boxed=False oob=True preconfig=True
203object UserDefOptions
204    member i64: intList optional=True
205    member u64: uint64List optional=True
206    member u16: uint16List optional=True
207    member i64x: int optional=True
208    member u64x: uint64 optional=True
209object EventStructOne
210    member struct1: UserDefOne optional=False
211    member string: str optional=False
212    member enum2: EnumOne optional=True
213event EVENT_A None
214   boxed=False
215event EVENT_B None
216   boxed=False
217object q_obj_EVENT_C-arg
218    member a: int optional=True
219    member b: UserDefOne optional=True
220    member c: str optional=False
221event EVENT_C q_obj_EVENT_C-arg
222   boxed=False
223object q_obj_EVENT_D-arg
224    member a: EventStructOne optional=False
225    member b: str optional=False
226    member c: str optional=True
227    member enum3: EnumOne optional=True
228event EVENT_D q_obj_EVENT_D-arg
229   boxed=False
230event EVENT_E UserDefZero
231   boxed=True
232event EVENT_F UserDefAlternate
233   boxed=True
234enum __org.qemu_x-Enum
235    member __org.qemu_x-value
236object __org.qemu_x-Base
237    member __org.qemu_x-member1: __org.qemu_x-Enum optional=False
238object __org.qemu_x-Struct
239    base __org.qemu_x-Base
240    member __org.qemu_x-member2: str optional=False
241    member wchar-t: int optional=True
242object q_obj_str-wrapper
243    member data: str optional=False
244enum __org.qemu_x-Union1Kind
245    member __org.qemu_x-branch
246object __org.qemu_x-Union1
247    member type: __org.qemu_x-Union1Kind optional=False
248    tag type
249    case __org.qemu_x-branch: q_obj_str-wrapper
250object __org.qemu_x-Struct2
251    member array: __org.qemu_x-Union1List optional=False
252object __org.qemu_x-Union2
253    base __org.qemu_x-Base
254    tag __org.qemu_x-member1
255    case __org.qemu_x-value: __org.qemu_x-Struct2
256alternate __org.qemu_x-Alt
257    tag type
258    case __org.qemu_x-branch: str
259    case b: __org.qemu_x-Base
260event __ORG.QEMU_X-EVENT __org.qemu_x-Struct
261   boxed=False
262object q_obj___org.qemu_x-command-arg
263    member a: __org.qemu_x-EnumList optional=False
264    member b: __org.qemu_x-StructList optional=False
265    member c: __org.qemu_x-Union2 optional=False
266    member d: __org.qemu_x-Alt optional=False
267command __org.qemu_x-command q_obj___org.qemu_x-command-arg -> __org.qemu_x-Union1
268   gen=True success_response=True boxed=False oob=False preconfig=False
269object TestIfStruct
270    member foo: int optional=False
271    member bar: int optional=False
272        if ['defined(TEST_IF_STRUCT_BAR)']
273    if ['defined(TEST_IF_STRUCT)']
274enum TestIfEnum
275    member foo
276    member bar
277        if ['defined(TEST_IF_ENUM_BAR)']
278    if ['defined(TEST_IF_ENUM)']
279object q_obj_TestStruct-wrapper
280    member data: TestStruct optional=False
281enum TestIfUnionKind
282    member foo
283    member union_bar
284        if ['defined(TEST_IF_UNION_BAR)']
285    if ['defined(TEST_IF_UNION) && defined(TEST_IF_STRUCT)']
286object TestIfUnion
287    member type: TestIfUnionKind optional=False
288    tag type
289    case foo: q_obj_TestStruct-wrapper
290    case union_bar: q_obj_str-wrapper
291        if ['defined(TEST_IF_UNION_BAR)']
292    if ['defined(TEST_IF_UNION) && defined(TEST_IF_STRUCT)']
293object q_obj_TestIfUnionCmd-arg
294    member union_cmd_arg: TestIfUnion optional=False
295    if ['defined(TEST_IF_UNION)']
296command TestIfUnionCmd q_obj_TestIfUnionCmd-arg -> None
297   gen=True success_response=True boxed=False oob=False preconfig=False
298    if ['defined(TEST_IF_UNION)']
299alternate TestIfAlternate
300    tag type
301    case foo: int
302    case bar: TestStruct
303        if ['defined(TEST_IF_ALT_BAR)']
304    if ['defined(TEST_IF_ALT) && defined(TEST_IF_STRUCT)']
305object q_obj_TestIfAlternateCmd-arg
306    member alt_cmd_arg: TestIfAlternate optional=False
307    if ['defined(TEST_IF_ALT)']
308command TestIfAlternateCmd q_obj_TestIfAlternateCmd-arg -> None
309   gen=True success_response=True boxed=False oob=False preconfig=False
310    if ['defined(TEST_IF_ALT)']
311object q_obj_TestIfCmd-arg
312    member foo: TestIfStruct optional=False
313    member bar: TestIfEnum optional=False
314        if ['defined(TEST_IF_CMD_BAR)']
315    if ['defined(TEST_IF_CMD)', 'defined(TEST_IF_STRUCT)']
316command TestIfCmd q_obj_TestIfCmd-arg -> UserDefThree
317   gen=True success_response=True boxed=False oob=False preconfig=False
318    if ['defined(TEST_IF_CMD)', 'defined(TEST_IF_STRUCT)']
319command TestCmdReturnDefThree None -> UserDefThree
320   gen=True success_response=True boxed=False oob=False preconfig=False
321object q_obj_TestIfEvent-arg
322    member foo: TestIfStruct optional=False
323    member bar: TestIfEnum optional=False
324        if ['defined(TEST_IF_EVT_BAR)']
325    if ['defined(TEST_IF_EVT) && defined(TEST_IF_STRUCT)']
326event TestIfEvent q_obj_TestIfEvent-arg
327   boxed=False
328    if ['defined(TEST_IF_EVT) && defined(TEST_IF_STRUCT)']
329