Eric Blake <ebl...@redhat.com> writes: > On Mon, Sep 13, 2021 at 02:39:14PM +0200, Markus Armbruster wrote: >> 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, convert simple union InputEvent to an >> equivalent flat one. Adds some boilerplate to the schema, which is a >> bit ugly, but a lot easier to maintain than the simple union feature. >> >> Cc: Gerd Hoffmann <kra...@redhat.com> >> Signed-off-by: Markus Armbruster <arm...@redhat.com> >> --- >> qapi/ui.json | 42 ++++++++++++++++++++++++++++++++++++++---- >> 1 file changed, 38 insertions(+), 4 deletions(-) > > Same question as in 3/22: > >> >> diff --git a/qapi/ui.json b/qapi/ui.json >> index a6b0dce876..fe10d69431 100644 >> --- a/qapi/ui.json >> +++ b/qapi/ui.json >> @@ -960,6 +960,38 @@ >> 'data' : { 'axis' : 'InputAxis', >> 'value' : 'int' } } >> >> +## >> +# @InputEventKind: >> +# >> +# Since: 6.1 > > This should either be 6.2, or... > >> ## >> # @InputEvent: >> # >> @@ -975,10 +1007,12 @@ >> # Since: 2.0 > > ...2.0.
Same answer: 2.0. >> ## >> { 'union' : 'InputEvent', >> - 'data' : { 'key' : 'InputKeyEvent', >> - 'btn' : 'InputBtnEvent', >> - 'rel' : 'InputMoveEvent', >> - 'abs' : 'InputMoveEvent' } } >> + 'base': { 'type': 'InputEventKind' }, >> + 'discriminator': 'type', >> + 'data' : { 'key' : 'InputKeyEventWrapper', >> + 'btn' : 'InputBtnEventWrapper', >> + 'rel' : 'InputMoveEventWrapper', >> + 'abs' : 'InputMoveEventWrapper' } } > > But as with that patch, I trust your decision on docs, and the > conversion itself is sane. > > Reviewed-by: Eric Blake <ebl...@redhat.com> Thanks!