Re: [PATCH] kernel-doc: extend $type_param to match members referenced by pointer

From: Mike Rapoport
Date: Wed Nov 07 2018 - 11:45:59 EST


On Wed, Nov 07, 2018 at 05:00:08PM +0200, Mike Rapoport wrote:
> Currently, function parameter description can match '@type.member'
> expressions but fails to match '@type->member'.
> Extend the $type_param regex to allow matching both
>
> Signed-off-by: Mike Rapoport <rppt@xxxxxxxxxxxxx>
> ---

It seems I've really screwed up with the whitespace here :(
v2 is on the way, sorry for the noise.

> scripts/kernel-doc | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/kernel-doc b/scripts/kernel-doc
> index ffbe901..3ce8800 100755
> --- a/scripts/kernel-doc
> +++ b/scripts/kernel-doc
> @@ -212,7 +212,7 @@ my $anon_struct_union = 0;
> my $type_constant = '\b``([^\`]+)``\b';
> my $type_constant2 = '\%([-_\w]+)';
> my $type_func = '(\w+)\(\)';
> -my $type_param = '\@(\w*(\.\w+)*(\.\.\.)?)';
> +my $type_param = '\@(\w*((\.\w+)|(->\w+))*(\.\.\.)?)';
> my $type_fp_param = '\@(\w+)\(\)'; # Special RST handling for func ptr params
> my $type_env = '(\$\w+)';
> my $type_enum = '\&(enum\s*([_\w]+))';
> @@ -361,7 +361,7 @@ my $doc_com = '\s*\*\s*';
> my $doc_com_body = '\s*\* ?';
> my $doc_decl = $doc_com . '(\w+)';
> # @params and a strictly limited set of supported section names
> -my $doc_sect = $doc_com .
> +my $doc_sect = $doc_com .
> '\s*(\@[.\w]+|\@\.\.\.|description|context|returns?|notes?|examples?)\s*:(.*)';
> my $doc_content = $doc_com_body . '(.*)';
> my $doc_block = $doc_com . 'DOC:\s*(.*)?';
> @@ -751,7 +751,7 @@ sub output_blockhead_rst(%) {
>
> #
> # Apply the RST highlights to a sub-block of text.
> -#
> +#
> sub highlight_block($) {
> # The dohighlight kludge requires the text be called $contents
> my $contents = shift;
> --
> 2.7.4
>

--
Sincerely yours,
Mike.