From f9eb52a60f131ae71e0fc1ef0b080c5c37570da8 Mon Sep 17 00:00:00 2001 From: Fedor Isakov Date: Tue, 26 Jul 2022 13:10:12 +0200 Subject: [PATCH] Introduce checkpoint for typechecking "strut" templates The templates that typechecking relies upon are generated into the user model as synthetic constructs. These later need to be discovered by the generator to establish correct references. --- ...ps.lang.typechecking.generator.genutil.mps | 623 +++++++ .../generator/template/main@generator.mps | 1537 ++++++++++++----- .../jetbrains.mps.lang.typechecking.mpl | 4 +- ....lang.descriptor.aspects.types@genplan.mps | 23 + 4 files changed, 1767 insertions(+), 420 deletions(-) create mode 100644 coderules/languages/jetbrains.mps.lang.typechecking/generator/template/jetbrains.mps.lang.typechecking.generator.genutil.mps diff --git a/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/jetbrains.mps.lang.typechecking.generator.genutil.mps b/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/jetbrains.mps.lang.typechecking.generator.genutil.mps new file mode 100644 index 00000000..3b1b754f --- /dev/null +++ b/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/jetbrains.mps.lang.typechecking.generator.genutil.mps @@ -0,0 +1,623 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/main@generator.mps b/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/main@generator.mps index 7145bd50..30f3a23b 100644 --- a/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/main@generator.mps +++ b/coderules/languages/jetbrains.mps.lang.typechecking/generator/template/main@generator.mps @@ -23,8 +23,10 @@ + + @@ -51,6 +53,9 @@ + + + @@ -66,6 +71,8 @@ + + @@ -82,9 +89,6 @@ - - - @@ -133,6 +137,7 @@ + @@ -187,6 +192,12 @@ + + + + + + @@ -224,6 +235,9 @@ + + + @@ -270,6 +284,9 @@ + + + @@ -288,11 +305,15 @@ + + + + @@ -325,6 +346,13 @@ + + + + + + + @@ -333,12 +361,11 @@ - - - + + @@ -651,24 +678,28 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - @@ -777,17 +808,82 @@ - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -849,15 +945,85 @@ - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -940,15 +1106,85 @@ - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1036,6 +1272,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1116,6 +1390,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1330,6 +1642,7 @@ + @@ -1337,13 +1650,8 @@ - - - - - - - + + @@ -1367,101 +1675,88 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + - - - + + + - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + + - + - - + + - + - - - - - - - - - - - - - - - - - - + + + + - - - - - - - - - - - - - - + + + @@ -1668,9 +1963,6 @@ - - - @@ -1836,9 +2128,25 @@ + + + + + + + + + + + + + + + + @@ -1851,6 +2159,21 @@ + + + + + + + + + + + + + + + @@ -2019,7 +2342,7 @@ - + @@ -2053,12 +2376,63 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2069,16 +2443,11 @@ - - - - - - - - - - + + + + + @@ -2102,16 +2471,11 @@ - - - - - - - - - - + + + + + @@ -2136,12 +2500,63 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2155,16 +2570,11 @@ - - - - - - - - - - + + + + + @@ -2189,12 +2599,63 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2232,31 +2693,11 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + @@ -2282,19 +2723,14 @@ - + - - - - - - - - - - + + + + + @@ -2327,20 +2763,15 @@ - - - - - - - - - - - + + + + + + - + @@ -2354,16 +2785,11 @@ - - - - - - - - - - + + + + + @@ -2391,20 +2817,15 @@ - - - - - - - - - - - + + + + + + - + @@ -2418,16 +2839,11 @@ - - - - - - - - - - + + + + + @@ -2460,20 +2876,15 @@ - - - - - - - - - - - + + + + + + - + @@ -2487,16 +2898,11 @@ - - - - - - - - - - + + + + + @@ -2524,20 +2930,15 @@ - - - - - - - - - - - + + + + + + - + @@ -2620,37 +3021,32 @@ - - - - - - - - - - - + + + + + + - - - - - + + + + + - + - - + + - + - + @@ -2673,12 +3069,77 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2693,12 +3154,63 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2711,31 +3223,11 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + @@ -2745,16 +3237,11 @@ - - - - - - - - - - + + + + + @@ -2776,12 +3263,77 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2796,12 +3348,63 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2814,38 +3417,11 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + @@ -2855,16 +3431,11 @@ - - - - - - - - - - + + + + + @@ -2905,6 +3476,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/coderules/languages/jetbrains.mps.lang.typechecking/jetbrains.mps.lang.typechecking.mpl b/coderules/languages/jetbrains.mps.lang.typechecking/jetbrains.mps.lang.typechecking.mpl index 691e0a00..bbd90ebb 100644 --- a/coderules/languages/jetbrains.mps.lang.typechecking/jetbrains.mps.lang.typechecking.mpl +++ b/coderules/languages/jetbrains.mps.lang.typechecking/jetbrains.mps.lang.typechecking.mpl @@ -66,7 +66,6 @@ - @@ -111,6 +110,8 @@ bfbdd672-7ff5-403f-af4f-16da5226f34c(jetbrains.mps.findUsages.runtime) 35320f26-77cb-4c55-be9f-a97a27770af1(jetbrains.mps.logic) 3a13115c-633c-4c5c-bbcc-75c4219e9555(jetbrains.mps.lang.quotation) + ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core) + c4803b19-6d89-4a3b-bf82-390769514add(jetbrains.mps.lang.coderules) @@ -134,6 +135,7 @@ + diff --git a/coderules/solutions/jetbrains.mps.lang.typechecking.runtime/models/jetbrains.mps.lang.descriptor.aspects.types@genplan.mps b/coderules/solutions/jetbrains.mps.lang.typechecking.runtime/models/jetbrains.mps.lang.descriptor.aspects.types@genplan.mps index dd2d3f6c..11c2abf4 100644 --- a/coderules/solutions/jetbrains.mps.lang.typechecking.runtime/models/jetbrains.mps.lang.descriptor.aspects.types@genplan.mps +++ b/coderules/solutions/jetbrains.mps.lang.typechecking.runtime/models/jetbrains.mps.lang.descriptor.aspects.types@genplan.mps @@ -10,16 +10,26 @@ + + + + + + + + + + @@ -35,6 +45,9 @@ + + + @@ -56,6 +69,16 @@ + + + + + + + + + +