From 9b8a560edce3184ebf71abf88b4ac7283eb4525d Mon Sep 17 00:00:00 2001 From: Fedor Isakov Date: Wed, 15 Apr 2020 10:40:59 +0200 Subject: [PATCH] Simplify generator template for Splice, rely on java method overloading. LogicalUtil defines a bunch of overloaded methods that help dispatch data form construction based on runtime class of logical variable. This eliminates the need to use coerce in generator template. --- .../generator/template/main@generator.mps | 432 +----------------- .../jetbrains.mps.logic.unification.mps | 190 +++++++- 2 files changed, 193 insertions(+), 429 deletions(-) diff --git a/coderules/languages/jetbrains.mps.logic/generator/template/main@generator.mps b/coderules/languages/jetbrains.mps.logic/generator/template/main@generator.mps index eaac4b92..1c4756fc 100644 --- a/coderules/languages/jetbrains.mps.logic/generator/template/main@generator.mps +++ b/coderules/languages/jetbrains.mps.logic/generator/template/main@generator.mps @@ -84,11 +84,6 @@ - - - - - @@ -116,9 +111,6 @@ - - - @@ -194,13 +186,7 @@ - - - - - - @@ -208,9 +194,6 @@ - - - @@ -506,29 +489,8 @@ - + - - - - - - - - - - - - - - - - - - - - - @@ -1251,365 +1213,13 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1633,34 +1243,30 @@ - - - - + + + + - - - - - - - - - + - + - - - - - - - + + + + + + + + + + + diff --git a/coderules/languages/jetbrains.mps.logic/runtime/models/jetbrains.mps.logic.unification.mps b/coderules/languages/jetbrains.mps.logic/runtime/models/jetbrains.mps.logic.unification.mps index faabd809..ec752007 100644 --- a/coderules/languages/jetbrains.mps.logic/runtime/models/jetbrains.mps.logic.unification.mps +++ b/coderules/languages/jetbrains.mps.logic/runtime/models/jetbrains.mps.logic.unification.mps @@ -1813,18 +1813,25 @@ - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -1921,8 +1928,8 @@ - - + + @@ -1954,7 +1961,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1966,8 +2036,8 @@ - - + + @@ -2008,8 +2078,8 @@ - - + + @@ -2038,6 +2108,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +