mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-07 02:19:54 +00:00
docs: kdoc: don't reinvent string.strip()
process_proto_type() and process_proto_function() reinventing the strip() string method with a whole series of separate regexes; take all that out and just use strip(). The previous implementation also (in process_proto_type()) removed C++ comments *after* the above dance, leaving trailing whitespace in that case; now we do the stripping afterward. This results in exactly one output change: the removal of a spurious space in the definition of BACKLIGHT_POWER_REDUCED - see https://docs.kernel.org/gpu/backlight.html#c.backlight_properties. I note that we are putting semicolons after #define lines that really shouldn't be there - a task for another day. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
@@ -1567,17 +1567,9 @@ class KernelDoc:
|
||||
self.entry.prototype += r.group(1) + " "
|
||||
|
||||
if '{' in line or ';' in line or KernRe(r'\s*#\s*define').match(line):
|
||||
# strip comments
|
||||
r = KernRe(r'/\*.*?\*/')
|
||||
self.entry.prototype = r.sub('', self.entry.prototype)
|
||||
|
||||
# strip newlines/cr's
|
||||
r = KernRe(r'[\r\n]+')
|
||||
self.entry.prototype = r.sub(' ', self.entry.prototype)
|
||||
|
||||
# strip leading spaces
|
||||
r = KernRe(r'^\s+')
|
||||
self.entry.prototype = r.sub('', self.entry.prototype)
|
||||
# strip comments and surrounding spaces
|
||||
r = KernRe(r'/\*.*\*/')
|
||||
self.entry.prototype = r.sub('', self.entry.prototype).strip()
|
||||
|
||||
# Handle self.entry.prototypes for function pointers like:
|
||||
# int (*pcs_config)(struct foo)
|
||||
@@ -1600,17 +1592,8 @@ class KernelDoc:
|
||||
def process_proto_type(self, ln, line):
|
||||
"""Ancillary routine to process a type"""
|
||||
|
||||
# Strip newlines/cr's.
|
||||
line = KernRe(r'[\r\n]+', re.S).sub(' ', line)
|
||||
|
||||
# Strip leading spaces
|
||||
line = KernRe(r'^\s+', re.S).sub('', line)
|
||||
|
||||
# Strip trailing spaces
|
||||
line = KernRe(r'\s+$', re.S).sub('', line)
|
||||
|
||||
# Strip C99-style comments to the end of the line
|
||||
line = KernRe(r"\/\/.*$", re.S).sub('', line)
|
||||
# Strip C99-style comments and surrounding whitespace
|
||||
line = KernRe(r"//.*$", re.S).sub('', line).strip()
|
||||
|
||||
# To distinguish preprocessor directive from regular declaration later.
|
||||
if line.startswith('#'):
|
||||
|
||||
Reference in New Issue
Block a user