mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
docs: kernel-doc.rst: better describe kernel-doc arguments
Add a new section to describe kernel-doc arguments, adding examples about how identation should happen, as failing to do that causes Sphinx to do the wrong thing. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
committed by
Jonathan Corbet
parent
012e93cbdb
commit
63ac85174a
@@ -112,16 +112,17 @@ Example kernel-doc function comment::
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* foobar() - Brief description of foobar.
|
* foobar() - Brief description of foobar.
|
||||||
* @arg: Description of argument of foobar.
|
* @argument1: Description of parameter argument1 of foobar.
|
||||||
|
* @argument2: Description of parameter argument2 of foobar.
|
||||||
*
|
*
|
||||||
* Longer description of foobar.
|
* Longer description of foobar.
|
||||||
*
|
*
|
||||||
* Return: Description of return value of foobar.
|
* Return: Description of return value of foobar.
|
||||||
*/
|
*/
|
||||||
int foobar(int arg)
|
int foobar(int argument1, char *argument2)
|
||||||
|
|
||||||
The format is similar for documentation for structures, enums, paragraphs,
|
The format is similar for documentation for structures, enums, paragraphs,
|
||||||
etc. See the sections below for details.
|
etc. See the sections below for specific details of each type.
|
||||||
|
|
||||||
The kernel-doc structure is extracted from the comments, and proper `Sphinx C
|
The kernel-doc structure is extracted from the comments, and proper `Sphinx C
|
||||||
Domain`_ function and type descriptions with anchors are generated for them. The
|
Domain`_ function and type descriptions with anchors are generated for them. The
|
||||||
@@ -130,6 +131,43 @@ cross-references. See below for details.
|
|||||||
|
|
||||||
.. _Sphinx C Domain: http://www.sphinx-doc.org/en/stable/domains.html
|
.. _Sphinx C Domain: http://www.sphinx-doc.org/en/stable/domains.html
|
||||||
|
|
||||||
|
|
||||||
|
Parameters and member arguments
|
||||||
|
-------------------------------
|
||||||
|
|
||||||
|
The kernel-doc function comments describe each parameter to the function and
|
||||||
|
function typedefs or each member of struct/union, in order, with the
|
||||||
|
``@argument:`` descriptions. For each non-private member argument, one
|
||||||
|
``@argument`` definition is needed.
|
||||||
|
|
||||||
|
The ``@argument:`` descriptions begin on the very next line following
|
||||||
|
the opening brief function description line, with no intervening blank
|
||||||
|
comment lines.
|
||||||
|
|
||||||
|
The ``@argument:`` descriptions may span multiple lines.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
If the ``@argument`` description has multiple lines, the continuation
|
||||||
|
of the description should be starting exactly at the same column as
|
||||||
|
the previous line, e. g.::
|
||||||
|
|
||||||
|
* @argument: some long description
|
||||||
|
* that continues on next lines
|
||||||
|
|
||||||
|
or::
|
||||||
|
|
||||||
|
* @argument:
|
||||||
|
* some long description
|
||||||
|
* that continues on next lines
|
||||||
|
|
||||||
|
If a function or typedef parameter argument is ``...`` (e. g. a variable
|
||||||
|
number of arguments), its description should be listed in kernel-doc
|
||||||
|
notation as::
|
||||||
|
|
||||||
|
* @...: description
|
||||||
|
|
||||||
|
|
||||||
Highlights and cross-references
|
Highlights and cross-references
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user