Package com.ibm.wala.util.intset
Class OrdinalSet<T>
- java.lang.Object
-
- com.ibm.wala.util.intset.OrdinalSet<T>
-
-
Constructor Summary
Constructors Constructor Description OrdinalSet(@Nullable IntSet S, @Nullable OrdinalSetMapping<T> mapping)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancontains(T object)booleancontainsAny(OrdinalSet<T> that)static <T> OrdinalSet<T>empty()static <T> booleanequals(OrdinalSet<T> a, OrdinalSet<T> b)@Nullable IntSetgetBackingSet()Dangerous.@Nullable OrdinalSetMapping<T>getMapping()static <T> OrdinalSet<T>intersect(OrdinalSet<T> A, OrdinalSet<T> B)booleanisEmpty()Iterator<T>iterator()SparseIntSetmakeSparseCopy()intsize()static <T> Collection<T>toCollection(OrdinalSet<T> instances)static <T> OrdinalSet<T>toOrdinalSet(Collection<T> c, OrdinalSetMapping<T> m)Precondition: the ordinal set mapping has an index for every element of c Convert a "normal" collection to an OrdinalSet, based on the given mapping.StringtoString()static <T> OrdinalSet<T>unify(OrdinalSet<T> A, OrdinalSet<T> B)Creates the union of two ordinal sets.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Constructor Detail
-
OrdinalSet
public OrdinalSet(@Nullable IntSet S, @Nullable OrdinalSetMapping<T> mapping)
-
-
Method Detail
-
empty
public static <T> OrdinalSet<T> empty()
-
containsAny
public boolean containsAny(OrdinalSet<T> that)
-
size
public int size()
-
intersect
public static <T> OrdinalSet<T> intersect(OrdinalSet<T> A, OrdinalSet<T> B)
- Returns:
- a new OrdinalSet instances
- Throws:
IllegalArgumentException- if A is null
-
equals
public static <T> boolean equals(OrdinalSet<T> a, OrdinalSet<T> b)
- Returns:
- true if the contents of two sets are equal
-
unify
public static <T> OrdinalSet<T> unify(OrdinalSet<T> A, OrdinalSet<T> B)
Creates the union of two ordinal sets.- Parameters:
A- ordinal set aB- ordinal set b- Returns:
- union of a and b
- Throws:
IllegalArgumentException- iff A or B is null
-
makeSparseCopy
public SparseIntSet makeSparseCopy()
-
getBackingSet
public @Nullable IntSet getBackingSet()
Dangerous. Added for performance reasons. Use this only if you really know what you are doing.
-
contains
@NullUnmarked public boolean contains(T object)
- Returns:
- true iff this set contains object
-
isEmpty
public boolean isEmpty()
-
toCollection
public static <T> Collection<T> toCollection(OrdinalSet<T> instances)
- Throws:
NullPointerException- if instances is null
-
toOrdinalSet
public static <T> OrdinalSet<T> toOrdinalSet(Collection<T> c, OrdinalSetMapping<T> m)
Precondition: the ordinal set mapping has an index for every element of c Convert a "normal" collection to an OrdinalSet, based on the given mapping.- Throws:
IllegalArgumentException- if c is null
-
getMapping
public @Nullable OrdinalSetMapping<T> getMapping()
-
-