module ./builtin
object q_empty
enum QType
    prefix QTYPE
    member none
    member qnull
    member qnum
    member qstring
    member qdict
    member qlist
    member qbool
module qapi-schema-test.json
object TestStruct
    member integer: int optional=False
    member boolean: bool optional=False
    member string: str optional=False
object NestedEnumsOne
    member enum1: EnumOne optional=False
    member enum2: EnumOne optional=True
    member enum3: EnumOne optional=False
    member enum4: EnumOne optional=True
enum MyEnum
object Empty1
object Empty2
    base Empty1
object q_obj_Union-base
    member type: EnumOne optional=False
object Union
    base q_obj_Union-base
    tag type
    case value1: q_empty
    case value2: q_empty
    case value3: q_empty
    case value4: q_empty
command user-def-cmd0 Empty2 -> Empty2
    gen=True success_response=True boxed=False oob=False preconfig=False
enum QEnumTwo
    prefix QENUM_TWO
    member value1
    member value2
object UserDefOne
    base UserDefZero
    member string: str optional=False
    member enum1: EnumOne optional=True
enum EnumOne
    member value1
    member value2
    member value3
    member value4
object UserDefZero
    member integer: int optional=False
object UserDefTwoDictDict
    member userdef: UserDefOne optional=False
    member string: str optional=False
object UserDefTwoDict
    member string1: str optional=False
    member dict2: UserDefTwoDictDict optional=False
    member dict3: UserDefTwoDictDict optional=True
object UserDefTwo
    member string0: str optional=False
    member dict1: UserDefTwoDict optional=False
object UserDefThree
    member string0: str optional=False
array UserDefOneList UserDefOne
array UserDefTwoList UserDefTwo
array TestStructList TestStruct
object ForceArrays
    member unused1: UserDefOneList optional=False
    member unused2: UserDefTwoList optional=False
    member unused3: TestStructList optional=False
object UserDefA
    member boolean: bool optional=False
    member a_b: int optional=True
object UserDefB
    member intb: int optional=False
    member a-b: bool optional=True
object UserDefFlatUnion
    base UserDefUnionBase
    tag enum1
    case value1: UserDefA
    case value2: UserDefB
    case value3: UserDefB
    case value4: q_empty
object UserDefUnionBase
    base UserDefZero
    member string: str optional=False
    member enum1: EnumOne optional=False
object q_obj_UserDefFlatUnion2-base
    member integer: int optional=True
    member string: str optional=False
    member enum1: QEnumTwo optional=False
object UserDefFlatUnion2
    base q_obj_UserDefFlatUnion2-base
    tag enum1
    case value1: UserDefC
    case value2: UserDefB
object WrapAlternate
    member alt: UserDefAlternate optional=False
alternate UserDefAlternate
    tag type
    case udfu: UserDefFlatUnion
    case e: EnumOne
    case i: int
    case n: null
object UserDefC
    member string1: str optional=False
    member string2: str optional=False
alternate AltEnumBool
    tag type
    case e: EnumOne
    case b: bool
alternate AltEnumNum
    tag type
    case e: EnumOne
    case n: number
alternate AltNumEnum
    tag type
    case n: number
    case e: EnumOne
alternate AltEnumInt
    tag type
    case e: EnumOne
    case i: int
alternate AltStrObj
    tag type
    case s: str
    case o: TestStruct
object q_obj_intList-wrapper
    member data: intList optional=False
object q_obj_int8List-wrapper
    member data: int8List optional=False
object q_obj_int16List-wrapper
    member data: int16List optional=False
object q_obj_int32List-wrapper
    member data: int32List optional=False
object q_obj_int64List-wrapper
    member data: int64List optional=False
object q_obj_uint8List-wrapper
    member data: uint8List optional=False
object q_obj_uint16List-wrapper
    member data: uint16List optional=False
object q_obj_uint32List-wrapper
    member data: uint32List optional=False
object q_obj_uint64List-wrapper
    member data: uint64List optional=False
object q_obj_numberList-wrapper
    member data: numberList optional=False
object q_obj_boolList-wrapper
    member data: boolList optional=False
object q_obj_strList-wrapper
    member data: strList optional=False
object q_obj_sizeList-wrapper
    member data: sizeList optional=False
object q_obj_anyList-wrapper
    member data: anyList optional=False
object q_obj_StatusList-wrapper
    member data: StatusList optional=False
enum UserDefListUnionKind
    member integer
    member s8
    member s16
    member s32
    member s64
    member u8
    member u16
    member u32
    member u64
    member number
    member boolean
    member string
    member sizes
    member any
    member user
object UserDefListUnion
    member type: UserDefListUnionKind optional=False
    tag type
    case integer: q_obj_intList-wrapper
    case s8: q_obj_int8List-wrapper
    case s16: q_obj_int16List-wrapper
    case s32: q_obj_int32List-wrapper
    case s64: q_obj_int64List-wrapper
    case u8: q_obj_uint8List-wrapper
    case u16: q_obj_uint16List-wrapper
    case u32: q_obj_uint32List-wrapper
    case u64: q_obj_uint64List-wrapper
    case number: q_obj_numberList-wrapper
    case boolean: q_obj_boolList-wrapper
    case string: q_obj_strList-wrapper
    case sizes: q_obj_sizeList-wrapper
    case any: q_obj_anyList-wrapper
    case user: q_obj_StatusList-wrapper
include include/sub-module.json
command user-def-cmd None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
object q_obj_user-def-cmd1-arg
    member ud1a: UserDefOne optional=False
command user-def-cmd1 q_obj_user-def-cmd1-arg -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
object q_obj_user-def-cmd2-arg
    member ud1a: UserDefOne optional=False
    member ud1b: UserDefOne optional=True
command user-def-cmd2 q_obj_user-def-cmd2-arg -> UserDefTwo
    gen=True success_response=True boxed=False oob=False preconfig=False
command cmd-success-response None -> None
    gen=True success_response=False boxed=False oob=False preconfig=False
command coroutine-cmd None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False coroutine=True
object q_obj_guest-get-time-arg
    member a: int optional=False
    member b: int optional=True
command guest-get-time q_obj_guest-get-time-arg -> int
    gen=True success_response=True boxed=False oob=False preconfig=False
object q_obj_guest-sync-arg
    member arg: any optional=False
command guest-sync q_obj_guest-sync-arg -> any
    gen=True success_response=True boxed=False oob=False preconfig=False
command boxed-struct UserDefZero -> None
    gen=True success_response=True boxed=True oob=False preconfig=False
command boxed-union UserDefListUnion -> None
    gen=True success_response=True boxed=True oob=False preconfig=False
command boxed-empty Empty1 -> None
    gen=True success_response=True boxed=True oob=False preconfig=False
command test-flags-command None -> None
    gen=True success_response=True boxed=False oob=True preconfig=True
object UserDefOptions
    member i64: intList optional=True
    member u64: uint64List optional=True
    member u16: uint16List optional=True
    member i64x: int optional=True
    member u64x: uint64 optional=True
object EventStructOne
    member struct1: UserDefOne optional=False
    member string: str optional=False
    member enum2: EnumOne optional=True
event EVENT_A None
    boxed=False
event EVENT_B None
    boxed=False
object q_obj_EVENT_C-arg
    member a: int optional=True
    member b: UserDefOne optional=True
    member c: str optional=False
event EVENT_C q_obj_EVENT_C-arg
    boxed=False
object q_obj_EVENT_D-arg
    member a: EventStructOne optional=False
    member b: str optional=False
    member c: str optional=True
    member enum3: EnumOne optional=True
event EVENT_D q_obj_EVENT_D-arg
    boxed=False
event EVENT_E UserDefZero
    boxed=True
event EVENT_F UserDefFlatUnion
    boxed=True
event EVENT_G Empty1
    boxed=True
enum __org.qemu_x-Enum
    member __org.qemu_x-value
object __org.qemu_x-Base
    member __org.qemu_x-member1: __org.qemu_x-Enum optional=False
object __org.qemu_x-Struct
    base __org.qemu_x-Base
    member __org.qemu_x-member2: str optional=False
    member wchar-t: int optional=True
object q_obj_str-wrapper
    member data: str optional=False
enum __org.qemu_x-Union1Kind
    member __org.qemu_x-branch
object __org.qemu_x-Union1
    member type: __org.qemu_x-Union1Kind optional=False
    tag type
    case __org.qemu_x-branch: q_obj_str-wrapper
alternate __org.qemu_x-Alt1
    tag type
    case __org.qemu_x-branch: str
array __org.qemu_x-Union1List __org.qemu_x-Union1
object __org.qemu_x-Struct2
    member array: __org.qemu_x-Union1List optional=False
object __org.qemu_x-Union2
    base __org.qemu_x-Base
    tag __org.qemu_x-member1
    case __org.qemu_x-value: __org.qemu_x-Struct2
alternate __org.qemu_x-Alt
    tag type
    case __org.qemu_x-branch: __org.qemu_x-Base
event __ORG.QEMU_X-EVENT __org.qemu_x-Struct
    boxed=False
array __org.qemu_x-EnumList __org.qemu_x-Enum
array __org.qemu_x-StructList __org.qemu_x-Struct
object q_obj___org.qemu_x-command-arg
    member a: __org.qemu_x-EnumList optional=False
    member b: __org.qemu_x-StructList optional=False
    member c: __org.qemu_x-Union2 optional=False
    member d: __org.qemu_x-Alt optional=False
command __org.qemu_x-command q_obj___org.qemu_x-command-arg -> __org.qemu_x-Union1
    gen=True success_response=True boxed=False oob=False preconfig=False
object TestIfStruct
    member foo: int optional=False
    member bar: int optional=False
        if ['defined(TEST_IF_STRUCT_BAR)']
    if ['defined(TEST_IF_STRUCT)']
enum TestIfEnum
    member foo
    member bar
        if ['defined(TEST_IF_ENUM_BAR)']
    if ['defined(TEST_IF_ENUM)']
object q_obj_TestStruct-wrapper
    member data: TestStruct optional=False
enum TestIfUnionKind
    member foo
    member bar
        if ['defined(TEST_IF_UNION_BAR)']
    if ['defined(TEST_IF_UNION) && defined(TEST_IF_STRUCT)']
object TestIfUnion
    member type: TestIfUnionKind optional=False
    tag type
    case foo: q_obj_TestStruct-wrapper
    case bar: q_obj_str-wrapper
        if ['defined(TEST_IF_UNION_BAR)']
    if ['defined(TEST_IF_UNION) && defined(TEST_IF_STRUCT)']
object q_obj_test-if-union-cmd-arg
    member union-cmd-arg: TestIfUnion optional=False
    if ['defined(TEST_IF_UNION)']
command test-if-union-cmd q_obj_test-if-union-cmd-arg -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    if ['defined(TEST_IF_UNION)']
alternate TestIfAlternate
    tag type
    case foo: int
    case bar: TestStruct
        if ['defined(TEST_IF_ALT_BAR)']
    if ['defined(TEST_IF_ALT) && defined(TEST_IF_STRUCT)']
object q_obj_test-if-alternate-cmd-arg
    member alt-cmd-arg: TestIfAlternate optional=False
    if ['defined(TEST_IF_ALT)']
command test-if-alternate-cmd q_obj_test-if-alternate-cmd-arg -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    if ['defined(TEST_IF_ALT)']
object q_obj_test-if-cmd-arg
    member foo: TestIfStruct optional=False
    member bar: TestIfEnum optional=False
        if ['defined(TEST_IF_CMD_BAR)']
    if ['defined(TEST_IF_CMD)', 'defined(TEST_IF_STRUCT)']
command test-if-cmd q_obj_test-if-cmd-arg -> UserDefThree
    gen=True success_response=True boxed=False oob=False preconfig=False
    if ['defined(TEST_IF_CMD)', 'defined(TEST_IF_STRUCT)']
command test-cmd-return-def-three None -> UserDefThree
    gen=True success_response=True boxed=False oob=False preconfig=False
array TestIfEnumList TestIfEnum
    if ['defined(TEST_IF_ENUM)']
object q_obj_TEST_IF_EVENT-arg
    member foo: TestIfStruct optional=False
    member bar: TestIfEnumList optional=False
        if ['defined(TEST_IF_EVT_BAR)']
    if ['defined(TEST_IF_EVT) && defined(TEST_IF_STRUCT)']
event TEST_IF_EVENT q_obj_TEST_IF_EVENT-arg
    boxed=False
    if ['defined(TEST_IF_EVT) && defined(TEST_IF_STRUCT)']
object FeatureStruct0
    member foo: int optional=False
object FeatureStruct1
    member foo: int optional=False
        feature deprecated
    feature feature1
object FeatureStruct2
    member foo: int optional=False
    feature feature1
object FeatureStruct3
    member foo: int optional=False
    feature feature1
    feature feature2
object FeatureStruct4
    member namespace-test: int optional=False
    feature namespace-test
    feature int
    feature name
    feature if
object CondFeatureStruct1
    member foo: int optional=False
    feature feature1
        if ['defined(TEST_IF_FEATURE_1)']
object CondFeatureStruct2
    member foo: int optional=False
    feature feature1
        if ['defined(TEST_IF_FEATURE_1)']
    feature feature2
        if ['defined(TEST_IF_FEATURE_2)']
object CondFeatureStruct3
    member foo: int optional=False
    feature feature1
        if ['defined(TEST_IF_COND_1)', 'defined(TEST_IF_COND_2)']
enum FeatureEnum1
    member eins
    member zwei
    member drei
    feature feature1
object q_obj_FeatureUnion1-base
    member tag: FeatureEnum1 optional=False
object FeatureUnion1
    base q_obj_FeatureUnion1-base
    tag tag
    case eins: FeatureStruct1
    case zwei: q_empty
    case drei: q_empty
    feature feature1
alternate FeatureAlternate1
    tag type
    case eins: FeatureStruct1
    feature feature1
object q_obj_test-features0-arg
    member fs0: FeatureStruct0 optional=True
    member fs1: FeatureStruct1 optional=True
    member fs2: FeatureStruct2 optional=True
    member fs3: FeatureStruct3 optional=True
    member fs4: FeatureStruct4 optional=True
    member cfs1: CondFeatureStruct1 optional=True
    member cfs2: CondFeatureStruct2 optional=True
    member cfs3: CondFeatureStruct3 optional=True
command test-features0 q_obj_test-features0-arg -> FeatureStruct1
    gen=True success_response=True boxed=False oob=False preconfig=False
command test-command-features1 None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    feature deprecated
command test-command-features3 None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    feature feature1
    feature feature2
command test-command-cond-features1 None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    feature feature1
        if ['defined(TEST_IF_FEATURE_1)']
command test-command-cond-features2 None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    feature feature1
        if ['defined(TEST_IF_FEATURE_1)']
    feature feature2
        if ['defined(TEST_IF_FEATURE_2)']
command test-command-cond-features3 None -> None
    gen=True success_response=True boxed=False oob=False preconfig=False
    feature feature1
        if ['defined(TEST_IF_COND_1)', 'defined(TEST_IF_COND_2)']
event TEST_EVENT_FEATURES0 FeatureStruct1
    boxed=False
event TEST_EVENT_FEATURES1 None
    boxed=False
    feature deprecated
module include/sub-module.json
include sub-sub-module.json
object SecondArrayRef
    member s: StatusList optional=False
module sub-sub-module.json
array StatusList Status
enum Status
    member good
    member bad
    member ugly
