OpenJDK / portola / portola
changeset 20476:2d01671506ba
8023339: Refined Collection.removeIf UOE conditions
Reviewed-by: mduigou
Contributed-by: paul.sandoz@oracle.com
author | mduigou |
---|---|
date | Fri, 27 Sep 2013 13:30:31 -0700 |
parents | a649487986eb |
children | f7a1f6688508 |
files | jdk/src/share/classes/java/util/Collection.java jdk/test/java/util/Collection/MOAT.java |
diffstat | 2 files changed, 12 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/jdk/src/share/classes/java/util/Collection.java Fri Sep 27 10:21:04 2013 -0700 +++ b/jdk/src/share/classes/java/util/Collection.java Fri Sep 27 13:30:31 2013 -0700 @@ -379,8 +379,8 @@ /** * Removes all of the elements of this collection that satisfy the given - * predicate. Errors or runtime exceptions thrown by the predicate are - * relayed to the caller. + * predicate. Errors or runtime exceptions thrown during iteration or by + * the predicate are relayed to the caller. * * @implSpec * The default implementation traverses all elements of the collection using @@ -393,9 +393,10 @@ * removed * @return {@code true} if any elements were removed * @throws NullPointerException if the specified filter is null - * @throws UnsupportedOperationException if the {@code remove} - * method is not supported by this collection's - * {@link #iterator} + * @throws UnsupportedOperationException if elements cannot be removed + * from this collection. Implementations may throw this exception if a + * matching element cannot be removed or if, in general, removal is not + * supported. * @since 1.8 */ default boolean removeIf(Predicate<? super E> filter) {
--- a/jdk/test/java/util/Collection/MOAT.java Fri Sep 27 10:21:04 2013 -0700 +++ b/jdk/test/java/util/Collection/MOAT.java Fri Sep 27 13:30:31 2013 -0700 @@ -207,8 +207,8 @@ new Fun(){void f(){ it.next(); }}); try { it.remove(); } - catch (IllegalStateException _) { pass(); } - catch (UnsupportedOperationException _) { pass(); } + catch (IllegalStateException ignored) { pass(); } + catch (UnsupportedOperationException ignored) { pass(); } catch (Throwable t) { unexpected(t); } if (rnd.nextBoolean()) @@ -280,9 +280,9 @@ testEmptyCollection(m.values()); try { check(! m.containsValue(null)); } - catch (NullPointerException _) { /* OK */ } + catch (NullPointerException ignored) { /* OK */ } try { check(! m.containsKey(null)); } - catch (NullPointerException _) { /* OK */ } + catch (NullPointerException ignored) { /* OK */ } check(! m.containsValue(1)); check(! m.containsKey(1)); } @@ -710,8 +710,8 @@ l.addAll(-1, Collections.<Integer>emptyList()); fail("Expected IndexOutOfBoundsException not thrown"); } - catch (UnsupportedOperationException _) {/* OK */} - catch (IndexOutOfBoundsException _) {/* OK */} + catch (UnsupportedOperationException ignored) {/* OK */} + catch (IndexOutOfBoundsException ignored) {/* OK */} catch (Throwable t) { unexpected(t); } // equal(l instanceof Serializable,