From 3eebe8cd0349a1bc563bd6008a9708b776f0553d Mon Sep 17 00:00:00 2001 From: Grigorii Kirgizov Date: Thu, 23 Jul 2020 11:24:53 +0300 Subject: [PATCH] Refactor creation of IncrProgramSpec: allow later spec config (for MPSCR-66) IncrProgramSpec influencing program eval is built from two sources: internal analysis results & typechecking options. Providing spec builder instead of spec allows to combine these sources later at program pipeline creation in TypecheckingService. Commit accomodates to addition of IncrementalSpec.Enabled.Unsafe Commit also simplifies ProgramAnalysis -related classes. Renames BasicProgramAnalysis to PrincipalsAnalysis. --- .../generator/template/main@generator.mps | 85 +- .../jetbrains.mps.lang.coderules.analysis.mps | 73 +- .../jetbrains.mps.lang.coderules.eval.mps | 117 +-- ...ns.mps.lang.coderules.program.analysis.mps | 990 +++++++++--------- ...ins.mps.coderules.incrementality@tests.mps | 16 +- ...s.mps.coderules.typechecking.test.util.mps | 14 +- ...ins.mps.coderules.typechecking.service.mps | 71 +- .../models/service.mps | 16 +- .../jetbrains.mps.lang.coderules.aspect.mps | 6 +- .../jetbrains.mps.lang.coderules.template.mps | 285 ++--- 10 files changed, 825 insertions(+), 848 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 82786ca3..32fca566 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 @@ -67,6 +67,9 @@ + + + @@ -12792,7 +12795,7 @@ - + @@ -12811,6 +12814,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -12936,7 +12984,7 @@ - + @@ -12956,7 +13004,7 @@ - + @@ -13027,7 +13075,7 @@ - + @@ -16860,15 +16908,20 @@ - + - - + + - - + + + + + + + @@ -17147,11 +17200,11 @@ - + - + @@ -17172,12 +17225,12 @@ - - - + + + - + @@ -17232,7 +17285,7 @@ - + diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/jetbrains.mps.lang.coderules.analysis.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/jetbrains.mps.lang.coderules.analysis.mps index d7ab3f6d..eb674f2c 100644 --- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/jetbrains.mps.lang.coderules.analysis.mps +++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/jetbrains.mps.lang.coderules.analysis.mps @@ -25,6 +25,7 @@ + @@ -59,6 +60,10 @@ + + + + @@ -2344,7 +2349,7 @@ - + @@ -2413,11 +2418,11 @@ - + - + @@ -2449,7 +2454,7 @@ - + @@ -2550,6 +2555,21 @@ + + + + + + + + + + + + + + + @@ -4037,6 +4057,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4515,6 +4561,17 @@ + + + + + + + + + + + @@ -4839,7 +4896,7 @@ - + @@ -6289,7 +6346,7 @@ - + @@ -6330,7 +6387,7 @@ - + @@ -6745,7 +6802,7 @@ - + diff --git a/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.eval.mps b/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.eval.mps index acad30a5..044242cf 100644 --- a/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.eval.mps +++ b/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.eval.mps @@ -110,9 +110,6 @@ - - - @@ -261,11 +258,6 @@ - - - - - @@ -531,8 +523,8 @@ - - + + @@ -789,7 +781,7 @@ - + @@ -3613,14 +3605,34 @@ - - + + + + + + + - - + + + + + + + + + + + + + + + + + @@ -3658,13 +3670,13 @@ - - - + + + - - + + @@ -3704,22 +3716,22 @@ - + - + - + - + @@ -3791,45 +3803,18 @@ - + - - - - - - - + + + + - - - - - - - + + - - - - - - - - - - - - - - - - - - - @@ -3865,10 +3850,10 @@ - + - - + + @@ -7185,8 +7170,8 @@ - - + + @@ -7494,7 +7479,7 @@ - + @@ -7529,8 +7514,8 @@ - - + + diff --git a/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.program.analysis.mps b/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.program.analysis.mps index 55f89ece..6c7b0aa7 100644 --- a/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.program.analysis.mps +++ b/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderules.program.analysis.mps @@ -16,17 +16,10 @@ - - - - - - - @@ -42,11 +35,18 @@ + + + + - + + + + @@ -54,9 +54,6 @@ - - - @@ -81,20 +78,16 @@ - - - - + - @@ -137,426 +130,443 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - + + + - - - - - - - + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - + + + + - - + + + + - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - - + + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - - + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -576,6 +586,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -606,8 +642,8 @@ - - + + @@ -748,19 +784,56 @@ + + + + + + + + + + + + + + + + + + - + - + + + - + + + + + + + + + + + + + + + + + + @@ -783,174 +856,56 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - + + + + + + + + + + + + + + + + + + + + - - - + + + - + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -984,12 +939,23 @@ + + + + + + + + + + + - + - + diff --git a/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.incrementality@tests.mps b/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.incrementality@tests.mps index e3043da2..e52907ae 100644 --- a/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.incrementality@tests.mps +++ b/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.incrementality@tests.mps @@ -438,8 +438,8 @@ - - + + @@ -565,7 +565,7 @@ - + @@ -609,7 +609,7 @@ - + @@ -656,7 +656,7 @@ - + @@ -3356,7 +3356,7 @@ - + @@ -4297,7 +4297,7 @@ - + @@ -4356,7 +4356,7 @@ - + diff --git a/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.typechecking.test.util.mps b/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.typechecking.test.util.mps index e5809907..5fa26db7 100644 --- a/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.typechecking.test.util.mps +++ b/coderules/solutions/jetbrains.mps.coderules.typechecking.test/models/jetbrains.mps.coderules.typechecking.test.util.mps @@ -1964,8 +1964,8 @@ - - + + @@ -2032,12 +2032,12 @@ - - + + - - - + + + diff --git a/coderules/solutions/jetbrains.mps.coderules.typechecking/models/jetbrains.mps.coderules.typechecking.service.mps b/coderules/solutions/jetbrains.mps.coderules.typechecking/models/jetbrains.mps.coderules.typechecking.service.mps index 87754e36..da019bee 100644 --- a/coderules/solutions/jetbrains.mps.coderules.typechecking/models/jetbrains.mps.coderules.typechecking.service.mps +++ b/coderules/solutions/jetbrains.mps.coderules.typechecking/models/jetbrains.mps.coderules.typechecking.service.mps @@ -61,6 +61,7 @@ + @@ -5085,8 +5086,8 @@ - - + + @@ -5553,8 +5554,8 @@ - - + + @@ -18354,6 +18355,28 @@ + + + + + + + + + + + + + + + + + + + + + + @@ -18381,28 +18404,42 @@ - - + + - - - - + + + + + + + + + + + + + + + + + + - - - - - + + + + - - + + + diff --git a/coderules/solutions/jetbrains.mps.coderules/models/service.mps b/coderules/solutions/jetbrains.mps.coderules/models/service.mps index b56a79ee..4db207ca 100644 --- a/coderules/solutions/jetbrains.mps.coderules/models/service.mps +++ b/coderules/solutions/jetbrains.mps.coderules/models/service.mps @@ -2319,8 +2319,8 @@ - - + + @@ -7438,15 +7438,15 @@ - - + + - + @@ -7533,9 +7533,9 @@ - - - + + + diff --git a/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.aspect.mps b/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.aspect.mps index 5ce210d5..6d68d847 100644 --- a/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.aspect.mps +++ b/coderules/solutions/jetbrains.mps.lang.coderules.template/models/jetbrains.mps.lang.coderules.aspect.mps @@ -4904,11 +4904,11 @@ - + - - + + 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 6a85526e..48836820 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 @@ -272,11 +272,6 @@ - - - - - @@ -7263,88 +7258,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -7353,118 +7266,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -7611,14 +7412,14 @@ - + - + - - + + @@ -7706,5 +7507,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +