summaryrefslogtreecommitdiff
path: root/scripts/lib/kdoc/kdoc_parser.py
diff options
context:
space:
mode:
authorJonathan Corbet <corbet@lwn.net>2025-06-21 14:35:11 -0600
committerJonathan Corbet <corbet@lwn.net>2025-06-25 11:30:26 -0600
commitccad65a494657e899f9139174fcc74c64316c10a (patch)
tree33def2fad08c5d96cb256bc336cb77342aa733dc /scripts/lib/kdoc/kdoc_parser.py
parent2ad02b94914ab47b3b94274856e1b56cd94d3e31 (diff)
docs: kdoc: Add some comments to process_decl()
Now that the function can actually fit into a human brain, add a few comments. While I was at it, I switched to the trim_whitespace() helper rather than open-coding it. Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Link: https://lore.kernel.org/r/20250621203512.223189-9-corbet@lwn.net
Diffstat (limited to 'scripts/lib/kdoc/kdoc_parser.py')
-rw-r--r--scripts/lib/kdoc/kdoc_parser.py30
1 files changed, 16 insertions, 14 deletions
diff --git a/scripts/lib/kdoc/kdoc_parser.py b/scripts/lib/kdoc/kdoc_parser.py
index f7a5b85a8ed7..a6ee8bac378d 100644
--- a/scripts/lib/kdoc/kdoc_parser.py
+++ b/scripts/lib/kdoc/kdoc_parser.py
@@ -1377,26 +1377,28 @@ class KernelDoc:
"""
if self.is_new_section(ln, line) or self.is_comment_end(ln, line):
return
-
+ #
+ # Look for anything with the " * " line beginning.
+ #
if doc_content.search(line):
cont = doc_content.group(1)
-
+ #
+ # A blank line means that we have moved out of the declaration
+ # part of the comment (without any "special section" parameter
+ # descriptions).
+ #
if cont == "":
self.state = state.BODY
self.entry.contents += "\n" # needed?
-
+ #
+ # Otherwise we have more of the declaration section to soak up.
+ #
else:
- # Continued declaration purpose
- self.entry.declaration_purpose = self.entry.declaration_purpose.rstrip()
- self.entry.declaration_purpose += " " + cont
-
- r = KernRe(r"\s+")
- self.entry.declaration_purpose = r.sub(' ',
- self.entry.declaration_purpose)
- return
-
- # Unknown line, ignore
- self.emit_msg(ln, f"bad line: {line}")
+ self.entry.declaration_purpose = \
+ trim_whitespace(self.entry.declaration_purpose + ' ' + cont)
+ else:
+ # Unknown line, ignore
+ self.emit_msg(ln, f"bad line: {line}")
def process_special(self, ln, line):