hg: lambda/lambda/jdk: remove copying of source collections of lambdas. Other typing improvments. Some source styling improvments.

Neal Gafter neal at gafter.com
Fri Aug 12 13:25:27 PDT 2011


Seeing the incorrect cast in code like this:

@SafeVarargs
public static <B extends Block<? super T>, T> Block<T> chain(
    B first, B... sequence) {
    Objects.requireNonNull(first);
    Objects.requireNonNull(sequence);
    if(0 == sequence.length) {
        return (Block<T>) first; // casting B to Block<T>.
    }

    return #{ T t ->
        first.apply(t);
        for(B block : sequence) block.apply(t);
    };
}

I suspect that you're hoping that Java never has reified generics?

Cheers,
Neal

On Fri, Aug 12, 2011 at 12:36 PM, <mike.duigou at oracle.com> wrote:

> Changeset: 7f47e03521ed
> Author:    mduigou
> Date:      2011-08-12 12:35 -0700
> URL:       http://hg.openjdk.java.net/lambda/lambda/jdk/rev/7f47e03521ed
>
> remove copying of source collections of lambdas. Other typing improvments.
> Some source styling improvments.
>
> ! src/share/classes/java/util/functions/Block.java
> ! src/share/classes/java/util/functions/Blocks.java
> ! src/share/classes/java/util/functions/Predicate.java
> ! src/share/classes/java/util/functions/Predicates.java
> ! src/share/classes/java/util/functions/Reducer.java
> ! test/java/util/functions/Block/BlocksTest.java
> ! test/java/util/functions/Predicate/PredicatesTest.java
>
>
>


More information about the lambda-dev mailing list