diff options
Diffstat (limited to 'subprojects/viatra-runtime-rete-recipes/src/main/resources/model/rete-recipes.genmodel')
-rw-r--r-- | subprojects/viatra-runtime-rete-recipes/src/main/resources/model/rete-recipes.genmodel | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/subprojects/viatra-runtime-rete-recipes/src/main/resources/model/rete-recipes.genmodel b/subprojects/viatra-runtime-rete-recipes/src/main/resources/model/rete-recipes.genmodel new file mode 100644 index 00000000..6b44fde6 --- /dev/null +++ b/subprojects/viatra-runtime-rete-recipes/src/main/resources/model/rete-recipes.genmodel | |||
@@ -0,0 +1,171 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" | ||
3 | xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2004-2014 Gabor Bergmann and Daniel Varro
Copyright (c) 2023 The Refinery Authors <https://refinery.tools>
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0 which is available at
http://www.eclipse.org/legal/epl-v20.html.

SPDX-License-Identifier: EPL-2.0" | ||
4 | modelDirectory="/tools.refinery.refinery-viatra-runtime-rete-recipes/src/main/emf-gen" | ||
5 | modelPluginID="viatra-runtime-rete-recipes" runtimeJar="true" forceOverwrite="true" | ||
6 | modelName="Rete-recipes" updateClasspath="false" nonNLSMarkers="true" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" | ||
7 | testsDirectory="" importerID="org.eclipse.emf.importer.ecore" containmentProxies="true" | ||
8 | complianceLevel="7.0" language="en" operationReflection="true"> | ||
9 | <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/exporter/org.eclipse.xsd.ecore.exporter"> | ||
10 | <genAnnotations source="selectedPackages"> | ||
11 | <details key="http://www.eclipse.org/emf/2002/Ecore" value="Ecore.xsd"/> | ||
12 | </genAnnotations> | ||
13 | <details key="directoryURI" value="."/> | ||
14 | </genAnnotations> | ||
15 | <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/exporter/org.eclipse.xsd.ecore.exporter.xmi"> | ||
16 | <genAnnotations source="selectedPackages"> | ||
17 | <details key="http://www.eclipse.org/emf/2002/Ecore" value="EcoreXMI.xsd"/> | ||
18 | </genAnnotations> | ||
19 | <details key="directoryURI" value="."/> | ||
20 | </genAnnotations> | ||
21 | <foreignModel>recipes.ecore</foreignModel> | ||
22 | <modelPluginVariables>org.eclipse.xtext.xbase.lib</modelPluginVariables> | ||
23 | <modelPluginVariables>org.eclipse.emf.ecore.xcore.lib</modelPluginVariables> | ||
24 | <genPackages prefix="Recipes" basePackage="tools.refinery.viatra.runtime.rete" disposableProviderFactory="true" | ||
25 | ecorePackage="recipes.ecore#/"> | ||
26 | <genDataTypes ecoreDataType="recipes.ecore#//Index"/> | ||
27 | <genDataTypes ecoreDataType="recipes.ecore#//AggregationOperator"/> | ||
28 | <genDataTypes ecoreDataType="recipes.ecore#//Connectivity"/> | ||
29 | <genClasses ecoreClass="recipes.ecore#//ReteRecipe"> | ||
30 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//ReteRecipe/recipeNodes"/> | ||
31 | </genClasses> | ||
32 | <genClasses image="false" ecoreClass="recipes.ecore#//ReteNodeRecipe"> | ||
33 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ReteNodeRecipe/traceInfo"/> | ||
34 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ReteNodeRecipe/equivalenceClassIDs"/> | ||
35 | <genOperations ecoreOperation="recipes.ecore#//ReteNodeRecipe/getArity" body="throw new <%java.lang.UnsupportedOperationException%>();"/> | ||
36 | </genClasses> | ||
37 | <genClasses image="false" ecoreClass="recipes.ecore#//SingleParentNodeRecipe"> | ||
38 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference recipes.ecore#//SingleParentNodeRecipe/parent"/> | ||
39 | </genClasses> | ||
40 | <genClasses image="false" ecoreClass="recipes.ecore#//AlphaRecipe"/> | ||
41 | <genClasses image="false" ecoreClass="recipes.ecore#//MultiParentNodeRecipe"> | ||
42 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference recipes.ecore#//MultiParentNodeRecipe/parents"/> | ||
43 | <genOperations ecoreOperation="recipes.ecore#//MultiParentNodeRecipe/getArity" | ||
44 | body="<%org.eclipse.emf.common.util.EList%><<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%>> _parents = this.getParents();
<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%> _get = _parents.get(0);
return _get.getArity();"/> | ||
45 | </genClasses> | ||
46 | <genClasses ecoreClass="recipes.ecore#//MonotonicityInfo"> | ||
47 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//MonotonicityInfo/coreMask"/> | ||
48 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//MonotonicityInfo/posetMask"/> | ||
49 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//MonotonicityInfo/posetComparator"/> | ||
50 | </genClasses> | ||
51 | <genClasses ecoreClass="recipes.ecore#//UniquenessEnforcerRecipe"/> | ||
52 | <genClasses ecoreClass="recipes.ecore#//ProductionRecipe"> | ||
53 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//ProductionRecipe/mappedIndices"/> | ||
54 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ProductionRecipe/pattern"/> | ||
55 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ProductionRecipe/patternFQN"/> | ||
56 | <genOperations ecoreOperation="recipes.ecore#//ProductionRecipe/getArity" body="return this.getMappedIndices().size();"/> | ||
57 | </genClasses> | ||
58 | <genClasses image="false" ecoreClass="recipes.ecore#//IndexerRecipe"> | ||
59 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//IndexerRecipe/mask"/> | ||
60 | <genOperations ecoreOperation="recipes.ecore#//IndexerRecipe/getArity" body="<%tools.refinery.viatra.runtime.rete.recipes.Mask%> _mask = this.getMask();
return _mask.getSourceArity();"/> | ||
61 | </genClasses> | ||
62 | <genClasses ecoreClass="recipes.ecore#//ProjectionIndexerRecipe"/> | ||
63 | <genClasses ecoreClass="recipes.ecore#//AggregatorIndexerRecipe"/> | ||
64 | <genClasses image="false" ecoreClass="recipes.ecore#//BetaRecipe"> | ||
65 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//BetaRecipe/leftParent"/> | ||
66 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//BetaRecipe/rightParent"/> | ||
67 | </genClasses> | ||
68 | <genClasses ecoreClass="recipes.ecore#//Mask"> | ||
69 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//Mask/sourceIndices"/> | ||
70 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//Mask/sourceArity"/> | ||
71 | </genClasses> | ||
72 | <genClasses ecoreClass="recipes.ecore#//StringIndexMapEntry"> | ||
73 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//StringIndexMapEntry/key"/> | ||
74 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//StringIndexMapEntry/value"/> | ||
75 | </genClasses> | ||
76 | <genClasses ecoreClass="recipes.ecore#//InputRecipe"> | ||
77 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InputRecipe/inputKey"/> | ||
78 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InputRecipe/keyID"/> | ||
79 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InputRecipe/keyArity"/> | ||
80 | <genOperations ecoreOperation="recipes.ecore#//InputRecipe/getArity" body="return getKeyArity();"/> | ||
81 | </genClasses> | ||
82 | <genClasses ecoreClass="recipes.ecore#//ConstantRecipe"> | ||
83 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ConstantRecipe/constantValues"/> | ||
84 | <genOperations ecoreOperation="recipes.ecore#//ConstantRecipe/getArity" body="return this.getConstantValues().size();"/> | ||
85 | </genClasses> | ||
86 | <genClasses ecoreClass="recipes.ecore#//TransitiveClosureRecipe"> | ||
87 | <genOperations ecoreOperation="recipes.ecore#//TransitiveClosureRecipe/getArity" | ||
88 | body="return 2;"/> | ||
89 | </genClasses> | ||
90 | <genClasses image="false" ecoreClass="recipes.ecore#//FilterRecipe"> | ||
91 | <genOperations ecoreOperation="recipes.ecore#//FilterRecipe/getArity" body="<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%> _parent = this.getParent();
return _parent.getArity();"/> | ||
92 | </genClasses> | ||
93 | <genClasses ecoreClass="recipes.ecore#//InequalityFilterRecipe"> | ||
94 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InequalityFilterRecipe/subject"/> | ||
95 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InequalityFilterRecipe/inequals"/> | ||
96 | </genClasses> | ||
97 | <genClasses ecoreClass="recipes.ecore#//EqualityFilterRecipe"> | ||
98 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//EqualityFilterRecipe/indices"/> | ||
99 | </genClasses> | ||
100 | <genClasses ecoreClass="recipes.ecore#//TransparentRecipe"/> | ||
101 | <genClasses ecoreClass="recipes.ecore#//TrimmerRecipe"> | ||
102 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//TrimmerRecipe/mask"/> | ||
103 | <genOperations ecoreOperation="recipes.ecore#//TrimmerRecipe/getArity" body="<%tools.refinery.viatra.runtime.rete.recipes.Mask%> _mask = this.getMask();
<%org.eclipse.emf.common.util.EList%><<%java.lang.Integer%>> _sourceIndices = _mask.getSourceIndices();
return _sourceIndices.size();"/> | ||
104 | </genClasses> | ||
105 | <genClasses ecoreClass="recipes.ecore#//ExpressionDefinition"> | ||
106 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ExpressionDefinition/evaluator"/> | ||
107 | </genClasses> | ||
108 | <genClasses image="false" ecoreClass="recipes.ecore#//ExpressionEnforcerRecipe"> | ||
109 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//ExpressionEnforcerRecipe/expression"/> | ||
110 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//ExpressionEnforcerRecipe/mappedIndices"/> | ||
111 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//ExpressionEnforcerRecipe/cacheOutput"/> | ||
112 | </genClasses> | ||
113 | <genClasses ecoreClass="recipes.ecore#//CheckRecipe"> | ||
114 | <genOperations ecoreOperation="recipes.ecore#//CheckRecipe/getArity" body="<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%> _parent = this.getParent();
return _parent.getArity();"/> | ||
115 | </genClasses> | ||
116 | <genClasses ecoreClass="recipes.ecore#//EvalRecipe"> | ||
117 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//EvalRecipe/unwinding"/> | ||
118 | <genOperations ecoreOperation="recipes.ecore#//EvalRecipe/getArity" body="<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%> _parent = this.getParent();
int _arity = _parent.getArity();
return (1 + _arity);"/> | ||
119 | </genClasses> | ||
120 | <genClasses image="false" ecoreClass="recipes.ecore#//IndexerBasedAggregatorRecipe"> | ||
121 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//IndexerBasedAggregatorRecipe/parent"/> | ||
122 | <genOperations ecoreOperation="recipes.ecore#//IndexerBasedAggregatorRecipe/getArity" | ||
123 | body="<%tools.refinery.viatra.runtime.rete.recipes.ProjectionIndexerRecipe%> _parent = this.getParent();
<%tools.refinery.viatra.runtime.rete.recipes.Mask%> _mask = _parent.getMask();
<%org.eclipse.emf.common.util.EList%><<%java.lang.Integer%>> _sourceIndices = _mask.getSourceIndices();
int _size = _sourceIndices.size();
return (1 + _size);"/> | ||
124 | </genClasses> | ||
125 | <genClasses ecoreClass="recipes.ecore#//CountAggregatorRecipe"/> | ||
126 | <genClasses ecoreClass="recipes.ecore#//JoinRecipe"> | ||
127 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//JoinRecipe/rightParentComplementaryMask"/> | ||
128 | <genOperations ecoreOperation="recipes.ecore#//JoinRecipe/getArity" body="<%tools.refinery.viatra.runtime.rete.recipes.ProjectionIndexerRecipe%> _leftParent = this.getLeftParent();
int _arity = _leftParent.getArity();
<%tools.refinery.viatra.runtime.rete.recipes.IndexerRecipe%> _rightParent = this.getRightParent();
int _arity_1 = _rightParent.getArity();
int _plus = (_arity + _arity_1);
<%tools.refinery.viatra.runtime.rete.recipes.IndexerRecipe%> _rightParent_1 = this.getRightParent();
<%tools.refinery.viatra.runtime.rete.recipes.Mask%> _mask = _rightParent_1.getMask();
<%org.eclipse.emf.common.util.EList%><<%java.lang.Integer%>> _sourceIndices = _mask.getSourceIndices();
int _size = _sourceIndices.size();
return (_plus - _size);"/> | ||
129 | </genClasses> | ||
130 | <genClasses image="false" ecoreClass="recipes.ecore#//ExistenceJoinRecipe"> | ||
131 | <genOperations ecoreOperation="recipes.ecore#//ExistenceJoinRecipe/getArity" | ||
132 | body="<%tools.refinery.viatra.runtime.rete.recipes.ProjectionIndexerRecipe%> _leftParent = this.getLeftParent();
return _leftParent.getArity();"/> | ||
133 | </genClasses> | ||
134 | <genClasses ecoreClass="recipes.ecore#//SemiJoinRecipe"/> | ||
135 | <genClasses ecoreClass="recipes.ecore#//AntiJoinRecipe"/> | ||
136 | <genClasses ecoreClass="recipes.ecore#//InputFilterRecipe"> | ||
137 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InputFilterRecipe/inputKey"/> | ||
138 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//InputFilterRecipe/keyID"/> | ||
139 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//InputFilterRecipe/mask"/> | ||
140 | </genClasses> | ||
141 | <genClasses ecoreClass="recipes.ecore#//SingleColumnAggregatorRecipe"> | ||
142 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//SingleColumnAggregatorRecipe/multisetAggregationOperator"/> | ||
143 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//SingleColumnAggregatorRecipe/aggregableIndex"/> | ||
144 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//SingleColumnAggregatorRecipe/groupByMask"/> | ||
145 | <genOperations ecoreOperation="recipes.ecore#//SingleColumnAggregatorRecipe/getArity" | ||
146 | body="<%tools.refinery.viatra.runtime.rete.recipes.MonotonicityInfo%> info = getOptionalMonotonicityInfo();
if (info == null) {
	return 1 + getGroupByMask().getSourceIndices().size();
} else {	
	return info.getCoreMask().getSourceIndices().size() + info.getPosetMask().getSourceIndices().size();
}"/> | ||
147 | </genClasses> | ||
148 | <genClasses ecoreClass="recipes.ecore#//DiscriminatorDispatcherRecipe"> | ||
149 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//DiscriminatorDispatcherRecipe/discriminationColumnIndex"/> | ||
150 | <genOperations ecoreOperation="recipes.ecore#//DiscriminatorDispatcherRecipe/getArity" | ||
151 | body="<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%> _parent = this.getParent();
return _parent.getArity();"/> | ||
152 | </genClasses> | ||
153 | <genClasses ecoreClass="recipes.ecore#//DiscriminatorBucketRecipe"> | ||
154 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//DiscriminatorBucketRecipe/bucketKey"/> | ||
155 | <genOperations ecoreOperation="recipes.ecore#//DiscriminatorBucketRecipe/getArity" | ||
156 | body="<%tools.refinery.viatra.runtime.rete.recipes.ReteNodeRecipe%> _parent = this.getParent();
return _parent.getArity();"/> | ||
157 | </genClasses> | ||
158 | <genClasses image="false" ecoreClass="recipes.ecore#//RederivableNodeRecipe"> | ||
159 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//RederivableNodeRecipe/deleteRederiveEvaluation"/> | ||
160 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference recipes.ecore#//RederivableNodeRecipe/optionalMonotonicityInfo"/> | ||
161 | </genClasses> | ||
162 | <genClasses ecoreClass="recipes.ecore#//RelationEvaluationRecipe"> | ||
163 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference recipes.ecore#//RelationEvaluationRecipe/evaluator"/> | ||
164 | </genClasses> | ||
165 | <genClasses ecoreClass="recipes.ecore#//RepresentativeElectionRecipe"> | ||
166 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute recipes.ecore#//RepresentativeElectionRecipe/connectivity"/> | ||
167 | <genOperations ecoreOperation="recipes.ecore#//RepresentativeElectionRecipe/getArity" | ||
168 | body="return 2;"/> | ||
169 | </genClasses> | ||
170 | </genPackages> | ||
171 | </genmodel:GenModel> | ||