On Mon, 27 Jun 2022 17:20:21 GMT, Jonathan Gibbons <[email protected]> wrote:

>> It's not actually clear that `java.lang.model` has the info to provide this 
>> method, since the compact constructor is a syntactic form, that has 
>> disappeared by the time we get to the `ExecutableElement` for the 
>> constructor.  Sure, we could provide the method, but it's not clear we can 
>> detect the difference between the compact form and the use of explicit 
>> parameters.  I guess we could maybe put it on `Trees` if there is enough 
>> info on the AST, if it hasn't already been desugared away.
>> 
>> At some level, it comes down to ... do we allow the `@param` tags to be only 
>> omitted on the compact constructor (no args provided), or on the canonical 
>> constructor where the param names match the component names.
>
> Reading JLS 
> [8.10.4](https://docs.oracle.com/javase/specs/jls/se18/html/jls-8.html#jls-8.10.4)
>  we could suggest `isCanonicalConstructor` for `java.lang.model`, use that, 
> and ignore whether it is a compact t constructor or an explicitly declared 
> canonical constructor.

[JDK-8289249](https://bugs.openjdk.org/browse/JDK-8289249)

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

PR: https://git.openjdk.org/jdk19/pull/70

Reply via email to