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:

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:

Napíšte komentár