[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 18/23] docs/qapidoc: add visit_returns() method
From: |
John Snow |
Subject: |
[PATCH 18/23] docs/qapidoc: add visit_returns() method |
Date: |
Thu, 12 Dec 2024 21:18:21 -0500 |
Generates :returns: fields for explicit returns statements. Note that
this does not presently handle undocumented returns, which is handled in
a later commit.
Signed-off-by: John Snow <jsnow@redhat.com>
---
docs/sphinx/qapidoc.py | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/docs/sphinx/qapidoc.py b/docs/sphinx/qapidoc.py
index c731c597daf..9d298117fea 100644
--- a/docs/sphinx/qapidoc.py
+++ b/docs/sphinx/qapidoc.py
@@ -41,6 +41,7 @@
from qapi.schema import (
QAPISchema,
QAPISchemaArrayType,
+ QAPISchemaCommand,
QAPISchemaEntity,
QAPISchemaEnumMember,
QAPISchemaFeature,
@@ -202,6 +203,19 @@ def visit_feature(self, section: QAPIDoc.ArgSection) ->
None:
self.generate_field("feat", section.member, section.text, section.info)
+ def visit_returns(self, section: QAPIDoc.Section) -> None:
+ assert isinstance(self.entity, QAPISchemaCommand)
+ rtype = self.entity.ret_type
+ # q_empty can produce None, but we won't be documenting anything
+ # without an explicit return statement in the doc block, and we
+ # should not have any such explicit statements when there is no
+ # return value.
+ assert rtype
+
+ typ = self.format_type(rtype)
+ assert section.text # We don't expect empty returns sections.
+ self.add_field("returns", typ, section.text, section.info)
+
def visit_errors(self, section: QAPIDoc.Section) -> None:
# FIXME: the formatting for errors may be inconsistent and may
# or may not require different newline placement to ensure
--
2.47.0
- [PATCH 10/23] docs/qapidoc: add visit_freeform() method, (continued)
- [PATCH 10/23] docs/qapidoc: add visit_freeform() method, John Snow, 2024/12/12
- [PATCH 11/23] docs/qapidoc: add preamble() method, John Snow, 2024/12/12
- [PATCH 12/23] docs/qapidoc: add visit_paragraph() method, John Snow, 2024/12/12
- [PATCH 14/23] docs/qapidoc: add format_type() method, John Snow, 2024/12/12
- [PATCH 15/23] docs/qapidoc: add add_field() and generate_field() helper methods, John Snow, 2024/12/12
- [PATCH 13/23] docs/qapidoc: add visit_errors() method, John Snow, 2024/12/12
- [PATCH 16/23] docs/qapidoc: add visit_feature() method, John Snow, 2024/12/12
- [PATCH 19/23] docs/qapidoc: add visit_member() method, John Snow, 2024/12/12
- [PATCH 17/23] docs/qapidoc: record current documented entity in transmogrifier, John Snow, 2024/12/12
- [PATCH 21/23] docs/qapidoc: add visit_entity(), John Snow, 2024/12/12
- [PATCH 18/23] docs/qapidoc: add visit_returns() method,
John Snow <=
- [PATCH 20/23] docs/qapidoc: add visit_sections() method, John Snow, 2024/12/12
- [PATCH 22/23] docs/qapidoc: implement transmogrify() method, John Snow, 2024/12/12
- [PATCH 23/23] docs/qapidoc: add transmogrifier test document, John Snow, 2024/12/12
- Re: [PATCH 00/23] docs: add basic sphinx-domain rST generator to qapidoc, Markus Armbruster, 2024/12/19