diff --git a/eclipse-collections-api/src/main/java/org/eclipse/collections/api/RichIterable.java b/eclipse-collections-api/src/main/java/org/eclipse/collections/api/RichIterable.java index f83dcf62b1..5f58a4c783 100644 --- a/eclipse-collections-api/src/main/java/org/eclipse/collections/api/RichIterable.java +++ b/eclipse-collections-api/src/main/java/org/eclipse/collections/api/RichIterable.java @@ -210,7 +210,7 @@ default boolean containsBy( /** * Returns true if any of the elements in source is contained in this collection. * - * @since 11.0 + * @since 11.1 */ default boolean containsAny(Collection source) { @@ -221,7 +221,7 @@ default boolean containsAny(Collection source) /** * Returns true if none of the elements in source are contained in this collection. * - * @since 11.0 + * @since 11.1 */ default boolean containsNone(Collection source) { @@ -232,7 +232,7 @@ default boolean containsNone(Collection source) /** * Returns true if any of the elements in source is contained in this collection. * - * @since 11.0 + * @since 11.1 */ default boolean containsAnyIterable(Iterable source) { @@ -243,7 +243,7 @@ default boolean containsAnyIterable(Iterable source) /** * Returns true if none of the elements in source are contained in this collection. * - * @since 11.0 + * @since 11.1 */ default boolean containsNoneIterable(Iterable source) { diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/synchronizedPrimitiveObjectMap.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/synchronizedPrimitiveObjectMap.stg index a280e9e2e6..0e07e3b1a0 100644 --- a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/synchronizedPrimitiveObjectMap.stg +++ b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/synchronizedPrimitiveObjectMap.stg @@ -435,6 +435,42 @@ public class SynchronizedObjectMap\ } } + @Override + public boolean containsNoneIterable(Iterable\ source) + { + synchronized (this.lock) + { + return this.map.containsNoneIterable(source); + } + } + + @Override + public boolean containsNone(Collection\ source) + { + synchronized (this.lock) + { + return this.map.containsNone(source); + } + } + + @Override + public boolean containsAnyIterable(Iterable\ source) + { + synchronized (this.lock) + { + return this.map.containsAnyIterable(source); + } + } + + @Override + public boolean containsAny(Collection\ source) + { + synchronized (this.lock) + { + return this.map.containsAny(source); + } + } + @Override public boolean containsAllArguments(Object... elements) { diff --git a/eclipse-collections-code-generator/src/main/resources/test/map/abstractPrimitiveObjectMapTestCase.stg b/eclipse-collections-code-generator/src/main/resources/test/map/abstractPrimitiveObjectMapTestCase.stg index 7a4e1a90f7..152a655dbf 100644 --- a/eclipse-collections-code-generator/src/main/resources/test/map/abstractPrimitiveObjectMapTestCase.stg +++ b/eclipse-collections-code-generator/src/main/resources/test/map/abstractPrimitiveObjectMapTestCase.stg @@ -1385,6 +1385,38 @@ public abstract class AbstractObjectMapTestCase Assert.assertFalse(this.classUnderTest().containsAll(FastList.newListWith("two", "one", "nine"))); } + @Test + public void containsAnyIterable() + { + Assert.assertTrue(this.classUnderTest().containsAnyIterable(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertTrue(this.classUnderTest().containsAnyIterable(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertFalse(this.classUnderTest().containsAnyIterable(FastList.newListWith("none"))); + } + + @Test + public void containsAny() + { + Assert.assertTrue(this.classUnderTest().containsAny(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertTrue(this.classUnderTest().containsAny(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertFalse(this.classUnderTest().containsAny(FastList.newListWith("none"))); + } + + @Test + public void containsNoneIterable() + { + Assert.assertFalse(this.classUnderTest().containsNoneIterable(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertFalse(this.classUnderTest().containsNoneIterable(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertTrue(this.classUnderTest().containsNoneIterable(FastList.newListWith("none"))); + } + + @Test + public void containsNone() + { + Assert.assertFalse(this.classUnderTest().containsNone(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertFalse(this.classUnderTest().containsNone(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertTrue(this.classUnderTest().containsNone(FastList.newListWith("none"))); + } + @Test public void containsAllArguments() { diff --git a/eclipse-collections-code-generator/src/main/resources/test/map/immutable/immutablePrimitiveObjectEmptyMapTest.stg b/eclipse-collections-code-generator/src/main/resources/test/map/immutable/immutablePrimitiveObjectEmptyMapTest.stg index 6fc20f6ec9..50b60843d1 100644 --- a/eclipse-collections-code-generator/src/main/resources/test/map/immutable/immutablePrimitiveObjectEmptyMapTest.stg +++ b/eclipse-collections-code-generator/src/main/resources/test/map/immutable/immutablePrimitiveObjectEmptyMapTest.stg @@ -1,4 +1,4 @@ -import "copyright.stg" +import "copyrightAndOthers.stg" import "primitiveHashCode.stg" import "primitiveLiteral.stg" @@ -15,7 +15,7 @@ class(primitive) ::= << >> body(type, name) ::= << - + package org.eclipse.collections.impl.map.immutable.primitive; @@ -119,6 +119,50 @@ public class ImmutableObjectEmptyMapTest extends AbstractImmutableOb Assert.assertTrue(this.classUnderTest().containsAll(FastList.newListWith())); } + @Override + @Test + public void containsAnyIterable() + { + Assert.assertFalse(this.classUnderTest().containsAnyIterable(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertFalse(this.classUnderTest().containsAnyIterable(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertFalse(this.classUnderTest().containsAnyIterable(FastList.newListWith("zero", "one", "thirtyTwo"))); + Assert.assertFalse(this.classUnderTest().containsAnyIterable(FastList.newListWith("two", "one", "nine"))); + Assert.assertFalse(this.classUnderTest().containsAnyIterable(FastList.newListWith())); + } + + @Override + @Test + public void containsAny() + { + Assert.assertFalse(this.classUnderTest().containsAny(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertFalse(this.classUnderTest().containsAny(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertFalse(this.classUnderTest().containsAny(FastList.newListWith("zero", "one", "thirtyTwo"))); + Assert.assertFalse(this.classUnderTest().containsAny(FastList.newListWith("two", "one", "nine"))); + Assert.assertFalse(this.classUnderTest().containsAny(FastList.newListWith())); + } + + @Override + @Test + public void containsNoneIterable() + { + Assert.assertTrue(this.classUnderTest().containsNoneIterable(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertTrue(this.classUnderTest().containsNoneIterable(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertTrue(this.classUnderTest().containsNoneIterable(FastList.newListWith("zero", "one", "thirtyTwo"))); + Assert.assertTrue(this.classUnderTest().containsNoneIterable(FastList.newListWith("two", "one", "nine"))); + Assert.assertTrue(this.classUnderTest().containsNoneIterable(FastList.newListWith())); + } + + @Override + @Test + public void containsNone() + { + Assert.assertTrue(this.classUnderTest().containsNone(FastList.newListWith("zero", "thirtyOne"))); + Assert.assertTrue(this.classUnderTest().containsNone(FastList.newListWith("zero", "thirtyOne", "thirtyTwo"))); + Assert.assertTrue(this.classUnderTest().containsNone(FastList.newListWith("zero", "one", "thirtyTwo"))); + Assert.assertTrue(this.classUnderTest().containsNone(FastList.newListWith("two", "one", "nine"))); + Assert.assertTrue(this.classUnderTest().containsNone(FastList.newListWith())); + } + @Override @Test public void containsAllArguments() diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/AbstractSynchronizedRichIterable.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/AbstractSynchronizedRichIterable.java index 8443d311df..125aca3001 100644 --- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/AbstractSynchronizedRichIterable.java +++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/AbstractSynchronizedRichIterable.java @@ -219,6 +219,42 @@ public boolean contains(Object o) } } + @Override + public boolean containsAny(Collection source) + { + synchronized (this.lock) + { + return this.delegate.containsAny(source); + } + } + + @Override + public boolean containsNone(Collection source) + { + synchronized (this.lock) + { + return this.delegate.containsNone(source); + } + } + + @Override + public boolean containsAnyIterable(Iterable source) + { + synchronized (this.lock) + { + return this.delegate.containsAnyIterable(source); + } + } + + @Override + public boolean containsNoneIterable(Iterable source) + { + synchronized (this.lock) + { + return this.delegate.containsNoneIterable(source); + } + } + @Override public boolean containsAllIterable(Iterable source) { diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/mutable/AbstractUnmodifiableMutableCollection.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/mutable/AbstractUnmodifiableMutableCollection.java index ea0f1fe99f..f66ccdfc5a 100644 --- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/mutable/AbstractUnmodifiableMutableCollection.java +++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/collection/mutable/AbstractUnmodifiableMutableCollection.java @@ -241,6 +241,30 @@ public

void forEachWith(Procedure2 procedure, P parame this.getMutableCollection().forEachWith(procedure, parameter); } + @Override + public boolean containsAny(Collection source) + { + return this.getMutableCollection().containsAny(source); + } + + @Override + public boolean containsNone(Collection source) + { + return this.getMutableCollection().containsNone(source); + } + + @Override + public boolean containsAnyIterable(Iterable source) + { + return this.getMutableCollection().containsAnyIterable(source); + } + + @Override + public boolean containsNoneIterable(Iterable source) + { + return this.getMutableCollection().containsNoneIterable(source); + } + @Override public boolean containsAllIterable(Iterable source) { diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/SynchronizedStack.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/SynchronizedStack.java index edbe25a671..8e6a3c9101 100644 --- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/SynchronizedStack.java +++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/SynchronizedStack.java @@ -730,6 +730,42 @@ public boolean containsAll(Collection source) } } + @Override + public boolean containsAny(Collection source) + { + synchronized (this.lock) + { + return this.delegate.containsAny(source); + } + } + + @Override + public boolean containsNone(Collection source) + { + synchronized (this.lock) + { + return this.delegate.containsNone(source); + } + } + + @Override + public boolean containsAnyIterable(Iterable source) + { + synchronized (this.lock) + { + return this.delegate.containsAnyIterable(source); + } + } + + @Override + public boolean containsNoneIterable(Iterable source) + { + synchronized (this.lock) + { + return this.delegate.containsNoneIterable(source); + } + } + @Override public boolean containsAllArguments(Object... elements) {