]> git.proxmox.com Git - mirror_qemu.git/commit - qapi/common.json
qapi: Add alias for ErrorClass
authorEric Blake <eblake@redhat.com>
Wed, 18 Nov 2015 08:53:00 +0000 (01:53 -0700)
committerMarkus Armbruster <armbru@redhat.com>
Thu, 17 Dec 2015 07:21:28 +0000 (08:21 +0100)
commitf22a28b898322c01b0463a8b7ec551d72bc61a5b
treea679e67ce5b372e2e108c2f772584353252ad4b6
parent86f4b6871c598e86f0542ed50d2ee5280fc66590
qapi: Add alias for ErrorClass

The qapi enum ErrorClass is unusual that it uses 'CamelCase' names,
contrary to our documented convention of preferring 'lower-case'.
However, this enum is entrenched in the API; we cannot change
what strings QMP outputs.  Meanwhile, we want to simplify how
c_enum_const() is used to generate enum constants, by moving away
from the heuristics of camel_to_upper() to a more straightforward
c_name(N).upper() - but doing so will rename all of the ErrorClass
constants and cause churn to all client files, where the new names
are aesthetically less pleasing (ERROR_CLASS_DEVICENOTFOUND looks
like we can't make up our minds on whether to break between words).

So as always in computer science, solve the problem by some more
indirection: rename the qapi type to QapiErrorClass, and add a
new enum ErrorClass in error.h whose members are aliases of the
qapi type, but with the spelling expected elsewhere in the tree.
Then, when c_enum_const() changes the munging, we only have to
adjust the one alias spot.

Suggested by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1447836791-369-26-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
include/qapi/error.h
monitor.c
qapi/common.json
qapi/qmp-dispatch.c