summary refs log tree commit diff stats
path: root/scripts/qapi/types.py
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2019-02-14 16:22:36 +0100
committerMarkus Armbruster <armbru@redhat.com>2019-02-18 14:44:04 +0100
commitdcac64711ea906e844ae60a5927e5580f7252c1e (patch)
treec301702ab4cff7e031d6c8638a7fd9d1a031a57d /scripts/qapi/types.py
parent83a22d89b0d96cba0b2b6d843a443e3400322e0b (diff)
downloadfocaccia-qemu-dcac64711ea906e844ae60a5927e5580f7252c1e.tar.gz
focaccia-qemu-dcac64711ea906e844ae60a5927e5580f7252c1e.zip
qapi: Clean up modular built-in code generation a bit
We neglect to call .visit_module() for the special module we use for
built-ins.  Harmless, but clean it up anyway.  The
tests/qapi-schema/*.out now show the built-in module as 'module None'.

Subclasses of QAPISchemaModularCVisitor need to ._add_module() this
special module to enable code generation for built-ins.  When this
hasn't been done, QAPISchemaModularCVisitor.visit_module() does
nothing for the special module.  That looks like built-ins could
accidentally be generated into the wrong module when a subclass
neglects to call ._add_module().  Can't happen, because built-ins are
all visited before any other module.  But that's non-obvious.  Switch
off code generation explicitly.

Rename QAPISchemaModularCVisitor._begin_module() to
._begin_user_module().

New QAPISchemaModularCVisitor._is_builtin_module(), for clarity.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20190214152251.2073-4-armbru@redhat.com>
Diffstat (limited to 'scripts/qapi/types.py')
-rw-r--r--scripts/qapi/types.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/qapi/types.py b/scripts/qapi/types.py
index 62d4cf9f95..9fa510f7df 100644
--- a/scripts/qapi/types.py
+++ b/scripts/qapi/types.py
@@ -194,7 +194,7 @@ class QAPISchemaGenTypeVisitor(QAPISchemaModularCVisitor):
 #include "qapi/util.h"
 '''))
 
-    def _begin_module(self, name):
+    def _begin_user_module(self, name):
         types = self._module_basename('qapi-types', name)
         visit = self._module_basename('qapi-visit', name)
         self._genc.preamble_add(mcgen('''