From 6e336363fec2383a1e72185805bd6f2f73e916c0 Mon Sep 17 00:00:00 2001 From: Daniel Ratiu Date: Mon, 18 Nov 2024 19:36:18 +0100 Subject: [PATCH] lint: added linter for detecting checking rules which produce exceptions + refactored slow_checking_rule and memory_hungry_checking_rule linters --- ...s_library.performance_typesystem_rules.mps | 1143 +++++------------ ...lang.linters_library.typesystem_aspect.mps | 1046 +++++++++++++++ ...rg.mpsqa.lint.mps_lang.linters_library.msd | 5 + 3 files changed, 1367 insertions(+), 827 deletions(-) diff --git a/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.performance_typesystem_rules.mps b/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.performance_typesystem_rules.mps index 3bc18a41..a0cac97f 100644 --- a/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.performance_typesystem_rules.mps +++ b/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.performance_typesystem_rules.mps @@ -11,20 +11,17 @@ - - - - - - - + + + + @@ -42,15 +39,12 @@ + - - - - @@ -96,19 +90,21 @@ - - - - - - + + + + + + + + @@ -136,23 +132,14 @@ - - - - - - - - - @@ -180,17 +167,6 @@ - - - - - - - - - - - @@ -211,12 +187,7 @@ - - - - - @@ -255,63 +226,12 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + @@ -330,7 +250,7 @@ - + @@ -349,6 +269,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -357,238 +326,77 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -596,27 +404,7 @@ - - - - - - - - - - - - - - - - - - - - - + @@ -627,75 +415,25 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + + - @@ -770,11 +508,8 @@ - - - - - + + @@ -792,9 +527,6 @@ - - - @@ -831,7 +563,7 @@ - + @@ -839,7 +571,7 @@ - + @@ -890,7 +622,19 @@ - + + + + + + + + + + + + + @@ -1011,8 +755,8 @@ - - + + @@ -1052,7 +796,7 @@ - + @@ -1142,90 +886,39 @@ - - + + - - + + - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - + + + - - - + + + - + @@ -1234,69 +927,48 @@ - - - + + + - + - - - + + + - - + + - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - - - - + + + + - - - + + + + + + @@ -1304,226 +976,112 @@ - - - - - - - - - - + + + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -1550,75 +1108,25 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + + - @@ -1734,11 +1242,8 @@ - - - - - + + @@ -1746,32 +1251,16 @@ - - - - - - - - - - - + + + - - - - - - - + + - - - @@ -1808,7 +1297,7 @@ - + diff --git a/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.typesystem_aspect.mps b/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.typesystem_aspect.mps index 38987d00..2c8b24aa 100644 --- a/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.typesystem_aspect.mps +++ b/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/models/org.mpsqa.lint.mps_lang.linters_library.typesystem_aspect.mps @@ -8,15 +8,34 @@ + + + + + + + + + + + + + + + + + + + @@ -33,6 +52,18 @@ + + + + + + + + + + + + @@ -42,10 +73,17 @@ + + + + + + + @@ -57,6 +95,10 @@ + + + + @@ -64,20 +106,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -96,18 +173,35 @@ + + + + + + + + + + + + + + + + + @@ -121,8 +215,15 @@ + + + + + + + @@ -135,7 +236,9 @@ + + @@ -162,8 +265,14 @@ + + + + + + @@ -516,5 +625,942 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/org.mpsqa.lint.mps_lang.linters_library.msd b/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/org.mpsqa.lint.mps_lang.linters_library.msd index 28f8ba2b..4527041b 100644 --- a/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/org.mpsqa.lint.mps_lang.linters_library.msd +++ b/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.mps_lang.linters_library/org.mpsqa.lint.mps_lang.linters_library.msd @@ -33,6 +33,8 @@ 0cf935df-4699-4e9c-a132-fa109541cba3(jetbrains.mps.build.mps) 8e98f4e2-decf-4e97-bf80-9109e8b759ee(jetbrains.mps.lang.constraints.rules.runtime) 8585453e-6bfb-4d80-98de-b16074f1d86c(jetbrains.mps.lang.test) + c7d5b9dd-a05f-4be2-bc73-f2e16994cc67(jetbrains.mps.baseLanguage.lightweightdsl) + 90746344-04fd-4286-97d5-b46ae6a81709(jetbrains.mps.lang.migration) @@ -40,6 +42,7 @@ + @@ -61,6 +64,7 @@ + @@ -77,6 +81,7 @@ +