diff options
author | 2024-01-31 02:00:09 +0100 | |
---|---|---|
committer | 2024-01-31 18:45:13 +0100 | |
commit | c63126d2f1ce5f571c316b37e00fb43d2da7c7d3 (patch) | |
tree | 16e9dd04624565f7c9ccedd17749a9f264e89cb0 /subprojects/language-model/src/main/resources/model/problem.ecore | |
parent | fix(build): avoid cyclic dependency (diff) | |
download | refinery-c63126d2f1ce5f571c316b37e00fb43d2da7c7d3.tar.gz refinery-c63126d2f1ce5f571c316b37e00fb43d2da7c7d3.tar.zst refinery-c63126d2f1ce5f571c316b37e00fb43d2da7c7d3.zip |
refactor(language): module and node declarations
* New default file extension: .refinery (.problem is also supported).
* Add module keyword for self-contained modules.
* Rename indiv declarations to atom declaration.
* Add node and multi declarations for explicitly declared nodes and
multi-objects, respectively.
Diffstat (limited to 'subprojects/language-model/src/main/resources/model/problem.ecore')
-rw-r--r-- | subprojects/language-model/src/main/resources/model/problem.ecore | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/subprojects/language-model/src/main/resources/model/problem.ecore b/subprojects/language-model/src/main/resources/model/problem.ecore index 74229a89..aa05a2fe 100644 --- a/subprojects/language-model/src/main/resources/model/problem.ecore +++ b/subprojects/language-model/src/main/resources/model/problem.ecore | |||
@@ -6,6 +6,7 @@ | |||
6 | eType="#//Node" transient="true" containment="true"/> | 6 | eType="#//Node" transient="true" containment="true"/> |
7 | <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" | 7 | <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" |
8 | eType="#//Statement" containment="true"/> | 8 | eType="#//Statement" containment="true"/> |
9 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//ModuleKind"/> | ||
9 | </eClassifiers> | 10 | </eClassifiers> |
10 | <eClassifiers xsi:type="ecore:EClass" name="ClassDeclaration" eSuperTypes="#//Statement #//Relation"> | 11 | <eClassifiers xsi:type="ecore:EClass" name="ClassDeclaration" eSuperTypes="#//Statement #//Relation"> |
11 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | 12 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> |
@@ -109,9 +110,10 @@ | |||
109 | <eStructuralFeatures xsi:type="ecore:EReference" name="node" eType="#//Node"/> | 110 | <eStructuralFeatures xsi:type="ecore:EReference" name="node" eType="#//Node"/> |
110 | </eClassifiers> | 111 | </eClassifiers> |
111 | <eClassifiers xsi:type="ecore:EClass" name="AssertionArgument" abstract="true"/> | 112 | <eClassifiers xsi:type="ecore:EClass" name="AssertionArgument" abstract="true"/> |
112 | <eClassifiers xsi:type="ecore:EClass" name="IndividualDeclaration" eSuperTypes="#//Statement"> | 113 | <eClassifiers xsi:type="ecore:EClass" name="NodeDeclaration" eSuperTypes="#//Statement"> |
113 | <eStructuralFeatures xsi:type="ecore:EReference" name="nodes" upperBound="-1" | 114 | <eStructuralFeatures xsi:type="ecore:EReference" name="nodes" upperBound="-1" |
114 | eType="#//Node" containment="true"/> | 115 | eType="#//Node" containment="true"/> |
116 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//NodeKind"/> | ||
115 | </eClassifiers> | 117 | </eClassifiers> |
116 | <eClassifiers xsi:type="ecore:EClass" name="WildcardAssertionArgument" eSuperTypes="#//AssertionArgument"/> | 118 | <eClassifiers xsi:type="ecore:EClass" name="WildcardAssertionArgument" eSuperTypes="#//AssertionArgument"/> |
117 | <eClassifiers xsi:type="ecore:EClass" name="ParametricDefinition" abstract="true" | 119 | <eClassifiers xsi:type="ecore:EClass" name="ParametricDefinition" abstract="true" |
@@ -259,4 +261,13 @@ | |||
259 | <eClassifiers xsi:type="ecore:EClass" name="LogicConstant" eSuperTypes="#//Constant"> | 261 | <eClassifiers xsi:type="ecore:EClass" name="LogicConstant" eSuperTypes="#//Constant"> |
260 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="logicValue" eType="#//LogicValue"/> | 262 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="logicValue" eType="#//LogicValue"/> |
261 | </eClassifiers> | 263 | </eClassifiers> |
264 | <eClassifiers xsi:type="ecore:EEnum" name="ModuleKind"> | ||
265 | <eLiterals name="PROBLEM"/> | ||
266 | <eLiterals name="MODULE" value="1"/> | ||
267 | </eClassifiers> | ||
268 | <eClassifiers xsi:type="ecore:EEnum" name="NodeKind"> | ||
269 | <eLiterals name="NODE"/> | ||
270 | <eLiterals name="ATOM" value="1"/> | ||
271 | <eLiterals name="MULTI" value="2"/> | ||
272 | </eClassifiers> | ||
262 | </ecore:EPackage> | 273 | </ecore:EPackage> |