[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v12 26/36] qapi: Change munging of CamelCase enu
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v12 26/36] qapi: Change munging of CamelCase enum values |
Date: |
Wed, 18 Nov 2015 14:46:31 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Eric Blake <address@hidden> writes:
> When munging enum values, the fact that we were passing the entire
> prefix + value through camel_to_upper() meant that enum values
> spelled with CamelCase could be turned into CAMEL_CASE. However,
> this provides a potential collision (both OneTwo and One-Two would
> munge into ONE_TWO) for enum types, when the same two names are
> valid side-by-side as qapi member names. By changing the generation
> of enum constants to always be prefix + '_' + c_name(value,
> False).upper(), and ensuring that there are no case collisions (in
> the next patches), we no longer have to worry about names that
> would be distinct as qapi members but collide as variant tag names,
> without having to think about what munging the heuristics in
> camel_to_upper() will actually perform on an enum value.
>
> Making the change will affect enums that did not follow coding
> conventions, using 'CamelCase' rather than desired 'lower-case'.
>
> Thankfully, there are only two culprits: InputButton and ErrorClass.
> We already tweaked ErrorClass to make it an alias of QapiErrorClass,
> where only the alias needs changingrather than the whole tree. So
s/changingrather/changing rather/
> the bulk of this change is modifying INPUT_BUTTON_WHEEL_UP to the
> new INPUT_BUTTON_WHEELUP (and likewise for WHEELDOWN). That part
> of this commit may later need reverting if we rename the enum
> constants from 'WheelUp' to 'wheel-up' as part of moving
> x-input-send-event to a stable interface; but at least we have
> documentation bread crumbs in place to remind us (commit 513e7cd),
> and it matches the fact that SDL constants are also spelled
> SDL_BUTTON_WHEELUP.
>
> Suggested by: Markus Armbruster <address@hidden>
> Signed-off-by: Eric Blake <address@hidden>
>
> ---
> v12: rebase to simpler ErrorClass changes, document decisions on
> InputButton
The ugliness is now confined to just the definition of enum ErrorClass.
Good.
- [Qemu-devel] [PATCH v12 06/36] qapi: Clean up after previous commit, (continued)
- [Qemu-devel] [PATCH v12 06/36] qapi: Clean up after previous commit, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 07/36] qapi: Fix up commit 7618b91's clash sanity checking change, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 12/36] qapi: Factor out QAPISchemaObjectType.check_clash(), Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 18/36] qapi: Remove dead visitor code, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 16/36] qapi: Detect collisions in C member names, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 17/36] qapi: Fix c_name() munging, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 26/36] qapi: Change munging of CamelCase enum values, Eric Blake, 2015/11/18
- Re: [Qemu-devel] [PATCH v12 26/36] qapi: Change munging of CamelCase enum values,
Markus Armbruster <=
- [Qemu-devel] [PATCH v12 14/36] qapi: Remove outdated tests related to QMP/branch collisions, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 23/36] qapi: Remove dead tests for max collision, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 32/36] qapi: Inline _make_implicit_tag(), Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 30/36] qapi: Convert QType into qapi builtin enum type, Eric Blake, 2015/11/18
- [Qemu-devel] [PATCH v12 34/36] qapi: Add positive tests to qapi-schema-test, Eric Blake, 2015/11/18