diff options
author | Markus Armbruster <armbru@redhat.com> | 2020-03-17 12:54:36 +0100 |
---|---|---|
committer | Markus Armbruster <armbru@redhat.com> | 2020-03-17 19:58:34 +0100 |
commit | e4405b30695cda6fad69a4411c05b73d538c7992 (patch) | |
tree | 9616166622b4d04a896471d609f640f140ca9350 /scripts | |
parent | 11deae8cd2ce1e1f4240ec7d880940f25ebd65b1 (diff) |
qapi/schema: Clean up around QAPISchemaEntity.connect_doc()
QAPISchemaEntity calls doc.connect_feature() in .check(). Improper
since commit ee1e6a1f6c8 split .connect_doc() off .check(). Move the
call. Requires making the children call super().connect_doc() as they
should.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20200317115459.31821-12-armbru@redhat.com>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/qapi/schema.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py index d759308b4e..2a2b495987 100644 --- a/scripts/qapi/schema.py +++ b/scripts/qapi/schema.py @@ -53,13 +53,13 @@ class QAPISchemaEntity: seen = {} for f in self.features: f.check_clash(self.info, seen) - if self.doc: - self.doc.connect_feature(f) - self._checked = True def connect_doc(self, doc=None): - pass + doc = doc or self.doc + if doc: + for f in self.features: + doc.connect_feature(f) def check_doc(self): if self.doc: @@ -250,6 +250,7 @@ class QAPISchemaEnumType(QAPISchemaType): m.check_clash(self.info, seen) def connect_doc(self, doc=None): + super().connect_doc(doc) doc = doc or self.doc if doc: for m in self.members: @@ -392,6 +393,7 @@ class QAPISchemaObjectType(QAPISchemaType): m.check_clash(info, seen) def connect_doc(self, doc=None): + super().connect_doc(doc) doc = doc or self.doc if doc: if self.base and self.base.is_implicit(): @@ -667,6 +669,7 @@ class QAPISchemaAlternateType(QAPISchemaType): types_seen[qt] = v.name def connect_doc(self, doc=None): + super().connect_doc(doc) doc = doc or self.doc if doc: for v in self.variants.variants: @@ -733,6 +736,7 @@ class QAPISchemaCommand(QAPISchemaEntity): % self.ret_type.describe()) def connect_doc(self, doc=None): + super().connect_doc(doc) doc = doc or self.doc if doc: if self.arg_type and self.arg_type.is_implicit(): @@ -775,6 +779,7 @@ class QAPISchemaEvent(QAPISchemaEntity): % self.arg_type.describe()) def connect_doc(self, doc=None): + super().connect_doc(doc) doc = doc or self.doc if doc: if self.arg_type and self.arg_type.is_implicit(): |