Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
PLMZ
iTypes
Commits
cbb1154a
Commit
cbb1154a
authored
Nov 13, 2019
by
André Pacak
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactor type elimination transformation
parent
4ac94315
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
2005 additions
and
1139 deletions
+2005
-1139
inca-translation/languages/TypeLang/TypeLang.mpl
inca-translation/languages/TypeLang/TypeLang.mpl
+3
-0
inca-translation/languages/TypeLang/generator/template/TypeLang.generator.util.mps
...s/TypeLang/generator/template/TypeLang.generator.util.mps
+1575
-0
inca-translation/languages/TypeLang/generator/template/main@generator.mps
.../languages/TypeLang/generator/template/main@generator.mps
+237
-1139
inca-translation/languages/TypeLang/models/behavior.mps
inca-translation/languages/TypeLang/models/behavior.mps
+190
-0
No files found.
inca-translation/languages/TypeLang/TypeLang.mpl
View file @
cbb1154a
...
...
@@ -25,6 +25,7 @@
<dependency
reexport=
"false"
>
1bc49cec-41e6-417f-a12b-f0e0125494e9(org.inca.core#4530729936991344007)
</dependency>
</dependencies>
<languageVersions>
<language
slang=
"l:ab9b5480-36a1-4fc2-9c9d-f0faa4fc1b71:TypeLang"
version=
"0"
/>
<language
slang=
"l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage"
version=
"6"
/>
<language
slang=
"l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures"
version=
"0"
/>
<language
slang=
"l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections"
version=
"0"
/>
...
...
@@ -64,6 +65,7 @@
<module
reference=
"f2801650-65d5-424e-bb1b-463a8781b786(jetbrains.mps.baseLanguage.javadoc)"
version=
"0"
/>
<module
reference=
"e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)"
version=
"0"
/>
<module
reference=
"2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)"
version=
"0"
/>
<module
reference=
"d936855b-48da-4812-a8a0-2bfddd633ac5(jetbrains.mps.lang.behavior.api)"
version=
"0"
/>
<module
reference=
"ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)"
version=
"0"
/>
<module
reference=
"446c26eb-2b7b-4bf0-9b35-f83fa582753e(jetbrains.mps.lang.modelapi)"
version=
"0"
/>
<module
reference=
"7866978e-a0f0-4cc7-81bc-4d213d9375e1(jetbrains.mps.lang.smodel)"
version=
"1"
/>
...
...
@@ -163,6 +165,7 @@
<module
reference=
"f2801650-65d5-424e-bb1b-463a8781b786(jetbrains.mps.baseLanguage.javadoc)"
version=
"0"
/>
<module
reference=
"e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)"
version=
"0"
/>
<module
reference=
"2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)"
version=
"0"
/>
<module
reference=
"d936855b-48da-4812-a8a0-2bfddd633ac5(jetbrains.mps.lang.behavior.api)"
version=
"0"
/>
<module
reference=
"ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)"
version=
"0"
/>
<module
reference=
"a9e4c532-c5f5-4bb7-99ef-42abb73bbb70(jetbrains.mps.lang.descriptor.aspects)"
version=
"0"
/>
<module
reference=
"446c26eb-2b7b-4bf0-9b35-f83fa582753e(jetbrains.mps.lang.modelapi)"
version=
"0"
/>
...
...
inca-translation/languages/TypeLang/generator/template/TypeLang.generator.util.mps
View file @
cbb1154a
This diff is collapsed.
Click to expand it.
inca-translation/languages/TypeLang/generator/template/main@generator.mps
View file @
cbb1154a
This diff is collapsed.
Click to expand it.
inca-translation/languages/TypeLang/models/behavior.mps
View file @
cbb1154a
...
...
@@ -294,11 +294,13 @@
<concept
id=
"1203518072036"
name=
"jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration"
flags=
"ig"
index=
"Rh6nW"
/>
<concept
id=
"1160600644654"
name=
"jetbrains.mps.baseLanguage.collections.structure.ListCreatorWithInit"
flags=
"nn"
index=
"Tc6Ow"
/>
<concept
id=
"1160612413312"
name=
"jetbrains.mps.baseLanguage.collections.structure.AddElementOperation"
flags=
"nn"
index=
"TSZUe"
/>
<concept
id=
"1171391069720"
name=
"jetbrains.mps.baseLanguage.collections.structure.GetIndexOfOperation"
flags=
"nn"
index=
"2WmjW8"
/>
<concept
id=
"1160666733551"
name=
"jetbrains.mps.baseLanguage.collections.structure.AddAllElementsOperation"
flags=
"nn"
index=
"X8dFx"
/>
<concept
id=
"1162934736510"
name=
"jetbrains.mps.baseLanguage.collections.structure.GetElementOperation"
flags=
"nn"
index=
"34jXtK"
/>
<concept
id=
"1162935959151"
name=
"jetbrains.mps.baseLanguage.collections.structure.GetSizeOperation"
flags=
"nn"
index=
"34oBXx"
/>
<concept
id=
"1167380149909"
name=
"jetbrains.mps.baseLanguage.collections.structure.RemoveElementOperation"
flags=
"nn"
index=
"3dhRuq"
/>
<concept
id=
"1165525191778"
name=
"jetbrains.mps.baseLanguage.collections.structure.GetFirstOperation"
flags=
"nn"
index=
"1uHKPH"
/>
<concept
id=
"1225727723840"
name=
"jetbrains.mps.baseLanguage.collections.structure.FindFirstOperation"
flags=
"nn"
index=
"1z4cxt"
/>
<concept
id=
"1202120902084"
name=
"jetbrains.mps.baseLanguage.collections.structure.WhereOperation"
flags=
"nn"
index=
"3zZkjj"
/>
<concept
id=
"1176501494711"
name=
"jetbrains.mps.baseLanguage.collections.structure.IsNotEmptyOperation"
flags=
"nn"
index=
"3GX2aA"
/>
<concept
id=
"1172254888721"
name=
"jetbrains.mps.baseLanguage.collections.structure.ContainsOperation"
flags=
"nn"
index=
"3JPx81"
/>
...
...
@@ -1004,6 +1006,78 @@
<ref
role=
"2I9WkF"
to=
"b83y:2U2uJPpd5x5"
resolve=
"Sort"
/>
</node>
</node>
<node
concept=
"13i0hz"
id=
"7DdCaEODOqJ"
role=
"13h7CS"
>
<property
role=
"13i0iv"
value=
"false"
/>
<property
role=
"13i0it"
value=
"false"
/>
<property
role=
"TrG5h"
value=
"getInfiniteInputSortByName"
/>
<node
concept=
"3Tm1VV"
id=
"7DdCaEODOqK"
role=
"1B3o_S"
/>
<node
concept=
"3clFbS"
id=
"7DdCaEODOqL"
role=
"3clF47"
>
<node
concept=
"3clFbF"
id=
"7DdCaEODTXS"
role=
"3cqZAp"
>
<node
concept=
"2OqwBi"
id=
"7DdCaEODW8B"
role=
"3clFbG"
>
<node
concept=
"BsUDl"
id=
"7DdCaEODTXR"
role=
"2Oq$k0"
>
<ref
role=
"37wK5l"
node=
"4XA4NEmHFP0"
resolve=
"getInfiniteInputSorts"
/>
</node>
<node
concept=
"1z4cxt"
id=
"7DdCaEOE13F"
role=
"2OqNvi"
>
<node
concept=
"1bVj0M"
id=
"7DdCaEOE13H"
role=
"23t8la"
>
<node
concept=
"3clFbS"
id=
"7DdCaEOE13I"
role=
"1bW5cS"
>
<node
concept=
"3clFbF"
id=
"7DdCaEOE19c"
role=
"3cqZAp"
>
<node
concept=
"1Wc70l"
id=
"7DdCaEOE38W"
role=
"3clFbG"
>
<node
concept=
"2OqwBi"
id=
"7DdCaEOEfm8"
role=
"3uHU7w"
>
<node
concept=
"2OqwBi"
id=
"7DdCaEOE6Ni"
role=
"2Oq$k0"
>
<node
concept=
"2OqwBi"
id=
"7DdCaEOE3ZF"
role=
"2Oq$k0"
>
<node
concept=
"1PxgMI"
id=
"7DdCaEOE3$x"
role=
"2Oq$k0"
>
<node
concept=
"chp4Y"
id=
"7DdCaEOE3JA"
role=
"3oSUPX"
>
<ref
role=
"cht4Q"
to=
"b83y:2_58u12cYwo"
resolve=
"SortConcept"
/>
</node>
<node
concept=
"37vLTw"
id=
"7DdCaEOE3eB"
role=
"1m5AlR"
>
<ref
role=
"3cqZAo"
node=
"7DdCaEOE13J"
resolve=
"it"
/>
</node>
</node>
<node
concept=
"3TrEf2"
id=
"7DdCaEOE4lK"
role=
"2OqNvi"
>
<ref
role=
"3Tt5mk"
to=
"b83y:2_58u12cYws"
resolve=
"sort"
/>
</node>
</node>
<node
concept=
"3TrcHB"
id=
"7DdCaEOE9hu"
role=
"2OqNvi"
>
<ref
role=
"3TsBF5"
to=
"tpck:h0TrG11"
resolve=
"name"
/>
</node>
</node>
<node
concept=
"liA8E"
id=
"7DdCaEOEi4V"
role=
"2OqNvi"
>
<ref
role=
"37wK5l"
to=
"wyt6:~String.equals(java.lang.Object):boolean"
resolve=
"equals"
/>
<node
concept=
"37vLTw"
id=
"7DdCaEOEivR"
role=
"37wK5m"
>
<ref
role=
"3cqZAo"
node=
"7DdCaEODTCk"
resolve=
"name"
/>
</node>
</node>
</node>
<node
concept=
"2OqwBi"
id=
"7DdCaEOE1lo"
role=
"3uHU7B"
>
<node
concept=
"37vLTw"
id=
"7DdCaEOE19b"
role=
"2Oq$k0"
>
<ref
role=
"3cqZAo"
node=
"7DdCaEOE13J"
resolve=
"it"
/>
</node>
<node
concept=
"1mIQ4w"
id=
"7DdCaEOE2El"
role=
"2OqNvi"
>
<node
concept=
"chp4Y"
id=
"7DdCaEOE2Mg"
role=
"cj9EA"
>
<ref
role=
"cht4Q"
to=
"b83y:2_58u12cYwo"
resolve=
"SortConcept"
/>
</node>
</node>
</node>
</node>
</node>
</node>
<node
concept=
"Rh6nW"
id=
"7DdCaEOE13J"
role=
"1bW2Oz"
>
<property
role=
"TrG5h"
value=
"it"
/>
<node
concept=
"2jxLKc"
id=
"7DdCaEOE13K"
role=
"1tU5fm"
/>
</node>
</node>
</node>
</node>
</node>
</node>
<node
concept=
"3Tqbb2"
id=
"7DdCaEODPg1"
role=
"3clF45"
>
<ref
role=
"ehGHo"
to=
"b83y:2U2uJPpd5x5"
resolve=
"Sort"
/>
</node>
<node
concept=
"37vLTG"
id=
"7DdCaEODTCk"
role=
"3clF46"
>
<property
role=
"TrG5h"
value=
"name"
/>
<node
concept=
"17QB3L"
id=
"7DdCaEODTCj"
role=
"1tU5fm"
/>
</node>
</node>
<node
concept=
"13i0hz"
id=
"5bZNdPkea12"
role=
"13h7CS"
>
<property
role=
"13i0iv"
value=
"true"
/>
<property
role=
"13i0it"
value=
"true"
/>
...
...
@@ -3034,6 +3108,122 @@
</node>
</node>
</node>
<node
concept=
"13i0hz"
id=
"1HuZxihg$ar"
role=
"13h7CS"
>
<property
role=
"13i0iv"
value=
"false"
/>
<property
role=
"13i0it"
value=
"false"
/>
<property
role=
"TrG5h"
value=
"getArgumentBySortName"
/>
<node
concept=
"3Tm1VV"
id=
"1HuZxihg$as"
role=
"1B3o_S"
/>
<node
concept=
"3clFbS"
id=
"1HuZxihg$au"
role=
"3clF47"
>
<node
concept=
"3cpWs8"
id=
"1HuZxihgJa_"
role=
"3cqZAp"
>
<node
concept=
"3cpWsn"
id=
"1HuZxihgJaA"
role=
"3cpWs9"
>
<property
role=
"TrG5h"
value=
"sort"
/>
<node
concept=
"3Tqbb2"
id=
"1HuZxihgJa9"
role=
"1tU5fm"
>
<ref
role=
"ehGHo"
to=
"b83y:2U2uJPpd5x5"
resolve=
"Sort"
/>
</node>
<node
concept=
"2OqwBi"
id=
"1HuZxihgJaB"
role=
"33vP2m"
>
<node
concept=
"1z4cxt"
id=
"1HuZxihgJaC"
role=
"2OqNvi"
>
<node
concept=
"1bVj0M"
id=
"1HuZxihgJaD"
role=
"23t8la"
>
<node
concept=
"3clFbS"
id=
"1HuZxihgJaE"
role=
"1bW5cS"
>
<node
concept=
"3clFbF"
id=
"1HuZxihgJaF"
role=
"3cqZAp"
>
<node
concept=
"1Wc70l"
id=
"1HuZxihgJaG"
role=
"3clFbG"
>
<node
concept=
"2OqwBi"
id=
"1HuZxihgJaH"
role=
"3uHU7w"
>
<node
concept=
"2OqwBi"
id=
"1HuZxihgJaI"
role=
"2Oq$k0"
>
<node
concept=
"2OqwBi"
id=
"1HuZxihgJaJ"
role=
"2Oq$k0"
>
<node
concept=
"1PxgMI"
id=
"1HuZxihgJaK"
role=
"2Oq$k0"
>
<node
concept=
"chp4Y"
id=
"1HuZxihgJaL"
role=
"3oSUPX"
>
<ref
role=
"cht4Q"
to=
"b83y:2_58u12cYwo"
resolve=
"SortConcept"
/>
</node>
<node
concept=
"37vLTw"
id=
"1HuZxihgJaM"
role=
"1m5AlR"
>
<ref
role=
"3cqZAo"
node=
"1HuZxihgJaV"
resolve=
"it"
/>
</node>
</node>
<node
concept=
"3TrEf2"
id=
"1HuZxihgJaN"
role=
"2OqNvi"
>
<ref
role=
"3Tt5mk"
to=
"b83y:2_58u12cYws"
resolve=
"sort"
/>
</node>
</node>
<node
concept=
"3TrcHB"
id=
"1HuZxihgJaO"
role=
"2OqNvi"
>
<ref
role=
"3TsBF5"
to=
"tpck:h0TrG11"
resolve=
"name"
/>
</node>
</node>
<node
concept=
"liA8E"
id=
"1HuZxihgJaP"
role=
"2OqNvi"
>
<ref
role=
"37wK5l"
to=
"wyt6:~String.equals(java.lang.Object):boolean"
resolve=
"equals"
/>
<node
concept=
"37vLTw"
id=
"1HuZxihgJaQ"
role=
"37wK5m"
>
<ref
role=
"3cqZAo"
node=
"1HuZxihgB1j"
resolve=
"name"
/>
</node>
</node>
</node>
<node
concept=
"2OqwBi"
id=
"1HuZxihgJaR"
role=
"3uHU7B"
>
<node
concept=
"37vLTw"
id=
"1HuZxihgJaS"
role=
"2Oq$k0"
>
<ref
role=
"3cqZAo"
node=
"1HuZxihgJaV"
resolve=
"it"
/>
</node>
<node
concept=
"1mIQ4w"
id=
"1HuZxihgJaT"
role=
"2OqNvi"
>
<node
concept=
"chp4Y"
id=
"1HuZxihgJaU"
role=
"cj9EA"
>
<ref
role=
"cht4Q"
to=
"b83y:2_58u12cYwo"
resolve=
"SortConcept"
/>
</node>
</node>
</node>
</node>
</node>
</node>
<node
concept=
"Rh6nW"
id=
"1HuZxihgJaV"
role=
"1bW2Oz"
>
<property
role=
"TrG5h"
value=
"it"
/>
<node
concept=
"2jxLKc"
id=
"1HuZxihgJaW"
role=
"1tU5fm"
/>
</node>
</node>
</node>
<node
concept=
"2OqwBi"
id=
"1HuZxihgJaX"
role=
"2Oq$k0"
>
<node
concept=
"BsUDl"
id=
"1HuZxihgJaY"
role=
"2Oq$k0"
>
<ref
role=
"37wK5l"
node=
"iMPJyMM1Nb"
resolve=
"getJudgment"
/>
</node>
<node
concept=
"2qgKlT"
id=
"1HuZxihgJaZ"
role=
"2OqNvi"
>
<ref
role=
"37wK5l"
node=
"4XA4NEmGQRd"
resolve=
"getSorts"
/>
</node>
</node>
</node>
</node>
</node>
<node
concept=
"3cpWs8"
id=
"1HuZxihgRB8"
role=
"3cqZAp"
>
<node
concept=
"3cpWsn"
id=
"1HuZxihgRB9"
role=
"3cpWs9"
>
<property
role=
"TrG5h"
value=
"sortIndex"
/>
<node
concept=
"10Oyi0"
id=
"1HuZxihgRAE"
role=
"1tU5fm"
/>
<node
concept=
"2OqwBi"
id=
"1HuZxihgRBa"
role=
"33vP2m"
>
<node
concept=
"2OqwBi"
id=
"1HuZxihgRBb"
role=
"2Oq$k0"
>
<node
concept=
"BsUDl"
id=
"1HuZxihgRBc"
role=
"2Oq$k0"
>
<ref
role=
"37wK5l"
node=
"iMPJyMM1Nb"
resolve=
"getJudgment"
/>
</node>
<node
concept=
"2qgKlT"
id=
"1HuZxihgRBd"
role=
"2OqNvi"
>
<ref
role=
"37wK5l"
node=
"4XA4NEmGQRd"
resolve=
"getSorts"
/>
</node>
</node>
<node
concept=
"2WmjW8"
id=
"1HuZxihgRBe"
role=
"2OqNvi"
>
<node
concept=
"37vLTw"
id=
"1HuZxihgRBf"
role=
"25WWJ7"
>
<ref
role=
"3cqZAo"
node=
"1HuZxihgJaA"
resolve=
"sort"
/>
</node>
</node>
</node>
</node>
</node>
<node
concept=
"3cpWs6"
id=
"1HuZxihgTkd"
role=
"3cqZAp"
>
<node
concept=
"2OqwBi"
id=
"1HuZxihgVIY"
role=
"3cqZAk"
>
<node
concept=
"BsUDl"
id=
"1HuZxihgUlZ"
role=
"2Oq$k0"
>
<ref
role=
"37wK5l"
node=
"5YqjVV7s$$Q"
resolve=
"getArguments"
/>
</node>
<node
concept=
"34jXtK"
id=
"1HuZxihgZ2K"
role=
"2OqNvi"
>
<node
concept=
"37vLTw"
id=
"1HuZxihgZ$Q"
role=
"25WWJ7"
>
<ref
role=
"3cqZAo"
node=
"1HuZxihgRB9"
resolve=
"sortIndex"
/>
</node>
</node>
</node>
</node>
</node>
<node
concept=
"37vLTG"
id=
"1HuZxihgB1j"
role=
"3clF46"
>
<property
role=
"TrG5h"
value=
"name"
/>
<node
concept=
"17QB3L"
id=
"1HuZxihgB1i"
role=
"1tU5fm"
/>
</node>
<node
concept=
"3Tqbb2"
id=
"1HuZxihh19Q"
role=
"3clF45"
>
<ref
role=
"ehGHo"
to=
"b83y:2_58u12g7Tn"
resolve=
"IMetaTerm"
/>
</node>
</node>
<node
concept=
"13i0hz"
id=
"2U2uJPpKTiQ"
role=
"13h7CS"
>
<property
role=
"13i0iv"
value=
"false"
/>
<property
role=
"13i0it"
value=
"false"
/>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment