RFR(s): 8060192: Add default method Collection.toArray(generator) (original) (raw)
Jonathan Bluett-Duncan jbluettduncan at gmail.com
Thu Dec 7 23:50:17 UTC 2017
- Previous message: RFR(s): 8060192: Add default method Collection.toArray(generator)
- Next message: RFR(s): 8060192: Add default method Collection.toArray(generator)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi Stuart,
Looking over
http://cr.openjdk.java.net/~smarks/reviews/8060192/webrev.2/src/java.base/share/classes/java/util/ArrayList.java.cdiff.html,
I'm wondering if the method ArrayList.toArray(IntFunction)
should have an
@Override
to make it clear that it's overriding the default method in
Collection. What do you think?
Cheers, Jonathan
On 7 December 2017 at 22:58, Stuart Marks <stuart.marks at oracle.com> wrote:
[Martin: please review changes to the JSR 166 TCK.]
Another updated webrev for this changeset: http://cr.openjdk.java.net/~smarks/reviews/8060192/webrev.2/ This includes an override of toArray(IntFunction) in the implementation of Arrays.asList(), as requested by Tagir Valeev. Overrides are also added for various wrapper classes in j.u.Collections. Turns out there's a test test/jdk/java/util/Collections/Wrappers.java that checks to ensure that the wrappers don't inherit any default methods. (This has been a source of bugs in the past.) Significantly, this webrev also includes changes to several tests in the JSR 166 TCK. The issue is that these tests have cases for null handling, where they call coll.toArray(null) to ensure that NPE is thrown. Given that this method is now overloaded: toArray(T[]) toArray(IntFunction) passing null is now ambiguous and thus generates a compiler error. I've modified the tests to call toArray((Object[])null) which is a bit of a stopgap. I can't think of anything obviously better to do, though. s'marks
- Previous message: RFR(s): 8060192: Add default method Collection.toArray(generator)
- Next message: RFR(s): 8060192: Add default method Collection.toArray(generator)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]