Terms used to describe actions
Expression
Expression is a sequence of characters, which form a correct mathematic expression. If it is required, that an expression should get a value of particular type, then this value type will be identified as follows:
- Boolean - Bo
- Integer - Int
- Real - Re
- Absolute time - AbsTime
- Time interval (relative time) - RelTime
- Text - Txt
- HBJ - Hbj
Identifier of value
Identifier of value (see also Identifiers) is:
- object name
- local variable name
-
directly written variable. There are 3 admissible types
- text constant (e.g.: "This is a text constant")
- integer constant (standard declaration of an integer number)
- real constant (declaration of a real number. e.g.: 3.14159)
- system constant (@TRUE, @Run, ...)
In case that the name of an object identifies an object of Structured variable, then an access to item (optionally an index) must follow the name. For example:
SV.Structure^Int
SV.Structure[2]^Int
Similarly, if a local variable is of RECORD type, or type ALIAS, an access to item (optionally an index) must necessarily follow the name. For example:
RECORD (SD.RecordDef) _locRecord
ALIAS (SD.RecordDef) _aliasRecord
INT _index
_locRecord[_index]^Int
_aliasRecord^Int
As we can see from the examples, index (row number) is enclosed in square brackets []. Index, in declaration, is evaluated as an expression, which has to get a value of Int type.
According to the identifier definition, the following types belong
into this category::
IC_C, IC_O, IC_O_R_RIA, IC_O_R_RIN, IC_L, IC_L_CONST, IC_L_AN, IC_L_AT_RIA, IC_L_AT_RIN, IC_L_RNA_RIA,
IC_L_RNA_RIN, IC_L_R_RIA, IC_L_R_RIN.
Identifier of structure row
Identifier of a structure row is:
- indexed name of an object of Structured variable type
- indexed name of a local variable of RECORD type or type ALIAS
An example for objects:
INT _index
SV.Structure[_index+1]
SV.Structure[1]
An example for local variable:
RECORD (SD.RecordDef) _locRecord
ALIAS (SD.RecordDef) _aliasRecord
INT _index
_locRecord[3]
_locRecord[_index]
_aliasRecord[_index]
_aliasRecord[6]
According to the identifier's definition, the following types
belong to this category:
IC_O_R_R, IC_L_AT_R, IC_L_RNA_R, IC_L_R_R, and the index placed after identifier must be <> 0.
Identifier of structure column
Row is identified by its name. Therefore structure row identifier can be defined in two ways:
- SV.StructureName[...]^ColumnName - in case of object of Structured variable type
- _locRecord[...]^ColumnName - in case of local variable of RECORD type
Structure row index is not important.
Identifier of structure item
Row is identified by its name. Therefore structure row identifier can be defined in two ways:
- SV.StructureName[RowIndex]^ColumnName - in case of an object of Structured variable type
- _locRecord[RowIndex]^ColumnName - in case of a local variable of RECORD type
- SV.MenoStruktury[RowIndex]^_colNr - for ESL only (see also the topic Admissible operands in expressions)
- _locRecord[RowIndex]^_colNr - for ESL only (see also the topic Admissible operands in expressions)
Identifier of entire structure
Identifier of entire structure is:
- name of an object of Structured variable type
- name of a local variable of RECORD type or types ALIAS
An example for objects:
INT _index
SV.Structure
An example for local variable:
RECORD (SD.RecordDef) _locRecord
ALIAS (SD.RecordDef) _aliasRecord
INT _index
_locRecord
_aliasRecord
According to the identifier's definition, the following types
belong to this category:
IC_O_R, IC_O_R_R*, IC_L_AT_R*, IC_L_RNA, IC_L_RNA_R*, IC_L_R, IC_L_R_R*
* index behind an identifier must be = 0.
Reference to object
Reference to object is an special case of value identifier, where its value must the reference to an object or the identifier is directly the object itself.
For example:
; object itself is a reference
Sec
SysTime
U.Int
; Structure item
SV.Struktura[_index]^Object
RECORD (SD.RecordDef) _rec
_rec[_index]^Object
; Alias is the reference to object
ALIAS _a
_a
According to the identifier's definition, the following types
belong to this category:
IC_O, IC_O_R, IC_O_R_RIA, IC_L_AN, IC_L_AT, IC_L_AT_RIA, IC_L_R_RIA.
Related pages:
0 komentárov