OCL Collection Operators
No edit summary
No edit summary
Line 77: Line 77:
|Returns true if the collection is empty
|Returns true if the collection is empty
|-
|-
|'''[[OCLOperators notEmpty|->]][[Documentation:OCLOperators notEmpty|notEmpty]]'''
|'''[[Documentation:OCLOperators notEmpty|->notEmpty]]'''
|Returns true if ''self'' contains at least one element, false otherwise.
|Returns true if ''self'' contains at least one element, false otherwise.
|-
|-
|'''[[OCLOperators reject|->]][[Documentation:OCLOperators reject|reject]]'''
|'''[[Documentation:OCLOperators reject|->reject]]'''
|Returns a collection with all elements of ''self'' except for those who validate the OclExpression ''expr''.
|Returns a collection with all elements of ''self'' except for those who validate the OclExpression ''expr''.
|-
|-
|'''[[OCLOperators select|->]][[Documentation:OCLOperators select|select]]'''
|'''[[Documentation:OCLOperators select|->select]]'''
|Returns a collection with all elements of ''self'' that validate the OclExpression ''expr''.
|Returns a collection with all elements of ''self'' that validate the OclExpression ''expr''.
|-
|-
|'''[[OCLOperators size|->]][[Documentation:OCLOperators size|size]]'''
|'''[[Documentation:OCLOperators size|->size]]'''
|Returns the number of elements contained in ''self''.
|Returns the number of elements contained in ''self''.
|-
|-
|'''[[OCLOperators sum|->]][[Documentation:OCLOperators sum|sum]]'''
|'''[[Documentation:OCLOperators sum|->sum]]'''
|Returns the sum of all elements contained in ''self'' if they support the '+' operation.
|Returns the sum of all elements contained in ''self'' if they support the '+' operation.
|-
|-

Revision as of 05:05, 12 February 2025

This page was created by Stephanie@mdriven.net on 2023-04-12. Last edited by Stephanie@mdriven.net on 2025-03-10.

Once you have a collection of objects, there are certain operators applicable to them.

You can use the OCL-Editor to see what they are:

Collection of objects operators.png

Operators Description
->append Add another object last
->asBag Returns a Bag containing all elements of self.
->asSequence Returns a Sequence containing all elements of self. Element ordering is preserved when possible.
->asSet Returns a Set containing all elements of self.
->at Get the objects at X where the first index is 1
->at0 Get the objects at X where the first index is 0
->collect Returns a collection containing the result of applying expr on all elements contained in self.
->count Count how many meet a certain criteria
->dictionary Efficiently looks up values
->difference The difference between 2 collections
->excluding The collection except for this single object
->exists Returns true if at least one element in self validates the condition expr, false otherwise.
->filterOnType Only keep the ones of a certain type
->first Return the first object
->forAll Returns true if all the elements contained in self validate the condition expr, false otherwise.
->groupBy Build a collection of tuples grouped by some aspect
->includes Does the collection include the object
->includesAll Does the collection include the whole other collection
->including Returns the list with the element in the parameter included.
->IndexOf The 1 based index of an object in the collection possibly -1 if not existing
->indexOf0 The 0 based index of an object in the collection possibly -1 if not existing
->intersection The intersection of two collections
->isEmpty Returns true if the collection is empty
->notEmpty Returns true if self contains at least one element, false otherwise.
->reject Returns a collection with all elements of self except for those who validate the OclExpression expr.
->select Returns a collection with all elements of self that validate the OclExpression expr.
->size Returns the number of elements contained in self.
->sum Returns the sum of all elements contained in self if they support the '+' operation.
->last Returns the last object in the collection
->orderBy Sorts the collection on one or more properties
->orderDescending Sort the from biggest to smallest
->orderGeneric Sorts the list of properties with interchangeable sort order: (expr1, OclSortDirection::ascending, expr2, OclSortDirection::descending...)
->prepend Returns an OrderedSet containing object followed by all elements of self.
->subsequence Returns a smaller collection from a start to stop
->symmetricDifference The symmetric difference between the collections; ie all the objects in collection1 or collection2 but not in both
->union The set of objects in collection1 and objects in collection2

See this page for examples on collection operators.

Also check out: OCLOperators

Pages in category "OCL Collection Operators"

The following 41 pages are in this category, out of 41 total.