Hello all;

I have updated the proposed patch. The changes primarily add class and method 
documentation regarding handling of null for the primitive specializations.

http://cr.openjdk.java.net/~mduigou/8004015/1/webrev/
http://cr.openjdk.java.net/~mduigou/8004015/1/specdiff/java/util/function/package-summary.html

I've also reformatted the source for the default methods.

Mike


On Nov 26 2012, at 18:12 , Mike Duigou wrote:

> Hello all;
> 
> In the original patch which added the basic lambda functional interfaces, 
> CR#8001634 [1], none of the interfaces extended other interfaces. The reason 
> was primarily that the javac compiler did not, at the time that 8001634 was 
> proposed, support extension methods. The compiler now supports adding of 
> method defaults so this patch improves the functional interfaces by filing in 
> the inheritance hierarchy. 
> 
> Adding the parent interfaces and default methods allows each functional 
> interface to be used in more places. It is especially important for the 
> functional interfaces which support primitive types, IntSupplier, 
> IntFunction, IntUnaryOperator, IntBinaryOperator, etc. We expect that 
> eventually standard implementations of these interfaces will be provided for 
> functions like max, min, sum, etc. By extending the reference oriented 
> functional interfaces such as Function, the primitive implementations can be 
> used with the boxed primitive types along with the primitive types for which 
> they are defined.
> 
> The patch to add parent interfaces and default methods can be found here:
> 
> http://cr.openjdk.java.net/~mduigou/8004015/0/webrev/
> http://cr.openjdk.java.net/~mduigou/8004015/0/specdiff/java/util/function/package-summary.html
> 
> Mike
> 
> [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c2e80176a697

Reply via email to