John Snow <js...@redhat.com> writes:

> This method adds the options/preamble to each definition block. Notably,
> :since: and :ifcond: are added, as are any "special features" such as
> :deprecated: and :unstable:.
>
> Signed-off-by: John Snow <js...@redhat.com>
> ---
>  docs/sphinx/qapidoc.py | 41 ++++++++++++++++++++++++++++++++++++++---
>  1 file changed, 38 insertions(+), 3 deletions(-)
>
> diff --git a/docs/sphinx/qapidoc.py b/docs/sphinx/qapidoc.py
> index cf5dbb0133d..d8bf0073dfa 100644
> --- a/docs/sphinx/qapidoc.py
> +++ b/docs/sphinx/qapidoc.py
> @@ -37,7 +37,12 @@
>  from docutils.parsers.rst import Directive, directives
>  from docutils.statemachine import StringList
>  from qapi.error import QAPIError
> -from qapi.schema import QAPISchema, QAPISchemaVisitor
> +from qapi.parser import QAPIDoc
> +from qapi.schema import (
> +    QAPISchema,
> +    QAPISchemaDefinition,
> +    QAPISchemaVisitor,
> +)
>  from qapi.source import QAPISourceInfo
>  
>  from qapidoc_legacy import QAPISchemaGenRSTVisitor  # type: ignore
> @@ -56,8 +61,6 @@
>          Sequence,
>      )
>  
> -    from qapi.parser import QAPIDoc
> -
>      from sphinx.application import Sphinx
>      from sphinx.util.typing import ExtensionMetadata
>  
> @@ -125,6 +128,38 @@ def ensure_blank_line(self) -> None:
>              # +2: correct for zero/one index, then increment by one.
>              self.add_line_raw("", fname, line + 2)
>  
> +    # Transmogrification helpers
> +
> +    def preamble(self, ent: QAPISchemaDefinition) -> None:
> +        """
> +        Generate option lines for qapi entity directives.

QAPI index unless there's a reason for lower case.

> +        """

[...]


Reply via email to