Fix errors detected by Check Models
TemplateSwitch got parameters. New SWITCH macro accepts arguments. Old SwitchMacro deprecated in favor of the new one.
Use new TemplateSwitchMacro in generated generator code.
Utilize switch with parameters instead of sequence of IF instanceOf to reduce NodeMacro
Show invoked template for $CALL$ macro
Allow navigation from $CALL$ template name, but prevent it from editing
Utilize switch with parameters instead of sequence of IF instanceOf to reduce TemplateArguments
Input mapping was not processed for new TemplateSwitchMacro, nodes other thanNodeMacro end up in default clause with generation error
Utilize prev-siblings if currMacroNode is available
Regenerate models with failing ProjectTest.diffModule test
Prevent editing of template name in $CALL$, done right (with ro cell and appropriate styles)
Show included template for $INCLUDE$ macro
Strike out SwitchMacro to make its deprecation visible.
Update description of SwitchMacro and TemplateSwitchMacro to emphasize difference between them.
Show name of invoked switch.
Restrict modified switches to those with at least the same number of parameters.
Parameter types of contributing switch shall be no wider than that in modified switch to accomodate any valid input of the origin
Generated templates: pass switch arguments though TemplateContext
Closures generator spends a lot of time checking if a VariableReference points to any closure parameter or outer variable.
It's common to have a model with numerous VariableReferences, while only few of them are really of interest for closures (use of outer variables inside a closure).
The idea of the fix is to limit number of source nodes reduction rules of closures are applicable to.
It's possible to detect VariableReference of interest right at the moment closures generator walks input model to find variable/parameter declarations to alter.
We replace such VariableReferences with newly introduced ClosureArgReference, so that only latter shall be updated to point to closure-affected variables/parameters.
Regenerated dependant model after VariableReference fix in closures.
Failing ProjectTest.diffModule (jetbrains.mps.testbench.make [solution])   due to new tests added to closures language.
Update "generated" file to match committed generated code
Conditions of reduction rules may access context variables (e.g. Template or Switch parameters), hence need access to outer TemplateContext.
ReductionRuleQueryContext provides access to outer template context.
'generated' files for ReductionRuleQueryContext change to make ProjectTest.diffModule tests pass