public class CollectionUtil
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static <E> java.util.Collection<E> |
append(java.util.Collection<E> self,
E object)
Implementation of the OCL
OrderedSet::append(object : T) : OrderedSet(T)
Sequence::append(object : T) : Sequence(T)
operations.
|
static <E> Bag<E> |
asBag(java.util.Collection<E> self)
Implementation of the OCL
Set::asBag() : Bag(T)
Bag::asBag() : Bag(T)
Sequence::asBag() : Bag(T)
operations.
|
static <E> java.util.LinkedHashSet<E> |
asOrderedSet(java.util.Collection<E> self)
Implementation of the OCL
Set::asOrderedSet() : OrderedSet(T)
Bag::asOrderedSet() : OrderedSet(T)
Sequence::asOrderedSet() : OrderedSet(T)
operations.
|
static <E> java.util.List<E> |
asSequence(java.util.Collection<E> self)
Implementation of the OCL
Set::asSequence() : Sequence(T)
Bag::asSequence() : Sequence(T)
Sequence::asSequence() : Sequence(T)
operations.
|
static <E> java.util.Set<E> |
asSet(java.util.Collection<E> self)
Implementation of the OCL
Set::asSet() : Set(T)
Bag::asSet() : Set(T)
Sequence::asSet() : Set(T)
operations.
|
static <E> E |
at(java.util.Collection<E> self,
int index)
Implementation of the OCL
OrderedSet::at(index : Integer) : T
Sequence::at(index : Integer) : T
operations.
|
static int |
count(java.util.Collection<?> self,
java.lang.Object object)
Implementation of the OCL
Collection::count(object : T) : Integer
operation.
|
static <E> Bag<E> |
createNewBag()
Creates a new OCL Bag.
|
static <E> Bag<E> |
createNewBag(java.util.Collection<? extends E> c)
Creates a new OCL Bag with initial contents supplied.
|
static <E> java.util.Collection<E> |
createNewCollection(java.util.Collection<? extends E> c)
Creates a new OCL collection of the same kind and contents as the
specified prototype.
|
static <E> java.util.Collection<E> |
createNewCollection(CollectionKind kind)
Creates a new OCL Collection of the specified kind.
|
static <E> java.util.Collection<E> |
createNewCollection(CollectionKind kind,
java.util.Collection<E> c)
Creates a new OCL Collection of the specified kind.
|
static <E> java.util.Collection<E> |
createNewCollectionOfSameKind(java.util.Collection<?> c)
Creates a new, empty OCL collection of the same kind as the specified
prototype.
|
static <E> java.util.LinkedHashSet<E> |
createNewOrderedSet()
Creates a new OCL OrderedSet.
|
static <E> java.util.LinkedHashSet<E> |
createNewOrderedSet(java.util.Collection<? extends E> c)
Creates a new OCL OrderedSet with initial contents supplied.
|
static <E> java.util.List<E> |
createNewSequence()
Creates a new OCL Sequence.
|
static <E> java.util.List<E> |
createNewSequence(java.util.Collection<? extends E> c)
Creates a new OCL Sequence with initial contents supplied.
|
static <E> java.util.Set<E> |
createNewSet()
Creates a new OCL Set.
|
static <E> java.util.Set<E> |
createNewSet(java.util.Collection<? extends E> c)
Creates a new OCL Set with initial contents supplied.
|
static boolean |
equals(java.util.Collection<?> self,
java.util.Collection<?> c)
Implementation of the OCL
Set::=(set : Set(T)) : Boolean
OrderedSet::=(set : OrderedSet(T)) : Boolean
Bag::=(bag : Bag(T)) : Boolean
Sequence::=(s : Sequence(T)) : Boolean
operations.
|
static boolean |
excludes(java.util.Collection<?> self,
java.lang.Object object)
Implementation of the OCL
Collection::excludes(object : T) : Boolean
operation.
|
static boolean |
excludesAll(java.util.Collection<?> self,
java.util.Collection<?> c)
Implementation of the OCL
Collection::excludesAll(c : Collection(T)) : Boolean
operation.
|
static <E> java.util.Collection<E> |
excluding(java.util.Collection<E> self,
java.lang.Object object)
Implementation of the OCL
Set::excluding(object : T) : Set(T)
Bag::excluding(object : T) : Bag(T)
Sequence::excluding(object : T) : Sequence(T)
operations.
|
static <E> E |
first(java.util.Collection<E> self)
Implementation of the OCL
OrderedSet::first() : T
Sequence::first() : T
operations.
|
static java.util.Collection<?> |
flatten(java.util.Collection<?> self)
Implementation of the OCL
Set::flatten() : Set(T2)
Bag::flatten() : Bag(T2)
Sequence::flatten() : Sequence(T2)
operations.
|
static <C> C |
getFlattenedElementType(CollectionType<C,?> type)
Obtains the type of the flattened form of the specified collection type.
|
static int |
hashCode(java.util.Collection<?> c)
Computes the hash of a collection, accounting for the similar hashing of
primitive numeric values that OCL considers equal but Java does not.
|
static boolean |
includes(java.util.Collection<?> self,
java.lang.Object object)
Implementation of the OCL
Collection::includes(object : T) : Boolean
operation.
|
static boolean |
includesAll(java.util.Collection<?> self,
java.util.Collection<?> c)
Implementation of the OCL
Collection::includesAll(c : Collection(T)) : Boolean
operation.
|
static <E> java.util.Collection<E> |
including(java.util.Collection<E> self,
E object)
Implementation of the OCL
Set::including(object : T) : Set(T)
Bag::including(object : T) : Bag(T)
Sequence::including(object : T) : Sequence(T)
operations.
|
static <E> java.lang.Integer |
indexOf(java.util.Collection<? extends E> self,
E object)
Implementation of the OCL
OrderedSet::indexOf(object : T) : Integer
Sequence::indexOf(object : T) : Integer
operations.
|
static <E> java.util.Collection<E> |
insertAt(java.util.Collection<E> self,
int index,
E object)
Implementation of the OCL
OrderedSet::insertAt(index : Integer, object : T) : OrderedSet(T)
Sequence::insertAt(index : Integer, object : T) : Sequence(T)
operations.
|
static <E> java.util.Collection<E> |
intersection(java.util.Collection<? extends E> self,
java.util.Collection<? extends E> c)
Implementation of the OCL
Set::intersection(set : Set(T)) : Set(T)
Set::intersection(bag : Bag(T)) : Set(T)
Bag::intersection(set : Set(T)) : Set(T)
Bag::intersection(bag : Bag(T)) : Set(T)
operations.
|
static boolean |
isEmpty(java.util.Collection<?> self)
Implementation of the OCL
Collection::isEmpty() : Boolean
operation.
|
static <E> E |
last(java.util.Collection<E> self)
Implementation of the OCL
OrderedSet::lset() : T
Sequence::lset() : T
operations.
|
static java.lang.Object |
max(java.util.Collection<?> self)
Implementation of the OCL
Collection::max() : T
operation.
|
static java.lang.Object |
min(java.util.Collection<?> self)
Implementation of the OCL
Collection::min() : T
operation.
|
static <E> java.util.Set<E> |
minus(java.util.Set<? extends E> self,
java.util.Set<? extends E> set)
Implementation of the OCL
Set::-(set : Set(T)) : Set(T)
operation.
|
static boolean |
notEmpty(java.util.Collection<?> self)
Implementation of the OCL
Collection::notEmpty() : Boolean
operation.
|
static <E> java.util.Collection<E> |
prepend(java.util.Collection<E> self,
E object)
Implementation of the OCL
OrderedSet::prepend(object : T) : OrderedSet(T)
Sequence::prepend(object : T) : Sequence(T)
operations.
|
static <PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> |
product(EvaluationEnvironment<C,O,P,CLS,E> evalEnv,
Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> env,
java.util.Collection<?> self,
java.util.Collection<?> c,
C tupleType)
Implementation of the OCL
Collection::product(c : Collection(T2)) : Set(Tuple(first : T, second : T2))
operations.
|
static <E> java.util.Collection<E> |
subOrderedSet(java.util.Collection<E> self,
int lower,
int upper)
Implementation of the OCL
OrderedSet::subOrderedSet(lower : Integer, upper : Integer) : OrderedSet(T)
operation.
|
static <E> java.util.Collection<E> |
subSequence(java.util.Collection<E> self,
int lower,
int upper)
Implementation of the OCL
Sequence::subSequence(lower : Integer, upper : Integer) : Sequence(T)
operation.
|
static java.lang.Object |
sum(java.util.Collection<?> self)
Implementation of the OCL
Collection::sum() : T
operation.
|
static <E> java.util.Set<E> |
symmetricDifference(java.util.Set<? extends E> self,
java.util.Set<? extends E> set)
Implementation of the OCL
Set::symmetricDifference(set : Set(T)) : Set(T)
operation.
|
static java.lang.String |
toString(java.util.Collection<?> c)
Computes the string representation of a collection value using syntax
like OCL's collection literals (e.g., OrderedSet{...}) instead
of Java's default (i.e., [...]).
|
static <E> java.util.Collection<E> |
union(java.util.Collection<? extends E> self,
java.util.Collection<? extends E> c)
Implementation of the OCL
Set::union(set : Set(T)) : Set(T)
Set::union(bag : Bag(T)) : Bag(T)
Bag::union(set : Set(T)) : Bag(T)
Bag::union(bag : Bag(T)) : Bag(T)
Sequence::union(s : Sequence(T)) : Sequence(T)
operations.
|
public static boolean includes(java.util.Collection<?> self, java.lang.Object object)
self
- the source collectionobject
- an objectpublic static boolean excludes(java.util.Collection<?> self, java.lang.Object object)
self
- the source collectionobject
- an objectpublic static int count(java.util.Collection<?> self, java.lang.Object object)
self
- the source collectionobject
- an objectpublic static boolean includesAll(java.util.Collection<?> self, java.util.Collection<?> c)
self
- the source collectionc
- another collectionpublic static boolean excludesAll(java.util.Collection<?> self, java.util.Collection<?> c)
self
- the source collectionc
- another collectionpublic static boolean isEmpty(java.util.Collection<?> self)
self
- the source collectionpublic static java.lang.Object max(java.util.Collection<?> self)
self
- the source collectionpublic static java.lang.Object min(java.util.Collection<?> self)
self
- the source collectionpublic static boolean notEmpty(java.util.Collection<?> self)
self
- the source collectionpublic static java.lang.Object sum(java.util.Collection<?> self)
self
- the source collectionpublic static boolean equals(java.util.Collection<?> self, java.util.Collection<?> c)
self
- the source collectionc
- another collection of the same kindpublic static int hashCode(java.util.Collection<?> c)
c
- a collectionpublic static <E> java.util.Collection<E> intersection(java.util.Collection<? extends E> self, java.util.Collection<? extends E> c)
self
- the source set or bagc
- another set or bagpublic static <E> java.util.Collection<E> union(java.util.Collection<? extends E> self, java.util.Collection<? extends E> c)
self
- the source collectionc
- another collectionpublic static java.util.Collection<?> flatten(java.util.Collection<?> self)
self
- the source collectionpublic static <C> C getFlattenedElementType(CollectionType<C,?> type)
type
- a collection typepublic static <E> java.util.Set<E> minus(java.util.Set<? extends E> self, java.util.Set<? extends E> set)
self
- the source setset
- another setpublic static <E> java.util.Collection<E> excluding(java.util.Collection<E> self, java.lang.Object object)
self
- the source collectionobject
- an objectpublic static <E> java.util.Set<E> symmetricDifference(java.util.Set<? extends E> self, java.util.Set<? extends E> set)
self
- the source setset
- another setpublic static <E> java.util.Collection<E> including(java.util.Collection<E> self, E object)
self
- the source collectionobject
- an objectpublic static <E> java.util.Set<E> asSet(java.util.Collection<E> self)
self
- the source collectionpublic static <E> Bag<E> asBag(java.util.Collection<E> self)
self
- the source collectionpublic static <E> java.util.List<E> asSequence(java.util.Collection<E> self)
self
- the source collectionpublic static <E> java.util.LinkedHashSet<E> asOrderedSet(java.util.Collection<E> self)
self
- the source collectionpublic static <PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> java.util.Set<Tuple<O,P>> product(EvaluationEnvironment<C,O,P,CLS,E> evalEnv, Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> env, java.util.Collection<?> self, java.util.Collection<?> c, C tupleType)
evalEnv
- the current evaluation environment (for construction of
tuples)env
- the current OCL environment (for introspection of the tuple type)self
- the source collectionc
- another collectionpublic static <E> java.util.Collection<E> append(java.util.Collection<E> self, E object)
self
- the source collectionobject
- an objectpublic static <E> java.util.Collection<E> prepend(java.util.Collection<E> self, E object)
self
- the source collectionobject
- an objectpublic static <E> java.util.Collection<E> insertAt(java.util.Collection<E> self, int index, E object)
self
- the source collectionindex
- the 1-based (in OCL fashion) indexobject
- an objectjava.lang.IndexOutOfBoundsException
- if the index is out of boundspublic static <E> java.util.Collection<E> subOrderedSet(java.util.Collection<E> self, int lower, int upper)
self
- the source setlower
- the 1-based (in OCL fashion) inclusive lower boundupper
- the 1-based (in OCL fashion) inclusive upper boundjava.lang.IndexOutOfBoundsException
- if an index is out of boundsjava.lang.IllegalArgumentException
- if the lower bound is greater than the upperpublic static <E> java.util.Collection<E> subSequence(java.util.Collection<E> self, int lower, int upper)
self
- the source sequencelower
- the 1-based (in OCL fashion) inclusive lower boundupper
- the 1-based (in OCL fashion) inclusive upper boundjava.lang.IndexOutOfBoundsException
- if an index is out of boundsjava.lang.IllegalArgumentException
- if the lower bound is greater than the upperpublic static <E> E at(java.util.Collection<E> self, int index)
self
- the source collectionindex
- the 1-based (in OCL fashion) indexjava.lang.IndexOutOfBoundsException
- if the index is out of boundspublic static <E> E first(java.util.Collection<E> self)
self
- the source collectionpublic static <E> E last(java.util.Collection<E> self)
self
- the source collectionpublic static <E> java.lang.Integer indexOf(java.util.Collection<? extends E> self, E object)
self
- the source collectionobject
- an objectpublic static <E> java.util.Set<E> createNewSet()
public static <E> java.util.Set<E> createNewSet(java.util.Collection<? extends E> c)
public static <E> Bag<E> createNewBag()
public static <E> Bag<E> createNewBag(java.util.Collection<? extends E> c)
public static <E> java.util.LinkedHashSet<E> createNewOrderedSet()
public static <E> java.util.LinkedHashSet<E> createNewOrderedSet(java.util.Collection<? extends E> c)
public static <E> java.util.List<E> createNewSequence()
public static <E> java.util.List<E> createNewSequence(java.util.Collection<? extends E> c)
public static <E> java.util.Collection<E> createNewCollectionOfSameKind(java.util.Collection<?> c)
c
- a collectionc
public static <E> java.util.Collection<E> createNewCollection(java.util.Collection<? extends E> c)
c
- a collectionc
public static <E> java.util.Collection<E> createNewCollection(CollectionKind kind)
kind
- the OCL collection kindpublic static <E> java.util.Collection<E> createNewCollection(CollectionKind kind, java.util.Collection<E> c)
kind
- the OCL collection kindc
- the contents of the new collectionkind
, containing
the same elements as c
public static java.lang.String toString(java.util.Collection<?> c)
c
- a collection (not null
)