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).
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
From: $x <$g>
$|$g), it becomes:
The $. is last and terminates the conditional expression. Conditional expressions may nest, but nesting is discouraged.