diff options
Diffstat (limited to 'scripts/qapi/schema.py')
-rw-r--r-- | scripts/qapi/schema.py | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py index e80d9320ed..14cf9da784 100644 --- a/scripts/qapi/schema.py +++ b/scripts/qapi/schema.py @@ -68,7 +68,8 @@ class QAPISchemaEntity: def _set_module(self, schema, info): assert self._checked - self._module = schema.module_by_fname(info and info.fname) + fname = info.fname if info else './builtin' + self._module = schema.module_by_fname(fname) self._module.add_entity(self) def set_module(self, schema): @@ -142,16 +143,16 @@ class QAPISchemaModule: self._entity_list = [] @staticmethod - def is_system_module(name: Optional[str]) -> bool: + def is_system_module(name: str) -> bool: """ System modules are internally defined modules. Their names start with the "./" prefix. """ - return name is None or name.startswith('./') + return name.startswith('./') @classmethod - def is_user_module(cls, name: Optional[str]) -> bool: + def is_user_module(cls, name: str) -> bool: """ User modules are those defined by the user in qapi JSON files. @@ -160,13 +161,13 @@ class QAPISchemaModule: return not cls.is_system_module(name) @staticmethod - def is_builtin_module(name: Optional[str]) -> bool: + def is_builtin_module(name: str) -> bool: """ The built-in module is a single System module for the built-in types. - It is presently always the value 'None'. + It is always "./builtin". """ - return name is None + return name == './builtin' def add_entity(self, ent): self._entity_list.append(ent) @@ -852,7 +853,7 @@ class QAPISchema: self._entity_dict = {} self._module_dict = OrderedDict() self._schema_dir = os.path.dirname(fname) - self._make_module(None) # built-ins + self._make_module('./builtin') self._make_module(fname) self._predefining = True self._def_predefineds() @@ -897,7 +898,7 @@ class QAPISchema: info, "%s uses unknown type '%s'" % (what, name)) return typ - def _module_name(self, fname): + def _module_name(self, fname: str) -> str: if QAPISchemaModule.is_system_module(fname): return fname return os.path.relpath(fname, self._schema_dir) @@ -910,7 +911,6 @@ class QAPISchema: def module_by_fname(self, fname): name = self._module_name(fname) - assert name in self._module_dict return self._module_dict[name] def _def_include(self, expr, info, doc): |