Statements
Assignment
SetInteger
SetBoolean
SetEnumeration
SetFixed
SetFloat
SetString
General
There is only a single copy of all the object data. A change to an entity attribute value is instantly visible to all other parts of the model.
Constants are not allowed except for zero and one.
Assignment Statement
The Assignment statement allows the update of attribute data and process data. State data cannot be overwritten.
No calculation is allowed within set statements.
Type casting may be used to convert the result of a calculation to another compatible type. For example:
Assignment
SetInteger
Account.Integer_attribute := Type_Integer'amount
SetInteger Statement
Assignment
SetInteger
This_Entity.Integer_attribute := <<IntegerZero>>
That_Entity.Integer_attribute := integer_process_data
more_integer_process_data := Some_Entity.Integer_attribute
The SetInteger statement allows the update of integer data items.
Permitted item field formats:
Left hand side:
integer_process_data
Entity.Integer_attribute_data
Right hand side:
<<IntegerOne>>
<<IntegerZero>>
Integer_state_data
integer_process_data
Entity.Boolean_attribute_data
SetBoolean Statement
Assignment
SetBoolean
boolean_data := <<True>>
Entity.Boolean_attribute := <<False>>
some_boolean_data := Entity.Boolean_attribute
Entity.Boolean_attribute := Boolean_state_data_one
process_data := Boolean_state_data_two
The SetBoolean statement allows the update of boolean data items.
Permitted item field formats:
Left hand side:
boolean_process_data
Entity.Boolean_attribute_data
Right hand side:
<<True>>
<<False>>
Boolean_state_data
boolean_process_data
Entity.Boolean_attribute_data
SetEnumeration Statement
Assignment
SetEnumeration
this_enumeration_data := Weekday'MONDAY
Entity.Enumeration_att := <<Successor:Enumeration_data>>
that_enumeration_data := <<Predecessor:Class.Enumeration_attribute>>
Entity.Enumeration_att := Enumeration_data
process_data := More_enumeration_data
nice_enumeration_data := Entity.Enumeration_attribute
The SetEnumeration statement allows the update of enumeration data items.
Permitted item field formats:
Left hand side:
literal_process_data
Entity.Literal_attribute_data
Right hand Side:
Literal_state_data
Enumeration'LITERAL
Literal_process_data
Entity.Literal_attribute_data
<<Sucessor:Literal_state_data>>
<<Sucessor:Literal_process_data>>
<<Sucessor:Entity.Literal_attribute_data>>
<<Predecessor:Literal_state_data>>
<<Predecessor:Literal_process_data>>
<<Predecessor:Entity.Literal_attribute_data>>
SetFixed Statement
Assignment
SetFixed
This_Entity.Fixed_attribute := <<FixedZero>>
That_Entity.Fixed_attribute := fixed_process_data
more_fixed_process_data := Some_Entity.Fixed_attribute
The SetFixed statement allows the update of fixed data items.
Permitted item field formats:
Left hand side:
fixed_process_data
Entity.Fixed_attribute
Right hand side:
<<FixedOne>>
<<FixedZero>>
Fixed_state_data
fixed_process_data
Entity.Fixed_attribute_data
SetFloat Statement
Assignment
SetFloat
This_Entity.Float_attribute := <<FloatZero>>
That_Entity.Float_attribute := float_process_data
more_float_process_data := Some_Entity.Float_attribute
The SetFloat statement allows the update of float data items.
Permitted item field formats:
Left hand side:
float_process_data
Entity.Float_attribute
Right hand side:
<<FloatOne>>
<<FloatZero>>
Float_state_data
float_process_data
Entity.Float_attribute_data
SetString Statement
Assignment
SetString
string_process_data := Blue_Entity.String_attribute
null_string_process_data := <<EmptyString>>
This_Entity.String_attribute := String_data
That_Entity.String_attribute := process_data
Permitted item field formats:
Left hand side:
string_process_data
Entity.String_attribute_data
Right hand side:
<<EmptyString>>
String_state_data
string_process_data
Entity.String_attribute_data
Matrix has no string manipulation facility except for comparison and direct assignment. String values must originate from object data defined in M0, input from outside the system on events or produced in a String domain.
|