qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eric Blake <eblake@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, berto@igalia.com, armbru@redhat.com
Subject: [Qemu-devel] [PATCH v8 03/40] qapi: Simplify builtin type handling
Date: Mon,  4 May 2015 09:05:00 -0600	[thread overview]
Message-ID: <1430751937-17523-4-git-send-email-eblake@redhat.com> (raw)
In-Reply-To: <1430751937-17523-1-git-send-email-eblake@redhat.com>

There was some redundancy between builtin_types[] and
builtin_type_qtypes{}.  Merge them into one.

Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
---
 scripts/qapi-types.py | 10 +++++-----
 scripts/qapi-visit.py |  6 +++---
 scripts/qapi.py       |  8 +-------
 3 files changed, 9 insertions(+), 15 deletions(-)

diff --git a/scripts/qapi-types.py b/scripts/qapi-types.py
index db87218..e400b03 100644
--- a/scripts/qapi-types.py
+++ b/scripts/qapi-types.py
@@ -182,8 +182,8 @@ const int %(name)s_qtypes[QTYPE_MAX] = {

     for key in members:
         qapi_type = members[key]
-        if builtin_type_qtypes.has_key(qapi_type):
-            qtype = builtin_type_qtypes[qapi_type]
+        if builtin_types.has_key(qapi_type):
+            qtype = builtin_types[qapi_type]
         elif find_struct(qapi_type):
             qtype = "QTYPE_QDICT"
         elif find_union(qapi_type):
@@ -398,7 +398,7 @@ exprs = parse_schema(input_file)
 exprs = filter(lambda expr: not expr.has_key('gen'), exprs)

 fdecl.write(guardstart("QAPI_TYPES_BUILTIN_STRUCT_DECL"))
-for typename in builtin_types:
+for typename in builtin_types.keys():
     fdecl.write(generate_fwd_struct(typename, None, builtin_type=True))
 fdecl.write(guardend("QAPI_TYPES_BUILTIN_STRUCT_DECL"))

@@ -426,7 +426,7 @@ for expr in exprs:
 # to avoid header dependency hell, we always generate declarations
 # for built-in types in our header files and simply guard them
 fdecl.write(guardstart("QAPI_TYPES_BUILTIN_CLEANUP_DECL"))
-for typename in builtin_types:
+for typename in builtin_types.keys():
     fdecl.write(generate_type_cleanup_decl(typename + "List"))
 fdecl.write(guardend("QAPI_TYPES_BUILTIN_CLEANUP_DECL"))

@@ -435,7 +435,7 @@ fdecl.write(guardend("QAPI_TYPES_BUILTIN_CLEANUP_DECL"))
 # over these cases
 if do_builtins:
     fdef.write(guardstart("QAPI_TYPES_BUILTIN_CLEANUP_DEF"))
-    for typename in builtin_types:
+    for typename in builtin_types.keys():
         fdef.write(generate_type_cleanup(typename + "List"))
     fdef.write(guardend("QAPI_TYPES_BUILTIN_CLEANUP_DEF"))

diff --git a/scripts/qapi-visit.py b/scripts/qapi-visit.py
index 1be4d67..41596bb 100644
--- a/scripts/qapi-visit.py
+++ b/scripts/qapi-visit.py
@@ -261,7 +261,7 @@ void visit_type_%(name)s(Visitor *m, %(name)s **obj, const char *name, Error **e
     disc_type = '%sKind' % (name)

     for key in members:
-        assert (members[key] in builtin_types
+        assert (members[key] in builtin_types.keys()
             or find_struct(members[key])
             or find_union(members[key])
             or find_enum(members[key])), "Invalid anonymous union member"
@@ -538,7 +538,7 @@ exprs = parse_schema(input_file)
 # to avoid header dependency hell, we always generate declarations
 # for built-in types in our header files and simply guard them
 fdecl.write(guardstart("QAPI_VISIT_BUILTIN_VISITOR_DECL"))
-for typename in builtin_types:
+for typename in builtin_types.keys():
     fdecl.write(generate_declaration(typename, None, builtin_type=True))
 fdecl.write(guardend("QAPI_VISIT_BUILTIN_VISITOR_DECL"))

@@ -546,7 +546,7 @@ fdecl.write(guardend("QAPI_VISIT_BUILTIN_VISITOR_DECL"))
 # have the functions defined, so we use -b option to provide control
 # over these cases
 if do_builtins:
-    for typename in builtin_types:
+    for typename in builtin_types.keys():
         fdef.write(generate_visit_list(typename, None))

 for expr in exprs:
diff --git a/scripts/qapi.py b/scripts/qapi.py
index 77d46aa..2b5775d 100644
--- a/scripts/qapi.py
+++ b/scripts/qapi.py
@@ -16,13 +16,7 @@ from ordereddict import OrderedDict
 import os
 import sys

-builtin_types = [
-    'str', 'int', 'number', 'bool',
-    'int8', 'int16', 'int32', 'int64',
-    'uint8', 'uint16', 'uint32', 'uint64'
-]
-
-builtin_type_qtypes = {
+builtin_types = {
     'str':      'QTYPE_QSTRING',
     'int':      'QTYPE_QINT',
     'number':   'QTYPE_QFLOAT',
-- 
2.1.0

  parent reply	other threads:[~2015-05-04 15:05 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-04 15:04 [Qemu-devel] [PATCH v8 00/40] drop qapi nested structs Eric Blake
2015-05-04 15:04 ` [Qemu-devel] [PATCH v8 01/40] qapi: Add copyright declaration on docs Eric Blake
2015-05-04 15:04 ` [Qemu-devel] [PATCH v8 02/40] qapi: Document type-safety considerations Eric Blake
2015-05-04 15:05 ` Eric Blake [this message]
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 04/40] qapi: Fix generation of 'size' builtin type Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 05/40] qapi: Require ASCII in schema Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 06/40] qapi: Add some enum tests Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 07/40] qapi: Better error messages for bad enums Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 08/40] qapi: Add some union tests Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 09/40] qapi: Clean up test coverage of simple unions Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 10/40] qapi: Forbid base without discriminator in unions Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 11/40] qapi: Tighten checking of unions Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 12/40] qapi: Prepare for catching more semantic parse errors Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 13/40] qapi: Segregate anonymous unions into alternates in generator Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 14/40] qapi: Rename anonymous union type in test Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 15/40] qapi: Document new 'alternate' meta-type Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 16/40] qapi: Use 'alternate' to replace anonymous union Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 17/40] qapi: Add some expr tests Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 18/40] qapi: Better error messages for bad expressions Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 19/40] qapi: Add tests of redefined expressions Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 20/40] qapi: Better error messages for duplicated expressions Eric Blake
2015-05-05  9:11   ` Markus Armbruster
2015-05-05 13:05     ` Eric Blake
2015-05-05 16:28       ` Markus Armbruster
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 21/40] qapi: Allow true, false and null in schema json Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 22/40] qapi: Unify type bypass and add tests Eric Blake
2015-05-04 17:42   ` Markus Armbruster
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 23/40] qapi: Add some type check tests Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 24/40] qapi: More rigourous checking of types Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 25/40] qapi: Require valid names Eric Blake
2015-05-04 17:43   ` Markus Armbruster
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 26/40] qapi: Whitelist commands that don't return dictionary Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 27/40] qapi: More rigorous checking for type safety bypass Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 28/40] qapi: Prefer 'struct' over 'type' in generator Eric Blake
2015-05-04 17:46   ` Markus Armbruster
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 29/40] qapi: Document 'struct' metatype Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 30/40] qapi: Use 'struct' instead of 'type' in schema Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 31/40] qapi: Forbid " Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 32/40] qapi: Merge UserDefTwo and UserDefNested in tests Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 33/40] qapi: Drop tests for inline nested structs Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 34/40] qapi: Drop inline nested struct in query-version Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 35/40] qapi: Drop inline nested structs in query-pci Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 36/40] qapi: Drop support for inline nested types Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 37/40] qapi: Drop dead visitor code related to nested structs Eric Blake
2015-05-04 17:57   ` Markus Armbruster
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 38/40] qapi: Tweak doc references to QMP when QGA is also meant Eric Blake
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 39/40] qapi: Support (subset of) \u escapes in strings Eric Blake
2015-05-04 18:04   ` Markus Armbruster
2015-05-04 15:05 ` [Qemu-devel] [PATCH v8 40/40] qapi: Check for member name conflicts with a base class Eric Blake
2015-05-04 18:13   ` Markus Armbruster
2015-05-04 18:19 ` [Qemu-devel] [PATCH v8 00/40] drop qapi nested structs Markus Armbruster

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1430751937-17523-4-git-send-email-eblake@redhat.com \
    --to=eblake@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berto@igalia.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).