diff options
author | Kristóf Marussy <marussy@mit.bme.hu> | 2020-05-08 18:28:19 +0200 |
---|---|---|
committer | Kristóf Marussy <marussy@mit.bme.hu> | 2020-05-08 18:28:19 +0200 |
commit | 419e76265ecbdf65e960e0624be006d31ed1e191 (patch) | |
tree | dad200fe9fd0beae7adde969206b77691a51b85a /Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore | |
parent | Fix check expressions in generated VIATRA (diff) | |
download | VIATRA-Generator-419e76265ecbdf65e960e0624be006d31ed1e191.tar.gz VIATRA-Generator-419e76265ecbdf65e960e0624be006d31ed1e191.tar.zst VIATRA-Generator-419e76265ecbdf65e960e0624be006d31ed1e191.zip |
Update solver language grammar
First version, still needs TokenSource and Linker to work.
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore')
-rw-r--r-- | Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore | 302 |
1 files changed, 196 insertions, 106 deletions
diff --git a/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore b/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore index c18e4184..aa1c579f 100644 --- a/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore +++ b/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore | |||
@@ -6,147 +6,237 @@ | |||
6 | <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" | 6 | <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" |
7 | eType="#//Statement" containment="true"/> | 7 | eType="#//Statement" containment="true"/> |
8 | </eClassifiers> | 8 | </eClassifiers> |
9 | <eClassifiers xsi:type="ecore:EClass" name="Statement"/> | 9 | <eClassifiers xsi:type="ecore:EClass" name="Statement"> |
10 | <eClassifiers xsi:type="ecore:EClass" name="BooleanValue"/> | 10 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> |
11 | <eClassifiers xsi:type="ecore:EClass" name="TruthValue"/> | ||
12 | <eClassifiers xsi:type="ecore:EClass" name="Interpretation" eSuperTypes="#//Statement"/> | ||
13 | <eClassifiers xsi:type="ecore:EClass" name="BasicInterpretation" eSuperTypes="#//Interpretation"> | ||
14 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//Symbol" | ||
15 | containment="true"/> | ||
16 | <eStructuralFeatures xsi:type="ecore:EReference" name="objects" upperBound="-1" | ||
17 | eType="#//ComplexObject" containment="true"/> | ||
18 | <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//TruthValue" | ||
19 | containment="true"/> | ||
20 | </eClassifiers> | ||
21 | <eClassifiers xsi:type="ecore:EClass" name="Symbol"/> | ||
22 | <eClassifiers xsi:type="ecore:EClass" name="ModelSymbol" eSuperTypes="#//Symbol"> | ||
23 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
24 | </eClassifiers> | ||
25 | <eClassifiers xsi:type="ecore:EClass" name="PartialitySymbol" eSuperTypes="#//Symbol"/> | ||
26 | <eClassifiers xsi:type="ecore:EClass" name="ExistSymbol" eSuperTypes="#//PartialitySymbol"/> | ||
27 | <eClassifiers xsi:type="ecore:EClass" name="EqualsSymbol" eSuperTypes="#//PartialitySymbol"/> | ||
28 | <eClassifiers xsi:type="ecore:EClass" name="DataSymbol" eSuperTypes="#//Symbol"/> | ||
29 | <eClassifiers xsi:type="ecore:EClass" name="BooleanSymbol" eSuperTypes="#//DataSymbol"/> | ||
30 | <eClassifiers xsi:type="ecore:EClass" name="IntegerSymbol" eSuperTypes="#//DataSymbol"/> | ||
31 | <eClassifiers xsi:type="ecore:EClass" name="RealSymbol" eSuperTypes="#//DataSymbol"/> | ||
32 | <eClassifiers xsi:type="ecore:EClass" name="StringSymbol" eSuperTypes="#//DataSymbol"/> | ||
33 | <eClassifiers xsi:type="ecore:EClass" name="ComplexObject"/> | ||
34 | <eClassifiers xsi:type="ecore:EClass" name="Object" eSuperTypes="#//ComplexObject"/> | ||
35 | <eClassifiers xsi:type="ecore:EClass" name="NamedObject" eSuperTypes="#//Object #//Literal"> | ||
36 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | 11 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> |
12 | <eStructuralFeatures xsi:type="ecore:EReference" name="superclasses" unique="false" | ||
13 | upperBound="-1" eType="#//NamedElement"/> | ||
14 | <eStructuralFeatures xsi:type="ecore:EReference" name="members" upperBound="-1" | ||
15 | eType="#//MemberDefinition" containment="true"/> | ||
37 | </eClassifiers> | 16 | </eClassifiers> |
38 | <eClassifiers xsi:type="ecore:EClass" name="UnnamedObject" eSuperTypes="#//Object"> | 17 | <eClassifiers xsi:type="ecore:EClass" name="PredicateDefinition" eSuperTypes="#//Statement"> |
39 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | 18 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Expression" |
19 | containment="true"/> | ||
20 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
21 | containment="true"/> | ||
22 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="functional" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
23 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="error" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
40 | </eClassifiers> | 24 | </eClassifiers> |
41 | <eClassifiers xsi:type="ecore:EClass" name="DataObject" eSuperTypes="#//Object #//Literal"/> | 25 | <eClassifiers xsi:type="ecore:EClass" name="UnnamedErrorPrediateDefinition" eSuperTypes="#//Statement"> |
42 | <eClassifiers xsi:type="ecore:EClass" name="BooleanObject" eSuperTypes="#//DataObject"> | 26 | <eStructuralFeatures xsi:type="ecore:EReference" name="argumentList" eType="#//ArgumentList" |
43 | <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//BooleanValue" | 27 | containment="true"/> |
28 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
44 | containment="true"/> | 29 | containment="true"/> |
45 | </eClassifiers> | 30 | </eClassifiers> |
46 | <eClassifiers xsi:type="ecore:EClass" name="IntObject" eSuperTypes="#//DataObject"> | 31 | <eClassifiers xsi:type="ecore:EClass" name="DefaultDefinition" eSuperTypes="#//Statement"> |
47 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | 32 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Call" containment="true"/> |
33 | <eStructuralFeatures xsi:type="ecore:EReference" name="range" eType="#//Expression" | ||
34 | containment="true"/> | ||
48 | </eClassifiers> | 35 | </eClassifiers> |
49 | <eClassifiers xsi:type="ecore:EClass" name="RealObject" eSuperTypes="#//DataObject"> | 36 | <eClassifiers xsi:type="ecore:EClass" name="ExternPredicateDefinition" eSuperTypes="#//Statement"> |
50 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"/> | 37 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Call" containment="true"/> |
51 | </eClassifiers> | 38 | </eClassifiers> |
52 | <eClassifiers xsi:type="ecore:EClass" name="StringObject" eSuperTypes="#//DataObject"> | 39 | <eClassifiers xsi:type="ecore:EEnum" name="MetricType"> |
53 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | 40 | <eLiterals name="INT" literal="int"/> |
41 | <eLiterals name="REAL" value="1" literal="real"/> | ||
54 | </eClassifiers> | 42 | </eClassifiers> |
55 | <eClassifiers xsi:type="ecore:EClass" name="Predicate" eSuperTypes="#//Statement"> | 43 | <eClassifiers xsi:type="ecore:EClass" name="MetricDefinition" eSuperTypes="#//Statement"> |
56 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="isError" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | 44 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Expression" |
57 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol" | 45 | containment="true"/> |
46 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
58 | containment="true"/> | 47 | containment="true"/> |
59 | <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1" | 48 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//MetricType"/> |
60 | eType="#//Parameter" containment="true"/> | ||
61 | <eStructuralFeatures xsi:type="ecore:EReference" name="bodies" upperBound="-1" | ||
62 | eType="#//PatternBody" containment="true"/> | ||
63 | </eClassifiers> | 49 | </eClassifiers> |
64 | <eClassifiers xsi:type="ecore:EClass" name="Parameter"> | 50 | <eClassifiers xsi:type="ecore:EClass" name="ExternMetricDefinition" eSuperTypes="#//Statement"> |
65 | <eStructuralFeatures xsi:type="ecore:EReference" name="variable" eType="#//Variable" | 51 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//MetricType"/> |
52 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Call" containment="true"/> | ||
53 | </eClassifiers> | ||
54 | <eClassifiers xsi:type="ecore:EClass" name="Expression" eSuperTypes="#//Statement"/> | ||
55 | <eClassifiers xsi:type="ecore:EClass" name="IfElse" eSuperTypes="#//Expression"> | ||
56 | <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//Expression" | ||
66 | containment="true"/> | 57 | containment="true"/> |
67 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//Symbol" | 58 | <eStructuralFeatures xsi:type="ecore:EReference" name="then" eType="#//Expression" |
59 | containment="true"/> | ||
60 | <eStructuralFeatures xsi:type="ecore:EReference" name="else" eType="#//Expression" | ||
68 | containment="true"/> | 61 | containment="true"/> |
69 | </eClassifiers> | 62 | </eClassifiers> |
70 | <eClassifiers xsi:type="ecore:EClass" name="PatternBody"> | 63 | <eClassifiers xsi:type="ecore:EClass" name="Case" eSuperTypes="#//Expression"> |
71 | <eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1" | 64 | <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//Expression" |
72 | eType="#//Constraint" containment="true"/> | ||
73 | </eClassifiers> | ||
74 | <eClassifiers xsi:type="ecore:EClass" name="Polarity"/> | ||
75 | <eClassifiers xsi:type="ecore:EClass" name="Constraint"> | ||
76 | <eStructuralFeatures xsi:type="ecore:EReference" name="polarity" eType="#//Polarity" | ||
77 | containment="true"/> | 65 | containment="true"/> |
78 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol" | 66 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" |
79 | containment="true"/> | 67 | containment="true"/> |
80 | <eStructuralFeatures xsi:type="ecore:EReference" name="params" upperBound="-1" | 68 | </eClassifiers> |
81 | eType="#//Literal" containment="true"/> | 69 | <eClassifiers xsi:type="ecore:EEnum" name="BinaryOperator"> |
82 | <eStructuralFeatures xsi:type="ecore:EReference" name="closureType" eType="#//ClosureType" | 70 | <eLiterals name="EQ" literal="EQ"/> |
71 | <eLiterals name="NOT_EQ" value="1" literal="NOT_EQ"/> | ||
72 | <eLiterals name="LESS" value="2" literal="LESS"/> | ||
73 | <eLiterals name="LESS_EQ" value="3" literal="LESS_EQ"/> | ||
74 | <eLiterals name="GREATER" value="4" literal="GREATER"/> | ||
75 | <eLiterals name="GREATER_EQ" value="5" literal="GREATER_EQ"/> | ||
76 | <eLiterals name="IN" value="6" literal="IN"/> | ||
77 | <eLiterals name="ADD" value="7" literal="ADD"/> | ||
78 | <eLiterals name="SUB" value="8" literal="SUB"/> | ||
79 | <eLiterals name="MUL" value="9" literal="MUL"/> | ||
80 | <eLiterals name="DIV" value="10" literal="DIV"/> | ||
81 | <eLiterals name="POW" value="11" literal="POW"/> | ||
82 | </eClassifiers> | ||
83 | <eClassifiers xsi:type="ecore:EEnum" name="UnaryOp"> | ||
84 | <eLiterals name="NEG" literal="!"/> | ||
85 | <eLiterals name="PLUS" value="1" literal="+"/> | ||
86 | <eLiterals name="MINUS" value="2" literal="-"/> | ||
87 | <eLiterals name="MAY" value="3" literal="may"/> | ||
88 | <eLiterals name="MUST" value="4" literal="must"/> | ||
89 | <eLiterals name="CURRENT" value="5" literal="current"/> | ||
90 | </eClassifiers> | ||
91 | <eClassifiers xsi:type="ecore:EClass" name="Count" eSuperTypes="#//Expression"> | ||
92 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
83 | containment="true"/> | 93 | containment="true"/> |
84 | </eClassifiers> | 94 | </eClassifiers> |
85 | <eClassifiers xsi:type="ecore:EClass" name="ClosureType"/> | 95 | <eClassifiers xsi:type="ecore:EEnum" name="AggregationOp"> |
86 | <eClassifiers xsi:type="ecore:EClass" name="Literal"/> | 96 | <eLiterals name="ONLY" literal="only"/> |
87 | <eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//Literal"> | 97 | <eLiterals name="SUM" value="1" literal="sum"/> |
88 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | 98 | <eLiterals name="PROD" value="2" literal="prod"/> |
99 | <eLiterals name="AVG" value="3" literal="avg"/> | ||
100 | <eLiterals name="MIN" value="4" literal="min"/> | ||
101 | <eLiterals name="MAX" value="5" literal="max"/> | ||
89 | </eClassifiers> | 102 | </eClassifiers> |
90 | <eClassifiers xsi:type="ecore:EClass" name="AllInstances" eSuperTypes="#//ComplexObject"> | 103 | <eClassifiers xsi:type="ecore:EClass" name="Aggregation" eSuperTypes="#//Expression"> |
91 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//Symbol" | 104 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//AggregationOp"/> |
105 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
106 | containment="true"/> | ||
107 | <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//Expression" | ||
92 | containment="true"/> | 108 | containment="true"/> |
93 | </eClassifiers> | 109 | </eClassifiers> |
94 | <eClassifiers xsi:type="ecore:EClass" name="AllObjects" eSuperTypes="#//ComplexObject"/> | 110 | <eClassifiers xsi:type="ecore:EClass" name="Call" eSuperTypes="#//Expression"> |
95 | <eClassifiers xsi:type="ecore:EClass" name="DefaultInterpretation" eSuperTypes="#//Interpretation"> | 111 | <eStructuralFeatures xsi:type="ecore:EReference" name="functor" eType="#//Reference" |
96 | <eStructuralFeatures xsi:type="ecore:EReference" name="interpretation" eType="#//BasicInterpretation" | 112 | containment="true"/> |
113 | <eStructuralFeatures xsi:type="ecore:EReference" name="argumentList" eType="#//ArgumentList" | ||
97 | containment="true"/> | 114 | containment="true"/> |
115 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="transitiveClosure" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
116 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="reflexiveTransitiveClosure" | ||
117 | eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
98 | </eClassifiers> | 118 | </eClassifiers> |
99 | <eClassifiers xsi:type="ecore:EClass" name="CDInterpretation" eSuperTypes="#//Interpretation"/> | 119 | <eClassifiers xsi:type="ecore:EClass" name="ArgumentList"> |
100 | <eClassifiers xsi:type="ecore:EClass" name="ClassInterpretation" eSuperTypes="#//CDInterpretation"> | 120 | <eStructuralFeatures xsi:type="ecore:EReference" name="arguments" upperBound="-1" |
101 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | 121 | eType="#//Argument" containment="true"/> |
102 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol" | 122 | </eClassifiers> |
123 | <eClassifiers xsi:type="ecore:EClass" name="Argument"/> | ||
124 | <eClassifiers xsi:type="ecore:EClass" name="ExpressionArgument" eSuperTypes="#//Argument"> | ||
125 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
103 | containment="true"/> | 126 | containment="true"/> |
104 | <eStructuralFeatures xsi:type="ecore:EReference" name="supertypes" upperBound="-1" | ||
105 | eType="#//ModelSymbol" containment="true"/> | ||
106 | <eStructuralFeatures xsi:type="ecore:EReference" name="fielt" upperBound="-1" | ||
107 | eType="#//FieldRelationInterpretation" containment="true"/> | ||
108 | </eClassifiers> | 127 | </eClassifiers> |
109 | <eClassifiers xsi:type="ecore:EClass" name="EnumInterpretation" eSuperTypes="#//CDInterpretation"> | 128 | <eClassifiers xsi:type="ecore:EClass" name="StarArgument" eSuperTypes="#//Argument"/> |
110 | <eStructuralFeatures xsi:type="ecore:EReference" name="Symbol" eType="#//ModelSymbol" | 129 | <eClassifiers xsi:type="ecore:EClass" name="TypedArgument" eSuperTypes="#//Argument"> |
130 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
131 | <eStructuralFeatures xsi:type="ecore:EReference" name="variable" eType="#//NamedElement"/> | ||
132 | </eClassifiers> | ||
133 | <eClassifiers xsi:type="ecore:EClass" name="TypedStarArgument" eSuperTypes="#//Argument"> | ||
134 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
135 | </eClassifiers> | ||
136 | <eClassifiers xsi:type="ecore:EClass" name="Reference" eSuperTypes="#//Expression"> | ||
137 | <eStructuralFeatures xsi:type="ecore:EReference" name="referred" eType="#//NamedElement"/> | ||
138 | </eClassifiers> | ||
139 | <eClassifiers xsi:type="ecore:EClass" name="Interval" eSuperTypes="#//Expression"> | ||
140 | <eStructuralFeatures xsi:type="ecore:EReference" name="lowerBound" eType="#//Expression" | ||
111 | containment="true"/> | 141 | containment="true"/> |
112 | <eStructuralFeatures xsi:type="ecore:EReference" name="objects" upperBound="-1" | 142 | <eStructuralFeatures xsi:type="ecore:EReference" name="upperBound" eType="#//Expression" |
113 | eType="#//NamedObject" containment="true"/> | 143 | containment="true"/> |
144 | </eClassifiers> | ||
145 | <eClassifiers xsi:type="ecore:EClass" name="Literal" eSuperTypes="#//Expression"/> | ||
146 | <eClassifiers xsi:type="ecore:EEnum" name="LogicValue"> | ||
147 | <eLiterals name="TRUE" literal="true"/> | ||
148 | <eLiterals name="FALSE" value="1" literal="false"/> | ||
149 | <eLiterals name="UNKNOWN" value="2" literal="unknown"/> | ||
150 | <eLiterals name="ERROR" value="3" literal="error"/> | ||
151 | </eClassifiers> | ||
152 | <eClassifiers xsi:type="ecore:EClass" name="LogicLiteral" eSuperTypes="#//Literal"> | ||
153 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="#//LogicValue"/> | ||
154 | </eClassifiers> | ||
155 | <eClassifiers xsi:type="ecore:EClass" name="NumericLiteral" eSuperTypes="#//Literal"> | ||
156 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"/> | ||
157 | </eClassifiers> | ||
158 | <eClassifiers xsi:type="ecore:EClass" name="InfinityLiteral" eSuperTypes="#//Literal"/> | ||
159 | <eClassifiers xsi:type="ecore:EClass" name="EmptyIntervalLiteral" eSuperTypes="#//Literal"/> | ||
160 | <eClassifiers xsi:type="ecore:EClass" name="StringLiteral" eSuperTypes="#//Literal"> | ||
161 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
114 | </eClassifiers> | 162 | </eClassifiers> |
115 | <eClassifiers xsi:type="ecore:EClass" name="FieldRelationInterpretation"> | 163 | <eClassifiers xsi:type="ecore:EClass" name="MemberDefinition"> |
116 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | 164 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> |
117 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol" | 165 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> |
166 | <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//Multiplicity" | ||
118 | containment="true"/> | 167 | containment="true"/> |
119 | <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//MultiplicityDefinition" | 168 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> |
120 | containment="true"/> | 169 | <eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="#//NamedElement"/> |
121 | <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//Symbol" | 170 | </eClassifiers> |
171 | <eClassifiers xsi:type="ecore:EClass" name="Multiplicity"/> | ||
172 | <eClassifiers xsi:type="ecore:EClass" name="ManyMultiplicity" eSuperTypes="#//Multiplicity"/> | ||
173 | <eClassifiers xsi:type="ecore:EClass" name="ExactMultiplicity" eSuperTypes="#//Multiplicity"> | ||
174 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
175 | </eClassifiers> | ||
176 | <eClassifiers xsi:type="ecore:EClass" name="BoundedMultiplicity" eSuperTypes="#//Multiplicity"> | ||
177 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
178 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
179 | </eClassifiers> | ||
180 | <eClassifiers xsi:type="ecore:EClass" name="ScopeDefinition" eSuperTypes="#//Statement"> | ||
181 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
182 | </eClassifiers> | ||
183 | <eClassifiers xsi:type="ecore:EClass" name="ExactScopeDefinition" eSuperTypes="#//ScopeDefinition"> | ||
184 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="exactScope" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
185 | </eClassifiers> | ||
186 | <eClassifiers xsi:type="ecore:EClass" name="BoundedScopeDefinition" eSuperTypes="#//ScopeDefinition"> | ||
187 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
188 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
189 | </eClassifiers> | ||
190 | <eClassifiers xsi:type="ecore:EClass" name="LowerBoundedScopeDefinition" eSuperTypes="#//ScopeDefinition"> | ||
191 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
192 | </eClassifiers> | ||
193 | <eClassifiers xsi:type="ecore:EEnum" name="ObjectiveKind"> | ||
194 | <eLiterals name="MINIMIZE" literal="minimize"/> | ||
195 | <eLiterals name="MAXIMIZE" value="1" literal="maximize"/> | ||
196 | </eClassifiers> | ||
197 | <eClassifiers xsi:type="ecore:EClass" name="ObjectiveDefinition" eSuperTypes="#//Statement"> | ||
198 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//ObjectiveKind"/> | ||
199 | <eStructuralFeatures xsi:type="ecore:EReference" name="objective" eType="#//Expression" | ||
122 | containment="true"/> | 200 | containment="true"/> |
123 | </eClassifiers> | 201 | </eClassifiers> |
124 | <eClassifiers xsi:type="ecore:EClass" name="GlobalRelationInterpretation" eSuperTypes="#//CDInterpretation"> | 202 | <eClassifiers xsi:type="ecore:EClass" name="NamedElement"> |
125 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | 203 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> |
126 | <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol" | 204 | </eClassifiers> |
205 | <eClassifiers xsi:type="ecore:EClass" name="Assertion" eSuperTypes="#//Statement"> | ||
206 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
127 | containment="true"/> | 207 | containment="true"/> |
128 | <eStructuralFeatures xsi:type="ecore:EReference" name="sourceMultiplicity" eType="#//MultiplicityDefinition" | 208 | <eStructuralFeatures xsi:type="ecore:EReference" name="range" eType="#//Expression" |
129 | containment="true"/> | 209 | containment="true"/> |
130 | <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//Symbol" | 210 | </eClassifiers> |
211 | <eClassifiers xsi:type="ecore:EClass" name="Disjunction" eSuperTypes="#//Expression"> | ||
212 | <eStructuralFeatures xsi:type="ecore:EReference" name="children" upperBound="-1" | ||
213 | eType="#//Expression" containment="true"/> | ||
214 | </eClassifiers> | ||
215 | <eClassifiers xsi:type="ecore:EClass" name="Switch" eSuperTypes="#//Expression"> | ||
216 | <eStructuralFeatures xsi:type="ecore:EReference" name="cases" upperBound="-1" | ||
217 | eType="#//Case" containment="true"/> | ||
218 | </eClassifiers> | ||
219 | <eClassifiers xsi:type="ecore:EClass" name="Conjunction" eSuperTypes="#//Expression"> | ||
220 | <eStructuralFeatures xsi:type="ecore:EReference" name="children" upperBound="-1" | ||
221 | eType="#//Expression" containment="true"/> | ||
222 | </eClassifiers> | ||
223 | <eClassifiers xsi:type="ecore:EClass" name="Comparison" eSuperTypes="#//Expression"> | ||
224 | <eStructuralFeatures xsi:type="ecore:EReference" name="left" eType="#//Expression" | ||
131 | containment="true"/> | 225 | containment="true"/> |
132 | <eStructuralFeatures xsi:type="ecore:EReference" name="targetMultiplicity" eType="#//MultiplicityDefinition" | 226 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//BinaryOperator"/> |
227 | <eStructuralFeatures xsi:type="ecore:EReference" name="right" eType="#//Expression" | ||
133 | containment="true"/> | 228 | containment="true"/> |
134 | <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//Symbol" | 229 | </eClassifiers> |
230 | <eClassifiers xsi:type="ecore:EClass" name="BinaryExpression" eSuperTypes="#//Expression"> | ||
231 | <eStructuralFeatures xsi:type="ecore:EReference" name="left" eType="#//Expression" | ||
232 | containment="true"/> | ||
233 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//BinaryOperator"/> | ||
234 | <eStructuralFeatures xsi:type="ecore:EReference" name="right" eType="#//Expression" | ||
135 | containment="true"/> | 235 | containment="true"/> |
136 | </eClassifiers> | 236 | </eClassifiers> |
137 | <eClassifiers xsi:type="ecore:EClass" name="MultiplicityDefinition"> | 237 | <eClassifiers xsi:type="ecore:EClass" name="UnaryExpression" eSuperTypes="#//Expression"> |
138 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lower" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | 238 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//UnaryOp"/> |
139 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="upper" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | 239 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" |
140 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="unlimitedUpper" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | 240 | containment="true"/> |
141 | </eClassifiers> | 241 | </eClassifiers> |
142 | <eClassifiers xsi:type="ecore:EClass" name="BooleanTrue" eSuperTypes="#//BooleanValue"/> | ||
143 | <eClassifiers xsi:type="ecore:EClass" name="BooleanFalse" eSuperTypes="#//BooleanValue"/> | ||
144 | <eClassifiers xsi:type="ecore:EClass" name="True" eSuperTypes="#//TruthValue"/> | ||
145 | <eClassifiers xsi:type="ecore:EClass" name="False" eSuperTypes="#//TruthValue"/> | ||
146 | <eClassifiers xsi:type="ecore:EClass" name="Unknown" eSuperTypes="#//TruthValue"/> | ||
147 | <eClassifiers xsi:type="ecore:EClass" name="Error" eSuperTypes="#//TruthValue"/> | ||
148 | <eClassifiers xsi:type="ecore:EClass" name="Positive" eSuperTypes="#//Polarity"/> | ||
149 | <eClassifiers xsi:type="ecore:EClass" name="Negative" eSuperTypes="#//Polarity"/> | ||
150 | <eClassifiers xsi:type="ecore:EClass" name="ReflexiveClosure" eSuperTypes="#//ClosureType"/> | ||
151 | <eClassifiers xsi:type="ecore:EClass" name="IrreflexiveClosure" eSuperTypes="#//ClosureType"/> | ||
152 | </ecore:EPackage> | 242 | </ecore:EPackage> |