Class SetIterables
java.lang.Object
org.eclipse.collections.impl.utility.internal.SetIterables
public final class SetIterables extends Object
Set algebra operations.
Most operations are non-destructive, i.e. no input sets are modified during execution. The exception is operations ending in "Into." These accept the target collection of the final calculation as the first parameter.
-
Method Summary
Modifier and Type Method Description static <A, B> LazyIterable<Pair<A,B>>
cartesianProduct(SetIterable<A> set1, SetIterable<B> set2)
static <A, B, C> LazyIterable<C>
cartesianProduct(SetIterable<A> set1, SetIterable<B> set2, Function2<A,B,C> function)
static <E> MutableSet<E>
difference(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet)
static <E, R extends Set<E>>
RdifferenceInto(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet, R targetSet)
static <T> ImmutableSet<ImmutableSet<T>>
immutablePowerSet(Set<T> set)
Returns an Immutable version of powerset where the inner sets are also immutable.static <E> MutableSet<E>
intersect(SetIterable<? extends E> setA, SetIterable<? extends E> setB)
static <E, R extends Set<E>>
RintersectInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet)
static <E> boolean
isProperSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset)
static <E> boolean
isSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset)
static <T> MutableSet<MutableSet<T>>
powerSet(Set<T> set)
static <T> MutableSet<MutableSet<T>>
powerSet(UnifiedSetWithHashingStrategy<T> set)
static <E> MutableSet<E>
symmetricDifference(SetIterable<? extends E> setA, SetIterable<? extends E> setB)
static <E, R extends Set<E>>
RsymmetricDifferenceInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet)
static <E> MutableSet<E>
union(SetIterable<? extends E> setA, SetIterable<? extends E> setB)
static <E, R extends Set<E>>
RunionInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet)
-
Method Details
-
union
public static <E> MutableSet<E> union(SetIterable<? extends E> setA, SetIterable<? extends E> setB) -
unionInto
public static <E, R extends Set<E>> R unionInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) -
intersect
public static <E> MutableSet<E> intersect(SetIterable<? extends E> setA, SetIterable<? extends E> setB) -
intersectInto
public static <E, R extends Set<E>> R intersectInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) -
difference
public static <E> MutableSet<E> difference(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet) -
differenceInto
public static <E, R extends Set<E>> R differenceInto(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet, R targetSet) -
symmetricDifference
public static <E> MutableSet<E> symmetricDifference(SetIterable<? extends E> setA, SetIterable<? extends E> setB) -
symmetricDifferenceInto
public static <E, R extends Set<E>> R symmetricDifferenceInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) -
isSubsetOf
public static <E> boolean isSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset) -
isProperSubsetOf
public static <E> boolean isProperSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset) -
powerSet
-
powerSet
-
immutablePowerSet
Returns an Immutable version of powerset where the inner sets are also immutable. -
cartesianProduct
public static <A, B> LazyIterable<Pair<A,B>> cartesianProduct(SetIterable<A> set1, SetIterable<B> set2) -
cartesianProduct
public static <A, B, C> LazyIterable<C> cartesianProduct(SetIterable<A> set1, SetIterable<B> set2, Function2<A,B,C> function)
-