[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 23/23] docs/qapidoc: add transmogrifier test document
From: |
John Snow |
Subject: |
[PATCH v2 23/23] docs/qapidoc: add transmogrifier test document |
Date: |
Tue, 14 Jan 2025 13:58:40 -0500 |
Signed-off-by: John Snow <jsnow@redhat.com>
---
docs/index.rst | 1 +
docs/qapi/index.rst | 53 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 54 insertions(+)
create mode 100644 docs/qapi/index.rst
diff --git a/docs/index.rst b/docs/index.rst
index 0b9ee9901d9..11c18c598a8 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -18,3 +18,4 @@ Welcome to QEMU's documentation!
interop/index
specs/index
devel/index
+ qapi/index
diff --git a/docs/qapi/index.rst b/docs/qapi/index.rst
new file mode 100644
index 00000000000..e40dce09119
--- /dev/null
+++ b/docs/qapi/index.rst
@@ -0,0 +1,53 @@
+########################
+QAPI Transmogrifier Test
+########################
+
+This is a test render of the QEMU QMP reference manual using the new
+"transmogrifier" generator in qapidoc.py in conjunction with the
+qapi-domain.py sphinx extension.
+
+Some notable features:
+
+ * Every QAPI definition visible below is available to be
+ cross-referenced from anywhere else in the Sphinx docs; for example
+ ```blockdev-add``` will render to `blockdev-add`.
+
+ * There are type-specific cross-referencing roles available for
+ alternates, commands, events, enums, structs, unions and modules. for
+ example, ``:qapi:cmd:`block-dirty-bitmap-add``` resolves to
+ :qapi:cmd:`block-dirty-bitmap-add`, and only works for commands. The
+ roles available are ``cmd``, ``alt``, ``event``, ``enum``,
+ ``struct``, ``union``, and ``mod``; with two meta-roles available:
+ ``obj`` for absolutely any QAPI definition, and ``type`` for
+ everything except commands, events, and modules.
+
+ * There is a new `qapi-index` page which can be linked to with
+ ```qapi-index```. There, you can browse a list of all QAPI
+ definitions by type or alphabetically.
+
+ * QAPI definitions are also added to the existing `genindex` page.
+
+ * All member/argument/return types are now cross-references to that
+ type's definition. `chardev-add` is a good example.
+
+ * This work-in-progress version does not perform any inlining.
+
+ * This work-in-progress version actually also ignores branches entirely
+ right now!
+
+ * This version currently does not "prune" unnecessary docs.
+
+ * This version does not add undocumented members or return values.
+
+ * This version does not handle ifcond for anything other than top-level
+ entity definitions.
+
+ * This version renders sections in precisely the order they appear in
+ source, even if that winds up looking silly.
+
+
+.. contents::
+ :depth: 2
+
+.. qapi-doc:: qapi/qapi-schema.json
+ :transmogrify:
--
2.47.1
- [PATCH v2 12/23] docs/qapidoc: add visit_paragraph() method, (continued)
- [PATCH v2 12/23] docs/qapidoc: add visit_paragraph() method, John Snow, 2025/01/14
- [PATCH v2 17/23] docs/qapidoc: prepare to record entity being transmogrified, John Snow, 2025/01/14
- [PATCH v2 22/23] docs/qapidoc: implement transmogrify() method, John Snow, 2025/01/14
- [PATCH v2 03/23] docs/qapidoc: remove example section support, John Snow, 2025/01/14
- [PATCH v2 07/23] docs/qapidoc: add transmogrifier class stub, John Snow, 2025/01/14
- [PATCH v2 10/23] docs/qapidoc: add visit_freeform() method, John Snow, 2025/01/14
- [PATCH v2 18/23] docs/qapidoc: add visit_returns() method, John Snow, 2025/01/14
- [PATCH v2 20/23] docs/qapidoc: add visit_sections() method, John Snow, 2025/01/14
- [PATCH v2 16/23] docs/qapidoc: add visit_feature() method, John Snow, 2025/01/14
- [PATCH v2 21/23] docs/qapidoc: add visit_entity(), John Snow, 2025/01/14
- [PATCH v2 23/23] docs/qapidoc: add transmogrifier test document,
John Snow <=