A constant is an identifier with an associated predefined value. The identifier must be unique in the current compilation context (the main source file and all includes).

In compile-time the constant gets replaced with the value associated with it, e.g., a number or a string literal. Contrary to a variable the value of the constant cannot be changed in run-time.

Constants are declared either statically or dynamically. Each edit mode can load static constant definitions from a file using the <constants> parameter in the modes.xml. Dynamic declarations get created in the script code with the syntax outlined below.


To declare a new constant in the code, use the const keyword.

const <constant name> = <constant value>    

A constant name is any allowed identifier (a combination of letters, numbers and _). There are names reserved by the compiler that cannot be used, such as Continue, Break, and etc. (see compiler.ini). A constant value might be a number (also a model identifier or a label); a string literal; a variable (also a class property); another constant.

For example:

const x = 5

You can declare multiple constants separating each declaration with a comma like this:

const a = 1, b = 2, c = 3

If you prefer to have each declaration on its own line, conclude them in a CONST..END construct:

    a = 1
    b = 2
    c = 3

If the Language service is enabled, a list of constants gets displayed after pressing Ctrl+Space.

Last updated