aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/language-model/src/main/resources/model/problem.genmodel
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2024-03-05 22:01:10 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2024-04-07 14:55:46 +0200
commitc14d8efd509f834b80573bc0339bb990698b265c (patch)
treedc3ca21785ea17bc75a861f373ee69ec64d6e97f /subprojects/language-model/src/main/resources/model/problem.genmodel
parentfeat(language): validate assignment expressions (diff)
downloadrefinery-c14d8efd509f834b80573bc0339bb990698b265c.tar.gz
refinery-c14d8efd509f834b80573bc0339bb990698b265c.tar.zst
refinery-c14d8efd509f834b80573bc0339bb990698b265c.zip
feat(language): type inference
* Customizable operator overloads. * Customizable aggregation operators. * Simplify ProblemQualifiedNameProvider.
Diffstat (limited to 'subprojects/language-model/src/main/resources/model/problem.genmodel')
-rw-r--r--subprojects/language-model/src/main/resources/model/problem.genmodel28
1 files changed, 8 insertions, 20 deletions
diff --git a/subprojects/language-model/src/main/resources/model/problem.genmodel b/subprojects/language-model/src/main/resources/model/problem.genmodel
index 927ec609..2a1d8522 100644
--- a/subprojects/language-model/src/main/resources/model/problem.genmodel
+++ b/subprojects/language-model/src/main/resources/model/problem.genmodel
@@ -16,12 +16,6 @@
16 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//LogicValue/UNKNOWN"/> 16 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//LogicValue/UNKNOWN"/>
17 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//LogicValue/ERROR"/> 17 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//LogicValue/ERROR"/>
18 </genEnums> 18 </genEnums>
19 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//Modality">
20 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//Modality/DEFAULT"/>
21 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//Modality/MAY"/>
22 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//Modality/MUST"/>
23 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//Modality/CURRENT"/>
24 </genEnums>
25 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//ComparisonOp"> 19 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//ComparisonOp">
26 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/LESS"/> 20 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/LESS"/>
27 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/LESS_EQ"/> 21 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/LESS_EQ"/>
@@ -30,10 +24,8 @@
30 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/EQ"/> 24 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/EQ"/>
31 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/NOT_EQ"/> 25 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/NOT_EQ"/>
32 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/IN"/> 26 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/IN"/>
33 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/SUBSUMES"/> 27 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/NODE_EQ"/>
34 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/SUBSUMED_BY"/> 28 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/NODE_NOT_EQ"/>
35 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/ABS_EQ"/>
36 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ComparisonOp/ABS_NOT_EQ"/>
37 </genEnums> 29 </genEnums>
38 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//ReferenceKind"> 30 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//ReferenceKind">
39 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ReferenceKind/DEFAULT"/> 31 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ReferenceKind/DEFAULT"/>
@@ -51,12 +43,9 @@
51 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/MUL"/> 43 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/MUL"/>
52 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/DIV"/> 44 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/DIV"/>
53 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/POW"/> 45 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/POW"/>
54 </genEnums> 46 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/AND"/>
55 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//AggregationOp"> 47 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/OR"/>
56 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//AggregationOp/SUM"/> 48 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//BinaryOp/XOR"/>
57 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//AggregationOp/PROD"/>
58 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//AggregationOp/MIN"/>
59 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//AggregationOp/MAX"/>
60 </genEnums> 49 </genEnums>
61 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//ModuleKind"> 50 <genEnums typeSafeEnumCompatible="false" ecoreEnum="problem.ecore#//ModuleKind">
62 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ModuleKind/PROBLEM"/> 51 <genEnumLiterals ecoreEnumLiteral="problem.ecore#//ModuleKind/PROBLEM"/>
@@ -200,7 +189,7 @@
200 <genClasses ecoreClass="problem.ecore#//AggregationExpr"> 189 <genClasses ecoreClass="problem.ecore#//AggregationExpr">
201 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference problem.ecore#//AggregationExpr/value"/> 190 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference problem.ecore#//AggregationExpr/value"/>
202 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference problem.ecore#//AggregationExpr/condition"/> 191 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference problem.ecore#//AggregationExpr/condition"/>
203 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute problem.ecore#//AggregationExpr/op"/> 192 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//AggregationExpr/aggregator"/>
204 </genClasses> 193 </genClasses>
205 <genClasses ecoreClass="problem.ecore#//ComparisonExpr"> 194 <genClasses ecoreClass="problem.ecore#//ComparisonExpr">
206 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute problem.ecore#//ComparisonExpr/op"/> 195 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute problem.ecore#//ComparisonExpr/op"/>
@@ -224,9 +213,6 @@
224 <genClasses ecoreClass="problem.ecore#//NegationExpr"/> 213 <genClasses ecoreClass="problem.ecore#//NegationExpr"/>
225 <genClasses ecoreClass="problem.ecore#//CountExpr"/> 214 <genClasses ecoreClass="problem.ecore#//CountExpr"/>
226 <genClasses ecoreClass="problem.ecore#//Relation"/> 215 <genClasses ecoreClass="problem.ecore#//Relation"/>
227 <genClasses ecoreClass="problem.ecore#//ModalExpr">
228 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute problem.ecore#//ModalExpr/modality"/>
229 </genClasses>
230 <genClasses ecoreClass="problem.ecore#//RangeExpr"/> 216 <genClasses ecoreClass="problem.ecore#//RangeExpr"/>
231 <genClasses ecoreClass="problem.ecore#//LogicConstant"> 217 <genClasses ecoreClass="problem.ecore#//LogicConstant">
232 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute problem.ecore#//LogicConstant/logicValue"/> 218 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute problem.ecore#//LogicConstant/logicValue"/>
@@ -244,5 +230,7 @@
244 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//CastExpr/targetType"/> 230 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//CastExpr/targetType"/>
245 </genClasses> 231 </genClasses>
246 <genClasses ecoreClass="problem.ecore#//AssignmentExpr"/> 232 <genClasses ecoreClass="problem.ecore#//AssignmentExpr"/>
233 <genClasses ecoreClass="problem.ecore#//InfiniteConstant"/>
234 <genClasses ecoreClass="problem.ecore#//AggregatorDeclaration"/>
247 </genPackages> 235 </genPackages>
248</genmodel:GenModel> 236</genmodel:GenModel>