Refactoring of switches codegen parts
When by enum:
Generate TABLESWITCH/LOOKUPSWITCH bytecode command in case of "when" by enum entries
When by String constants:
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
When2Switch: check if entry set is not empty
When2Switch: generate ifnonnull check for nullable values before *switch-opcode