tests/qapi-schema: Prepare for simple union UserDefListUnion removal
Simple unions predate flat unions. Having both complicates the QAPI schema language and the QAPI generator. We haven't been using simple unions in new code for a long time, because they are less flexible and somewhat awkward on the wire. To prepare for their removal, simple union UserDefListUnion has to go. It is used to cover arrays. The next few commits will eliminate its uses, and then it gets deleted. As a first step, provide struct ArrayStruct for the tests to be rewritten. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20210917143134.412106-12-armbru@redhat.com>
This commit is contained in:
parent
277b51fc01
commit
dffd8ff9e6
@ -140,6 +140,22 @@
|
|||||||
'sizes': ['size'],
|
'sizes': ['size'],
|
||||||
'any': ['any'],
|
'any': ['any'],
|
||||||
'user': ['Status'] } } # intentional forward ref. to sub-module
|
'user': ['Status'] } } # intentional forward ref. to sub-module
|
||||||
|
{ 'struct': 'ArrayStruct',
|
||||||
|
'data': { 'integer': ['int'],
|
||||||
|
's8': ['int8'],
|
||||||
|
's16': ['int16'],
|
||||||
|
's32': ['int32'],
|
||||||
|
's64': ['int64'],
|
||||||
|
'u8': ['uint8'],
|
||||||
|
'u16': ['uint16'],
|
||||||
|
'u32': ['uint32'],
|
||||||
|
'u64': ['uint64'],
|
||||||
|
'number': ['number'],
|
||||||
|
'boolean': ['bool'],
|
||||||
|
'string': ['str'],
|
||||||
|
'*sz': ['size'],
|
||||||
|
'*any': ['any'],
|
||||||
|
'*user': ['Status'] } } # intentional forward ref. to sub-module
|
||||||
|
|
||||||
# for testing sub-modules
|
# for testing sub-modules
|
||||||
{ 'include': 'include/sub-module.json' }
|
{ 'include': 'include/sub-module.json' }
|
||||||
|
@ -189,6 +189,22 @@ object UserDefListUnion
|
|||||||
case sizes: q_obj_sizeList-wrapper
|
case sizes: q_obj_sizeList-wrapper
|
||||||
case any: q_obj_anyList-wrapper
|
case any: q_obj_anyList-wrapper
|
||||||
case user: q_obj_StatusList-wrapper
|
case user: q_obj_StatusList-wrapper
|
||||||
|
object ArrayStruct
|
||||||
|
member integer: intList optional=False
|
||||||
|
member s8: int8List optional=False
|
||||||
|
member s16: int16List optional=False
|
||||||
|
member s32: int32List optional=False
|
||||||
|
member s64: int64List optional=False
|
||||||
|
member u8: uint8List optional=False
|
||||||
|
member u16: uint16List optional=False
|
||||||
|
member u32: uint32List optional=False
|
||||||
|
member u64: uint64List optional=False
|
||||||
|
member number: numberList optional=False
|
||||||
|
member boolean: boolList optional=False
|
||||||
|
member string: strList optional=False
|
||||||
|
member sz: sizeList optional=True
|
||||||
|
member any: anyList optional=True
|
||||||
|
member user: StatusList optional=True
|
||||||
include include/sub-module.json
|
include include/sub-module.json
|
||||||
command user-def-cmd None -> None
|
command user-def-cmd None -> None
|
||||||
gen=True success_response=True boxed=False oob=False preconfig=False
|
gen=True success_response=True boxed=False oob=False preconfig=False
|
||||||
|
Loading…
Reference in New Issue
Block a user