hg: lambda/lambda/langtools: Enhancement: add support for array constructor references

Paul Benedict pbenedict at apache.org
Mon Jan 7 07:18:13 PST 2013


Just displaying my ignorance here :-) I never knew this. Thanks.

On Mon, Jan 7, 2013 at 9:16 AM, Maurizio Cimadamore
<maurizio.cimadamore at oracle.com> wrote:
> On 07/01/13 16:15, Paul Benedict wrote:
>>
>> Maurizio,
>>
>> I must have missed something in the development of the spec.
>> Primitives as a type parameter are new. Is it just for primitive
>> arrays?
>
> Not sure what you mean - primitive arrays have always been allowed as
> type-parameters of a generic class.
>
> Maurizio
>
>>
>> Paul
>>
>> On Mon, Jan 7, 2013 at 7:13 AM,  <maurizio.cimadamore at oracle.com> wrote:
>>>
>>> Changeset: 767ba50fb4b2
>>> Author:    mcimadamore
>>> Date:      2013-01-07 14:12 +0100
>>> URL:
>>> http://hg.openjdk.java.net/lambda/lambda/langtools/rev/767ba50fb4b2
>>>
>>> Enhancement: add support for array constructor references
>>> Example:
>>>
>>> interface ArrayFactory<X> {
>>>      X make(int size); //descriptor must accept an 'int' parameter (array
>>> size)
>>> }
>>>
>>> ArrayFactory<int[][]> factory = int[][]::new;
>>> int[][] i_arr = factory.make(5);
>>>
>>> ! src/share/classes/com/sun/tools/javac/comp/Check.java
>>> ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java
>>> ! src/share/classes/com/sun/tools/javac/comp/LegacyInfer.java
>>> ! src/share/classes/com/sun/tools/javac/comp/Resolve.java
>>> ! src/share/classes/com/sun/tools/javac/tree/JCTree.java
>>> + test/tools/javac/lambda/MethodReference59.java
>>> + test/tools/javac/lambda/MethodReference60.java
>>> + test/tools/javac/lambda/MethodReference60.out
>>>
>>>
>


More information about the lambda-dev mailing list