RFR: 8174222: LambdaMetafactory: validate inputs and improve documentation [v3]

Mandy Chung mchung at openjdk.java.net
Fri Jun 4 22:12:56 UTC 2021


On Fri, 4 Jun 2021 22:04:19 GMT, Dan Smith <dlsmith at openjdk.org> wrote:

>> Standardizes and better specifies the errors thrown by LambdaMetafactory, including for inputs that would not be generated by javac.
>> 
>> Does some renaming of core parameters/fields to better reflect their purpose.
>> 
>> In the implementation, stops using ACC_BRIDGE for any methods, which is not a good fit for what these methods do (they don't delegate to each other, but all invoke the same implementation method).
>
> Dan Smith has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Address reviewer comments

Can you also rename the parameter names in `java.lang.invoke.LambdaProxyClassArchive` methods to match the new ones?

src/java.base/share/classes/java/lang/invoke/LambdaMetafactory.java line 312:

> 310:      * @return a CallSite whose target can be used to perform capture, generating
> 311:      *         instances of the interface named by {@code factoryType}
> 312:      * @throws LambdaConversionException If {@code caller} does not have full privilege

Suggestion:

     * @throws LambdaConversionException If {@code caller} does not have {@linkplain Lookup#hasFullPrivilegeAccess full privilege}

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

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


More information about the core-libs-dev mailing list