Previous - Up - Next

3.3   Parameters

Parameters are compile-time, constant-valued object members. They exist only during translation from DML to C; no storage is allocated for parameters, and they cannot be updated - only overridden.

No type declarations are necessary for parameters; all DML compile-time computations are dynamically type-checked. The possible types of values of a parameter are listed below.

Parameters are used to describe static properties of the objects, such as names, sizes, and offsets. There are a number of standard parameters that are always defined for every object, and for each object type there is a set of additional pre-defined parameters. Furthermore, the programmer can add any number of new parameters, or override the pre-defined ones.

3.3.1   Parameter Types

A parameter can be assigned a value of one of the following types:

integer
An arbitrarily-sized integer value.
float
A floating-point value.
string
A sequence of characters. String literals are written within double quotes. Strings can be split over several lines using the + operator; see Section 4.12.10.
bool
One of the values true and false. These can only be used in tests and boolean expressions; they are not integer values.
list
A list of arbitrary values. Lists are written as [x1, ..., xN].
reference
A reference to a DML object or method.
undefined
The value undefined is a unique value which can only be used in the compile-time test defined x. The result of the test is false if x has the value undefined, and true otherwise. The undefined value is used mainly as a default for parameters that are intended to be overridden.

Previous - Up - Next