Operators |
insert — Assignment of a value to a tuple element.
This operator is obsolete and should no longer be used explicitly in new programs. The modifying version of the insert operator was replaced by the operator assign_at. This operator uses the same notation in the full text editor, so that it is used automatically. The non-modifying version of the insert operator is replaced by the new operator tuple_replace.
insert assigns a single value to a specific element of a tuple.
In the full text editor an insert operation is simply entered with the help of the assignment operator sign := and the index access operator sign [ ] for the result variable, e.g.:
Areas[Radius-1] := Area
If the operator window is used for entering the insert operator, insert must be entered into the operator combo box as the operator name. This opens the parameter area, where the parameter Value represents the expression that has to be evaluated to one value and assigned to the element at position Index within the tuple Input. The parameter Result gets the name of the variable where the result has to be stored.
If the input tuple that is passed via the parameter Input and the output tuple that is passed in Result are identical (and only in that case), the insert operator is listed and can be written in the full text editor in the above assignment notation. In this case, the input tuple is modified and the correct operator notation for above assignment would be:
insert (Areas, Area, Radius-1, Areas)
If the Input tuple and the Result tuple differ, the input tuple will not be modified. In this case, within the program listing only the operator notation can be used:
insert (Areas, Area, Radius-1, Result)
This is the same as:
Result := Areas Result[Radius-1] := Area
Please note that the operator insert will not increase the tuple if the tuple already stores a value at the passed index. Instead of that the element at the position Index will be replaced. Hence, for the Value parameter exactly one single value (or an expression that evaluates to one single value) must be passed.
If the passed Index parameter is beyond the current tuple size, the tuple will be increased to the required size. The tuple elements that were inserted between the hitherto last element and the new element are undefined.
Tuple, where the new value has to be inserted.
Default value: []
Value that has to be inserted.
Default value: 1
Typical range of values: 0 ≤ Value ≤ 1000000
Index position for new value.
Default value: 0
Suggested values: 0, 1, 2, 3, 4, 5, 6
Minimum increment: 1
Result tuple with inserted values.
If the expression is correct insert returns 2 (H_MSG_TRUE). Otherwise an exception is raised and an error code returned.
Foundation
Operators |