Refactoring of switches codegen parts
When by enum:
Generate TABLESWITCH/LOOKUPSWITCH bytecode command in case of "when" by enum entries
++ splitted and refined tests for enum
++ minor, renaming enumClassTypeInternalName -> enumClassTypeInternalName
++ got rid of using redundant map replaced by set, and simplified mappings gen logic
When by String constants:
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
++ splitted and refined tests for strings
When2Switch: check if entry set is not empty
When2Switch: generate ifnonnull check for nullable values before *switch-opcode
When2Switch: tests for non-literal expression in when by integral