In order to browse complex project sources,
ones in which the configuration management system plays a very important part,
it is necessary to create a lot of 'variables'
to try to mimic the compiler behaviour related to file inclusion.
A large number of variables results in a jammed page header (and the more jammed in traditional link interface). Very often, all variables are not meaningful at the same time: many make sense only when some other has a certain value. It is then possible to build a dependency graph.
Starting with release 1.0,
the relations within this dependency graph can be translated
into the 'variables'
definitions.
The relation is expressed in a 'when'
clause
which causes the variable to be hidden if the relation is not satisfied.
This contributes to clean the page header.
conditional_expression is a "logical" expression involving strings
and evaluating to true or false.
To be useful,
it should contain references to other variables as
"$
var_id"
.
$
var_id.
Second, the resulting expression is evaluated.
Example:
The available comparison operators are
eq
and
ne
,
not ==
and !=
which operate on numbers.
'when'
(conditional) variables are ordinary variables.
They have no extra semantic property.
They are only hidden from view
when their 'when'
clause evaluates to false.
Even in this case,
they retain their last value.
v
version variable
conditional since it is ALWAYS valid.
For sophisticated examples of conditional variables use, see the Tips pages dedicated to some software projects.