Merge pull request #498 from zarechenskiy/injector-generator

Add injector-generator to artifacts
Resurrect assert for property default values in FULL mode

Respond to
https://github.com/JetBrains/kotlin/commit/4980a3357231c833ebdb7111d16e7be5bd342521#commitcomment-7078429

 #KT-5505 Fixed
Minor formatting and unused code deleted
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
When2Switch: tests for non-literal expression in when by integral
Fix shortening references for receiver in MakeTypeExplicitInLambdaIntention

 #KT-5474 Fixed
Fix shortening references for return type in MakeTypeExplicitInLambdaIntention

 #KT-5475 Fixed
Add test for the same pitfall for parameter types in MakeTypesExplicitInLambda
Fix ConvertAssertToIfWithThrowIntention

to not invoke ShortenReferences on file created by JetPsiFactory

 #KT-5476 Fixed
Add test documenting a minor issue introduced in previous commit
Fix InsertExplicitTypeArguments intention to insert imports for shortened types

 #KT-5489 Fixed
Fix SimplifyBooleanWithConstantsIntention intention to avoid analyzing files created by JetPsiFactory
Fix ConvertAssertToIfWithThrowIntention to avoid shortening more references than intended
JS backend: fix kt-5345 (Type mismatch on Int / Float division)
JS Backend: #KT-5320 Fixed (generated code for ternary operator)
Merge pull request #499 from MichaelNedzelsky/kt5345

JS backend: fixed KT-5345  -- type mismatch on Int / Float division.

 #KT-5345 fixed