OCLOperators constraints
No edit summary |
No edit summary |
||
(21 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
<message>Write the content here to display this box</message> | |||
This operator returns both meta information about a class's constraints and if it's currently broken. | |||
The return value is a collection of [[Tuple]] containing the following | The return value is a collection of [[Documentation:Tuple|Tuple]] containing the following: | ||
# Name | |||
# Description | |||
# IsDeleteConstraint: True/False | |||
# ErrorLevel: #Information, #Warning or #Error | |||
# Broken: Evaluated and [[BestPractices:Subscribed|Subscribed]] state of the constraint | |||
=== Examples === | |||
To check if any constraint with error level '''Error''' is broken: | |||
self.constraints->select(c|(c.ErrorLevel = #Error) and c.Broken)->isEmpty -- Returns True if no errors | |||
Returning a collection of Descriptions of broken Warning constraints: | |||
self.constraints->select(c|(c.ErrorLevel = #Warning) and c.Broken)->collect(c|c.Description) | |||
=== '''Please Note''' === | |||
This operator earlier resulted in an array of booleans with the constraint result. To get the same functionality now, add '''.broken=false''' to the end of the previous expression. | |||
Like this, used with [[Documentation:OCLOperators forAll|forAll]]: | |||
self.constraints->forAll(c|c.broken=false) | |||
[[File:2021-10-10 10h56 59.gif|none|thumb|715x715px]] | |||
'''See also:''' [[Training:Constraints|Constraints]], [[Documentation:OCLOperators brokenConstraints|OCLOperators_brokenConstraints]] | |||
[[Category:OCL General Operators]] | |||
{{Edited|July|12|2025}} | |||
[[Category: |
Latest revision as of 05:57, 10 February 2025
This page was created by Alexandra on 2017-08-13. Last edited by Stephanie@mdriven.net on 2025-02-10.
This operator returns both meta information about a class's constraints and if it's currently broken.
The return value is a collection of Tuple containing the following:
- Name
- Description
- IsDeleteConstraint: True/False
- ErrorLevel: #Information, #Warning or #Error
- Broken: Evaluated and Subscribed state of the constraint
Examples
To check if any constraint with error level Error is broken:
self.constraints->select(c|(c.ErrorLevel = #Error) and c.Broken)->isEmpty -- Returns True if no errors
Returning a collection of Descriptions of broken Warning constraints:
self.constraints->select(c|(c.ErrorLevel = #Warning) and c.Broken)->collect(c|c.Description)
Please Note
This operator earlier resulted in an array of booleans with the constraint result. To get the same functionality now, add .broken=false to the end of the previous expression.
Like this, used with forAll:
self.constraints->forAll(c|c.broken=false)
See also: Constraints, OCLOperators_brokenConstraints