CEL supports the conditional if statement using the following syntax:
if( cond_expr, true_expr, false_expr )
where:
cond_expr: is the logical expression used as the conditional testtrue_expr: is the mathematical expression used to determine the result if the conditional test istrue.false_expr: is the mathematical expression used to determine the result if the conditional test isfalse.
Note: The expressions true_expr and false_expr are always evaluated independent of whether
the evaluation of cond_expr is true or false. As a consequence, a conditional statement
cannot be used to avoid division by zero as in if( x>0,
1/x, 1.0). In this case, when x=0.0, a division by zero will still occur because the expression 1/x is evaluated independent of whether x>0 is satisfied or not.