On Wed, 12 Jan 2022 08:40:08 GMT, Hannes Wallnöfer <hann...@openjdk.org> wrote:

> Please review a change in how documentation from `@param` tags is generated. 
> 
> The old code generates parameter documentation for each `@param` in the order 
> in which the tags occur in the comment, then adds documentation from 
> inherited `@param` tags for undocumented parameters. 
> 
> The new code always generates documentation in the order in which actual 
> parameters are declared in the code, using local or inherited `@param` tags 
> as appropriate. Any `@param` tags that do not have a matching parameter are 
> added afterwards.
> 
> Note that `@param` is not just used for parameters of executable members but 
> also type parameters and record components. The second commit of this PR 
> fixes a `ClassCastException` for these uses that was caused by the first 
> commit and adds a few tests for it.

test/langtools/jdk/javadoc/doclet/testParamTaglet/TestParamTaglet.java line 63:

> 61:                     </dl>""",
> 62:                 // Param tags that don't match with any real parameters.
> 63:                 // {@inherit} doc misuse does not cause doclet to throw 
> exception.

Should we change this to `{@inheritDoc}`?

test/langtools/jdk/javadoc/doclet/testParamTaglet/pkg/C.java line 50:

> 48:      * @param b another duplicate
> 49:      */
> 50:     public void unorderedParams(int i, double d, boolean b) {}

Consider adding `@Override` to this method and to `nonMatchingParams`.

test/langtools/jdk/javadoc/doclet/testParamTaglet/pkg/C.java line 59:

> 57:      * @param t3 param 3
> 58:      */
> 59:     public static <T1, T2, T3> void genericMethod(T1 t1, T2 t2, T3 t3) {

You use `{}` to denote an empty body everywhere else in this file. Is there a 
reason you split it into two lines here?

-------------

PR: https://git.openjdk.java.net/jdk/pull/7046

Reply via email to