Next: , Previous: , Up: Modula-2   [Contents][Index]

#### 15.4.9.2 Built-in Functions and Procedures

Modula-2 also makes available several built-in procedures and functions. In describing these, the following metavariables are used:

a

represents an `ARRAY` variable.

c

represents a `CHAR` constant or variable.

i

represents a variable or constant of integral type.

m

represents an identifier that belongs to a set. Generally used in the same function with the metavariable s. The type of s should be `SET OF mtype` (where mtype is the type of m).

n

represents a variable or constant of integral or floating-point type.

r

represents a variable or constant of floating-point type.

t

represents a type.

v

represents a variable.

x

represents a variable or constant of one of many types. See the explanation of the function for details.

All Modula-2 built-in procedures also return a result, described below.

`ABS(n)`

Returns the absolute value of n.

`CAP(c)`

If c is a lower case letter, it returns its upper case equivalent, otherwise it returns its argument.

`CHR(i)`

Returns the character whose ordinal value is i.

`DEC(v)`

Decrements the value in the variable v by one. Returns the new value.

`DEC(v,i)`

Decrements the value in the variable v by i. Returns the new value.

`EXCL(m,s)`

Removes the element m from the set s. Returns the new set.

`FLOAT(i)`

Returns the floating point equivalent of the integer i.

`HIGH(a)`

Returns the index of the last member of a.

`INC(v)`

Increments the value in the variable v by one. Returns the new value.

`INC(v,i)`

Increments the value in the variable v by i. Returns the new value.

`INCL(m,s)`

Adds the element m to the set s if it is not already there. Returns the new set.

`MAX(t)`

Returns the maximum value of the type t.

`MIN(t)`

Returns the minimum value of the type t.

`ODD(i)`

Returns boolean TRUE if i is an odd number.

`ORD(x)`

Returns the ordinal value of its argument. For example, the ordinal value of a character is its ASCII value (on machines supporting the ASCII character set). The argument x must be of an ordered type, which include integral, character and enumerated types.

`SIZE(x)`

Returns the size of its argument. The argument x can be a variable or a type.

`TRUNC(r)`

Returns the integral part of r.

`TSIZE(x)`

Returns the size of its argument. The argument x can be a variable or a type.

`VAL(t,i)`

Returns the member of the type t whose ordinal value is i.

Warning: Sets and their operations are not yet supported, so GDB treats the use of procedures `INCL` and `EXCL` as an error.

Next: , Previous: , Up: Modula-2   [Contents][Index]