From 3f606ba63c5936e8c8a867fa446d9ff2a67b676a Mon Sep 17 00:00:00 2001 From: Fedor Isakov Date: Tue, 21 Sep 2021 16:13:43 +0200 Subject: [PATCH] Refactor the way parameters are passed to expand macro Instead of the hack that that uses session parameters to pass parameters to expandMacro, use directly `withParams` method on macro token. All parameters are mapped to corresponding fields. Introduce CustomSessionParameter to access parameters in TemplateApplicationSession. --- .../generator/template/main@generator.mps | 938 +++++++++++------- .../languageModels/editor.mps | 21 + .../languageModels/structure.mps | 18 + .../jetbrains.mps.lang.coderules.template.mps | 19 +- 4 files changed, 647 insertions(+), 349 deletions(-) diff --git a/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps b/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps index c8f30982..4595d70d 100644 --- a/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps +++ b/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps @@ -248,9 +248,6 @@ - - - @@ -266,10 +263,6 @@ - - - - @@ -714,6 +707,7 @@ + @@ -5407,6 +5401,11 @@ + + + + + @@ -5583,6 +5582,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5637,6 +5696,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -10330,25 +10460,99 @@ - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - + + + + + + + + - + @@ -10359,24 +10563,22 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -10384,304 +10586,38 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + @@ -10690,30 +10626,166 @@ - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + - + @@ -14801,6 +14873,119 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14984,6 +15169,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps index 1169bac6..fc9f895c 100644 --- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps +++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps @@ -8716,5 +8716,26 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps index 480c338f..b8d80645 100644 --- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps +++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps @@ -1716,5 +1716,23 @@ + + + + + + + + + + + + + + + + + + diff --git a/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.template.mps b/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.template.mps index 81d6ceec..20c8046d 100644 --- a/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.template.mps +++ b/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.template.mps @@ -1918,7 +1918,7 @@ - + @@ -7969,6 +7969,23 @@ + + + + + + + + + + + + + + + + +