[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5fe7c587-bd82-4f87-aa2c-0bf7a4cdf9e8@linux.dev>
Date: Thu, 3 Jul 2025 10:07:29 +0800
From: Yanteng Si <si.yanteng@...ux.dev>
To: Jonathan Corbet <corbet@....net>, linux-doc@...r.kernel.org
Cc: linux-kernel@...r.kernel.org,
Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
Akira Yokosawa <akiyks@...il.com>
Subject: Re: [PATCH 00/12] [PATCH 00/11] Thrash up the parser/output interface
在 7/3/25 6:35 AM, Jonathan Corbet 写道:
> [I'll slow down soon, honest - real work is piling up...]
>
> The kerneldoc parsing phase gathers all of the information about the
> declarations of interest, then passes it through to the output phase as a
> dict that is an unstructured blob of information; this organization has its
> origins in the Perl version of the program. It results in an interface
> that is difficult to reason about, dozen-parameter function calls, and
> other ills.
>
> Introduce a new class (KdocItem) to carry this information between the
> parser and the output modules, and, step by step, modify the system to use
> this class in a more structured way. This could be taken further by
> creating a subclass of KdocItem for each declaration type (function,
> struct, ...), but that is probably more structure than we need.
>
> As a final step, add some structure for the accumulation of the output
> text.
>
> The result is (I hope) clearer code, the removal of a bunch of boilerplate,
> and no changes to the generated output.
>
> Jonathan Corbet (12):
> docs: kdoc; Add a rudimentary class to represent output items
> docs: kdoc: simplify the output-item passing
> docs: kdoc: drop "sectionlist"
> docs: kdoc: Centralize handling of the item section list
> docs: kdoc: remove the "struct_actual" machinery
> docs: kdoc: use self.entry.parameterlist directly in check_sections()
> docs: kdoc: Coalesce parameter-list handling
> docs: kdoc: Regularize the use of the declaration name
> docs: kdoc: straighten up dump_declaration()
> docs: kdoc: directly access the always-there KdocItem fields
> docs: kdoc: clean up check_sections()
> docs: kdoc: Improve the output text accumulation
Reviewed-by: Yanteng Si <siyanteng@...oftware.com.cn>
Thanks,
Yanteng
Powered by blists - more mailing lists