[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects. |
Date: |
Sat, 5 Sep 2015 07:19:27 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 |
On 09/04/2015 05:51 PM, Eric Blake wrote:
> We have a few fields that exist mainly to hold information from
> __init__() until check() (matching the fact that parsing is
> two-pass; the first to find type names, the second to associate
> types together while honoring forward references), or which should
> only be used through accessor methods. We should not use these
> fields directly in other files after check() has run, so use the
> python convention of naming these fields with leading underscore
> to mark their internal usage, and to check that no one else was
> using them.
>
> Exception: our crazy handling of simple unions (with a C member
> 'kind' matching the QMP wire 'type') requires peeking through
> the hidden field. This leaky abstraction will be cleaned up in
> a later patch.
>
> Signed-off-by: Eric Blake <address@hidden>
> ---
>
> Technically, I wrote this patch after 32; if you decide to rebase
> it into the series, you'll have to split it among 2, 10, 11, and 30.
> Up to you if you want to squash this in during your spin of v5, or
> if you want me to keep it as a separate patch for inclusion after
> your series.
Oh, and tests/qapi-schema/test-qapi.py is annoying - even when it exits
non-zero, it does NOT cause a failure in 'make check-qapi-schema'.
You'll need to additionally consider squashing this in to 5:
diff --git i/tests/qapi-schema/test-qapi.py w/tests/qapi-schema/test-qapi.py
index 471f8e1..0fc0622 100644
--- i/tests/qapi-schema/test-qapi.py
+++ w/tests/qapi-schema/test-qapi.py
@@ -40,8 +40,9 @@ class QAPISchemaTestVisitor(QAPISchemaVisitor):
@staticmethod
def _print_variants(variants):
if variants:
- if variants.tag_name:
- print ' tag %s' % variants.tag_name
+ # TODO: fix simple unions so we don't have to look at _tag_name
+ if variants._tag_name:
+ print ' tag %s' % variants.tag_member.name
for v in variants.variants:
print ' case %s: %s' % (v.name, v.type.name)
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH RFC v4 23/32] qapi: De-duplicate parameter list generation, (continued)
- Re: [Qemu-devel] [PATCH RFC v4 02/32] qapi: New QAPISchema intermediate reperesentation, Eric Blake, 2015/09/03
- Re: [Qemu-devel] [PATCH RFC v4 02/32] qapi: New QAPISchema intermediate reperesentation, Eric Blake, 2015/09/04
- Re: [Qemu-devel] [PATCH RFC v4 02/32] qapi: New QAPISchema intermediate reperesentation, Markus Armbruster, 2015/09/04
- [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects., Eric Blake, 2015/09/04
- Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects.,
Eric Blake <=
- Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects., Eric Blake, 2015/09/05
- Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects., Eric Blake, 2015/09/05
- Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects., Markus Armbruster, 2015/09/07
- Re: [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects., Markus Armbruster, 2015/09/07
[Qemu-devel] [PATCH RFC v4 31/32] qapi-introspect: Map all integer types to 'int', Markus Armbruster, 2015/09/03
[Qemu-devel] [PATCH RFC v4 25/32] qapi: Improve built-in type documentation, Markus Armbruster, 2015/09/03
[Qemu-devel] [PATCH RFC v4 28/32] qapi-schema: Fix up misleading specification of netdev_add, Markus Armbruster, 2015/09/03
[Qemu-devel] [PATCH RFC v4 17/32] Revert "qapi: Generate comments to simplify splitting for review", Markus Armbruster, 2015/09/03
[Qemu-devel] [PATCH RFC v4 16/32] qapi: Generate comments to simplify splitting for review, Markus Armbruster, 2015/09/03