summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Snow2021-02-01 20:37:41 +0100
committerMarkus Armbruster2021-02-08 14:15:58 +0100
commit39b2d838f1f8a6c3d2fc4e2eecc45e5554d02af7 (patch)
tree2b09c95480e69ab14debf60e3e90bb3c99d8bbd3
parentqapi/gen: Combine ._add_[user|system]_module (diff)
downloadqemu-39b2d838f1f8a6c3d2fc4e2eecc45e5554d02af7.tar.gz
qemu-39b2d838f1f8a6c3d2fc4e2eecc45e5554d02af7.tar.xz
qemu-39b2d838f1f8a6c3d2fc4e2eecc45e5554d02af7.zip
qapi: centralize the built-in module name definition
Use a constant to make it obvious we're referring to a very specific thing. Signed-off-by: John Snow <jsnow@redhat.com> Message-Id: <20210201193747.2169670-11-jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
-rw-r--r--scripts/qapi/schema.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py
index 14cf9da784..353e8020a2 100644
--- a/scripts/qapi/schema.py
+++ b/scripts/qapi/schema.py
@@ -68,7 +68,7 @@ class QAPISchemaEntity:
def _set_module(self, schema, info):
assert self._checked
- fname = info.fname if info else './builtin'
+ fname = info.fname if info else QAPISchemaModule.BUILTIN_MODULE_NAME
self._module = schema.module_by_fname(fname)
self._module.add_entity(self)
@@ -138,6 +138,9 @@ class QAPISchemaVisitor:
class QAPISchemaModule:
+
+ BUILTIN_MODULE_NAME = './builtin'
+
def __init__(self, name):
self.name = name
self._entity_list = []
@@ -160,14 +163,14 @@ class QAPISchemaModule:
"""
return not cls.is_system_module(name)
- @staticmethod
- def is_builtin_module(name: str) -> bool:
+ @classmethod
+ def is_builtin_module(cls, name: str) -> bool:
"""
The built-in module is a single System module for the built-in types.
It is always "./builtin".
"""
- return name == './builtin'
+ return name == cls.BUILTIN_MODULE_NAME
def add_entity(self, ent):
self._entity_list.append(ent)
@@ -853,7 +856,7 @@ class QAPISchema:
self._entity_dict = {}
self._module_dict = OrderedDict()
self._schema_dir = os.path.dirname(fname)
- self._make_module('./builtin')
+ self._make_module(QAPISchemaModule.BUILTIN_MODULE_NAME)
self._make_module(fname)
self._predefining = True
self._def_predefineds()