/// Walk over an expression - if expression contains two or three
/// sub-expressions (two if the 'else' branch is missing), let expression
/// contains pattern and two sub-expressions
let rec visitExpression = function
| SynExpr.IfThenElse(cond, trueBranch, falseBranchOpt, , , , ) -> ...