Conditional operators allow text to be inserted that depends on the value in a macro. Conditional operators are never used in rules, but are often used in header definitions (see §31.6).
$?macro result
$|alternate
$.
If the macro has a value, the entire expression is replaced by result. Otherwise, the entire expression is replaced by alternate. For example:
From: $?x$x <$g>$|$g$.
Here, if $x has a value (the $?x
), the entire expression
becomes:
From: $x <$g>
Otherwise (the $|$g
), it becomes:
From: $g
The $. is last and terminates the conditional expression. Conditional expressions may nest, but nesting is discouraged.