No operator calls in expressions#
No operator calls in expressions
Description#
No operator calls within textual expressions. This rule does not apply for Constants and Transition/IfNode conditions. Exceptions on main level can be given as parameters. parameter: operator IDs separated by comma: e.g.: ‘18’
The rule parameter is a comma-separated string containing predefined operators identifiers that are allowed to be called from within textual expressions.
Available identifiers are documented in the SCADE Python API guide, under section Access to Predefined Operators in Python. Default value is 18
(array projection operator).
Rationale#
This enforces compliance with a specific modeling standard by ensuring that textual expressions do not contain operator calls.
One use case for this could be to guarantee model readability for mixed teams of software engineers (who are comfortable with both diagrams and textual programs) and system engineers (who are less comfortable with textual programs).
Verification#
This rule checks all operator calls throughout the model. The rule fails if it finds an operator calls that is part of a textual expression and that is not part of the list of authorized operators.
Resolution#
Modify the offending textual expression to remove the offending call, or redesign it as a graphical diagram.
Customization#
N/A.