hg: lambda/lambda/jdk: Update initial lambda APIs and tests to use new syntax.
Rémi Forax
forax at univ-mlv.fr
Sun Sep 11 04:52:59 PDT 2011
Hi all,
I've tried to fix some bugs of the current implementation of
java.util.functions.
- some constants are still public
(BTW, when the compiler will be able to generate the correct bytecode
for a lambda, these constants will be not needed any more
because constant lambda will be constant by default)
- a lot of generic signature aren't right and there is inconsistency
between the files.
- some casts are wrong, you can't cast a Predicate<? super T> to
a Predicate<T>, it's not safe.
- some methods return a Predicate<Object> instead of a
Predicate<T> so it will not work if the predicate is used by example
in a ?:
- some short cuts in the implementation are wrong (by example,
testing if there is an element in an iterable before creating
the lambda is wrong because the iterable can be populated
before the lambda is called.
- fix some implementations, BTW I think the methods xor should be removed
for the same reason there is no ^^ in C
(nobody use xor in test between booleans)
cheers,
Rémi
On 09/10/2011 03:49 AM, stuart.marks at oracle.com wrote:
> Changeset: d9e4e3c106a7
> Author: smarks
> Date: 2011-09-09 18:48 -0700
> URL: http://hg.openjdk.java.net/lambda/lambda/jdk/rev/d9e4e3c106a7
>
> Update initial lambda APIs and tests to use new syntax.
>
> ! src/share/classes/java/util/functions/Blocks.java
> ! src/share/classes/java/util/functions/Mappers.java
> ! src/share/classes/java/util/functions/Predicates.java
> ! src/share/classes/java/util/functions/Reducers.java
> ! test/java/util/Collection/Extensions.java
> ! test/java/util/Collection/MOAT.java
> ! test/java/util/List/Extensions.java
> ! test/java/util/functions/Block/BlocksTest.java
> ! test/java/util/functions/Mapper/MappersTest.java
> ! test/java/util/functions/Predicate/PredicatesTest.java
> ! test/java/util/functions/Reducer/ReducersTest.java
>
>
More information about the lambda-dev
mailing list