Wraps an expression in a
switch
statement and generates case clauses when possible.