Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Willink2015-06-19 09:22:59 +0000
committerEd Willink2015-06-19 09:22:59 +0000
commit30a761771634e78886f75b65fead4f785ed75337 (patch)
tree46ea8ac7dd67e577eecd2297b01c769de0accd7f
parentb8aeda96a33047e008e112f622fc8b429b4a577c (diff)
downloadorg.eclipse.qvtd-30a761771634e78886f75b65fead4f785ed75337.tar.gz
org.eclipse.qvtd-30a761771634e78886f75b65fead4f785ed75337.tar.xz
org.eclipse.qvtd-30a761771634e78886f75b65fead4f785ed75337.zip
[463313] Replace Evaluator by Executor while retaining API compatibility
-rw-r--r--plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiCG2JavaVisitor.java6
-rw-r--r--plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiGlobalContext.java2
-rw-r--r--plugins/org.eclipse.qvtd.compiler/build.properties6
-rw-r--r--plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java9
-rw-r--r--plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMEvaluationVisitor.java11
-rw-r--r--plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMExecutor.java3
-rw-r--r--plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMNestedEvaluationEnvironment.java2
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationEvaluator.java4
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationExecutor.java16
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/BasicQVTiExecutor.java6
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/IQVTiEvaluationVisitor.java2
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationEnvironment.java2
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationVisitorDecorator.java9
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiNestedEvaluationEnvironment.java3
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiTracingEvaluationVisitor.java11
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/AllObjectsOperation.java4
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfKindOperation.java4
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfTypeOperation.java4
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/RootObjectsOperation.java4
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/EnvExample1.ecore4
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/Source2Target.qvtias378
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/java/LookupEnvironment.java16
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore4
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/java/LookupEnvironment.java16
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_Source2Target_qvtp_qvtias/Source2Target_qvtp_qvtias.java156
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_classescs2as_qvtp_qvtias/classescs2as_qvtp_qvtias.java68
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Env4CG.java10
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Environment.java4
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentPackage.java55
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentTables.java56
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentImpl.java28
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentPackageImpl.java18
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentAdapterFactory.java12
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentSwitch.java14
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/TargetTables.java10
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractMergedVisitor.java77
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractTargetLookupVisitor.java52
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/ClassesTables.java10
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractClassesLookupVisitor.java36
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractMergedVisitor.java57
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Env4CG.java10
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Environment.java4
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentPackage.java55
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentTables.java56
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentImpl.java28
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentPackageImpl.java19
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentAdapterFactory.java13
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentSwitch.java15
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_ManualUML2RDBMS/ManualUML2RDBMS.java26
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as/classescs2as.java30
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as_Bug459225/classescs2as_Bug459225.java18
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_hsv2hls/hsv2hls.java10
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/simpleUML2RDBMS/SimpleUML2RDBMS.java2070
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/test/SimpleUML2RDBMS.java60
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java30
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/SimpleUML2RDBMS/SimpleUML2RDBMS.qvti38
56 files changed, 2987 insertions, 684 deletions
diff --git a/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiCG2JavaVisitor.java b/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiCG2JavaVisitor.java
index 9bc1855a1..f78b9c96a 100644
--- a/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiCG2JavaVisitor.java
+++ b/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiCG2JavaVisitor.java
@@ -41,7 +41,7 @@ import org.eclipse.ocl.examples.codegen.java.JavaLocalContext;
import org.eclipse.ocl.pivot.Operation;
import org.eclipse.ocl.pivot.Parameter;
import org.eclipse.ocl.pivot.Property;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.ElementId;
@@ -248,13 +248,13 @@ public class QVTiCG2JavaVisitor extends CG2JavaVisitor<QVTiCodeGenerator> implem
protected void doConstructor(@NonNull CGTransformation cgTransformation, @Nullable String oppositeName, @Nullable String[] allInstancesNames) {
// String evaluatorName = ((QVTiGlobalContext)globalContext).getEvaluatorParameter().getName();
- String evaluatorName = JavaConstants.EVALUATOR_NAME;
+ String evaluatorName = JavaConstants.EXECUTOR_NAME;
String className = cgTransformation.getName();
//
js.append("public " + className + "(final ");
js.appendIsRequired(true);
js.append(" ");
- js.appendClassReference(Evaluator.class);
+ js.appendClassReference(Executor.class);
js.append(" " + evaluatorName + ") {\n");
js.pushIndentation(null);
js.append("super(" + evaluatorName + ", new String[] {");
diff --git a/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiGlobalContext.java b/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiGlobalContext.java
index 11149ed21..76a54fc39 100644
--- a/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiGlobalContext.java
+++ b/plugins/org.eclipse.qvtd.codegen/src/org/eclipse/qvtd/codegen/qvti/java/QVTiGlobalContext.java
@@ -34,7 +34,7 @@ public class QVTiGlobalContext extends JavaGlobalContext<QVTiCodeGenerator>
public QVTiGlobalContext(@NonNull QVTiCodeGenerator codeGenerator) {
super(codeGenerator);
- nameManager.reserveName(JavaConstants.EVALUATOR_NAME, null);
+ nameManager.reserveName(JavaConstants.EXECUTOR_NAME, null);
nameManager.reserveName(MODELS_NAME, null);
}
diff --git a/plugins/org.eclipse.qvtd.compiler/build.properties b/plugins/org.eclipse.qvtd.compiler/build.properties
index edf09c6db..0a723ae46 100644
--- a/plugins/org.eclipse.qvtd.compiler/build.properties
+++ b/plugins/org.eclipse.qvtd.compiler/build.properties
@@ -8,7 +8,8 @@
# Contributors:
# E.D.Willink - initial API and implementation
###############################################################################
-source.. = src/
+source.. = src/,\
+ emf-gen/
output.. = bin/
bin.includes = META-INF/,\
.,\
@@ -21,6 +22,7 @@ bin.includes = META-INF/,\
lib/org.eclipse.epsilon.flock.engine_1.3.0.201503231233.jar,\
lib/org.eclipse.epsilon.erl.engine_1.3.0.201503231233.jar,\
lib/org.eclipse.epsilon.emc.emf_1.3.0.201503231233.jar,\
- plugin.properties
+ plugin.properties,\
+ plugin.xml
additional.bundles = org.eclipse.ocl.jdt.annotation7
src.includes = about.html
diff --git a/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java b/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java
index 014723e23..3db5c2de4 100644
--- a/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java
+++ b/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java
@@ -32,6 +32,7 @@ import org.eclipse.ocl.examples.codegen.cse.GlobalPlace;
import org.eclipse.ocl.examples.codegen.dynamic.OCL2JavaFileObject;
import org.eclipse.ocl.examples.codegen.generator.TypeDescriptor;
import org.eclipse.ocl.examples.codegen.java.CG2JavaPreVisitor;
+import org.eclipse.ocl.examples.codegen.java.JavaConstants;
import org.eclipse.ocl.examples.codegen.utilities.CGModelResourceFactory;
import org.eclipse.ocl.pivot.OCLExpression;
import org.eclipse.ocl.pivot.Operation;
@@ -188,8 +189,10 @@ public class CS2ASJavaCompilerImpl implements CS2ASJavaCompiler {
js.append(" ");
js.append(envClassSymbol);
js.append(" = new ");
- js.append(envClassName);
- js.append("(evaluator,");
+ js.appendClassReference(envClassName);
+ js.append("(");
+ js.append(JavaConstants.EXECUTOR_NAME);
+ js.append(",");
List<Parameter> pParameters = cgCall.getReferredOperation().getOwnedParameters();
int iMax = Math.min(pParameters.size(), cgArguments.size());
for (int i = 0; i < iMax; i++) {
@@ -211,7 +214,7 @@ public class CS2ASJavaCompilerImpl implements CS2ASJavaCompiler {
js.append(" ");
js.append(visitorClassSymbol);
js.append(" = new ");
- js.append(params.getVisitorClassName());
+ js.appendClassReference(params.getVisitorClassName());
js.append("(");
js.append(envClassSymbol);
js.append(");\n");
diff --git a/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMEvaluationVisitor.java b/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMEvaluationVisitor.java
index 8cbc0d5f3..c41dd1794 100644
--- a/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMEvaluationVisitor.java
+++ b/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMEvaluationVisitor.java
@@ -28,11 +28,11 @@ import org.eclipse.ocl.pivot.Variable;
import org.eclipse.ocl.pivot.evaluation.EvaluationEnvironment;
import org.eclipse.ocl.pivot.evaluation.EvaluationLogger;
import org.eclipse.ocl.pivot.evaluation.EvaluationVisitor;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.evaluation.ModelManager;
import org.eclipse.ocl.pivot.ids.IdResolver;
import org.eclipse.ocl.pivot.util.Visitable;
+import org.eclipse.ocl.pivot.utilities.MetamodelManager;
import org.eclipse.qvtd.debug.QVTiDebugPlugin;
import org.eclipse.qvtd.pivot.qvtimperative.evaluation.IQVTiEvaluationVisitor;
import org.eclipse.qvtd.pivot.qvtimperative.evaluation.QVTiEnvironmentFactory;
@@ -92,7 +92,7 @@ public class QVTiVMEvaluationVisitor extends AbstractMergedQVTimperativeVisitor<
/** @deprecated Use this or getExecutor() */
@Deprecated
@Override
- public @NonNull Evaluator getEvaluator() {
+ public @NonNull EvaluationVisitor getEvaluator() {
return context.getEvaluator();
}
@@ -118,6 +118,13 @@ public class QVTiVMEvaluationVisitor extends AbstractMergedQVTimperativeVisitor<
/** @deprecated moved to Evaluator */
@Deprecated
@Override
+ public @NonNull MetamodelManager getMetamodelManager() {
+ return context.getMetamodelManager();
+ }
+
+ /** @deprecated moved to Evaluator */
+ @Deprecated
+ @Override
public @NonNull ModelManager getModelManager() {
return context.getModelManager();
}
diff --git a/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMExecutor.java b/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMExecutor.java
index 5979711d1..4d46bc82d 100644
--- a/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMExecutor.java
+++ b/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMExecutor.java
@@ -14,6 +14,7 @@ import java.io.IOException;
import org.eclipse.emf.common.util.URI;
import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.examples.debug.vm.evaluator.IVMContext;
import org.eclipse.ocl.examples.debug.vm.evaluator.VMEvaluationStepper;
import org.eclipse.ocl.examples.debug.vm.evaluator.VMExecutor;
@@ -47,7 +48,7 @@ public class QVTiVMExecutor extends BasicQVTiExecutor implements VMExecutor
}
@Override
- protected @NonNull QVTiVMEvaluationEnvironment createNestedEvaluationEnvironment(@NonNull EvaluationEnvironment evaluationEnvironment, @NonNull NamedElement executableObject, @NonNull OCLExpression callingObject) {
+ protected @NonNull QVTiVMEvaluationEnvironment createNestedEvaluationEnvironment(@NonNull EvaluationEnvironment.EvaluationEnvironmentExtension evaluationEnvironment, @NonNull NamedElement executableObject, @Nullable OCLExpression callingObject) {
return new QVTiVMNestedEvaluationEnvironment((QVTiVMEvaluationEnvironment) evaluationEnvironment, executableObject, callingObject, ++envId);
}
diff --git a/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMNestedEvaluationEnvironment.java b/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMNestedEvaluationEnvironment.java
index b690bf665..da0c476f6 100644
--- a/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMNestedEvaluationEnvironment.java
+++ b/plugins/org.eclipse.qvtd.debug/src/org/eclipse/qvtd/debug/evaluator/QVTiVMNestedEvaluationEnvironment.java
@@ -38,7 +38,7 @@ public class QVTiVMNestedEvaluationEnvironment extends QVTiNestedEvaluationEnvir
private final long id;
private final @NonNull Stack<StepperEntry> stepperStack = new Stack<StepperEntry>();
- public QVTiVMNestedEvaluationEnvironment(@NonNull QVTiVMEvaluationEnvironment evaluationEnvironment, @NonNull NamedElement executableObject, @NonNull OCLExpression callingObject, long id) {
+ public QVTiVMNestedEvaluationEnvironment(@NonNull QVTiVMEvaluationEnvironment evaluationEnvironment, @NonNull NamedElement executableObject, @Nullable OCLExpression callingObject, long id) {
super(evaluationEnvironment, executableObject, callingObject);
myStackDepth = evaluationEnvironment.getDepth() + 1;
this.id = id;
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationEvaluator.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationEvaluator.java
index 6c271db03..cef9bece3 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationEvaluator.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationEvaluator.java
@@ -15,7 +15,7 @@ import java.lang.reflect.InvocationTargetException;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.ocl.pivot.CompleteEnvironment;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.evaluation.ModelManager;
import org.eclipse.ocl.pivot.ids.IdResolver;
import org.eclipse.ocl.pivot.internal.complete.CompleteEnvironmentInternal;
@@ -34,7 +34,7 @@ public abstract class AbstractTransformationEvaluator extends ExecutorManager im
public AbstractTransformationEvaluator(@NonNull CompleteEnvironment environment, Class<? extends TransformationExecutor> txClass)
throws IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException , NoSuchMethodException {
- this(environment, ClassUtil.nonNullState(txClass.getConstructor(Evaluator.class)));
+ this(environment, ClassUtil.nonNullState(txClass.getConstructor(Executor.class)));
}
@Override
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationExecutor.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationExecutor.java
index a8b7d6743..b2118be1a 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationExecutor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/src/org/eclipse/qvtd/pivot/qvtbase/evaluation/AbstractTransformationExecutor.java
@@ -28,6 +28,7 @@ import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.IdManager;
import org.eclipse.ocl.pivot.ids.IdResolver;
@@ -36,6 +37,7 @@ import org.eclipse.ocl.pivot.ids.PropertyId;
import org.eclipse.ocl.pivot.ids.TypeId;
import org.eclipse.ocl.pivot.utilities.ClassUtil;
import org.eclipse.ocl.pivot.utilities.NameUtil;
+import org.eclipse.ocl.pivot.utilities.ValueUtil;
public abstract class AbstractTransformationExecutor implements TransformationExecutor
{
@@ -264,6 +266,9 @@ public abstract class AbstractTransformationExecutor implements TransformationEx
}
}
+ protected final @NonNull Executor executor;
+ /** deprecated use executor */
+ @Deprecated
protected final @NonNull Evaluator evaluator;
protected final @NonNull IdResolver idResolver;
protected final @NonNull Model[] models;
@@ -302,10 +307,17 @@ public abstract class AbstractTransformationExecutor implements TransformationEx
*/
private final @Nullable Map<ClassId, Set<Integer>> classId2classIndexes;
+ /** @deprecated use Executor in constructor */
+ @Deprecated
protected AbstractTransformationExecutor(@NonNull Evaluator evaluator, @NonNull String[] modelNames,
@Nullable PropertyId[] propertyIndex2propertyId, @Nullable ClassId[] classIndex2classId, @Nullable int[][] classIndex2allClassIndexes) {
- this.evaluator = evaluator;
- this.idResolver = evaluator.getIdResolver();
+ this(ValueUtil.getExecutor(evaluator), modelNames, propertyIndex2propertyId, classIndex2classId, classIndex2allClassIndexes);
+ }
+ protected AbstractTransformationExecutor(@NonNull Executor executor, @NonNull String[] modelNames,
+ @Nullable PropertyId[] propertyIndex2propertyId, @Nullable ClassId[] classIndex2classId, @Nullable int[][] classIndex2allClassIndexes) {
+ this.executor = executor;
+ this.evaluator = executor;
+ this.idResolver = executor.getIdResolver();
this.models = new Model[modelNames.length];
for (int i = 0; i < modelNames.length; i++) {
@SuppressWarnings("null")@NonNull String modelName = modelNames[i];
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/BasicQVTiExecutor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/BasicQVTiExecutor.java
index 5728febc6..f01f8a7de 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/BasicQVTiExecutor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/BasicQVTiExecutor.java
@@ -73,7 +73,7 @@ public class BasicQVTiExecutor extends AbstractExecutor implements QVTiExecutor
}
@Override
- protected @NonNull EvaluationVisitor createEvaluationVisitor() {
+ protected @NonNull EvaluationVisitor.EvaluationVisitorExtension createEvaluationVisitor() {
IQVTiEvaluationVisitor visitor = new QVTiEvaluationVisitor(this);
if (environmentFactory.isEvaluationTracingEnabled()) {
// decorate the evaluation visitor with tracing support
@@ -95,7 +95,7 @@ public class BasicQVTiExecutor extends AbstractExecutor implements QVTiExecutor
}
@Override
- protected @NonNull EvaluationEnvironment createNestedEvaluationEnvironment(@NonNull EvaluationEnvironment evaluationEnvironment, @NonNull NamedElement executableObject, @NonNull OCLExpression callingObject) {
+ protected @NonNull EvaluationEnvironment.EvaluationEnvironmentExtension createNestedEvaluationEnvironment(@NonNull EvaluationEnvironment.EvaluationEnvironmentExtension evaluationEnvironment, @NonNull NamedElement executableObject, @Nullable OCLExpression callingObject) {
if (evaluationEnvironment instanceof QVTiEvaluationEnvironment) {
return new QVTiNestedEvaluationEnvironment((QVTiEvaluationEnvironment) evaluationEnvironment, executableObject, callingObject);
}
@@ -105,7 +105,7 @@ public class BasicQVTiExecutor extends AbstractExecutor implements QVTiExecutor
}
@Override
- protected @NonNull EvaluationEnvironment createRootEvaluationEnvironment(@NonNull NamedElement executableObject) {
+ protected @NonNull EvaluationEnvironment.EvaluationEnvironmentExtension createRootEvaluationEnvironment(@NonNull NamedElement executableObject) {
if (executableObject instanceof Transformation) {
return new QVTiRootEvaluationEnvironment(this, (Transformation) executableObject);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/IQVTiEvaluationVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/IQVTiEvaluationVisitor.java
index 108c336d1..aa4601417 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/IQVTiEvaluationVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/IQVTiEvaluationVisitor.java
@@ -15,7 +15,7 @@ import org.eclipse.ocl.pivot.evaluation.EvaluationVisitor;
import org.eclipse.ocl.pivot.util.Visitable;
import org.eclipse.qvtd.pivot.qvtimperative.util.QVTimperativeVisitor;
-public interface IQVTiEvaluationVisitor extends QVTimperativeVisitor<Object>, EvaluationVisitor
+public interface IQVTiEvaluationVisitor extends QVTimperativeVisitor<Object>, EvaluationVisitor.EvaluationVisitorExtension
{
Object safeVisit(@Nullable Visitable v);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationEnvironment.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationEnvironment.java
index 7b80f1af2..5305eb650 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationEnvironment.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationEnvironment.java
@@ -17,7 +17,7 @@ import org.eclipse.ocl.pivot.evaluation.EvaluationEnvironment;
import org.eclipse.qvtd.pivot.qvtbase.Transformation;
import org.eclipse.qvtd.pivot.qvtcorebase.analysis.DomainUsage;
-public interface QVTiEvaluationEnvironment extends EvaluationEnvironment
+public interface QVTiEvaluationEnvironment extends EvaluationEnvironment.EvaluationEnvironmentExtension
{
@Override
@NonNull QVTiExecutor getExecutor();
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationVisitorDecorator.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationVisitorDecorator.java
index 2da4bd5ad..bf95139b9 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationVisitorDecorator.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiEvaluationVisitorDecorator.java
@@ -15,7 +15,6 @@ import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.pivot.Import;
import org.eclipse.ocl.pivot.OCLExpression;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
import org.eclipse.ocl.pivot.internal.evaluation.AbstractEvaluationVisitorDecorator;
import org.eclipse.ocl.pivot.util.Visitable;
import org.eclipse.ocl.pivot.utilities.ValueUtil;
@@ -85,10 +84,10 @@ public abstract class QVTiEvaluationVisitorDecorator extends AbstractEvaluationV
// return delegate.getEvaluator();
// }
- @Override
- public @NonNull Evaluator getEvaluator() {
- return delegate.getEvaluator();
- }
+// @Override
+// public @NonNull EvaluationVisitor getEvaluator() {
+// return delegate.getEvaluator();
+// }
/**
* Delegates to my decorated visitor.
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiNestedEvaluationEnvironment.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiNestedEvaluationEnvironment.java
index 2ff06b59c..0946ba5c4 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiNestedEvaluationEnvironment.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiNestedEvaluationEnvironment.java
@@ -28,7 +28,7 @@ public class QVTiNestedEvaluationEnvironment extends BasicEvaluationEnvironment
protected final @NonNull QVTiRootEvaluationEnvironment rootEvaluationEnvironment;
private @Nullable DomainUsageAnalysis usageAnalysis;
- public QVTiNestedEvaluationEnvironment(@NonNull QVTiEvaluationEnvironment evaluationEnvironment, @NonNull NamedElement executableObject, @NonNull OCLExpression callingObject) {
+ public QVTiNestedEvaluationEnvironment(@NonNull QVTiEvaluationEnvironment evaluationEnvironment, @NonNull NamedElement executableObject, @Nullable OCLExpression callingObject) {
super(evaluationEnvironment, executableObject, callingObject);
rootEvaluationEnvironment = evaluationEnvironment.getRootEvaluationEnvironment();
}
@@ -38,6 +38,7 @@ public class QVTiNestedEvaluationEnvironment extends BasicEvaluationEnvironment
return (QVTiExecutor) super.getExecutor();
}
+ @Override
public @NonNull QVTiEvaluationEnvironment getParentEvaluationEnvironment() {
EvaluationEnvironment parent = getParent();
assert parent != null;
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiTracingEvaluationVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiTracingEvaluationVisitor.java
index 8f5e74bbd..a07c9de32 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiTracingEvaluationVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/evaluation/QVTiTracingEvaluationVisitor.java
@@ -24,12 +24,12 @@ import org.eclipse.ocl.pivot.StandardLibrary;
import org.eclipse.ocl.pivot.evaluation.EvaluationEnvironment;
import org.eclipse.ocl.pivot.evaluation.EvaluationLogger;
import org.eclipse.ocl.pivot.evaluation.EvaluationVisitor;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.evaluation.ModelManager;
import org.eclipse.ocl.pivot.ids.IdResolver;
import org.eclipse.ocl.pivot.util.Visitable;
import org.eclipse.ocl.pivot.utilities.EnvironmentFactory;
+import org.eclipse.ocl.pivot.utilities.MetamodelManager;
import org.eclipse.ocl.pivot.utilities.NameUtil;
import org.eclipse.qvtd.pivot.qvtimperative.util.AbstractMergedQVTimperativeVisitor;
@@ -112,7 +112,7 @@ public class QVTiTracingEvaluationVisitor extends AbstractMergedQVTimperativeVis
/** @deprected moved to Evaluator */
@Deprecated
@Override
- public @NonNull Evaluator getEvaluator() {
+ public @NonNull EvaluationVisitor getEvaluator() {
return context.getEvaluator();
}
@@ -121,6 +121,13 @@ public class QVTiTracingEvaluationVisitor extends AbstractMergedQVTimperativeVis
return context.getExecutor();
}
+ /** @deprecated moved to Evaluator */
+ @Deprecated
+ @Override
+ public @NonNull MetamodelManager getMetamodelManager() {
+ return context.getMetamodelManager();
+ }
+
@SuppressWarnings("deprecation")
@Override
public @NonNull ModelManager getModelManager() {
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/AllObjectsOperation.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/AllObjectsOperation.java
index b2ba8c939..31484e3e1 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/AllObjectsOperation.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/AllObjectsOperation.java
@@ -15,7 +15,7 @@ import java.util.Collection;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.TypeId;
import org.eclipse.ocl.pivot.library.AbstractUnaryOperation;
@@ -32,7 +32,7 @@ public class AllObjectsOperation extends AbstractUnaryOperation
public static final @NonNull AllObjectsOperation INSTANCE = new AllObjectsOperation();
@Override
- public @NonNull SetValue evaluate(@NonNull Evaluator evaluator, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) {
+ public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) {
if (!(sourceVal instanceof TypedModelInstance)) {
throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal));
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfKindOperation.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfKindOperation.java
index a1cffdbcd..c549a75a7 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfKindOperation.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfKindOperation.java
@@ -15,7 +15,7 @@ import java.util.Collection;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.TypeId;
import org.eclipse.ocl.pivot.library.AbstractBinaryOperation;
@@ -32,7 +32,7 @@ public class ModelObjectsOfKindOperation extends AbstractBinaryOperation
public static final @NonNull ModelObjectsOfKindOperation INSTANCE = new ModelObjectsOfKindOperation();
@Override
- public @NonNull SetValue evaluate(@NonNull Evaluator evaluator, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) {
+ public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) {
org.eclipse.ocl.pivot.Class type = asClass(typeVal);
if (!(sourceVal instanceof TypedModelInstance)) {
throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal));
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfTypeOperation.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfTypeOperation.java
index 24d04b9e4..7dc98490f 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfTypeOperation.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/ModelObjectsOfTypeOperation.java
@@ -15,7 +15,7 @@ import java.util.Collection;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.TypeId;
import org.eclipse.ocl.pivot.library.AbstractBinaryOperation;
@@ -32,7 +32,7 @@ public class ModelObjectsOfTypeOperation extends AbstractBinaryOperation
public static final @NonNull ModelObjectsOfTypeOperation INSTANCE = new ModelObjectsOfTypeOperation();
@Override
- public @NonNull SetValue evaluate(@NonNull Evaluator evaluator, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) {
+ public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) {
org.eclipse.ocl.pivot.Class type = asClass(typeVal);
if (!(sourceVal instanceof TypedModelInstance)) {
throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal));
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/RootObjectsOperation.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/RootObjectsOperation.java
index 2e6f4ff56..1f9117206 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/RootObjectsOperation.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/src/org/eclipse/qvtd/pivot/qvtimperative/library/model/RootObjectsOperation.java
@@ -15,7 +15,7 @@ import java.util.Collection;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.TypeId;
import org.eclipse.ocl.pivot.library.AbstractUnaryOperation;
@@ -32,7 +32,7 @@ public class RootObjectsOperation extends AbstractUnaryOperation
public static final @NonNull RootObjectsOperation INSTANCE = new RootObjectsOperation();
@Override
- public @NonNull SetValue evaluate(@NonNull Evaluator evaluator, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) {
+ public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) {
if (!(sourceVal instanceof TypedModelInstance)) {
throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal));
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/EnvExample1.ecore b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/EnvExample1.ecore
index 2944c2642..6d1410d81 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/EnvExample1.ecore
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/EnvExample1.ecore
@@ -37,12 +37,12 @@
<details key="body" value="throw new &lt;%java.lang.UnsupportedOperationException%>(&quot;Enviroment::hasFinalResult() has been created for CG purposes. Don't call this method&quot;);"/>
</eAnnotations>
</eOperations>
- <eOperations name="getEvaluator" eType="#//Evaluator">
+ <eOperations name="getExecutor" eType="#//Executor">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="body" value="throw new &lt;%java.lang.UnsupportedOperationException%>(&quot;Enviroment::getEvaluator() has been created for CG purposes. Don't call this method&quot;);"/>
</eAnnotations>
</eOperations>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Evaluator" instanceClassName="org.eclipse.ocl.pivot.evaluation.Evaluator"
+ <eClassifiers xsi:type="ecore:EClass" name="Executor" instanceClassName="org.eclipse.ocl.pivot.evaluation.Executor"
abstract="true" interface="true"/>
</ecore:EPackage>
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/Source2Target.qvtias b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/Source2Target.qvtias
index f28152239..8179e8c84 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/Source2Target.qvtias
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/Source2Target.qvtias
@@ -9,8 +9,12 @@
<ownedImports importedNamespace="pivot:Model TargetLookup.ocl.oclas#/"/>
<ownedPackages xmi:id="P." name="">
<ownedClasses xsi:type="qvtb:Transformation" xmi:id="T..Source2Target_qvtp_qvtias" name="Source2Target_qvtp_qvtias">
- <modelParameter xmi:id="qT..Source2Target_qvtp_qvtias.leftCS" name="leftCS" usedPackage="SourceMM1.ecore.oclas#P.source"/>
- <modelParameter xmi:id="qT..Source2Target_qvtp_qvtias.rightAS" name="rightAS" usedPackage="TargetMM1.ecore.oclas#P.target"/>
+ <modelParameter xmi:id="qT..Source2Target_qvtp_qvtias.leftCS" name="leftCS" usedPackage="SourceMM1.ecore.oclas#P.source">
+ <ownedContext name="leftCS" type="pivot:Class http://www.eclipse.org/qvt/2015/QVTimperativeLibrary.oclas#T.qvtbaselibrary.Model"/>
+ </modelParameter>
+ <modelParameter xmi:id="qT..Source2Target_qvtp_qvtias.rightAS" name="rightAS" usedPackage="TargetMM1.ecore.oclas#P.target">
+ <ownedContext name="rightAS" type="pivot:Class http://www.eclipse.org/qvt/2015/QVTimperativeLibrary.oclas#T.qvtbaselibrary.Model"/>
+ </modelParameter>
<rule xsi:type="qvti:Mapping" xmi:id="m..Source2Target_qvtp_qvtias.cSRoot_2_TRoot" name="cSRoot_2_TRoot">
<domain xsi:type="qvtcb:CoreDomain" name="leftCS" isCheckable="true" isEnforceable="false" typedModel="#qT..Source2Target_qvtp_qvtias.leftCS">
<guardPattern>
@@ -258,7 +262,18 @@
</domain>
<guardPattern/>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.TRoot.ownedA">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.TRoot"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.bottom._1" name="_1" type="#//@ownedPackages.1/@ownedClasses.0"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.TRoot" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.SRoot" referredVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.leftCS.guard.sRoot"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.TRoot"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.bottom._1">
<value xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.0" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.OrderedSet.collect..T">
<ownedSource xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.1" referredProperty="SourceMM1.ecore.oclas#p.source.SRoot.ownedX">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.SRoot" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.leftCS.guard.sRoot"/>
@@ -267,20 +282,17 @@
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true"
- referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.8/@bottomPattern/@assignment.0/@value/@ownedIterators.0"/>
+ referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.8/@bottomPattern/@assignment.1/@value/@ownedIterators.0"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A"/>
</ownedBody>
<ownedIterators name="1_" isRequired="false" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" representedParameter="http://www.eclipse.org/ocl/2015/Library.oclas#i0i.ocl.OrderedSet.collect..T"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.TRoot" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.SRoot" referredVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.leftCS.guard.sRoot"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.TRoot"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.TRoot.ownedA">
+ <value xsi:type="pivot:VariableExp" type="#//@ownedPackages.1/@ownedClasses.0" referredVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.TRoot" referredVariable="#qV..Source2Target_qvtp_qvtias.uTRoot_ownedA.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -316,18 +328,27 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
- <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
- referredProperty="SourceMM1.ecore.oclas#p.source.X.name">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.leftCS.guard.x"/>
- </value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA3_name.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA3_name.bottom._1" name="_1" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.leftCS.guard.x"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A3"/>
- </slotExpression>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.bottom._1">
+ <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredProperty="SourceMM1.ecore.oclas#p.source.X.name">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.leftCS.guard.x"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_name.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -363,7 +384,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.A2.ownsC">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA3_ownsC.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA3_ownsC.bottom._1" name="_1" type="#//@ownedPackages.1/@ownedClasses.2"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA3_ownsC.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_ownsC.leftCS.guard.x"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A3"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA3_ownsC.bottom._1">
<value xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.2" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.Sequence.collect..T">
<ownedSource xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.3" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.OrderedSet.collect..T">
<ownedSource xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.4" referredProperty="SourceMM1.ecore.oclas#p.source.X.ownsY">
@@ -371,7 +403,7 @@
</ownedSource>
<ownedBody xsi:type="pivot:OperationCallExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y" isImplicit="true"
- referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.10/@bottomPattern/@assignment.0/@value/@ownedSource/@ownedIterators.0"/>
+ referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.10/@bottomPattern/@assignment.1/@value/@ownedSource/@ownedIterators.0"/>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class SourceMM1.ecore.oclas#T.source.Y2"/>
</ownedBody>
@@ -380,20 +412,17 @@
<ownedBody xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.10/@bottomPattern/@assignment.0/@value/@ownedIterators.0"/>
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.10/@bottomPattern/@assignment.1/@value/@ownedIterators.0"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
</ownedBody>
<ownedIterators name="1_" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" representedParameter="http://www.eclipse.org/ocl/2015/Library.oclas#i0i.ocl.Sequence.collect..T"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_ownsC.leftCS.guard.x"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A3"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.A2.ownsC">
+ <value xsi:type="pivot:VariableExp" type="#//@ownedPackages.1/@ownedClasses.2" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_ownsC.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A3" referredVariable="#qV..Source2Target_qvtp_qvtias.uA3_ownsC.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -426,18 +455,27 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
- <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
- referredProperty="SourceMM1.ecore.oclas#p.source.X.name">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.leftCS.guard.x"/>
- </value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA2_name.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA2_name.bottom._1" name="_1" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.leftCS.guard.x"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A2"/>
- </slotExpression>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.bottom._1">
+ <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredProperty="SourceMM1.ecore.oclas#p.source.X.name">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.leftCS.guard.x"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_name.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -470,7 +508,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.A2.ownsC">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA2_ownsC.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA2_ownsC.bottom._1" name="_1" type="#//@ownedPackages.1/@ownedClasses.2"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA2_ownsC.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_ownsC.leftCS.guard.x"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A2"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA2_ownsC.bottom._1">
<value xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.2" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.Sequence.collect..T">
<ownedSource xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.3" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.OrderedSet.collect..T">
<ownedSource xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.4" referredProperty="SourceMM1.ecore.oclas#p.source.X.ownsY">
@@ -478,7 +527,7 @@
</ownedSource>
<ownedBody xsi:type="pivot:OperationCallExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y" isImplicit="true"
- referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.12/@bottomPattern/@assignment.0/@value/@ownedSource/@ownedIterators.0"/>
+ referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.12/@bottomPattern/@assignment.1/@value/@ownedSource/@ownedIterators.0"/>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class SourceMM1.ecore.oclas#T.source.Y2"/>
</ownedBody>
@@ -487,20 +536,17 @@
<ownedBody xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.12/@bottomPattern/@assignment.0/@value/@ownedIterators.0"/>
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.12/@bottomPattern/@assignment.1/@value/@ownedIterators.0"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
</ownedBody>
<ownedIterators name="1_" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" representedParameter="http://www.eclipse.org/ocl/2015/Library.oclas#i0i.ocl.Sequence.collect..T"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_ownsC.leftCS.guard.x"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A2"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.A2.ownsC">
+ <value xsi:type="pivot:VariableExp" type="#//@ownedPackages.1/@ownedClasses.2" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_ownsC.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredVariable="#qV..Source2Target_qvtp_qvtias.uA2_ownsC.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -524,18 +570,27 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
- <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
- referredProperty="SourceMM1.ecore.oclas#p.source.X.name">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.leftCS.guard.x"/>
- </value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA1_name.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA1_name.bottom._1" name="_1" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.leftCS.guard.x"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A1"/>
- </slotExpression>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.bottom._1">
+ <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredProperty="SourceMM1.ecore.oclas#p.source.X.name">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.leftCS.guard.x"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_name.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -559,7 +614,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.A1.ownsB">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA1_ownsB.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uA1_ownsB.bottom._1" name="_1" type="#//@ownedPackages.1/@ownedClasses.5"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA1_ownsB.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_ownsB.leftCS.guard.x"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A1"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uA1_ownsB.bottom._1">
<value xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.5" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.Sequence.collect..T">
<ownedSource xsi:type="pivot:IteratorExp" name="collect" type="#//@ownedPackages.1/@ownedClasses.6" isImplicit="true" referredIteration="http://www.eclipse.org/ocl/2015/Library.oclas#i.ocl.OrderedSet.collect..T">
<ownedSource xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.4" referredProperty="SourceMM1.ecore.oclas#p.source.X.ownsY">
@@ -567,7 +633,7 @@
</ownedSource>
<ownedBody xsi:type="pivot:OperationCallExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y" isImplicit="true"
- referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.14/@bottomPattern/@assignment.0/@value/@ownedSource/@ownedIterators.0"/>
+ referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.14/@bottomPattern/@assignment.1/@value/@ownedSource/@ownedIterators.0"/>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class SourceMM1.ecore.oclas#T.source.Y1"/>
</ownedBody>
@@ -576,20 +642,17 @@
<ownedBody xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" isImplicit="true" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.14/@bottomPattern/@assignment.0/@value/@ownedIterators.0"/>
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" isImplicit="true" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.14/@bottomPattern/@assignment.1/@value/@ownedIterators.0"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class"
referredType="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
</ownedBody>
<ownedIterators name="1_" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" isImplicit="true" representedParameter="http://www.eclipse.org/ocl/2015/Library.oclas#i0i.ocl.Sequence.collect..T"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.X" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_ownsB.leftCS.guard.x"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.A1"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.A1.ownsB">
+ <value xsi:type="pivot:VariableExp" type="#//@ownedPackages.1/@ownedClasses.5" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_ownsB.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredVariable="#qV..Source2Target_qvtp_qvtias.uA1_ownsB.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -606,7 +669,18 @@
</domain>
<guardPattern/>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.B.ownsD">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uB_ownsD.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uB_ownsD.bottom._1" name="_1" type="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uB_ownsD.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_ownsD.leftCS.guard.y1"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uB_ownsD.bottom._1">
<value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
@@ -616,13 +690,10 @@
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_ownsD.leftCS.guard.y1"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.B.ownsD">
+ <value xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_ownsD.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_ownsD.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -639,18 +710,27 @@
</domain>
<guardPattern/>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
- <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
- referredProperty="SourceMM1.ecore.oclas#p.source.Y.name">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_name.leftCS.guard.y1"/>
- </value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uB_name.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uB_name.bottom._1" name="_1" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uB_name.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_name.leftCS.guard.y1"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
- </slotExpression>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uB_name.bottom._1">
+ <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredProperty="SourceMM1.ecore.oclas#p.source.Y.name">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y1" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_name.leftCS.guard.y1"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredVariable="#qV..Source2Target_qvtp_qvtias.uB_name.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredVariable="#qV..Source2Target_qvtp_qvtias.uB_name.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -667,7 +747,18 @@
</domain>
<guardPattern/>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.C.ownsD">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uC_ownsD.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uC_ownsD.bottom._1" name="_1" type="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uC_ownsD.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_ownsD.leftCS.guard.y2"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uC_ownsD.bottom._1">
<value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
@@ -677,13 +768,10 @@
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_ownsD.leftCS.guard.y2"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.C.ownsD">
+ <value xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_ownsD.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_ownsD.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -700,18 +788,27 @@
</domain>
<guardPattern/>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
- <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
- referredProperty="SourceMM1.ecore.oclas#p.source.Y.name">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_name.leftCS.guard.y2"/>
- </value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uC_name.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uC_name.bottom._1" name="_1" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uC_name.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_name.leftCS.guard.y2"/>
</ownedSource>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
- </slotExpression>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uC_name.bottom._1">
+ <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredProperty="SourceMM1.ecore.oclas#p.source.Y.name">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Y2" isImplicit="true" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_name.leftCS.guard.y2"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.NamedElement.name">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
+ referredVariable="#qV..Source2Target_qvtp_qvtias.uC_name.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredVariable="#qV..Source2Target_qvtp_qvtias.uC_name.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -742,7 +839,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.toA">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_0_toA.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_0_toA.bottom._1" name="_1" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_0_toA.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_toA.leftCS.guard.z"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_0_toA.bottom._1">
<value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredProperty="TargetMM1.ecore.oclas#p.target.C.toA2">
<ownedSource xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
@@ -761,13 +869,10 @@
referredType="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
</ownedSource>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_toA.leftCS.guard.z"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.toA">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.A2" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_toA.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_toA.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -798,7 +903,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.refsC">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_0_refsC.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_0_refsC.bottom._1" name="_1" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.C"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.leftCS.guard.z"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.bottom._1">
<value xsi:type="pivot:OperationCallExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredOperation="TargetLookup.ocl.oclas#o.target.D.lookupC..source.Z">
<ownedSource xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
@@ -810,13 +926,10 @@
</ownedSource>
<ownedArguments xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.leftCS.guard.z"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.leftCS.guard.z"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.refsC">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.C" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_0_refsC.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -843,7 +956,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.toA">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_1_toA.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_1_toA.bottom._1" name="_1" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_1_toA.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_toA.leftCS.guard.z"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_1_toA.bottom._1">
<value xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredProperty="TargetMM1.ecore.oclas#p.target.B.toA1">
<ownedSource xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
@@ -862,13 +986,10 @@
referredType="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
</ownedSource>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_toA.leftCS.guard.z"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.toA">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.A1" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_toA.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_toA.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -895,7 +1016,18 @@
</predicate>
</guardPattern>
<bottomPattern>
- <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.refsB">
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_1_refsB.bottom._0" name="_0" type="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ <variable xmi:id="qV..Source2Target_qvtp_qvtias.uD_1_refsB.bottom._1" name="_1" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.B"/>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.bottom._0">
+ <value xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
+ <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
+ referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
+ <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.leftCS.guard.z"/>
+ </ownedSource>
+ <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
+ </value>
+ </assignment>
+ <assignment xsi:type="qvtcb:VariableAssignment" targetVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.bottom._1">
<value xsi:type="pivot:OperationCallExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredOperation="TargetLookup.ocl.oclas#o.target.D.lookupB..source.Z">
<ownedSource xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
<ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
@@ -907,13 +1039,10 @@
</ownedSource>
<ownedArguments xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.leftCS.guard.z"/>
</value>
- <slotExpression xsi:type="pivot:OperationCallExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.oclAsType..TT">
- <ownedSource xsi:type="pivot:PropertyCallExp" type="pivot:Class http://www.eclipse.org/emf/2002/Ecore.oclas#T.ecore.EObject"
- referredProperty="SourceMM1.ecore.oclas#p.source.SElement.ast">
- <ownedSource xsi:type="pivot:VariableExp" type="pivot:Class SourceMM1.ecore.oclas#T.source.Z" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.leftCS.guard.z"/>
- </ownedSource>
- <ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.Class" referredType="pivot:Class TargetMM1.ecore.oclas#T.target.D"/>
- </slotExpression>
+ </assignment>
+ <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="TargetMM1.ecore.oclas#p.target.D.refsB">
+ <value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class TargetMM1.ecore.oclas#T.target.B" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.bottom._1"/>
+ <slotExpression xsi:type="pivot:VariableExp" type="pivot:Class TargetMM1.ecore.oclas#T.target.D" referredVariable="#qV..Source2Target_qvtp_qvtias.uD_1_refsB.bottom._0"/>
</assignment>
</bottomPattern>
</rule>
@@ -1222,6 +1351,7 @@
</mappingStatements>
</mappingStatement>
</rule>
+ <ownedContext name="this"/>
</ownedClasses>
</ownedPackages>
<ownedPackages xmi:id="P.$$" name="$$" URI="http://www.eclipse.org/ocl/2015/Orphanage" nsPrefix="orphanage">
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/java/LookupEnvironment.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/java/LookupEnvironment.java
index f6125d841..d8c5b4b2d 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/java/LookupEnvironment.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/java/LookupEnvironment.java
@@ -13,7 +13,7 @@ package org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java;
import org.eclipse.emf.common.util.EList;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example1.env.Environment;
import example1.env.impl.EnvironmentImpl;
@@ -22,26 +22,26 @@ import example1.target.NamedElement;
public class LookupEnvironment extends EnvironmentImpl {
- private @NonNull Evaluator evaluator;
+ private @NonNull Executor executor;
private @NonNull String name;
private boolean isLocal;
- public LookupEnvironment(@NonNull Evaluator evaluator, @NonNull String name, boolean isLocalLookup) {
- this.evaluator = evaluator;
+ public LookupEnvironment(@NonNull Executor executor, @NonNull String name, boolean isLocalLookup) {
+ this.executor = executor;
this.name = name;
this.isLocal = isLocalLookup;
}
- public LookupEnvironment(@NonNull Evaluator evaluator, @NonNull PathElementCS pathElement, boolean isLocalLookup) {
- this.evaluator = evaluator;
+ public LookupEnvironment(@NonNull Executor executor, @NonNull PathElementCS pathElement, boolean isLocalLookup) {
+ this.executor = executor;
this.name = pathElement.getName();
this.isLocal = isLocalLookup;
}
@Override
@NonNull
- public Evaluator getEvaluator() {
- return evaluator;
+ public Executor getExecutor() {
+ return executor;
}
@Override
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore
index 78518f6c5..a842beadb 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore
@@ -37,12 +37,12 @@
<details key="body" value="throw new &lt;%java.lang.UnsupportedOperationException%>(&quot;Enviroment::hasFinalResult() has been created for CG purposes. Don't call this method&quot;);"/>
</eAnnotations>
</eOperations>
- <eOperations name="getEvaluator" eType="#//Evaluator">
+ <eOperations name="getExecutor" eType="#//Executor">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="body" value="throw new &lt;%java.lang.UnsupportedOperationException%>(&quot;Enviroment::getEvaluator() has been created for CG purposes. Don't call this method&quot;);"/>
</eAnnotations>
</eOperations>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Evaluator" instanceClassName="org.eclipse.ocl.pivot.evaluation.Evaluator"
+ <eClassifiers xsi:type="ecore:EClass" name="Executor" instanceClassName="org.eclipse.ocl.pivot.evaluation.Executor"
abstract="true" interface="true"/>
</ecore:EPackage>
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/java/LookupEnvironment.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/java/LookupEnvironment.java
index f5574544e..a664b42b0 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/java/LookupEnvironment.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/java/LookupEnvironment.java
@@ -13,7 +13,7 @@ package org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java;
import org.eclipse.emf.common.util.EList;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example2.classes.NamedElement;
import example2.classescs.PathElementCS;
@@ -23,23 +23,23 @@ import example2.env.impl.EnvironmentImpl;
public class LookupEnvironment extends EnvironmentImpl {
- private @NonNull Evaluator evaluator;
+ private @NonNull Executor executor;
private @NonNull String name;
- public LookupEnvironment(@NonNull Evaluator evaluator, @NonNull String name) {
- this.evaluator = evaluator;
+ public LookupEnvironment(@NonNull Executor executor, @NonNull String name) {
+ this.executor = executor;
this.name = name;
}
- public LookupEnvironment(@NonNull Evaluator evaluator, @NonNull PathElementCS pathElement) {
- this.evaluator = evaluator;
+ public LookupEnvironment(@NonNull Executor executor, @NonNull PathElementCS pathElement) {
+ this.executor = executor;
this.name = pathElement.getName();
}
@Override
@NonNull
- public Evaluator getEvaluator() {
- return evaluator;
+ public Executor getExecutor() {
+ return executor;
}
@Override
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_Source2Target_qvtp_qvtias/Source2Target_qvtp_qvtias.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_Source2Target_qvtp_qvtias/Source2Target_qvtp_qvtias.java
index e3f3be3a3..8778952fe 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_Source2Target_qvtp_qvtias/Source2Target_qvtp_qvtias.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_Source2Target_qvtp_qvtias/Source2Target_qvtp_qvtias.java
@@ -37,7 +37,7 @@ import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.ocl.pivot.Class;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -142,8 +142,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
{4} // 4 : Z -> {Z}
};
- public Source2Target_qvtp_qvtias(final /*@NonNull*/ Evaluator evaluator) {
- super(evaluator, new String[] {"leftCS", "rightAS"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public Source2Target_qvtp_qvtias(final /*@NonNull*/ Executor executor) {
+ super(executor, new String[] {"leftCS", "rightAS"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -164,15 +164,15 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
* endif
*/
public /*@Nullable*/ /*@NonInvalid*/ Namespace lookupNamespace(final /*@NonNull*/ /*@NonInvalid*/ Visitable self_0, final /*@NonNull*/ /*@NonInvalid*/ List<PathElementCS> pathSeq) {
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ OrderedSetValue BOXED_pathSeq_0 = idResolver.createOrderedSetOfAll(ORD_CLSSid_PathElementCS, pathSeq);
final /*@NonNull*/ /*@NonInvalid*/ IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_pathSeq_0);
final /*@NonInvalid*/ boolean eq = size.equals(INT_1);
/*@Nullable*/ /*@Thrown*/ Namespace symbol_1;
if (eq) {
final /*@Nullable*/ /*@Thrown*/ PathElementCS first = (PathElementCS)OrderedCollectionFirstOperation.INSTANCE.evaluate(BOXED_pathSeq_0);
- LookupEnvironment _lookupEnv = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.LookupEnvironment(evaluator,first, ValueUtil.FALSE_VALUE);
- TargetLookupVisitor _lookupVisitor = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.TargetLookupVisitor(_lookupEnv);
+ LookupEnvironment _lookupEnv = new LookupEnvironment(executor,first, ValueUtil.FALSE_VALUE);
+ TargetLookupVisitor _lookupVisitor = new TargetLookupVisitor(_lookupEnv);
EList<NamedElement> _lookupResult = self_0.accept(_lookupVisitor).getNamedElements();
Namespace _lookupNamespace = null;
if (_lookupResult.size() == 1) {
@@ -202,8 +202,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
}
else {
final /*@Nullable*/ /*@Thrown*/ PathElementCS last = (PathElementCS)OrderedCollectionLastOperation.INSTANCE.evaluate(BOXED_pathSeq_0);
- LookupEnvironment _lookupEnv_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.LookupEnvironment(evaluator,last, ValueUtil.TRUE_VALUE);
- TargetLookupVisitor _lookupVisitor_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.TargetLookupVisitor(_lookupEnv_0);
+ LookupEnvironment _lookupEnv_0 = new LookupEnvironment(executor,last, ValueUtil.TRUE_VALUE);
+ TargetLookupVisitor _lookupVisitor_0 = new TargetLookupVisitor(_lookupEnv_0);
EList<NamedElement> _lookupResult_0 = lookupNamespace.accept(_lookupVisitor_0).getNamedElements();
Namespace _lookupNamespace_0 = null;
if (_lookupResult_0.size() == 1) {
@@ -424,10 +424,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean cZ_2_D_0(final /*@NonNull*/ /*@NonInvalid*/ Z z) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
final /*@Nullable*/ /*@Thrown*/ Y toY = z.getToY();
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0).booleanValue();
final /*@Nullable*/ /*@Thrown*/ Boolean not = BooleanNotOperation.INSTANCE.evaluate(oclIsKindOf);
if (not != ValueUtil.TRUE_VALUE) {
return false;
@@ -460,10 +460,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean cZ_2_D_1(final /*@NonNull*/ /*@NonInvalid*/ Z z_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
final /*@Nullable*/ /*@Thrown*/ Y toY = z_0.getToY();
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0).booleanValue();
if (!oclIsKindOf) {
return false;
}
@@ -498,12 +498,11 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uTRoot_ownedA(final /*@NonNull*/ /*@NonInvalid*/ SRoot sRoot_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_TRoot_0 = idResolver.getClass(CLSSid_TRoot, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = sRoot_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ TRoot oclAsType = ClassUtil.nonNullState((TRoot)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_TRoot_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ TRoot oclAsType = ClassUtil.nonNullState((TRoot)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_TRoot_0));
final /*@NonNull*/ /*@Thrown*/ List<X> ownedX = sRoot_0.getOwnedX();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownedX = idResolver.createOrderedSetOfAll(ORD_CLSSid_X, ownedX);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_A);
@@ -523,7 +522,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
throwNull(sRoot_0, "Null source for \'\'http://cs2as/tests/example1/sourceMM/1.0\'::SElement::ast\'");
}
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1.getAst();
- final /*@NonNull*/ /*@Thrown*/ A oclAsType_0 = ClassUtil.nonNullState((A)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_A_0));
+ final /*@NonNull*/ /*@Thrown*/ A oclAsType_0 = ClassUtil.nonNullState((A)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_A_0));
//
accumulator.add(oclAsType_0);
}
@@ -558,7 +557,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uA3_name(final /*@NonNull*/ /*@NonInvalid*/ X x_2) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@Nullable*/ /*@Thrown*/ Boolean isA1 = x_2.isIsA1();
final /*@Nullable*/ /*@Thrown*/ Boolean not = BooleanNotOperation.INSTANCE.evaluate(isA1);
if (not != ValueUtil.TRUE_VALUE) {
@@ -572,7 +571,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_A3_0 = idResolver.getClass(CLSSid_A3, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = x_2.getAst();
- final /*@NonNull*/ /*@Thrown*/ A3 oclAsType = ClassUtil.nonNullState((A3)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_A3_0));
+ final /*@NonNull*/ /*@Thrown*/ A3 oclAsType = ClassUtil.nonNullState((A3)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_A3_0));
final /*@Nullable*/ /*@Thrown*/ String name = x_2.getName();
// property assignments
oclAsType.setName(name);
@@ -605,7 +604,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uA3_ownsC(final /*@NonNull*/ /*@NonInvalid*/ X x_3) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@Nullable*/ /*@Thrown*/ Boolean isA1 = x_3.isIsA1();
final /*@Nullable*/ /*@Thrown*/ Boolean not = BooleanNotOperation.INSTANCE.evaluate(isA1);
if (not != ValueUtil.TRUE_VALUE) {
@@ -619,8 +618,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_A3_0 = idResolver.getClass(CLSSid_A3, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = x_3.getAst();
- final /*@NonNull*/ /*@Thrown*/ A3 oclAsType = ClassUtil.nonNullState((A3)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_A3_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ A3 oclAsType = ClassUtil.nonNullState((A3)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_A3_0));
final /*@NonNull*/ /*@Thrown*/ List<Y> ownsY = x_3.getOwnsY();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownsY = idResolver.createOrderedSetOfAll(ORD_CLSSid_Y, ownsY);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_Y2);
@@ -636,7 +634,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
* oclAsType(source::Y2)
*/
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y2_0 = idResolver.getClass(CLSSid_Y2, null);
- final /*@NonNull*/ /*@Thrown*/ Y2 oclAsType_0 = ClassUtil.nonNullState((Y2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, _1, TYP_source_c_c_Y2_0));
+ final /*@NonNull*/ /*@Thrown*/ Y2 oclAsType_0 = ClassUtil.nonNullState((Y2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, _1, TYP_source_c_c_Y2_0));
//
accumulator.add(oclAsType_0);
}
@@ -654,7 +652,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_C_0 = idResolver.getClass(CLSSid_C, null);
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ C oclAsType_1 = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_C_0));
+ final /*@NonNull*/ /*@Thrown*/ C oclAsType_1 = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_C_0));
//
accumulator_0.add(oclAsType_1);
}
@@ -689,7 +687,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uA2_name(final /*@NonNull*/ /*@NonInvalid*/ X x_4) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@Nullable*/ /*@Thrown*/ Boolean isA2 = x_4.isIsA2();
if (isA2 != ValueUtil.TRUE_VALUE) {
return false;
@@ -702,7 +700,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_A2_0 = idResolver.getClass(CLSSid_A2, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = x_4.getAst();
- final /*@NonNull*/ /*@Thrown*/ A2 oclAsType = ClassUtil.nonNullState((A2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_A2_0));
+ final /*@NonNull*/ /*@Thrown*/ A2 oclAsType = ClassUtil.nonNullState((A2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_A2_0));
final /*@Nullable*/ /*@Thrown*/ String name = x_4.getName();
// property assignments
oclAsType.setName(name);
@@ -735,7 +733,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uA2_ownsC(final /*@NonNull*/ /*@NonInvalid*/ X x_5) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@Nullable*/ /*@Thrown*/ Boolean isA2 = x_5.isIsA2();
if (isA2 != ValueUtil.TRUE_VALUE) {
return false;
@@ -748,8 +746,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_A2_0 = idResolver.getClass(CLSSid_A2, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = x_5.getAst();
- final /*@NonNull*/ /*@Thrown*/ A2 oclAsType = ClassUtil.nonNullState((A2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_A2_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ A2 oclAsType = ClassUtil.nonNullState((A2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_A2_0));
final /*@NonNull*/ /*@Thrown*/ List<Y> ownsY = x_5.getOwnsY();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownsY = idResolver.createOrderedSetOfAll(ORD_CLSSid_Y, ownsY);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_Y2);
@@ -765,7 +762,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
* oclAsType(source::Y2)
*/
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y2_0 = idResolver.getClass(CLSSid_Y2, null);
- final /*@NonNull*/ /*@Thrown*/ Y2 oclAsType_0 = ClassUtil.nonNullState((Y2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, _1, TYP_source_c_c_Y2_0));
+ final /*@NonNull*/ /*@Thrown*/ Y2 oclAsType_0 = ClassUtil.nonNullState((Y2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, _1, TYP_source_c_c_Y2_0));
//
accumulator.add(oclAsType_0);
}
@@ -783,7 +780,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_C_0 = idResolver.getClass(CLSSid_C, null);
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ C oclAsType_1 = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_C_0));
+ final /*@NonNull*/ /*@Thrown*/ C oclAsType_1 = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_C_0));
//
accumulator_0.add(oclAsType_1);
}
@@ -817,7 +814,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uA1_name(final /*@NonNull*/ /*@NonInvalid*/ X x_6) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@Nullable*/ /*@Thrown*/ Boolean isA1 = x_6.isIsA1();
if (isA1 != ValueUtil.TRUE_VALUE) {
return false;
@@ -825,7 +822,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_A1_0 = idResolver.getClass(CLSSid_A1, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = x_6.getAst();
- final /*@NonNull*/ /*@Thrown*/ A1 oclAsType = ClassUtil.nonNullState((A1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_A1_0));
+ final /*@NonNull*/ /*@Thrown*/ A1 oclAsType = ClassUtil.nonNullState((A1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_A1_0));
final /*@Nullable*/ /*@Thrown*/ String name = x_6.getName();
// property assignments
oclAsType.setName(name);
@@ -857,7 +854,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uA1_ownsB(final /*@NonNull*/ /*@NonInvalid*/ X x_7) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@Nullable*/ /*@Thrown*/ Boolean isA1 = x_7.isIsA1();
if (isA1 != ValueUtil.TRUE_VALUE) {
return false;
@@ -865,8 +862,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_A1_0 = idResolver.getClass(CLSSid_A1, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = x_7.getAst();
- final /*@NonNull*/ /*@Thrown*/ A1 oclAsType = ClassUtil.nonNullState((A1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_A1_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ A1 oclAsType = ClassUtil.nonNullState((A1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_A1_0));
final /*@NonNull*/ /*@Thrown*/ List<Y> ownsY = x_7.getOwnsY();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownsY = idResolver.createOrderedSetOfAll(ORD_CLSSid_Y, ownsY);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_Y1);
@@ -882,7 +878,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
* oclAsType(source::Y1)
*/
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
- final /*@NonNull*/ /*@Thrown*/ Y1 oclAsType_0 = ClassUtil.nonNullState((Y1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, _1, TYP_source_c_c_Y1_0));
+ final /*@NonNull*/ /*@Thrown*/ Y1 oclAsType_0 = ClassUtil.nonNullState((Y1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, _1, TYP_source_c_c_Y1_0));
//
accumulator.add(oclAsType_0);
}
@@ -900,7 +896,7 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_B_0 = idResolver.getClass(CLSSid_B, null);
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ B oclAsType_1 = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_B_0));
+ final /*@NonNull*/ /*@Thrown*/ B oclAsType_1 = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_B_0));
//
accumulator_0.add(oclAsType_1);
}
@@ -933,18 +929,18 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uB_ownsD(final /*@NonNull*/ /*@NonInvalid*/ Y1 y1_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_B_0 = idResolver.getClass(CLSSid_B, null);
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_D_0 = idResolver.getClass(CLSSid_D, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = y1_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ B oclAsType = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_B_0));
+ final /*@NonNull*/ /*@Thrown*/ B oclAsType = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_B_0));
final /*@Nullable*/ /*@Thrown*/ Z ownsZ = y1_0.getOwnsZ();
if (ownsZ == null) {
throwNull(y1_0, "Null source for \'\'http://cs2as/tests/example1/sourceMM/1.0\'::SElement::ast\'");
}
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = ownsZ.getAst();
- final /*@NonNull*/ /*@Thrown*/ D oclAsType_0 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ D oclAsType_0 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_D_0));
// property assignments
oclAsType.setOwnsD(oclAsType_0);
return true;
@@ -971,11 +967,11 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uB_name(final /*@NonNull*/ /*@NonInvalid*/ Y1 y1_1) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_B_0 = idResolver.getClass(CLSSid_B, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = y1_1.getAst();
- final /*@NonNull*/ /*@Thrown*/ B oclAsType = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_B_0));
+ final /*@NonNull*/ /*@Thrown*/ B oclAsType = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_B_0));
final /*@Nullable*/ /*@Thrown*/ String name = y1_1.getName();
// property assignments
oclAsType.setName(name);
@@ -1004,18 +1000,18 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uC_ownsD(final /*@NonNull*/ /*@NonInvalid*/ Y2 y2_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_C_0 = idResolver.getClass(CLSSid_C, null);
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_D_0 = idResolver.getClass(CLSSid_D, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = y2_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ C oclAsType = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_C_0));
+ final /*@NonNull*/ /*@Thrown*/ C oclAsType = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_C_0));
final /*@Nullable*/ /*@Thrown*/ Z ownsZ = y2_0.getOwnsZ();
if (ownsZ == null) {
throwNull(y2_0, "Null source for \'\'http://cs2as/tests/example1/sourceMM/1.0\'::SElement::ast\'");
}
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = ownsZ.getAst();
- final /*@NonNull*/ /*@Thrown*/ D oclAsType_0 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ D oclAsType_0 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_D_0));
// property assignments
oclAsType.setOwnsD(oclAsType_0);
return true;
@@ -1042,11 +1038,11 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uC_name(final /*@NonNull*/ /*@NonInvalid*/ Y2 y2_1) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_C_0 = idResolver.getClass(CLSSid_C, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = y2_1.getAst();
- final /*@NonNull*/ /*@Thrown*/ C oclAsType = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_C_0));
+ final /*@NonNull*/ /*@Thrown*/ C oclAsType = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_C_0));
final /*@Nullable*/ /*@Thrown*/ String name = y2_1.getName();
// property assignments
oclAsType.setName(name);
@@ -1078,10 +1074,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uD_0_toA(final /*@NonNull*/ /*@NonInvalid*/ Z z_1) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
final /*@Nullable*/ /*@Thrown*/ Y toY = z_1.getToY();
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0).booleanValue();
final /*@Nullable*/ /*@Thrown*/ Boolean not = BooleanNotOperation.INSTANCE.evaluate(oclIsKindOf);
if (not != ValueUtil.TRUE_VALUE) {
return false;
@@ -1091,10 +1087,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_D_0 = idResolver.getClass(CLSSid_D, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = z_1.getAst();
- final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_D_0));
- final /*@NonNull*/ /*@Thrown*/ Y2 oclAsType_0 = ClassUtil.nonNullState((Y2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y2_0));
+ final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ Y2 oclAsType_0 = ClassUtil.nonNullState((Y2)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y2_0));
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = oclAsType_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ C oclAsType_1 = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_C_0));
+ final /*@NonNull*/ /*@Thrown*/ C oclAsType_1 = ClassUtil.nonNullState((C)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_C_0));
final /*@Nullable*/ /*@Thrown*/ A2 toA2 = oclAsType_1.getToA2();
// property assignments
oclAsType.setToA(toA2);
@@ -1126,10 +1122,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uD_0_refsC(final /*@NonNull*/ /*@NonInvalid*/ Z z_2) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
final /*@Nullable*/ /*@Thrown*/ Y toY = z_2.getToY();
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0).booleanValue();
final /*@Nullable*/ /*@Thrown*/ Boolean not = BooleanNotOperation.INSTANCE.evaluate(oclIsKindOf);
if (not != ValueUtil.TRUE_VALUE) {
return false;
@@ -1137,8 +1133,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_D_0 = idResolver.getClass(CLSSid_D, null);
final /*@Nullable*/ /*@Thrown*/ EObject ast = z_2.getAst();
// variable assignments
- final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_D_0));
- final /*@NonNull*/ /*@Thrown*/ D self_1 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ D self_1 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_D_0));
final /*@Nullable*/ /*@Thrown*/ PathNameCS refers = z_2.getRefers();
final /*@Thrown*/ boolean eq = refers == null;
/*@Nullable*/ /*@Thrown*/ C symbol_3;
@@ -1149,7 +1145,6 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
if (refers == null) {
throwNull(z_2, "Null source for \'\'http://cs2as/tests/example1/sourceMM/1.0\'::PathNameCS::path\'");
}
- @SuppressWarnings("null")
final /*@NonNull*/ /*@Thrown*/ List<PathElementCS> pathSeq_0 = refers.getPath();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_pathSeq_0_0 = idResolver.createOrderedSetOfAll(ORD_CLSSid_PathElementCS, pathSeq_0);
final /*@NonNull*/ /*@Thrown*/ IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_pathSeq_0_0);
@@ -1157,8 +1152,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
/*@Nullable*/ /*@Thrown*/ C symbol_2;
if (eq_0) {
final /*@Nullable*/ /*@Thrown*/ PathElementCS first = (PathElementCS)OrderedCollectionFirstOperation.INSTANCE.evaluate(BOXED_pathSeq_0_0);
- LookupEnvironment _lookupEnv = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.LookupEnvironment(evaluator,first, ValueUtil.FALSE_VALUE);
- TargetLookupVisitor _lookupVisitor = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.TargetLookupVisitor(_lookupEnv);
+ LookupEnvironment _lookupEnv = new LookupEnvironment(executor,first, ValueUtil.FALSE_VALUE);
+ TargetLookupVisitor _lookupVisitor = new TargetLookupVisitor(_lookupEnv);
EList<NamedElement> _lookupResult = self_1.accept(_lookupVisitor).getNamedElements();
C _lookupC = null;
if (_lookupResult.size() == 1) {
@@ -1188,8 +1183,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
}
else {
final /*@Nullable*/ /*@Thrown*/ PathElementCS last = (PathElementCS)OrderedCollectionLastOperation.INSTANCE.evaluate(BOXED_pathSeq_0_0);
- LookupEnvironment _lookupEnv_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.LookupEnvironment(evaluator,last, ValueUtil.TRUE_VALUE);
- TargetLookupVisitor _lookupVisitor_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.TargetLookupVisitor(_lookupEnv_0);
+ LookupEnvironment _lookupEnv_0 = new LookupEnvironment(executor,last, ValueUtil.TRUE_VALUE);
+ TargetLookupVisitor _lookupVisitor_0 = new TargetLookupVisitor(_lookupEnv_0);
EList<NamedElement> _lookupResult_0 = lookupNamespace.accept(_lookupVisitor_0).getNamedElements();
C _lookupC_0 = null;
if (_lookupResult_0.size() == 1) {
@@ -1233,10 +1228,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uD_1_toA(final /*@NonNull*/ /*@NonInvalid*/ Z z_3) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
final /*@Nullable*/ /*@Thrown*/ Y toY = z_3.getToY();
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0).booleanValue();
if (!oclIsKindOf) {
return false;
}
@@ -1244,10 +1239,10 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_D_0 = idResolver.getClass(CLSSid_D, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = z_3.getAst();
- final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_D_0));
- final /*@NonNull*/ /*@Thrown*/ Y1 oclAsType_0 = ClassUtil.nonNullState((Y1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0));
+ final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ Y1 oclAsType_0 = ClassUtil.nonNullState((Y1)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0));
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = oclAsType_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ B oclAsType_1 = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_target_c_c_B_0));
+ final /*@NonNull*/ /*@Thrown*/ B oclAsType_1 = ClassUtil.nonNullState((B)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_target_c_c_B_0));
final /*@Nullable*/ /*@Thrown*/ A1 toA1 = oclAsType_1.getToA1();
// property assignments
oclAsType.setToA(toA1);
@@ -1279,18 +1274,18 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uD_1_refsB(final /*@NonNull*/ /*@NonInvalid*/ Z z_4) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_0 = idResolver.getClass(CLSSid_Y1, null);
final /*@Nullable*/ /*@Thrown*/ Y toY = z_4.getToY();
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, toY, TYP_source_c_c_Y1_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, toY, TYP_source_c_c_Y1_0).booleanValue();
if (!oclIsKindOf) {
return false;
}
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_target_c_c_D_0 = idResolver.getClass(CLSSid_D, null);
final /*@Nullable*/ /*@Thrown*/ EObject ast = z_4.getAst();
// variable assignments
- final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_D_0));
- final /*@NonNull*/ /*@Thrown*/ D self_1 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ D oclAsType = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_D_0));
+ final /*@NonNull*/ /*@Thrown*/ D self_1 = ClassUtil.nonNullState((D)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_target_c_c_D_0));
final /*@Nullable*/ /*@Thrown*/ PathNameCS refers = z_4.getRefers();
final /*@Thrown*/ boolean eq = refers == null;
/*@Nullable*/ /*@Thrown*/ B symbol_3;
@@ -1301,7 +1296,6 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
if (refers == null) {
throwNull(z_4, "Null source for \'\'http://cs2as/tests/example1/sourceMM/1.0\'::PathNameCS::path\'");
}
- @SuppressWarnings("null")
final /*@NonNull*/ /*@Thrown*/ List<PathElementCS> pathSeq_0 = refers.getPath();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_pathSeq_0_0 = idResolver.createOrderedSetOfAll(ORD_CLSSid_PathElementCS, pathSeq_0);
final /*@NonNull*/ /*@Thrown*/ IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_pathSeq_0_0);
@@ -1309,8 +1303,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
/*@Nullable*/ /*@Thrown*/ B symbol_2;
if (eq_0) {
final /*@Nullable*/ /*@Thrown*/ PathElementCS first = (PathElementCS)OrderedCollectionFirstOperation.INSTANCE.evaluate(BOXED_pathSeq_0_0);
- LookupEnvironment _lookupEnv = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.LookupEnvironment(evaluator,first, ValueUtil.FALSE_VALUE);
- TargetLookupVisitor _lookupVisitor = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.TargetLookupVisitor(_lookupEnv);
+ LookupEnvironment _lookupEnv = new LookupEnvironment(executor,first, ValueUtil.FALSE_VALUE);
+ TargetLookupVisitor _lookupVisitor = new TargetLookupVisitor(_lookupEnv);
EList<NamedElement> _lookupResult = self_1.accept(_lookupVisitor).getNamedElements();
B _lookupB = null;
if (_lookupResult.size() == 1) {
@@ -1340,8 +1334,8 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
}
else {
final /*@Nullable*/ /*@Thrown*/ PathElementCS last = (PathElementCS)OrderedCollectionLastOperation.INSTANCE.evaluate(BOXED_pathSeq_0_0);
- LookupEnvironment _lookupEnv_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.LookupEnvironment(evaluator,last, ValueUtil.TRUE_VALUE);
- TargetLookupVisitor _lookupVisitor_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example1.java.TargetLookupVisitor(_lookupEnv_0);
+ LookupEnvironment _lookupEnv_0 = new LookupEnvironment(executor,last, ValueUtil.TRUE_VALUE);
+ TargetLookupVisitor _lookupVisitor_0 = new TargetLookupVisitor(_lookupEnv_0);
EList<NamedElement> _lookupResult_0 = lookupNamespace.accept(_lookupVisitor_0).getNamedElements();
B _lookupB_0 = null;
if (_lookupResult_0.size() == 1) {
@@ -1484,17 +1478,17 @@ public class Source2Target_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_SRoot_1 = idResolver.getClass(CLSSid_SRoot, null);
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_X_8 = idResolver.getClass(CLSSid_X, null);
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y1_2 = idResolver.getClass(CLSSid_Y1, null);
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Y2_2 = idResolver.getClass(CLSSid_Y2, null);
final /*@NonNull*/ /*@NonInvalid*/ Class TYP_source_c_c_Z_5 = idResolver.getClass(CLSSid_Z, null);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_3 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_SRoot, TYP_source_c_c_SRoot_1);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_1 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_X, TYP_source_c_c_X_8);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_15 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Y1, TYP_source_c_c_Y1_2);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_17 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Y2, TYP_source_c_c_Y2_2);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_7 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Z, TYP_source_c_c_Z_5);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_3 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_SRoot, TYP_source_c_c_SRoot_1);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_1 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_X, TYP_source_c_c_X_8);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_15 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Y1, TYP_source_c_c_Y1_2);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_17 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Y2, TYP_source_c_c_Y2_2);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_7 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Z, TYP_source_c_c_Z_5);
final List<SRoot> UNBOXED_allInstances_3 = allInstances_3.asEcoreObjects(idResolver, SRoot.class);
assert UNBOXED_allInstances_3 != null;
final List<X> UNBOXED_allInstances_1 = allInstances_1.asEcoreObjects(idResolver, X.class);
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_classescs2as_qvtp_qvtias/classescs2as_qvtp_qvtias.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_classescs2as_qvtp_qvtias/classescs2as_qvtp_qvtias.java
index 618b88f43..b1747789b 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_classescs2as_qvtp_qvtias/classescs2as_qvtp_qvtias.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/cg/_classescs2as_qvtp_qvtias/classescs2as_qvtp_qvtias.java
@@ -26,7 +26,7 @@ import java.util.List;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -114,8 +114,8 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
{2} // 2 : RootCS -> {RootCS}
};
- public classescs2as_qvtp_qvtias(final /*@NonNull*/ Evaluator evaluator) {
- super(evaluator, new String[] {"leftCS", "rightAS"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public classescs2as_qvtp_qvtias(final /*@NonNull*/ Executor executor) {
+ super(executor, new String[] {"leftCS", "rightAS"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -135,15 +135,15 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
* endif
*/
public /*@Nullable*/ /*@NonInvalid*/ Package lookupPackage(final /*@NonNull*/ /*@NonInvalid*/ Visitable self_0, final /*@NonNull*/ /*@NonInvalid*/ List<PathElementCS> pathSeq) {
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ OrderedSetValue BOXED_pathSeq_3 = idResolver.createOrderedSetOfAll(ORD_CLSSid_PathElementCS, pathSeq);
final /*@NonNull*/ /*@NonInvalid*/ IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_pathSeq_3);
final /*@NonInvalid*/ boolean eq = size.equals(INT_1);
/*@Nullable*/ /*@Thrown*/ Package symbol_0;
if (eq) {
final /*@Nullable*/ /*@Thrown*/ PathElementCS first = (PathElementCS)OrderedCollectionFirstOperation.INSTANCE.evaluate(BOXED_pathSeq_3);
- LookupEnvironment _lookupEnv = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.LookupEnvironment(evaluator,first);
- ClassesLookupVisitor _lookupVisitor = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.ClassesLookupVisitor(_lookupEnv);
+ LookupEnvironment _lookupEnv = new LookupEnvironment(executor,first);
+ ClassesLookupVisitor _lookupVisitor = new ClassesLookupVisitor(_lookupEnv);
EList<NamedElement> _lookupResult = self_0.accept(_lookupVisitor).getNamedElements();
Package _lookupPackage = null;
if (_lookupResult.size() == 1) {
@@ -160,8 +160,8 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
assert UNBOXED_subOrderedSet != null;
final /*@Nullable*/ /*@Thrown*/ Package lookupPackage = this.lookupPackage(self_0, UNBOXED_subOrderedSet);
final /*@Nullable*/ /*@Thrown*/ PathElementCS last = (PathElementCS)OrderedCollectionLastOperation.INSTANCE.evaluate(BOXED_pathSeq_3);
- LookupEnvironment _lookupEnv_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.LookupEnvironment(evaluator,last);
- ClassesLookupVisitor _lookupVisitor_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.ClassesLookupVisitor(_lookupEnv_0);
+ LookupEnvironment _lookupEnv_0 = new LookupEnvironment(executor,last);
+ ClassesLookupVisitor _lookupVisitor_0 = new ClassesLookupVisitor(_lookupEnv_0);
EList<NamedElement> _lookupResult_0 = lookupPackage.accept(_lookupVisitor_0).getNamedElements();
Package _lookupPackage_0 = null;
if (_lookupResult_0.size() == 1) {
@@ -273,11 +273,11 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uClass_name(final /*@NonNull*/ /*@NonInvalid*/ ClassCS classCS_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Class_0 = idResolver.getClass(CLSSid_Class, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = classCS_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ example2.classes.Class oclAsType = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Class_0));
+ final /*@NonNull*/ /*@Thrown*/ example2.classes.Class oclAsType = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Class_0));
final /*@Nullable*/ /*@Thrown*/ String name = classCS_0.getName();
// property assignments
oclAsType.setName(name);
@@ -307,12 +307,12 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uClass_superClass(final /*@NonNull*/ /*@NonInvalid*/ ClassCS classCS_1) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Class_0 = idResolver.getClass(CLSSid_Class, null);
final /*@Nullable*/ /*@Thrown*/ EObject ast = classCS_1.getAst();
// variable assignments
- final /*@NonNull*/ /*@Thrown*/ example2.classes.Class oclAsType = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Class_0));
- final /*@NonNull*/ /*@Thrown*/ example2.classes.Class self_1 = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Class_0));
+ final /*@NonNull*/ /*@Thrown*/ example2.classes.Class oclAsType = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Class_0));
+ final /*@NonNull*/ /*@Thrown*/ example2.classes.Class self_1 = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Class_0));
final /*@Nullable*/ /*@Thrown*/ PathNameCS symbol_1 = classCS_1.getExtends();
final /*@Thrown*/ boolean eq = symbol_1 == null;
/*@Nullable*/ /*@Thrown*/ example2.classes.Class symbol_4;
@@ -323,7 +323,6 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
if (symbol_1 == null) {
throwNull(classCS_1, "Null source for \'\'http://cs2as/tests/example2/classescs/1.0\'::PathNameCS::path\'");
}
- @SuppressWarnings("null")
final /*@NonNull*/ /*@Thrown*/ List<PathElementCS> pathSeq_0 = symbol_1.getPath();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_pathSeq_0_3 = idResolver.createOrderedSetOfAll(ORD_CLSSid_PathElementCS, pathSeq_0);
final /*@NonNull*/ /*@Thrown*/ IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_pathSeq_0_3);
@@ -331,8 +330,8 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
/*@Nullable*/ /*@Thrown*/ example2.classes.Class symbol_3;
if (eq_0) {
final /*@Nullable*/ /*@Thrown*/ PathElementCS first = (PathElementCS)OrderedCollectionFirstOperation.INSTANCE.evaluate(BOXED_pathSeq_0_3);
- LookupEnvironment _lookupEnv = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.LookupEnvironment(evaluator,first);
- ClassesLookupVisitor _lookupVisitor = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.ClassesLookupVisitor(_lookupEnv);
+ LookupEnvironment _lookupEnv = new LookupEnvironment(executor,first);
+ ClassesLookupVisitor _lookupVisitor = new ClassesLookupVisitor(_lookupEnv);
EList<NamedElement> _lookupResult = self_1.accept(_lookupVisitor).getNamedElements();
example2.classes.Class _lookupClass = null;
if (_lookupResult.size() == 1) {
@@ -349,8 +348,8 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
assert UNBOXED_subOrderedSet != null;
final /*@Nullable*/ /*@Thrown*/ Package lookupPackage = this.lookupPackage(self_1, UNBOXED_subOrderedSet);
final /*@Nullable*/ /*@Thrown*/ PathElementCS last = (PathElementCS)OrderedCollectionLastOperation.INSTANCE.evaluate(BOXED_pathSeq_0_3);
- LookupEnvironment _lookupEnv_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.LookupEnvironment(evaluator,last);
- ClassesLookupVisitor _lookupVisitor_0 = new org.eclipse.qvtd.cs2as.compiler.tests.models.example2.java.ClassesLookupVisitor(_lookupEnv_0);
+ LookupEnvironment _lookupEnv_0 = new LookupEnvironment(executor,last);
+ ClassesLookupVisitor _lookupVisitor_0 = new ClassesLookupVisitor(_lookupEnv_0);
EList<NamedElement> _lookupResult_0 = lookupPackage.accept(_lookupVisitor_0).getNamedElements();
example2.classes.Class _lookupClass_0 = null;
if (_lookupResult_0.size() == 1) {
@@ -388,11 +387,11 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uPackage_name(final /*@NonNull*/ /*@NonInvalid*/ PackageCS packageCS_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Package_0 = idResolver.getClass(CLSSid_Package, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = packageCS_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ Package oclAsType = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Package_0));
+ final /*@NonNull*/ /*@Thrown*/ Package oclAsType = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Package_0));
final /*@Nullable*/ /*@Thrown*/ String name = packageCS_0.getName();
// property assignments
oclAsType.setName(name);
@@ -422,12 +421,11 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uPackage_ownedClasses(final /*@NonNull*/ /*@NonInvalid*/ PackageCS packageCS_1) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Package_0 = idResolver.getClass(CLSSid_Package, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = packageCS_1.getAst();
- final /*@NonNull*/ /*@Thrown*/ Package oclAsType = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Package_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ Package oclAsType = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Package_0));
final /*@NonNull*/ /*@Thrown*/ List<ClassCS> ownedClasses = packageCS_1.getOwnedClasses();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownedClasses = idResolver.createOrderedSetOfAll(ORD_CLSSid_ClassCS, ownedClasses);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_Class);
@@ -447,7 +445,7 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
throwNull(packageCS_1, "Null source for \'\'http://cs2as/tests/example2/classescs/1.0\'::ElementCS::ast\'");
}
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1.getAst();
- final /*@NonNull*/ /*@Thrown*/ example2.classes.Class oclAsType_0 = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_classes_c_c_Class_0));
+ final /*@NonNull*/ /*@Thrown*/ example2.classes.Class oclAsType_0 = ClassUtil.nonNullState((example2.classes.Class)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_classes_c_c_Class_0));
//
accumulator.add(oclAsType_0);
}
@@ -482,12 +480,11 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uPackage_ownedPackages(final /*@NonNull*/ /*@NonInvalid*/ PackageCS packageCS_2) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Package_0 = idResolver.getClass(CLSSid_Package, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = packageCS_2.getAst();
- final /*@NonNull*/ /*@Thrown*/ Package oclAsType = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Package_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ Package oclAsType = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Package_0));
final /*@NonNull*/ /*@Thrown*/ List<PackageCS> ownedPackages = packageCS_2.getOwnedPackages();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownedPackages = idResolver.createOrderedSetOfAll(ORD_CLSSid_PackageCS, ownedPackages);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_Package);
@@ -506,7 +503,7 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
throwNull(packageCS_2, "Null source for \'\'http://cs2as/tests/example2/classescs/1.0\'::ElementCS::ast\'");
}
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1.getAst();
- final /*@NonNull*/ /*@Thrown*/ Package oclAsType_0 = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_classes_c_c_Package_0));
+ final /*@NonNull*/ /*@Thrown*/ Package oclAsType_0 = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_classes_c_c_Package_0));
//
accumulator.add(oclAsType_0);
}
@@ -541,12 +538,11 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean uRoot_ownedPackages(final /*@NonNull*/ /*@NonInvalid*/ RootCS rootCS_0) {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Root_0 = idResolver.getClass(CLSSid_Root, null);
// variable assignments
final /*@Nullable*/ /*@Thrown*/ EObject ast = rootCS_0.getAst();
- final /*@NonNull*/ /*@Thrown*/ Root oclAsType = ClassUtil.nonNullState((Root)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast, TYP_classes_c_c_Root_0));
- @SuppressWarnings("null")
+ final /*@NonNull*/ /*@Thrown*/ Root oclAsType = ClassUtil.nonNullState((Root)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast, TYP_classes_c_c_Root_0));
final /*@NonNull*/ /*@Thrown*/ List<PackageCS> ownedPackages = rootCS_0.getOwnedPackages();
final /*@NonNull*/ /*@Thrown*/ OrderedSetValue BOXED_ownedPackages = idResolver.createOrderedSetOfAll(ORD_CLSSid_PackageCS, ownedPackages);
/*@NonNull*/ /*@Thrown*/ SequenceValue.Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(SEQ_CLSSid_Package);
@@ -566,7 +562,7 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
throwNull(rootCS_0, "Null source for \'\'http://cs2as/tests/example2/classescs/1.0\'::ElementCS::ast\'");
}
final /*@Nullable*/ /*@Thrown*/ EObject ast_0 = _1.getAst();
- final /*@NonNull*/ /*@Thrown*/ Package oclAsType_0 = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, ast_0, TYP_classes_c_c_Package_0));
+ final /*@NonNull*/ /*@Thrown*/ Package oclAsType_0 = ClassUtil.nonNullState((Package)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, ast_0, TYP_classes_c_c_Package_0));
//
accumulator.add(oclAsType_0);
}
@@ -632,13 +628,13 @@ public class classescs2as_qvtp_qvtias extends CS2ASTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final /*@NonNull*/ /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescs_c_c_ClassCS_2 = idResolver.getClass(CLSSid_ClassCS, null);
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescs_c_c_PackageCS_3 = idResolver.getClass(CLSSid_PackageCS, null);
final /*@NonNull*/ /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescs_c_c_RootCS_1 = idResolver.getClass(CLSSid_RootCS, null);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_6 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_ClassCS, TYP_classescs_c_c_ClassCS_2);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_2 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_PackageCS, TYP_classescs_c_c_PackageCS_3);
- final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_1 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_RootCS, TYP_classescs_c_c_RootCS_1);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_6 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_ClassCS, TYP_classescs_c_c_ClassCS_2);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_2 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_PackageCS, TYP_classescs_c_c_PackageCS_3);
+ final /*@NonNull*/ /*@NonInvalid*/ SetValue allInstances_1 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_RootCS, TYP_classescs_c_c_RootCS_1);
final List<ClassCS> UNBOXED_allInstances_6 = allInstances_6.asEcoreObjects(idResolver, ClassCS.class);
assert UNBOXED_allInstances_6 != null;
final List<PackageCS> UNBOXED_allInstances_2 = allInstances_2.asEcoreObjects(idResolver, PackageCS.class);
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Env4CG.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Env4CG.java
index 5a07a840b..9a56735ca 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Env4CG.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Env4CG.java
@@ -14,7 +14,7 @@ package example1.env;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
/**
* <!-- begin-user-doc -->
@@ -30,7 +30,7 @@ public interface Env4CG extends EObject {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example1/env/1.0!Env4CG!hasFinalResult()'"
+ * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new <%java.lang.UnsupportedOperationException%>(\"Enviroment::hasFinalResult() has been created for CG purposes. Don\'t call this method\");'"
* @generated
*/
boolean hasFinalResult();
@@ -38,10 +38,10 @@ public interface Env4CG extends EObject {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @model kind="operation" type="example1.env.Evaluator"
- * annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example1/env/1.0!Env4CG!getEvaluator()'"
+ * @model kind="operation" type="example1.env.Executor"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new <%java.lang.UnsupportedOperationException%>(\"Enviroment::getEvaluator() has been created for CG purposes. Don\'t call this method\");'"
* @generated
*/
- Evaluator getEvaluator();
+ Executor getExecutor();
} // Env4CG
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Environment.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Environment.java
index b7a9e3653..6673b6f95 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Environment.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/Environment.java
@@ -80,7 +80,7 @@ public interface Environment extends Env4CG {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model elementsMany="true"
- * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->includingAll(elements), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Evaluator%> evaluator = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getEvaluator(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = evaluator.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example1.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example1.env.Environment%> symbol_0 = (<%example1.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%java.util.List%><<%example1.target.NamedElement%>> namedElements = this.getNamedElements();\nassert namedElements != null;\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example1.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_elements = idResolver.createOrderedSetOfAll(<%example1.env.EnvironmentTables%>.ORD_TMPLid_, elements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.CollectionValue%> includingAll = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation%>.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements);\nfinal <%java.util.List%><? extends <%java.lang.Object%>> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, <%java.lang.Object%>.class);\nassert UNBOXED_includingAll != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_includingAll);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example1.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->includingAll(elements), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Executor%> executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = executor.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example1.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example1.env.Environment%> symbol_0 = (<%example1.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\n@SuppressWarnings(\"null\")\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%java.util.List%><<%example1.target.NamedElement%>> namedElements = this.getNamedElements();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example1.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_elements = idResolver.createOrderedSetOfAll(<%example1.env.EnvironmentTables%>.ORD_TMPLid_, elements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.CollectionValue%> includingAll = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation%>.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements);\nfinal <%java.util.List%><? extends <%java.lang.Object%>> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, <%java.lang.Object%>.class);\nassert UNBOXED_includingAll != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_includingAll);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example1.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
* @generated
*/
<NE extends NamedElement> Environment addElements(EList<NE> elements);
@@ -88,7 +88,7 @@ public interface Environment extends Env4CG {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->including(element), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Evaluator%> evaluator = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getEvaluator(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = evaluator.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example1.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example1.env.Environment%> symbol_0 = (<%example1.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%java.util.List%><<%example1.target.NamedElement%>> namedElements = this.getNamedElements();\nassert namedElements != null;\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example1.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> including = (<%org.eclipse.ocl.pivot.values.OrderedSetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation%>.INSTANCE.evaluate(BOXED_namedElements, element);\nfinal <%java.util.List%><<%example1.target.NamedElement%>> UNBOXED_including = including.asEcoreObjects(idResolver, <%example1.target.NamedElement%>.class);\nassert UNBOXED_including != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_including);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example1.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
+ * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->including(element), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Executor%> executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = executor.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example1.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example1.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example1.env.Environment%> symbol_0 = (<%example1.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\n@SuppressWarnings(\"null\")\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%java.util.List%><<%example1.target.NamedElement%>> namedElements = this.getNamedElements();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example1.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> including = (<%org.eclipse.ocl.pivot.values.OrderedSetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation%>.INSTANCE.evaluate(BOXED_namedElements, element);\nfinal <%java.util.List%><<%example1.target.NamedElement%>> UNBOXED_including = including.asEcoreObjects(idResolver, <%example1.target.NamedElement%>.class);\nassert UNBOXED_including != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_including);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example1.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
* @generated
*/
Environment addElement(NamedElement element);
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentPackage.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentPackage.java
index faa55e7e9..6dff1a985 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentPackage.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentPackage.java
@@ -96,13 +96,13 @@ public interface EnvironmentPackage extends EPackage {
int ENV4_CG___HAS_FINAL_RESULT = 0;
/**
- * The operation id for the '<em>Get Evaluator</em>' operation.
+ * The operation id for the '<em>Get Executor</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ENV4_CG___GET_EVALUATOR = 1;
+ int ENV4_CG___GET_EXECUTOR = 1;
/**
* The number of operations of the '<em>Env4 CG</em>' class.
@@ -160,13 +160,13 @@ public interface EnvironmentPackage extends EPackage {
int ENVIRONMENT___HAS_FINAL_RESULT = ENV4_CG___HAS_FINAL_RESULT;
/**
- * The operation id for the '<em>Get Evaluator</em>' operation.
+ * The operation id for the '<em>Get Executor</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ENVIRONMENT___GET_EVALUATOR = ENV4_CG___GET_EVALUATOR;
+ int ENVIRONMENT___GET_EXECUTOR = ENV4_CG___GET_EXECUTOR;
/**
* The operation id for the '<em>Add Elements</em>' operation.
@@ -197,33 +197,32 @@ public interface EnvironmentPackage extends EPackage {
/**
- * The meta object id for the '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}' class.
+ * The meta object id for the '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
- * @see example1.env.impl.EnvironmentPackageImpl#getEvaluator()
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
+ * @see example1.env.impl.EnvironmentPackageImpl#getExecutor()
* @generated
*/
- int EVALUATOR = 2;
+ int EXECUTOR = 2;
/**
- * The number of structural features of the '<em>Evaluator</em>' class.
+ * The number of structural features of the '<em>Executor</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int EVALUATOR_FEATURE_COUNT = 0;
+ int EXECUTOR_FEATURE_COUNT = 0;
/**
- * The number of operations of the '<em>Evaluator</em>' class.
+ * The number of operations of the '<em>Executor</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int EVALUATOR_OPERATION_COUNT = 0;
-
+ int EXECUTOR_OPERATION_COUNT = 0;
/**
* Returns the meta object for class '{@link example1.env.Environment <em>Environment</em>}'.
@@ -298,25 +297,25 @@ public interface EnvironmentPackage extends EPackage {
EOperation getEnv4CG__HasFinalResult();
/**
- * Returns the meta object for the '{@link example1.env.Env4CG#getEvaluator() <em>Get Evaluator</em>}' operation.
+ * Returns the meta object for the '{@link example1.env.Env4CG#getExecutor() <em>Get Executor</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the '<em>Get Evaluator</em>' operation.
- * @see example1.env.Env4CG#getEvaluator()
+ * @return the meta object for the '<em>Get Executor</em>' operation.
+ * @see example1.env.Env4CG#getExecutor()
* @generated
*/
- EOperation getEnv4CG__GetEvaluator();
+ EOperation getEnv4CG__GetExecutor();
/**
- * Returns the meta object for class '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for class '<em>Evaluator</em>'.
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
- * @model instanceClass="org.eclipse.ocl.pivot.evaluation.Evaluator"
+ * @return the meta object for class '<em>Executor</em>'.
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
+ * @model instanceClass="org.eclipse.ocl.pivot.evaluation.Executor"
* @generated
*/
- EClass getEvaluator();
+ EClass getExecutor();
/**
* Returns the factory that creates the instances of the model.
@@ -402,22 +401,22 @@ public interface EnvironmentPackage extends EPackage {
EOperation ENV4_CG___HAS_FINAL_RESULT = eINSTANCE.getEnv4CG__HasFinalResult();
/**
- * The meta object literal for the '<em><b>Get Evaluator</b></em>' operation.
+ * The meta object literal for the '<em><b>Get Executor</b></em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EOperation ENV4_CG___GET_EVALUATOR = eINSTANCE.getEnv4CG__GetEvaluator();
+ EOperation ENV4_CG___GET_EXECUTOR = eINSTANCE.getEnv4CG__GetExecutor();
/**
- * The meta object literal for the '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}' class.
+ * The meta object literal for the '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
- * @see example1.env.impl.EnvironmentPackageImpl#getEvaluator()
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
+ * @see example1.env.impl.EnvironmentPackageImpl#getExecutor()
* @generated
*/
- EClass EVALUATOR = eINSTANCE.getEvaluator();
+ EClass EXECUTOR = eINSTANCE.getExecutor();
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentTables.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentTables.java
index 5e68a814b..3d44eb3e0 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentTables.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/EnvironmentTables.java
@@ -1,14 +1,4 @@
/*******************************************************************************
- * Copyright (c) 2015 Willink Transformations and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * E.D.Willink - initial API and implementation
- *******************************************************************************/
-/*******************************************************************************
*************************************************************************
* This code is 100% auto-generated
* from:
@@ -79,7 +69,7 @@ public class EnvironmentTables
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example1/env/1.0", null, EnvironmentPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example1/targetMM/1.0", null, TargetPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0.getClassId("Environment", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Evaluator = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0.getClassId("Evaluator", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Executor = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0.getClassId("Executor", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_NamedElement = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0.getClassId("NamedElement", 0);
public static final @NonNull /*@NonInvalid*/ CollectionTypeId BAG_CLSSid_Environment = TypeId.BAG.getSpecializedId(EnvironmentTables.CLSSid_Environment);
public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_NamedElement = TypeId.ORDERED_SET.getSpecializedId(EnvironmentTables.CLSSid_NamedElement);
@@ -117,12 +107,12 @@ public class EnvironmentTables
public static final @NonNull EcoreExecutorType _Env4CG = new EcoreExecutorType(EnvironmentPackage.Literals.ENV4_CG, PACKAGE, 0);
public static final @NonNull EcoreExecutorType _Environment = new EcoreExecutorType(EnvironmentPackage.Literals.ENVIRONMENT, PACKAGE, 0);
- public static final @NonNull EcoreExecutorType _Evaluator = new EcoreExecutorType(EnvironmentPackage.Literals.EVALUATOR, PACKAGE, 0);
+ public static final @NonNull EcoreExecutorType _Executor = new EcoreExecutorType(EnvironmentPackage.Literals.EXECUTOR, PACKAGE, 0);
private static final @NonNull EcoreExecutorType[] types = {
_Env4CG,
_Environment,
- _Evaluator
+ _Executor
};
/*
@@ -157,9 +147,9 @@ public class EnvironmentTables
private static final @NonNull ExecutorFragment _Environment__OclAny = new ExecutorFragment(Types._Environment, OCLstdlibTables.Types._OclAny);
private static final @NonNull ExecutorFragment _Environment__OclElement = new ExecutorFragment(Types._Environment, OCLstdlibTables.Types._OclElement);
- private static final @NonNull ExecutorFragment _Evaluator__Evaluator = new ExecutorFragment(Types._Evaluator, EnvironmentTables.Types._Evaluator);
- private static final @NonNull ExecutorFragment _Evaluator__OclAny = new ExecutorFragment(Types._Evaluator, OCLstdlibTables.Types._OclAny);
- private static final @NonNull ExecutorFragment _Evaluator__OclElement = new ExecutorFragment(Types._Evaluator, OCLstdlibTables.Types._OclElement);
+ private static final @NonNull ExecutorFragment _Executor__Executor = new ExecutorFragment(Types._Executor, EnvironmentTables.Types._Executor);
+ private static final @NonNull ExecutorFragment _Executor__OclAny = new ExecutorFragment(Types._Executor, OCLstdlibTables.Types._OclAny);
+ private static final @NonNull ExecutorFragment _Executor__OclElement = new ExecutorFragment(Types._Executor, OCLstdlibTables.Types._OclElement);
static {
Init.initEnd();
@@ -203,7 +193,7 @@ public class EnvironmentTables
Parameters.init();
}
- public static final @NonNull ExecutorOperation _Env4CG__getEvaluator = new ExecutorOperation("getEvaluator", Parameters._, Types._Env4CG,
+ public static final @NonNull ExecutorOperation _Env4CG__getExecutor = new ExecutorOperation("getExecutor", Parameters._, Types._Env4CG,
0, TemplateParameters.EMPTY_LIST, null);
public static final @NonNull ExecutorOperation _Env4CG__hasFinalResult = new ExecutorOperation("hasFinalResult", Parameters._, Types._Env4CG,
1, TemplateParameters.EMPTY_LIST, null);
@@ -272,13 +262,13 @@ public class EnvironmentTables
};
private static final @NonNull int[] __Environment = { 1,1,1,1 };
- private static final @NonNull ExecutorFragment[] _Evaluator =
+ private static final @NonNull ExecutorFragment[] _Executor =
{
- Fragments._Evaluator__OclAny /* 0 */,
- Fragments._Evaluator__OclElement /* 1 */,
- Fragments._Evaluator__Evaluator /* 2 */
+ Fragments._Executor__OclAny /* 0 */,
+ Fragments._Executor__OclElement /* 1 */,
+ Fragments._Executor__Executor /* 2 */
};
- private static final @NonNull int[] __Evaluator = { 1,1,1 };
+ private static final @NonNull int[] __Executor = { 1,1,1 };
/**
* Install the fragment descriptors in the class descriptors.
@@ -286,7 +276,7 @@ public class EnvironmentTables
static {
Types._Env4CG.initFragments(_Env4CG, __Env4CG);
Types._Environment.initFragments(_Environment, __Environment);
- Types._Evaluator.initFragments(_Evaluator, __Evaluator);
+ Types._Executor.initFragments(_Executor, __Executor);
Init.initEnd();
}
@@ -307,7 +297,7 @@ public class EnvironmentTables
}
private static final @NonNull ExecutorOperation[] _Env4CG__Env4CG = {
- EnvironmentTables.Operations._Env4CG__getEvaluator /* getEvaluator() */,
+ EnvironmentTables.Operations._Env4CG__getExecutor /* getExecutor() */,
EnvironmentTables.Operations._Env4CG__hasFinalResult /* hasFinalResult() */
};
private static final @NonNull ExecutorOperation[] _Env4CG__OclAny = {
@@ -337,7 +327,7 @@ public class EnvironmentTables
EnvironmentTables.Operations._Environment__addElements /* addElements(NE)(OrderedSet(NE)) */
};
private static final @NonNull ExecutorOperation[] _Environment__Env4CG = {
- EnvironmentTables.Operations._Env4CG__getEvaluator /* getEvaluator() */,
+ EnvironmentTables.Operations._Env4CG__getExecutor /* getExecutor() */,
EnvironmentTables.Operations._Env4CG__hasFinalResult /* hasFinalResult() */
};
private static final @NonNull ExecutorOperation[] _Environment__OclAny = {
@@ -362,8 +352,8 @@ public class EnvironmentTables
OCLstdlibTables.Operations._OclElement__oclContents /* oclContents() */
};
- private static final @NonNull ExecutorOperation[] _Evaluator__Evaluator = {};
- private static final @NonNull ExecutorOperation[] _Evaluator__OclAny = {
+ private static final @NonNull ExecutorOperation[] _Executor__Executor = {};
+ private static final @NonNull ExecutorOperation[] _Executor__OclAny = {
OCLstdlibTables.Operations._OclAny___lt__gt_ /* _'<>'(OclSelf[?]) */,
OCLstdlibTables.Operations._OclAny___eq_ /* _'='(OclSelf[?]) */,
OCLstdlibTables.Operations._OclAny__oclAsSet /* oclAsSet() */,
@@ -379,7 +369,7 @@ public class EnvironmentTables
OCLstdlibTables.Operations._OclAny__oclType /* oclType() */,
OCLstdlibTables.Operations._OclAny__toString /* toString() */
};
- private static final @NonNull ExecutorOperation[] _Evaluator__OclElement = {
+ private static final @NonNull ExecutorOperation[] _Executor__OclElement = {
OCLstdlibTables.Operations._OclElement__allInstances /* allInstances() */,
OCLstdlibTables.Operations._OclElement__oclContainer /* oclContainer() */,
OCLstdlibTables.Operations._OclElement__oclContents /* oclContents() */
@@ -398,9 +388,9 @@ public class EnvironmentTables
Fragments._Environment__OclAny.initOperations(_Environment__OclAny);
Fragments._Environment__OclElement.initOperations(_Environment__OclElement);
- Fragments._Evaluator__Evaluator.initOperations(_Evaluator__Evaluator);
- Fragments._Evaluator__OclAny.initOperations(_Evaluator__OclAny);
- Fragments._Evaluator__OclElement.initOperations(_Evaluator__OclElement);
+ Fragments._Executor__Executor.initOperations(_Executor__Executor);
+ Fragments._Executor__OclAny.initOperations(_Executor__OclAny);
+ Fragments._Executor__OclElement.initOperations(_Executor__OclElement);
Init.initEnd();
}
@@ -428,7 +418,7 @@ public class EnvironmentTables
EnvironmentTables.Properties._Environment__Environment__parentEnv
};
- private static final @NonNull ExecutorProperty[] _Evaluator = {};
+ private static final @NonNull ExecutorProperty[] _Executor = {};
/**
* Install the property descriptors in the fragment descriptors.
@@ -436,7 +426,7 @@ public class EnvironmentTables
static {
Fragments._Env4CG__Env4CG.initProperties(_Env4CG);
Fragments._Environment__Environment.initProperties(_Environment);
- Fragments._Evaluator__Evaluator.initProperties(_Evaluator);
+ Fragments._Executor__Executor.initProperties(_Executor);
Init.initEnd();
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentImpl.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentImpl.java
index 73169567b..3bb18aa2f 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentImpl.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentImpl.java
@@ -26,7 +26,7 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.pivot.Property;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.IdResolver;
import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;
import org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation;
@@ -155,14 +155,14 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* namedElements = namedElements->includingAll(elements), parentEnv = parentEnv
* }
*/
- final @NonNull /*@NonInvalid*/ Evaluator evaluator = PivotUtilInternal.getEvaluator(this);
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ Property CTORid_namedElements = idResolver.getProperty(EnvironmentTables.PROPid_namedElements);
final @NonNull /*@NonInvalid*/ Property CTORid_parentEnv = idResolver.getProperty(EnvironmentTables.PROPid_parentEnv);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_env_c_c_Environment_0 = idResolver.getClass(EnvironmentTables.CLSSid_Environment, null);
final @NonNull /*@Thrown*/ Environment symbol_0 = (Environment)TYP_env_c_c_Environment_0.createInstance();
- final @Nullable /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
- assert namedElements != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
final @NonNull /*@Thrown*/ OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements);
final @NonNull /*@NonInvalid*/ OrderedSetValue BOXED_elements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_TMPLid_, elements);
final @NonNull /*@Thrown*/ CollectionValue includingAll = CollectionIncludingAllOperation.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements);
@@ -186,14 +186,14 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* namedElements = namedElements->including(element), parentEnv = parentEnv
* }
*/
- final @NonNull /*@NonInvalid*/ Evaluator evaluator = PivotUtilInternal.getEvaluator(this);
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ Property CTORid_namedElements = idResolver.getProperty(EnvironmentTables.PROPid_namedElements);
final @NonNull /*@NonInvalid*/ Property CTORid_parentEnv = idResolver.getProperty(EnvironmentTables.PROPid_parentEnv);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_env_c_c_Environment_0 = idResolver.getClass(EnvironmentTables.CLSSid_Environment, null);
final @NonNull /*@Thrown*/ Environment symbol_0 = (Environment)TYP_env_c_c_Environment_0.createInstance();
- final @Nullable /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
- assert namedElements != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
final @NonNull /*@Thrown*/ OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements);
final @NonNull /*@Thrown*/ OrderedSetValue including = (OrderedSetValue)CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, element);
final List<NamedElement> UNBOXED_including = including.asEcoreObjects(idResolver, NamedElement.class);
@@ -210,7 +210,7 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* @generated
*/
public boolean hasFinalResult() {
- throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example1/env/1.0!Env4CG!hasFinalResult()
+ throw new UnsupportedOperationException("Enviroment::hasFinalResult() has been created for CG purposes. Don't call this method");
}
/**
@@ -218,8 +218,8 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* <!-- end-user-doc -->
* @generated
*/
- public Evaluator getEvaluator() {
- throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example1/env/1.0!Env4CG!getEvaluator()
+ public Executor getExecutor() {
+ throw new UnsupportedOperationException("Enviroment::getEvaluator() has been created for CG purposes. Don't call this method");
}
/**
@@ -308,8 +308,8 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
return addElement((NamedElement)arguments.get(0));
case EnvironmentPackage.ENVIRONMENT___HAS_FINAL_RESULT:
return hasFinalResult();
- case EnvironmentPackage.ENVIRONMENT___GET_EVALUATOR:
- return getEvaluator();
+ case EnvironmentPackage.ENVIRONMENT___GET_EXECUTOR:
+ return getExecutor();
}
return super.eInvoke(operationID, arguments);
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentPackageImpl.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentPackageImpl.java
index 5d20c4be8..42ffcb28e 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentPackageImpl.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/impl/EnvironmentPackageImpl.java
@@ -21,7 +21,7 @@ import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.ETypeParameter;
import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example1.env.Environment;
import example1.env.EnvironmentFactory;
import example1.env.EnvironmentPackage;
@@ -52,7 +52,7 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
* <!-- end-user-doc -->
* @generated
*/
- private EClass evaluatorEClass = null;
+ private EClass executorEClass = null;
/**
* Creates an instance of the model <b>Package</b>, registered with
@@ -186,7 +186,7 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
* <!-- end-user-doc -->
* @generated
*/
- public EOperation getEnv4CG__GetEvaluator() {
+ public EOperation getEnv4CG__GetExecutor() {
return env4CGEClass.getEOperations().get(1);
}
@@ -195,8 +195,8 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
* <!-- end-user-doc -->
* @generated
*/
- public EClass getEvaluator() {
- return evaluatorEClass;
+ public EClass getExecutor() {
+ return executorEClass;
}
/**
@@ -235,9 +235,9 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
env4CGEClass = createEClass(ENV4_CG);
createEOperation(env4CGEClass, ENV4_CG___HAS_FINAL_RESULT);
- createEOperation(env4CGEClass, ENV4_CG___GET_EVALUATOR);
+ createEOperation(env4CGEClass, ENV4_CG___GET_EXECUTOR);
- evaluatorEClass = createEClass(EVALUATOR);
+ executorEClass = createEClass(EXECUTOR);
}
/**
@@ -292,9 +292,9 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
initEOperation(getEnv4CG__HasFinalResult(), ecorePackage.getEBoolean(), "hasFinalResult", 0, 1, IS_UNIQUE, IS_ORDERED);
- initEOperation(getEnv4CG__GetEvaluator(), this.getEvaluator(), "getEvaluator", 0, 1, IS_UNIQUE, IS_ORDERED);
+ initEOperation(getEnv4CG__GetExecutor(), this.getExecutor(), "getExecutor", 0, 1, IS_UNIQUE, IS_ORDERED);
- initEClass(evaluatorEClass, Evaluator.class, "Evaluator", IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
+ initEClass(executorEClass, Executor.class, "Executor", IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
// Create resource
createResource(eNS_URI);
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentAdapterFactory.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentAdapterFactory.java
index b25a52cf8..c656d12ea 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentAdapterFactory.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentAdapterFactory.java
@@ -18,7 +18,7 @@ import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example1.env.Environment;
import example1.env.EnvironmentPackage;
@@ -87,8 +87,8 @@ public class EnvironmentAdapterFactory extends AdapterFactoryImpl {
return createEnv4CGAdapter();
}
@Override
- public Adapter caseEvaluator(Evaluator object) {
- return createEvaluatorAdapter();
+ public Adapter caseExecutor(Executor object) {
+ return createExecutorAdapter();
}
@Override
public Adapter defaultCase(EObject object) {
@@ -139,16 +139,16 @@ public class EnvironmentAdapterFactory extends AdapterFactoryImpl {
}
/**
- * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}'.
+ * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
* @generated
*/
- public Adapter createEvaluatorAdapter() {
+ public Adapter createExecutorAdapter() {
return null;
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentSwitch.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentSwitch.java
index 413731151..bdfc9a3fe 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentSwitch.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/env/util/EnvironmentSwitch.java
@@ -17,7 +17,7 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.util.Switch;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example1.env.Environment;
import example1.env.EnvironmentPackage;
@@ -91,9 +91,9 @@ public class EnvironmentSwitch<T> extends Switch<T> {
if (result == null) result = defaultCase(theEObject);
return result;
}
- case EnvironmentPackage.EVALUATOR: {
- Evaluator evaluator = (Evaluator)theEObject;
- T result = caseEvaluator(evaluator);
+ case EnvironmentPackage.EXECUTOR: {
+ Executor executor = (Executor)theEObject;
+ T result = caseExecutor(executor);
if (result == null) result = defaultCase(theEObject);
return result;
}
@@ -132,17 +132,17 @@ public class EnvironmentSwitch<T> extends Switch<T> {
}
/**
- * Returns the result of interpreting the object as an instance of '<em>Evaluator</em>'.
+ * Returns the result of interpreting the object as an instance of '<em>Executor</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Evaluator</em>'.
+ * @return the result of interpreting the object as an instance of '<em>Executor</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
- public T caseEvaluator(Evaluator object) {
+ public T caseExecutor(Executor object) {
return null;
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/TargetTables.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/TargetTables.java
index cdee9902c..9f5142f41 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/TargetTables.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/TargetTables.java
@@ -1,14 +1,4 @@
/*******************************************************************************
- * Copyright (c) 2015 Willink Transformations and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * E.D.Willink - initial API and implementation
- *******************************************************************************/
-/*******************************************************************************
*************************************************************************
* This code is 100% auto-generated
* from:
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractMergedVisitor.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractMergedVisitor.java
new file mode 100644
index 000000000..56bdd17bb
--- /dev/null
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractMergedVisitor.java
@@ -0,0 +1,77 @@
+/*******************************************************************************
+ * <copyright>
+ *
+ * </copyright>
+ *
+ * This code is auto-generated
+ * from: org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example1/TargetMM1.genmodel
+ *
+ * Only the copyright statement is editable.
+ *******************************************************************************/
+package example1.target.util;
+
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
+
+/**
+ * An AbstractMergedVisitor merges all visits direct to visiting().
+ * This can be used by a decorating visitor to execute shared code before redispatching to a decorated visitor.
+ */
+public abstract class AbstractMergedVisitor<R, C>
+ extends AbstractVisitor<R, C>
+ implements Visitor<R>
+{
+ protected AbstractMergedVisitor(@NonNull C context) {
+ super(context);
+ }
+
+ @Override
+ public @Nullable R visitA(@NonNull example1.target.A object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitA1(@NonNull example1.target.A1 object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitA2(@NonNull example1.target.A2 object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitA3(@NonNull example1.target.A3 object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitB(@NonNull example1.target.B object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitC(@NonNull example1.target.C object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitD(@NonNull example1.target.D object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitNamedElement(@NonNull example1.target.NamedElement object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitNamespace(@NonNull example1.target.Namespace object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitTRoot(@NonNull example1.target.TRoot object) {
+ return visiting(object);
+ }
+}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractTargetLookupVisitor.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractTargetLookupVisitor.java
index 1ed7b3953..23e801e2e 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractTargetLookupVisitor.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example1/target/util/AbstractTargetLookupVisitor.java
@@ -27,7 +27,7 @@ import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -45,7 +45,6 @@ public class AbstractTargetLookupVisitor
extends AbstractExtendingVisitor<Environment, Environment>
{
public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_$metamodel$ = IdManager.getRootPackageId("$metamodel$");
- public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_example1_env = IdManager.getRootPackageId("example1.env");
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example1/env/1.0", null, EnvironmentPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example1/targetMM/1.0", null, TargetPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_java_c_s_s_org_eclipse_qvtd_cs2as_compiler_tests_lookup = IdManager.getRootPackageId("java://org.eclipse.qvtd.cs2as.compiler.tests.lookup");
@@ -58,9 +57,8 @@ public class AbstractTargetLookupVisitor
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_B = PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0.getClassId("B", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_C = PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0.getClassId("C", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_D = PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0.getClassId("D", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment = PACKid_example1_env.getClassId("Environment", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment_0 = PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0.getClassId("Environment", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Evaluator = PACKid_org_eclipse_ocl_pivot_evaluation.getClassId("Evaluator", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment = PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_env_s_1_0.getClassId("Environment", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Executor = PACKid_org_eclipse_ocl_pivot_evaluation.getClassId("Executor", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_IdResolver = PACKid_org_eclipse_ocl_pivot_ids.getClassId("IdResolver", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_OclElement = PACKid_$metamodel$.getClassId("OclElement", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_TRoot = PACKid_http_c_s_s_cs2as_s_tests_s_example1_s_targetMM_s_1_0.getClassId("TRoot", 0);
@@ -69,15 +67,13 @@ public class AbstractTargetLookupVisitor
public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_C = TypeId.ORDERED_SET.getSpecializedId(CLSSid_C);
protected @Nullable /*@Thrown*/ Object child;
- protected final @NonNull /*@Thrown*/ Evaluator evaluator;
+ protected final @NonNull /*@Thrown*/ Executor executor;
protected final @NonNull /*@Thrown*/ IdResolver idResolver;
- protected final @NonNull /*@Thrown*/ Environment visitorEnv;
public AbstractTargetLookupVisitor(@NonNull Environment context) {
super(context);
- this.evaluator = context.getEvaluator();
- this.idResolver = evaluator.getIdResolver();
- this.visitorEnv = context;
+ this.executor = context.getExecutor();
+ this.idResolver = executor.getIdResolver();
}
/**
@@ -115,7 +111,7 @@ public class AbstractTargetLookupVisitor
* in
* if child = null
* then
- * let inner : env::Environment[?] = visitorEnv.addElements(ownedBs)
+ * let inner : env::Environment[?] = context.addElements(ownedBs)
* in
* if inner.hasFinalResult()
* then inner
@@ -123,7 +119,7 @@ public class AbstractTargetLookupVisitor
* endif
* else
* let
- * inner : env::Environment[?] = visitorEnv.addElements(
+ * inner : env::Environment[?] = context.addElements(
* ownedBs->select(x |
* ownedBs->indexOf(x) <
* ownedBs->indexOf(child)))
@@ -136,12 +132,12 @@ public class AbstractTargetLookupVisitor
*/
@Override
public @Nullable /*@NonInvalid*/ Environment visitA1(final @NonNull /*@NonInvalid*/ A1 element) {
- final @Nullable /*@Thrown*/ List<B> ownedBs = element.getOwnsB();
- assert ownedBs != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<B> ownedBs = element.getOwnsB();
final /*@Thrown*/ boolean eq = child == null;
@Nullable /*@Thrown*/ Environment symbol_2;
if (eq) {
- final @NonNull /*@Thrown*/ Environment inner = visitorEnv.addElements((EList)ownedBs);
+ final @NonNull /*@Thrown*/ Environment inner = context.addElements((EList)ownedBs);
final /*@Thrown*/ boolean hasFinalResult = inner.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_0;
if (hasFinalResult) {
@@ -169,7 +165,7 @@ public class AbstractTargetLookupVisitor
*/
final @NonNull /*@Thrown*/ IntegerValue indexOf = OrderedCollectionIndexOfOperation.INSTANCE.evaluate(BOXED_ownedBs, x);
final @NonNull /*@Thrown*/ IntegerValue indexOf_0 = OrderedCollectionIndexOfOperation.INSTANCE.evaluate(BOXED_ownedBs, child);
- final /*@Thrown*/ boolean lt = OclComparableLessThanOperation.INSTANCE.evaluate(evaluator, indexOf, indexOf_0).booleanValue();
+ final /*@Thrown*/ boolean lt = OclComparableLessThanOperation.INSTANCE.evaluate(executor, indexOf, indexOf_0).booleanValue();
//
if (lt == ValueUtil.TRUE_VALUE) {
accumulator.add(x);
@@ -177,7 +173,7 @@ public class AbstractTargetLookupVisitor
}
final List<B> UNBOXED_select = select.asEcoreObjects(idResolver, B.class);
assert UNBOXED_select != null;
- final @NonNull /*@Thrown*/ Environment inner_0 = visitorEnv.addElements((EList)UNBOXED_select);
+ final @NonNull /*@Thrown*/ Environment inner_0 = context.addElements((EList)UNBOXED_select);
final /*@Thrown*/ boolean hasFinalResult_0 = inner_0.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_1;
if (hasFinalResult_0) {
@@ -200,7 +196,7 @@ public class AbstractTargetLookupVisitor
* in
* if child = null
* then
- * let inner : env::Environment[?] = visitorEnv.addElements(ownedCs)
+ * let inner : env::Environment[?] = context.addElements(ownedCs)
* in
* if inner.hasFinalResult()
* then inner
@@ -208,7 +204,7 @@ public class AbstractTargetLookupVisitor
* endif
* else
* let
- * inner : env::Environment[?] = visitorEnv.addElements(
+ * inner : env::Environment[?] = context.addElements(
* ownedCs->select(x |
* ownedCs->indexOf(x) <
* ownedCs->indexOf(child)))
@@ -221,12 +217,12 @@ public class AbstractTargetLookupVisitor
*/
@Override
public @Nullable /*@NonInvalid*/ Environment visitA2(final @NonNull /*@NonInvalid*/ A2 element_0) {
- final @Nullable /*@Thrown*/ List<C> ownedCs = element_0.getOwnsC();
- assert ownedCs != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<C> ownedCs = element_0.getOwnsC();
final /*@Thrown*/ boolean eq = child == null;
@Nullable /*@Thrown*/ Environment symbol_2;
if (eq) {
- final @NonNull /*@Thrown*/ Environment inner = visitorEnv.addElements((EList)ownedCs);
+ final @NonNull /*@Thrown*/ Environment inner = context.addElements((EList)ownedCs);
final /*@Thrown*/ boolean hasFinalResult = inner.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_0;
if (hasFinalResult) {
@@ -254,7 +250,7 @@ public class AbstractTargetLookupVisitor
*/
final @NonNull /*@Thrown*/ IntegerValue indexOf = OrderedCollectionIndexOfOperation.INSTANCE.evaluate(BOXED_ownedCs, x);
final @NonNull /*@Thrown*/ IntegerValue indexOf_0 = OrderedCollectionIndexOfOperation.INSTANCE.evaluate(BOXED_ownedCs, child);
- final /*@Thrown*/ boolean lt = OclComparableLessThanOperation.INSTANCE.evaluate(evaluator, indexOf, indexOf_0).booleanValue();
+ final /*@Thrown*/ boolean lt = OclComparableLessThanOperation.INSTANCE.evaluate(executor, indexOf, indexOf_0).booleanValue();
//
if (lt == ValueUtil.TRUE_VALUE) {
accumulator.add(x);
@@ -262,7 +258,7 @@ public class AbstractTargetLookupVisitor
}
final List<C> UNBOXED_select = select.asEcoreObjects(idResolver, C.class);
assert UNBOXED_select != null;
- final @NonNull /*@Thrown*/ Environment inner_0 = visitorEnv.addElements((EList)UNBOXED_select);
+ final @NonNull /*@Thrown*/ Environment inner_0 = context.addElements((EList)UNBOXED_select);
final /*@Thrown*/ boolean hasFinalResult_0 = inner_0.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_1;
if (hasFinalResult_0) {
@@ -314,7 +310,7 @@ public class AbstractTargetLookupVisitor
* visitTRoot(element : target::TRoot[1]) : env::Environment[?]
*
*
- * let inner : env::Environment[?] = visitorEnv.addElements(ownedA)
+ * let inner : env::Environment[?] = context.addElements(ownedA)
* in
* if inner.hasFinalResult()
* then inner
@@ -323,9 +319,9 @@ public class AbstractTargetLookupVisitor
*/
@Override
public @Nullable /*@NonInvalid*/ Environment visitTRoot(final @NonNull /*@NonInvalid*/ TRoot element_4) {
- final @Nullable /*@Thrown*/ List<A> ownedA = element_4.getOwnedA();
- assert ownedA != null;
- final @NonNull /*@Thrown*/ Environment inner = visitorEnv.addElements((EList)ownedA);
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<A> ownedA = element_4.getOwnedA();
+ final @NonNull /*@Thrown*/ Environment inner = context.addElements((EList)ownedA);
final /*@Thrown*/ boolean hasFinalResult = inner.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_0;
if (hasFinalResult) {
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/ClassesTables.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/ClassesTables.java
index f0ca88944..f9a7307fb 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/ClassesTables.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/ClassesTables.java
@@ -1,14 +1,4 @@
/*******************************************************************************
- * Copyright (c) 2015 Willink Transformations and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * E.D.Willink - initial API and implementation
- *******************************************************************************/
-/*******************************************************************************
*************************************************************************
* This code is 100% auto-generated
* from:
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractClassesLookupVisitor.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractClassesLookupVisitor.java
index db5f9f812..e75272d3b 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractClassesLookupVisitor.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractClassesLookupVisitor.java
@@ -22,7 +22,7 @@ import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -35,7 +35,6 @@ public class AbstractClassesLookupVisitor
extends AbstractExtendingVisitor<Environment, Environment>
{
public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_$metamodel$ = IdManager.getRootPackageId("$metamodel$");
- public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_example2_env = IdManager.getRootPackageId("example2.env");
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_classes_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example2/classes/1.0", null, ClassesPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example2/env/1.0", null, EnvironmentPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_java_c_s_s_org_eclipse_qvtd_cs2as_compiler_tests_lookup = IdManager.getRootPackageId("java://org.eclipse.qvtd.cs2as.compiler.tests.lookup");
@@ -43,9 +42,8 @@ public class AbstractClassesLookupVisitor
public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_org_eclipse_ocl_pivot_ids = IdManager.getRootPackageId("org.eclipse.ocl.pivot.ids");
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_AbstractClassesLookupVisitor = PACKid_java_c_s_s_org_eclipse_qvtd_cs2as_compiler_tests_lookup.getClassId("AbstractClassesLookupVisitor", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Class = PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_classes_s_1_0.getClassId("Class", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment = PACKid_example2_env.getClassId("Environment", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment_0 = PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0.getClassId("Environment", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Evaluator = PACKid_org_eclipse_ocl_pivot_evaluation.getClassId("Evaluator", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment = PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0.getClassId("Environment", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Executor = PACKid_org_eclipse_ocl_pivot_evaluation.getClassId("Executor", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_IdResolver = PACKid_org_eclipse_ocl_pivot_ids.getClassId("IdResolver", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_OclElement = PACKid_$metamodel$.getClassId("OclElement", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Package = PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_classes_s_1_0.getClassId("Package", 0);
@@ -54,15 +52,13 @@ public class AbstractClassesLookupVisitor
public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_Package = TypeId.ORDERED_SET.getSpecializedId(CLSSid_Package);
protected @Nullable /*@Thrown*/ Object child;
- protected final @NonNull /*@Thrown*/ Evaluator evaluator;
+ protected final @NonNull /*@Thrown*/ Executor executor;
protected final @NonNull /*@Thrown*/ IdResolver idResolver;
- protected final @NonNull /*@Thrown*/ Environment visitorEnv;
public AbstractClassesLookupVisitor(@NonNull Environment context) {
super(context);
- this.evaluator = context.getEvaluator();
- this.idResolver = evaluator.getIdResolver();
- this.visitorEnv = context;
+ this.executor = context.getExecutor();
+ this.idResolver = executor.getIdResolver();
}
/**
@@ -108,7 +104,7 @@ public class AbstractClassesLookupVisitor
*
*
* let
- * inner : env::Environment[?] = visitorEnv.addElements(element.ownedClasses)
+ * inner : env::Environment[?] = context.addElements(element.ownedClasses)
* .addElements(element.ownedPackages)
* in
* if inner.hasFinalResult()
@@ -118,11 +114,11 @@ public class AbstractClassesLookupVisitor
*/
@Override
public @Nullable /*@NonInvalid*/ Environment visitPackage(final @NonNull /*@NonInvalid*/ Package element_0) {
- final @Nullable /*@Thrown*/ List<Class> ownedClasses = element_0.getOwnedClasses();
- assert ownedClasses != null;
- final @NonNull /*@Thrown*/ Environment addElements = visitorEnv.addElements((EList)ownedClasses);
- final @Nullable /*@Thrown*/ List<Package> ownedPackages = element_0.getOwnedPackages();
- assert ownedPackages != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<Class> ownedClasses = element_0.getOwnedClasses();
+ final @NonNull /*@Thrown*/ Environment addElements = context.addElements((EList)ownedClasses);
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<Package> ownedPackages = element_0.getOwnedPackages();
final @NonNull /*@Thrown*/ Environment inner = addElements.addElements((EList)ownedPackages);
final /*@Thrown*/ boolean hasFinalResult = inner.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_0;
@@ -141,7 +137,7 @@ public class AbstractClassesLookupVisitor
*
*
* let
- * inner : env::Environment[?] = visitorEnv.addElements(element.ownedPackages)
+ * inner : env::Environment[?] = context.addElements(element.ownedPackages)
* in
* if inner.hasFinalResult()
* then inner
@@ -150,9 +146,9 @@ public class AbstractClassesLookupVisitor
*/
@Override
public @Nullable /*@NonInvalid*/ Environment visitRoot(final @NonNull /*@NonInvalid*/ Root element_1) {
- final @Nullable /*@Thrown*/ List<Package> ownedPackages = element_1.getOwnedPackages();
- assert ownedPackages != null;
- final @NonNull /*@Thrown*/ Environment inner = visitorEnv.addElements((EList)ownedPackages);
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<Package> ownedPackages = element_1.getOwnedPackages();
+ final @NonNull /*@Thrown*/ Environment inner = context.addElements((EList)ownedPackages);
final /*@Thrown*/ boolean hasFinalResult = inner.hasFinalResult();
@Nullable /*@Thrown*/ Environment symbol_0;
if (hasFinalResult) {
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractMergedVisitor.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractMergedVisitor.java
new file mode 100644
index 000000000..80664a410
--- /dev/null
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/classes/util/AbstractMergedVisitor.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * <copyright>
+ *
+ * </copyright>
+ *
+ * This code is auto-generated
+ * from: org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/Classes.genmodel
+ *
+ * Only the copyright statement is editable.
+ *******************************************************************************/
+package example2.classes.util;
+
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
+
+/**
+ * An AbstractMergedVisitor merges all visits direct to visiting().
+ * This can be used by a decorating visitor to execute shared code before redispatching to a decorated visitor.
+ */
+public abstract class AbstractMergedVisitor<R, C>
+ extends AbstractVisitor<R, C>
+ implements Visitor<R>
+{
+ protected AbstractMergedVisitor(@NonNull C context) {
+ super(context);
+ }
+
+ @Override
+ public @Nullable R visitClass(@NonNull example2.classes.Class object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitElement(@NonNull example2.classes.Element object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitNamedElement(@NonNull example2.classes.NamedElement object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitNamespace(@NonNull example2.classes.Namespace object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitPackage(@NonNull example2.classes.Package object) {
+ return visiting(object);
+ }
+
+ @Override
+ public @Nullable R visitRoot(@NonNull example2.classes.Root object) {
+ return visiting(object);
+ }
+}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Env4CG.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Env4CG.java
index f3d69cdc3..c3c072288 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Env4CG.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Env4CG.java
@@ -13,7 +13,7 @@
package example2.env;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
/**
* <!-- begin-user-doc -->
@@ -29,7 +29,7 @@ public interface Env4CG extends EObject {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example2/env/1.0!Env4CG!hasFinalResult()'"
+ * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new <%java.lang.UnsupportedOperationException%>(\"Enviroment::hasFinalResult() has been created for CG purposes. Don\'t call this method\");'"
* @generated
*/
boolean hasFinalResult();
@@ -37,10 +37,10 @@ public interface Env4CG extends EObject {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @model kind="operation" type="example2.env.Evaluator"
- * annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example2/env/1.0!Env4CG!getEvaluator()'"
+ * @model kind="operation" type="example2.env.Executor"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new <%java.lang.UnsupportedOperationException%>(\"Enviroment::getEvaluator() has been created for CG purposes. Don\'t call this method\");'"
* @generated
*/
- Evaluator getEvaluator();
+ Executor getExecutor();
} // Env4CG
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Environment.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Environment.java
index 08f8f5983..f51d2bc9d 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Environment.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/Environment.java
@@ -80,7 +80,7 @@ public interface Environment extends Env4CG {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model elementsMany="true"
- * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->includingAll(elements), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Evaluator%> evaluator = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getEvaluator(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = evaluator.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example2.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example2.env.Environment%> symbol_0 = (<%example2.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%java.util.List%><<%example2.classes.NamedElement%>> namedElements = this.getNamedElements();\nassert namedElements != null;\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example2.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_elements = idResolver.createOrderedSetOfAll(<%example2.env.EnvironmentTables%>.ORD_TMPLid_, elements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.CollectionValue%> includingAll = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation%>.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements);\nfinal <%java.util.List%><? extends <%java.lang.Object%>> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, <%java.lang.Object%>.class);\nassert UNBOXED_includingAll != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_includingAll);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example2.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->includingAll(elements), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Executor%> executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = executor.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example2.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example2.env.Environment%> symbol_0 = (<%example2.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\n@SuppressWarnings(\"null\")\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%java.util.List%><<%example2.classes.NamedElement%>> namedElements = this.getNamedElements();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example2.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_elements = idResolver.createOrderedSetOfAll(<%example2.env.EnvironmentTables%>.ORD_TMPLid_, elements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.CollectionValue%> includingAll = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation%>.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements);\nfinal <%java.util.List%><? extends <%java.lang.Object%>> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, <%java.lang.Object%>.class);\nassert UNBOXED_includingAll != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_includingAll);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example2.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
* @generated
*/
<NE extends NamedElement> Environment addElements(EList<NE> elements);
@@ -88,7 +88,7 @@ public interface Environment extends Env4CG {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->including(element), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Evaluator%> evaluator = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getEvaluator(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = evaluator.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example2.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example2.env.Environment%> symbol_0 = (<%example2.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%java.util.List%><<%example2.classes.NamedElement%>> namedElements = this.getNamedElements();\nassert namedElements != null;\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example2.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> including = (<%org.eclipse.ocl.pivot.values.OrderedSetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation%>.INSTANCE.evaluate(BOXED_namedElements, element);\nfinal <%java.util.List%><<%example2.classes.NamedElement%>> UNBOXED_including = including.asEcoreObjects(idResolver, <%example2.classes.NamedElement%>.class);\nassert UNBOXED_including != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_including);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example2.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
+ * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * Environment{\n * namedElements = namedElements->including(element), parentEnv = parentEnv\n * }\n \052/\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.evaluation.Executor%> executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.ids.IdResolver%> idResolver = executor.getIdResolver();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_namedElements = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Property%> CTORid_parentEnv = idResolver.getProperty(<%example2.env.EnvironmentTables%>.PROPid_parentEnv);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@NonInvalid\052/ <%org.eclipse.ocl.pivot.Class%> TYP_env_c_c_Environment_0 = idResolver.getClass(<%example2.env.EnvironmentTables%>.CLSSid_Environment, null);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%example2.env.Environment%> symbol_0 = (<%example2.env.Environment%>)TYP_env_c_c_Environment_0.createInstance();\n@SuppressWarnings(\"null\")\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%java.util.List%><<%example2.classes.NamedElement%>> namedElements = this.getNamedElements();\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> BOXED_namedElements = idResolver.createOrderedSetOfAll(<%example2.env.EnvironmentTables%>.ORD_CLSSid_NamedElement, namedElements);\nfinal @<%org.eclipse.jdt.annotation.NonNull%> /*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%> including = (<%org.eclipse.ocl.pivot.values.OrderedSetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation%>.INSTANCE.evaluate(BOXED_namedElements, element);\nfinal <%java.util.List%><<%example2.classes.NamedElement%>> UNBOXED_including = including.asEcoreObjects(idResolver, <%example2.classes.NamedElement%>.class);\nassert UNBOXED_including != null;\nCTORid_namedElements.initValue(symbol_0, UNBOXED_including);\nfinal @<%org.eclipse.jdt.annotation.Nullable%> /*@Thrown\052/ <%example2.env.Environment%> parentEnv = this.getParentEnv();\nCTORid_parentEnv.initValue(symbol_0, parentEnv);\nreturn symbol_0;'"
* @generated
*/
Environment addElement(NamedElement element);
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentPackage.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentPackage.java
index dd71b17bf..37300afc1 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentPackage.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentPackage.java
@@ -96,13 +96,13 @@ public interface EnvironmentPackage extends EPackage {
int ENV4_CG___HAS_FINAL_RESULT = 0;
/**
- * The operation id for the '<em>Get Evaluator</em>' operation.
+ * The operation id for the '<em>Get Executor</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ENV4_CG___GET_EVALUATOR = 1;
+ int ENV4_CG___GET_EXECUTOR = 1;
/**
* The number of operations of the '<em>Env4 CG</em>' class.
@@ -160,13 +160,13 @@ public interface EnvironmentPackage extends EPackage {
int ENVIRONMENT___HAS_FINAL_RESULT = ENV4_CG___HAS_FINAL_RESULT;
/**
- * The operation id for the '<em>Get Evaluator</em>' operation.
+ * The operation id for the '<em>Get Executor</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ENVIRONMENT___GET_EVALUATOR = ENV4_CG___GET_EVALUATOR;
+ int ENVIRONMENT___GET_EXECUTOR = ENV4_CG___GET_EXECUTOR;
/**
* The operation id for the '<em>Add Elements</em>' operation.
@@ -196,33 +196,32 @@ public interface EnvironmentPackage extends EPackage {
int ENVIRONMENT_OPERATION_COUNT = ENV4_CG_OPERATION_COUNT + 2;
/**
- * The meta object id for the '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}' class.
+ * The meta object id for the '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
- * @see example2.env.impl.EnvironmentPackageImpl#getEvaluator()
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
+ * @see example2.env.impl.EnvironmentPackageImpl#getExecutor()
* @generated
*/
- int EVALUATOR = 2;
+ int EXECUTOR = 2;
/**
- * The number of structural features of the '<em>Evaluator</em>' class.
+ * The number of structural features of the '<em>Executor</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int EVALUATOR_FEATURE_COUNT = 0;
+ int EXECUTOR_FEATURE_COUNT = 0;
/**
- * The number of operations of the '<em>Evaluator</em>' class.
+ * The number of operations of the '<em>Executor</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int EVALUATOR_OPERATION_COUNT = 0;
-
+ int EXECUTOR_OPERATION_COUNT = 0;
/**
* Returns the meta object for class '{@link example2.env.Environment <em>Environment</em>}'.
@@ -297,25 +296,25 @@ public interface EnvironmentPackage extends EPackage {
EOperation getEnv4CG__HasFinalResult();
/**
- * Returns the meta object for the '{@link example2.env.Env4CG#getEvaluator() <em>Get Evaluator</em>}' operation.
+ * Returns the meta object for the '{@link example2.env.Env4CG#getExecutor() <em>Get Executor</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the '<em>Get Evaluator</em>' operation.
- * @see example2.env.Env4CG#getEvaluator()
+ * @return the meta object for the '<em>Get Executor</em>' operation.
+ * @see example2.env.Env4CG#getExecutor()
* @generated
*/
- EOperation getEnv4CG__GetEvaluator();
+ EOperation getEnv4CG__GetExecutor();
/**
- * Returns the meta object for class '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for class '<em>Evaluator</em>'.
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
- * @model instanceClass="org.eclipse.ocl.pivot.evaluation.Evaluator"
+ * @return the meta object for class '<em>Executor</em>'.
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
+ * @model instanceClass="org.eclipse.ocl.pivot.evaluation.Executor"
* @generated
*/
- EClass getEvaluator();
+ EClass getExecutor();
/**
* Returns the factory that creates the instances of the model.
@@ -401,22 +400,22 @@ public interface EnvironmentPackage extends EPackage {
EOperation ENV4_CG___HAS_FINAL_RESULT = eINSTANCE.getEnv4CG__HasFinalResult();
/**
- * The meta object literal for the '<em><b>Get Evaluator</b></em>' operation.
+ * The meta object literal for the '<em><b>Get Executor</b></em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EOperation ENV4_CG___GET_EVALUATOR = eINSTANCE.getEnv4CG__GetEvaluator();
+ EOperation ENV4_CG___GET_EXECUTOR = eINSTANCE.getEnv4CG__GetExecutor();
/**
- * The meta object literal for the '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}' class.
+ * The meta object literal for the '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
- * @see example2.env.impl.EnvironmentPackageImpl#getEvaluator()
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
+ * @see example2.env.impl.EnvironmentPackageImpl#getExecutor()
* @generated
*/
- EClass EVALUATOR = eINSTANCE.getEvaluator();
+ EClass EXECUTOR = eINSTANCE.getExecutor();
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentTables.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentTables.java
index 67df690fc..b1ca2d052 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentTables.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/EnvironmentTables.java
@@ -1,14 +1,4 @@
/*******************************************************************************
- * Copyright (c) 2015 Willink Transformations and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * E.D.Willink - initial API and implementation
- *******************************************************************************/
-/*******************************************************************************
*************************************************************************
* This code is 100% auto-generated
* from:
@@ -79,7 +69,7 @@ public class EnvironmentTables
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_classes_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example2/classes/1.0", null, ClassesPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0 = IdManager.getNsURIPackageId("http://cs2as/tests/example2/env/1.0", null, EnvironmentPackage.eINSTANCE);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Environment = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0.getClassId("Environment", 0);
- public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Evaluator = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0.getClassId("Evaluator", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Executor = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_env_s_1_0.getClassId("Executor", 0);
public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_NamedElement = EnvironmentTables.PACKid_http_c_s_s_cs2as_s_tests_s_example2_s_classes_s_1_0.getClassId("NamedElement", 0);
public static final @NonNull /*@NonInvalid*/ CollectionTypeId BAG_CLSSid_Environment = TypeId.BAG.getSpecializedId(EnvironmentTables.CLSSid_Environment);
public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_NamedElement = TypeId.ORDERED_SET.getSpecializedId(EnvironmentTables.CLSSid_NamedElement);
@@ -117,12 +107,12 @@ public class EnvironmentTables
public static final @NonNull EcoreExecutorType _Env4CG = new EcoreExecutorType(EnvironmentPackage.Literals.ENV4_CG, PACKAGE, 0);
public static final @NonNull EcoreExecutorType _Environment = new EcoreExecutorType(EnvironmentPackage.Literals.ENVIRONMENT, PACKAGE, 0);
- public static final @NonNull EcoreExecutorType _Evaluator = new EcoreExecutorType(EnvironmentPackage.Literals.EVALUATOR, PACKAGE, 0);
+ public static final @NonNull EcoreExecutorType _Executor = new EcoreExecutorType(EnvironmentPackage.Literals.EXECUTOR, PACKAGE, 0);
private static final @NonNull EcoreExecutorType[] types = {
_Env4CG,
_Environment,
- _Evaluator
+ _Executor
};
/*
@@ -157,9 +147,9 @@ public class EnvironmentTables
private static final @NonNull ExecutorFragment _Environment__OclAny = new ExecutorFragment(Types._Environment, OCLstdlibTables.Types._OclAny);
private static final @NonNull ExecutorFragment _Environment__OclElement = new ExecutorFragment(Types._Environment, OCLstdlibTables.Types._OclElement);
- private static final @NonNull ExecutorFragment _Evaluator__Evaluator = new ExecutorFragment(Types._Evaluator, EnvironmentTables.Types._Evaluator);
- private static final @NonNull ExecutorFragment _Evaluator__OclAny = new ExecutorFragment(Types._Evaluator, OCLstdlibTables.Types._OclAny);
- private static final @NonNull ExecutorFragment _Evaluator__OclElement = new ExecutorFragment(Types._Evaluator, OCLstdlibTables.Types._OclElement);
+ private static final @NonNull ExecutorFragment _Executor__Executor = new ExecutorFragment(Types._Executor, EnvironmentTables.Types._Executor);
+ private static final @NonNull ExecutorFragment _Executor__OclAny = new ExecutorFragment(Types._Executor, OCLstdlibTables.Types._OclAny);
+ private static final @NonNull ExecutorFragment _Executor__OclElement = new ExecutorFragment(Types._Executor, OCLstdlibTables.Types._OclElement);
static {
Init.initEnd();
@@ -203,7 +193,7 @@ public class EnvironmentTables
Parameters.init();
}
- public static final @NonNull ExecutorOperation _Env4CG__getEvaluator = new ExecutorOperation("getEvaluator", Parameters._, Types._Env4CG,
+ public static final @NonNull ExecutorOperation _Env4CG__getExecutor = new ExecutorOperation("getExecutor", Parameters._, Types._Env4CG,
0, TemplateParameters.EMPTY_LIST, null);
public static final @NonNull ExecutorOperation _Env4CG__hasFinalResult = new ExecutorOperation("hasFinalResult", Parameters._, Types._Env4CG,
1, TemplateParameters.EMPTY_LIST, null);
@@ -272,13 +262,13 @@ public class EnvironmentTables
};
private static final @NonNull int[] __Environment = { 1,1,1,1 };
- private static final @NonNull ExecutorFragment[] _Evaluator =
+ private static final @NonNull ExecutorFragment[] _Executor =
{
- Fragments._Evaluator__OclAny /* 0 */,
- Fragments._Evaluator__OclElement /* 1 */,
- Fragments._Evaluator__Evaluator /* 2 */
+ Fragments._Executor__OclAny /* 0 */,
+ Fragments._Executor__OclElement /* 1 */,
+ Fragments._Executor__Executor /* 2 */
};
- private static final @NonNull int[] __Evaluator = { 1,1,1 };
+ private static final @NonNull int[] __Executor = { 1,1,1 };
/**
* Install the fragment descriptors in the class descriptors.
@@ -286,7 +276,7 @@ public class EnvironmentTables
static {
Types._Env4CG.initFragments(_Env4CG, __Env4CG);
Types._Environment.initFragments(_Environment, __Environment);
- Types._Evaluator.initFragments(_Evaluator, __Evaluator);
+ Types._Executor.initFragments(_Executor, __Executor);
Init.initEnd();
}
@@ -307,7 +297,7 @@ public class EnvironmentTables
}
private static final @NonNull ExecutorOperation[] _Env4CG__Env4CG = {
- EnvironmentTables.Operations._Env4CG__getEvaluator /* getEvaluator() */,
+ EnvironmentTables.Operations._Env4CG__getExecutor /* getExecutor() */,
EnvironmentTables.Operations._Env4CG__hasFinalResult /* hasFinalResult() */
};
private static final @NonNull ExecutorOperation[] _Env4CG__OclAny = {
@@ -337,7 +327,7 @@ public class EnvironmentTables
EnvironmentTables.Operations._Environment__addElements /* addElements(NE)(OrderedSet(NE)) */
};
private static final @NonNull ExecutorOperation[] _Environment__Env4CG = {
- EnvironmentTables.Operations._Env4CG__getEvaluator /* getEvaluator() */,
+ EnvironmentTables.Operations._Env4CG__getExecutor /* getExecutor() */,
EnvironmentTables.Operations._Env4CG__hasFinalResult /* hasFinalResult() */
};
private static final @NonNull ExecutorOperation[] _Environment__OclAny = {
@@ -362,8 +352,8 @@ public class EnvironmentTables
OCLstdlibTables.Operations._OclElement__oclContents /* oclContents() */
};
- private static final @NonNull ExecutorOperation[] _Evaluator__Evaluator = {};
- private static final @NonNull ExecutorOperation[] _Evaluator__OclAny = {
+ private static final @NonNull ExecutorOperation[] _Executor__Executor = {};
+ private static final @NonNull ExecutorOperation[] _Executor__OclAny = {
OCLstdlibTables.Operations._OclAny___lt__gt_ /* _'<>'(OclSelf[?]) */,
OCLstdlibTables.Operations._OclAny___eq_ /* _'='(OclSelf[?]) */,
OCLstdlibTables.Operations._OclAny__oclAsSet /* oclAsSet() */,
@@ -379,7 +369,7 @@ public class EnvironmentTables
OCLstdlibTables.Operations._OclAny__oclType /* oclType() */,
OCLstdlibTables.Operations._OclAny__toString /* toString() */
};
- private static final @NonNull ExecutorOperation[] _Evaluator__OclElement = {
+ private static final @NonNull ExecutorOperation[] _Executor__OclElement = {
OCLstdlibTables.Operations._OclElement__allInstances /* allInstances() */,
OCLstdlibTables.Operations._OclElement__oclContainer /* oclContainer() */,
OCLstdlibTables.Operations._OclElement__oclContents /* oclContents() */
@@ -398,9 +388,9 @@ public class EnvironmentTables
Fragments._Environment__OclAny.initOperations(_Environment__OclAny);
Fragments._Environment__OclElement.initOperations(_Environment__OclElement);
- Fragments._Evaluator__Evaluator.initOperations(_Evaluator__Evaluator);
- Fragments._Evaluator__OclAny.initOperations(_Evaluator__OclAny);
- Fragments._Evaluator__OclElement.initOperations(_Evaluator__OclElement);
+ Fragments._Executor__Executor.initOperations(_Executor__Executor);
+ Fragments._Executor__OclAny.initOperations(_Executor__OclAny);
+ Fragments._Executor__OclElement.initOperations(_Executor__OclElement);
Init.initEnd();
}
@@ -428,7 +418,7 @@ public class EnvironmentTables
EnvironmentTables.Properties._Environment__Environment__parentEnv
};
- private static final @NonNull ExecutorProperty[] _Evaluator = {};
+ private static final @NonNull ExecutorProperty[] _Executor = {};
/**
* Install the property descriptors in the fragment descriptors.
@@ -436,7 +426,7 @@ public class EnvironmentTables
static {
Fragments._Env4CG__Env4CG.initProperties(_Env4CG);
Fragments._Environment__Environment.initProperties(_Environment);
- Fragments._Evaluator__Evaluator.initProperties(_Evaluator);
+ Fragments._Executor__Executor.initProperties(_Executor);
Init.initEnd();
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentImpl.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentImpl.java
index bd2026763..4bc22b642 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentImpl.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentImpl.java
@@ -26,7 +26,7 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.pivot.Property;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.IdResolver;
import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;
import org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation;
@@ -155,14 +155,14 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* namedElements = namedElements->includingAll(elements), parentEnv = parentEnv
* }
*/
- final @NonNull /*@NonInvalid*/ Evaluator evaluator = PivotUtilInternal.getEvaluator(this);
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ Property CTORid_namedElements = idResolver.getProperty(EnvironmentTables.PROPid_namedElements);
final @NonNull /*@NonInvalid*/ Property CTORid_parentEnv = idResolver.getProperty(EnvironmentTables.PROPid_parentEnv);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_env_c_c_Environment_0 = idResolver.getClass(EnvironmentTables.CLSSid_Environment, null);
final @NonNull /*@Thrown*/ Environment symbol_0 = (Environment)TYP_env_c_c_Environment_0.createInstance();
- final @Nullable /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
- assert namedElements != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
final @NonNull /*@Thrown*/ OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements);
final @NonNull /*@NonInvalid*/ OrderedSetValue BOXED_elements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_TMPLid_, elements);
final @NonNull /*@Thrown*/ CollectionValue includingAll = CollectionIncludingAllOperation.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements);
@@ -186,14 +186,14 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* namedElements = namedElements->including(element), parentEnv = parentEnv
* }
*/
- final @NonNull /*@NonInvalid*/ Evaluator evaluator = PivotUtilInternal.getEvaluator(this);
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ Property CTORid_namedElements = idResolver.getProperty(EnvironmentTables.PROPid_namedElements);
final @NonNull /*@NonInvalid*/ Property CTORid_parentEnv = idResolver.getProperty(EnvironmentTables.PROPid_parentEnv);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_env_c_c_Environment_0 = idResolver.getClass(EnvironmentTables.CLSSid_Environment, null);
final @NonNull /*@Thrown*/ Environment symbol_0 = (Environment)TYP_env_c_c_Environment_0.createInstance();
- final @Nullable /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
- assert namedElements != null;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<NamedElement> namedElements = this.getNamedElements();
final @NonNull /*@Thrown*/ OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements);
final @NonNull /*@Thrown*/ OrderedSetValue including = (OrderedSetValue)CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, element);
final List<NamedElement> UNBOXED_including = including.asEcoreObjects(idResolver, NamedElement.class);
@@ -210,7 +210,7 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* @generated
*/
public boolean hasFinalResult() {
- throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example2/env/1.0!Env4CG!hasFinalResult()
+ throw new UnsupportedOperationException("Enviroment::hasFinalResult() has been created for CG purposes. Don't call this method");
}
/**
@@ -218,8 +218,8 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
* <!-- end-user-doc -->
* @generated
*/
- public Evaluator getEvaluator() {
- throw new UnsupportedOperationException(); // FIXME Unimplemented http://cs2as/tests/example2/env/1.0!Env4CG!getEvaluator()
+ public Executor getExecutor() {
+ throw new UnsupportedOperationException("Enviroment::getEvaluator() has been created for CG purposes. Don't call this method");
}
/**
@@ -308,8 +308,8 @@ public class EnvironmentImpl extends MinimalEObjectImpl.Container implements Env
return addElement((NamedElement)arguments.get(0));
case EnvironmentPackage.ENVIRONMENT___HAS_FINAL_RESULT:
return hasFinalResult();
- case EnvironmentPackage.ENVIRONMENT___GET_EVALUATOR:
- return getEvaluator();
+ case EnvironmentPackage.ENVIRONMENT___GET_EXECUTOR:
+ return getExecutor();
}
return super.eInvoke(operationID, arguments);
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentPackageImpl.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentPackageImpl.java
index 1b522b0ce..35f40ae2e 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentPackageImpl.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/impl/EnvironmentPackageImpl.java
@@ -19,8 +19,7 @@ import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.ETypeParameter;
import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
-
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example2.classes.ClassesPackage;
import example2.env.Env4CG;
import example2.env.Environment;
@@ -53,7 +52,7 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
* <!-- end-user-doc -->
* @generated
*/
- private EClass evaluatorEClass = null;
+ private EClass executorEClass = null;
/**
* Creates an instance of the model <b>Package</b>, registered with
@@ -187,7 +186,7 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
* <!-- end-user-doc -->
* @generated
*/
- public EOperation getEnv4CG__GetEvaluator() {
+ public EOperation getEnv4CG__GetExecutor() {
return env4CGEClass.getEOperations().get(1);
}
@@ -196,8 +195,8 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
* <!-- end-user-doc -->
* @generated
*/
- public EClass getEvaluator() {
- return evaluatorEClass;
+ public EClass getExecutor() {
+ return executorEClass;
}
/**
@@ -236,9 +235,9 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
env4CGEClass = createEClass(ENV4_CG);
createEOperation(env4CGEClass, ENV4_CG___HAS_FINAL_RESULT);
- createEOperation(env4CGEClass, ENV4_CG___GET_EVALUATOR);
+ createEOperation(env4CGEClass, ENV4_CG___GET_EXECUTOR);
- evaluatorEClass = createEClass(EVALUATOR);
+ executorEClass = createEClass(EXECUTOR);
}
/**
@@ -293,9 +292,9 @@ public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentP
initEOperation(getEnv4CG__HasFinalResult(), ecorePackage.getEBoolean(), "hasFinalResult", 0, 1, IS_UNIQUE, IS_ORDERED);
- initEOperation(getEnv4CG__GetEvaluator(), this.getEvaluator(), "getEvaluator", 0, 1, IS_UNIQUE, IS_ORDERED);
+ initEOperation(getEnv4CG__GetExecutor(), this.getExecutor(), "getExecutor", 0, 1, IS_UNIQUE, IS_ORDERED);
- initEClass(evaluatorEClass, Evaluator.class, "Evaluator", IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
+ initEClass(executorEClass, Executor.class, "Executor", IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
// Create resource
createResource(eNS_URI);
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentAdapterFactory.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentAdapterFactory.java
index 0b7d04a47..507858362 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentAdapterFactory.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentAdapterFactory.java
@@ -16,8 +16,7 @@ import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
-
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example2.env.Env4CG;
import example2.env.Environment;
import example2.env.EnvironmentPackage;
@@ -87,8 +86,8 @@ public class EnvironmentAdapterFactory extends AdapterFactoryImpl {
return createEnv4CGAdapter();
}
@Override
- public Adapter caseEvaluator(Evaluator object) {
- return createEvaluatorAdapter();
+ public Adapter caseExecutor(Executor object) {
+ return createExecutorAdapter();
}
@Override
public Adapter defaultCase(EObject object) {
@@ -139,16 +138,16 @@ public class EnvironmentAdapterFactory extends AdapterFactoryImpl {
}
/**
- * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.evaluation.Evaluator <em>Evaluator</em>}'.
+ * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.evaluation.Executor <em>Executor</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
- * @see org.eclipse.ocl.pivot.evaluation.Evaluator
+ * @see org.eclipse.ocl.pivot.evaluation.Executor
* @generated
*/
- public Adapter createEvaluatorAdapter() {
+ public Adapter createExecutorAdapter() {
return null;
}
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentSwitch.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentSwitch.java
index 80246d039..a7f7f2085 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentSwitch.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/tests-gen/example2/env/util/EnvironmentSwitch.java
@@ -15,8 +15,7 @@ package example2.env.util;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.util.Switch;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
-
+import org.eclipse.ocl.pivot.evaluation.Executor;
import example2.env.Env4CG;
import example2.env.Environment;
import example2.env.EnvironmentPackage;
@@ -91,9 +90,9 @@ public class EnvironmentSwitch<T> extends Switch<T> {
if (result == null) result = defaultCase(theEObject);
return result;
}
- case EnvironmentPackage.EVALUATOR: {
- Evaluator evaluator = (Evaluator)theEObject;
- T result = caseEvaluator(evaluator);
+ case EnvironmentPackage.EXECUTOR: {
+ Executor executor = (Executor)theEObject;
+ T result = caseExecutor(executor);
if (result == null) result = defaultCase(theEObject);
return result;
}
@@ -132,17 +131,17 @@ public class EnvironmentSwitch<T> extends Switch<T> {
}
/**
- * Returns the result of interpreting the object as an instance of '<em>Evaluator</em>'.
+ * Returns the result of interpreting the object as an instance of '<em>Executor</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Evaluator</em>'.
+ * @return the result of interpreting the object as an instance of '<em>Executor</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
- public T caseEvaluator(Evaluator object) {
+ public T caseExecutor(Executor object) {
return null;
}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_ManualUML2RDBMS/ManualUML2RDBMS.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_ManualUML2RDBMS/ManualUML2RDBMS.java
index 71db8ee5f..c74e6e2ed 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_ManualUML2RDBMS/ManualUML2RDBMS.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_ManualUML2RDBMS/ManualUML2RDBMS.java
@@ -39,7 +39,7 @@ import manualuml2rdbms.uml2rdbms.UML2RDBMSFactory;
import manualuml2rdbms.uml2rdbms.UML2RDBMSPackage;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -156,8 +156,8 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
{0} // 0 : Package -> {Package}
};
- public ManualUML2RDBMS(final @NonNull Evaluator evaluator) {
- super(evaluator, new String[] {"uml", "rdbms", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public ManualUML2RDBMS(final @NonNull Executor executor) {
+ super(executor, new String[] {"uml", "rdbms", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -193,10 +193,10 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Package_0 = idResolver.getClass(CLSSid_Package, null);
// mapping statements
- final @NonNull /*@NonInvalid*/ SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Package, TYP_uml_c_c_Package_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Package, TYP_uml_c_c_Package_0);
final List<Package> UNBOXED_allInstances = allInstances.asEcoreObjects(idResolver, Package.class);
assert UNBOXED_allInstances != null;
for (Package p1 : UNBOXED_allInstances) {
@@ -865,7 +865,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classToTableMR(final @NonNull /*@NonInvalid*/ ClassToTable c2t, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_8, final @NonNull /*@NonInvalid*/ Schema s) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @Nullable /*@Thrown*/ PackageToSchema owner = c2t.getOwner();
final /*@Thrown*/ boolean eq = p2s_8.equals(owner);
if (!eq) {
@@ -919,7 +919,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@Thrown*/ SetValue selectByKind = (SetValue)CollectionSelectByKindOperation.INSTANCE.evaluate(evaluator, BOXED_fromAttributes, TYP_uml2rdbms_c_c_NonLeafAttribute_0);
+ final @NonNull /*@Thrown*/ SetValue selectByKind = (SetValue)CollectionSelectByKindOperation.INSTANCE.evaluate(executor, BOXED_fromAttributes, TYP_uml2rdbms_c_c_NonLeafAttribute_0);
@NonNull /*@Thrown*/ BagValue.Accumulator accumulator = ValueUtil.createBagAccumulatorValue(BAG_CLSSid_FromAttribute);
@NonNull Iterator<?> ITERATOR__1 = selectByKind.iterator();
@NonNull /*@Thrown*/ BagValue collect;
@@ -1022,7 +1022,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classToTableMR_2(final @NonNull /*@NonInvalid*/ ClassToTable c2t_2, final @NonNull /*@NonInvalid*/ Table t_2) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
// creations
final /*@Thrown*/ Column pc = RDBMSFactory.eINSTANCE.createColumn();
assert pc != null;
@@ -1446,7 +1446,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean associationToForeignKeyMR_1(final @NonNull /*@NonInvalid*/ Table dt_0, final @NonNull /*@NonInvalid*/ Column fc, final @NonNull /*@NonInvalid*/ ForeignKey fk, final @NonNull /*@NonInvalid*/ Key rk_0) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
// variable assignments
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ List<Column> column = rk_0.getColumn();
@@ -1524,7 +1524,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classPrimitiveAttributesLM(final @NonNull /*@NonInvalid*/ Attribute a_0, final @NonNull /*@NonInvalid*/ manualuml2rdbms.uml.Class c_0, final @NonNull /*@NonInvalid*/ ClassToTable fao) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ manualuml2rdbms.uml.Class owner = a_0.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_0);
@@ -1600,7 +1600,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classComplexAttributesLM(final @NonNull /*@NonInvalid*/ Attribute a_1, final @NonNull /*@NonInvalid*/ manualuml2rdbms.uml.Class c_1, final @NonNull /*@NonInvalid*/ ClassToTable fao_0) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ manualuml2rdbms.uml.Class owner = a_1.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_1);
@@ -1754,7 +1754,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean complexAttributePrimitiveAttributesLM_1(final @NonNull /*@NonInvalid*/ Attribute a_1_0, final @NonNull /*@NonInvalid*/ manualuml2rdbms.uml.Class c_1_0, final @NonNull /*@NonInvalid*/ Attribute ca_1, final @NonNull /*@NonInvalid*/ NonLeafAttribute fao_1) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ Classifier type = a_1_0.getType();
if (!(type instanceof PrimitiveDataType)) {
@@ -1879,7 +1879,7 @@ public class ManualUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean complexAttributeComplexAttributesLM_1(final @NonNull /*@NonInvalid*/ Attribute a_1_1, final @NonNull /*@NonInvalid*/ manualuml2rdbms.uml.Class c_1_1, final @NonNull /*@NonInvalid*/ Attribute ca_1_0, final @NonNull /*@NonInvalid*/ NonLeafAttribute fao_1_0) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ manualuml2rdbms.uml.Class owner = a_1_1.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_1_1);
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as/classescs2as.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as/classescs2as.java
index b9c3fc178..f8b116b0f 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as/classescs2as.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as/classescs2as.java
@@ -28,7 +28,7 @@ import java.util.List;
import java.util.Map;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -132,8 +132,8 @@ public class classescs2as extends AbstractTransformationExecutor
{8} // 8 : RootCS2Root -> {RootCS2Root}
};
- public classescs2as(final @NonNull Evaluator evaluator) {
- super(evaluator, new String[] {"leftCS", "rightAS", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public classescs2as(final @NonNull Executor executor) {
+ super(executor, new String[] {"leftCS", "rightAS", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -354,7 +354,7 @@ public class classescs2as extends AbstractTransformationExecutor
*/
protected boolean uRoot_ownedPackages(final @NonNull /*@NonInvalid*/ Root root, final @NonNull /*@NonInvalid*/ RootCS rootCS_0) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@Thrown*/ RootCS2Root RootCS2Root = ClassUtil.nonNullState (OPPOSITE_OF_RootCS2Root_rootCS.get(rootCS_0));
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ Root root_0 = RootCS2Root.getRoot();
@@ -465,7 +465,7 @@ public class classescs2as extends AbstractTransformationExecutor
*/
protected boolean uPackage_ownedClasses(final @NonNull /*@NonInvalid*/ Package symbol_2, final @NonNull /*@NonInvalid*/ PackageCS packageCS_1) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@Thrown*/ PackageCS2Package PackageCS2Package = ClassUtil.nonNullState (OPPOSITE_OF_PackageCS2Package_packageCS.get(packageCS_1));
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ Package symbol_3 = PackageCS2Package.getPackage();
@@ -597,7 +597,7 @@ public class classescs2as extends AbstractTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Package_1 = idResolver.getClass(CLSSid_Package, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescs_c_c_ClassCS_1 = idResolver.getClass(CLSSid_ClassCS, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescs_c_c_PackageCS_0 = idResolver.getClass(CLSSid_PackageCS, null);
@@ -605,10 +605,10 @@ public class classescs2as extends AbstractTransformationExecutor
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescstraces_c_c_ClassCS2Class_0 = idResolver.getClass(CLSSid_ClassCS2Class, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescstraces_c_c_PackageCS2Package_0 = idResolver.getClass(CLSSid_PackageCS2Package, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classescstraces_c_c_RootCS2Root_0 = idResolver.getClass(CLSSid_RootCS2Root, null);
- final @NonNull /*@NonInvalid*/ SetValue allInstances_3 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Package, TYP_classes_c_c_Package_1);
- final @NonNull /*@NonInvalid*/ SetValue allInstances_7 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_ClassCS, TYP_classescs_c_c_ClassCS_1);
- final @NonNull /*@NonInvalid*/ SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_PackageCS, TYP_classescs_c_c_PackageCS_0);
- final @NonNull /*@NonInvalid*/ SetValue allInstances_11 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_RootCS, TYP_classescs_c_c_RootCS_1);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_3 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Package, TYP_classes_c_c_Package_1);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_7 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_ClassCS, TYP_classescs_c_c_ClassCS_1);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_PackageCS, TYP_classescs_c_c_PackageCS_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_11 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_RootCS, TYP_classescs_c_c_RootCS_1);
final List<Package> UNBOXED_allInstances_3 = allInstances_3.asEcoreObjects(idResolver, Package.class);
assert UNBOXED_allInstances_3 != null;
final List<ClassCS> UNBOXED_allInstances_7 = allInstances_7.asEcoreObjects(idResolver, ClassCS.class);
@@ -626,7 +626,7 @@ public class classescs2as extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue allInstances_0 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_PackageCS2Package, TYP_classescstraces_c_c_PackageCS2Package_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_0 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_PackageCS2Package, TYP_classescstraces_c_c_PackageCS2Package_0);
final List<PackageCS2Package> UNBOXED_allInstances_0 = allInstances_0.asEcoreObjects(idResolver, PackageCS2Package.class);
assert UNBOXED_allInstances_0 != null;
for (PackageCS2Package p2p_1 : UNBOXED_allInstances_0) {
@@ -675,7 +675,7 @@ public class classescs2as extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue allInstances_6 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_ClassCS2Class, TYP_classescstraces_c_c_ClassCS2Class_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_6 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_ClassCS2Class, TYP_classescstraces_c_c_ClassCS2Class_0);
final List<ClassCS2Class> UNBOXED_allInstances_6 = allInstances_6.asEcoreObjects(idResolver, ClassCS2Class.class);
assert UNBOXED_allInstances_6 != null;
for (ClassCS2Class c2c_1 : UNBOXED_allInstances_6) {
@@ -689,7 +689,7 @@ public class classescs2as extends AbstractTransformationExecutor
for (ClassCS classCS_4 : UNBOXED_allInstances_7) {
if (classCS_4 != null) {
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Class_0 = idResolver.getClass(CLSSid_Class, null);
- final @NonNull /*@NonInvalid*/ SetValue allInstances_8 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Class, TYP_classes_c_c_Class_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_8 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Class, TYP_classes_c_c_Class_0);
final List<classes.Class> UNBOXED_allInstances_8 = allInstances_8.asEcoreObjects(idResolver, classes.Class.class);
assert UNBOXED_allInstances_8 != null;
for (classes.Class symbol_44 : UNBOXED_allInstances_8) {
@@ -713,7 +713,7 @@ public class classescs2as extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue allInstances_10 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_RootCS2Root, TYP_classescstraces_c_c_RootCS2Root_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_10 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_RootCS2Root, TYP_classescstraces_c_c_RootCS2Root_0);
final List<RootCS2Root> UNBOXED_allInstances_10 = allInstances_10.asEcoreObjects(idResolver, RootCS2Root.class);
assert UNBOXED_allInstances_10 != null;
for (RootCS2Root r2r_1 : UNBOXED_allInstances_10) {
@@ -727,7 +727,7 @@ public class classescs2as extends AbstractTransformationExecutor
for (RootCS rootCS_4 : UNBOXED_allInstances_11) {
if (rootCS_4 != null) {
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_classes_c_c_Root_0 = idResolver.getClass(CLSSid_Root, null);
- final @NonNull /*@NonInvalid*/ SetValue allInstances_12 = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Root, TYP_classes_c_c_Root_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances_12 = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_Root, TYP_classes_c_c_Root_0);
final List<Root> UNBOXED_allInstances_12 = allInstances_12.asEcoreObjects(idResolver, Root.class);
assert UNBOXED_allInstances_12 != null;
for (Root root_1 : UNBOXED_allInstances_12) {
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as_Bug459225/classescs2as_Bug459225.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as_Bug459225/classescs2as_Bug459225.java
index 1b80047bc..1a381716d 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as_Bug459225/classescs2as_Bug459225.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_classescs2as_Bug459225/classescs2as_Bug459225.java
@@ -19,7 +19,7 @@ import java.util.List;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.pivot.Class;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -83,8 +83,8 @@ public class classescs2as_Bug459225 extends AbstractTransformationExecutor
{0} // 0 : PackageCS -> {PackageCS}
};
- public classescs2as_Bug459225(final @NonNull Evaluator evaluator) {
- super(evaluator, new String[] {"leftCS", "rightAS"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public classescs2as_Bug459225(final @NonNull Executor executor) {
+ super(executor, new String[] {"leftCS", "rightAS"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -107,15 +107,15 @@ public class classescs2as_Bug459225 extends AbstractTransformationExecutor
* endif
*/
public @Nullable /*@NonInvalid*/ String computeName(final @NonNull /*@NonInvalid*/ NamedElementCS self_0) {
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
- final @Nullable /*@NonInvalid*/ Object container = ClassifierOclContainerOperation.INSTANCE.evaluate(evaluator, self_0);
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ final @Nullable /*@NonInvalid*/ Object container = ClassifierOclContainerOperation.INSTANCE.evaluate(executor, self_0);
final @Nullable /*@Thrown*/ String name_0 = self_0.getName();
final /*@NonInvalid*/ boolean symbol_0 = container == null;
final @Nullable /*@NonInvalid*/ Boolean not = BooleanNotOperation.INSTANCE.evaluate(symbol_0);
@NonNull /*@Caught*/ Object CAUGHT_oclIsKindOf;
try {
final @NonNull /*@NonInvalid*/ Class TYP_classescs_c_c_NamedElementCS_0 = idResolver.getClass(CLSSid_NamedElementCS, null);
- final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, container, TYP_classescs_c_c_NamedElementCS_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, container, TYP_classescs_c_c_NamedElementCS_0).booleanValue();
CAUGHT_oclIsKindOf = oclIsKindOf;
}
catch (Exception e) {
@@ -128,7 +128,7 @@ public class classescs2as_Bug459225 extends AbstractTransformationExecutor
@Nullable /*@Thrown*/ String symbol_1;
if (and) {
final @NonNull /*@NonInvalid*/ Class TYP_classescs_c_c_NamedElementCS_1 = idResolver.getClass(CLSSid_NamedElementCS, null);
- final @NonNull /*@Thrown*/ NamedElementCS oclAsType = ClassUtil.nonNullState((NamedElementCS)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, container, TYP_classescs_c_c_NamedElementCS_1));
+ final @NonNull /*@Thrown*/ NamedElementCS oclAsType = ClassUtil.nonNullState((NamedElementCS)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, container, TYP_classescs_c_c_NamedElementCS_1));
final @Nullable /*@Thrown*/ String computeName = this.computeName(oclAsType);
final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(computeName, STR__c_c);
final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, name_0);
@@ -209,10 +209,10 @@ public class classescs2as_Bug459225 extends AbstractTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ Class TYP_classescs_c_c_PackageCS_0 = idResolver.getClass(CLSSid_PackageCS, null);
// mapping statements
- final @NonNull /*@NonInvalid*/ SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_PackageCS, TYP_classescs_c_c_PackageCS_0);
+ final @NonNull /*@NonInvalid*/ SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, SET_CLSSid_PackageCS, TYP_classescs_c_c_PackageCS_0);
final List<PackageCS> UNBOXED_allInstances = allInstances.asEcoreObjects(idResolver, PackageCS.class);
assert UNBOXED_allInstances != null;
for (PackageCS packageCS_1 : UNBOXED_allInstances) {
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_hsv2hls/hsv2hls.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_hsv2hls/hsv2hls.java
index b65d536ac..e42c89f40 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_hsv2hls/hsv2hls.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/_hsv2hls/hsv2hls.java
@@ -13,7 +13,7 @@ import java.util.List;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.pivot.Class;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.DataTypeId;
@@ -83,8 +83,8 @@ public class hsv2hls extends AbstractTransformationExecutor
{0} // 0 : HSVNode -> {HSVNode}
};
- public hsv2hls(final @NonNull Evaluator evaluator) {
- super(evaluator, new String[] {"hsv", "hls", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public hsv2hls(final @NonNull Executor executor) {
+ super(executor, new String[] {"hsv", "hls", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -121,10 +121,10 @@ public class hsv2hls extends AbstractTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ Class TYP_HSVTree_c_c_HSVNode_0 = idResolver.getClass(CLSSid_HSVNode, null);
// mapping statements
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_HSVNode, models[0/*hsv*/], TYP_HSVTree_c_c_HSVNode_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_HSVNode, models[0/*hsv*/], TYP_HSVTree_c_c_HSVNode_0);
final List<HSVNode> UNBOXED_objectsOfKind = objectsOfKind.asEcoreObjects(idResolver, HSVNode.class);
assert UNBOXED_objectsOfKind != null;
for (HSVNode hsvRoot_1 : UNBOXED_objectsOfKind) {
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/simpleUML2RDBMS/SimpleUML2RDBMS.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/simpleUML2RDBMS/SimpleUML2RDBMS.java
new file mode 100644
index 000000000..d5526270b
--- /dev/null
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/simpleUML2RDBMS/SimpleUML2RDBMS.java
@@ -0,0 +1,2070 @@
+/*******************************************************************************
+ * «codeGenHelper.getCopyright(' * ')»
+ *
+ * This code is 100% auto-generated
+ * using: org.eclipse.ocl.examples.codegen.java.JavaStream
+ *
+ * Do not edit it.
+ ********************************************************************************/
+
+package cg.simpleUML2RDBMS;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
+import org.eclipse.ocl.pivot.evaluation.Executor;
+import org.eclipse.ocl.pivot.ids.ClassId;
+import org.eclipse.ocl.pivot.ids.CollectionTypeId;
+import org.eclipse.ocl.pivot.ids.IdManager;
+import org.eclipse.ocl.pivot.ids.IdResolver;
+import org.eclipse.ocl.pivot.ids.NsURIPackageId;
+import org.eclipse.ocl.pivot.ids.RootPackageId;
+import org.eclipse.ocl.pivot.ids.TypeId;
+import org.eclipse.ocl.pivot.library.collection.CollectionAsSetOperation;
+import org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation;
+import org.eclipse.ocl.pivot.library.collection.OrderedCollectionFirstOperation;
+import org.eclipse.ocl.pivot.library.logical.BooleanAndOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation;
+import org.eclipse.ocl.pivot.library.string.StringConcatOperation;
+import org.eclipse.ocl.pivot.utilities.ClassUtil;
+import org.eclipse.ocl.pivot.utilities.ValueUtil;
+import org.eclipse.ocl.pivot.values.BagValue;
+import org.eclipse.ocl.pivot.values.InvalidValueException;
+import org.eclipse.ocl.pivot.values.OrderedSetValue;
+import org.eclipse.ocl.pivot.values.SetValue;
+import org.eclipse.qvtd.pivot.qvtbase.evaluation.AbstractTransformationExecutor;
+import org.eclipse.qvtd.pivot.qvtimperative.library.model.ModelObjectsOfKindOperation;
+import simpleuml2rdbms.rdbms.Column;
+import simpleuml2rdbms.rdbms.ForeignKey;
+import simpleuml2rdbms.rdbms.Key;
+import simpleuml2rdbms.rdbms.RDBMSFactory;
+import simpleuml2rdbms.rdbms.RDBMSPackage;
+import simpleuml2rdbms.rdbms.Schema;
+import simpleuml2rdbms.rdbms.Table;
+import simpleuml2rdbms.uml.Association;
+import simpleuml2rdbms.uml.Attribute;
+import simpleuml2rdbms.uml.Classifier;
+import simpleuml2rdbms.uml.Package;
+import simpleuml2rdbms.uml.PrimitiveDataType;
+import simpleuml2rdbms.uml.UMLPackage;
+import simpleuml2rdbms.uml2rdbms.AssociationToForeignKey;
+import simpleuml2rdbms.uml2rdbms.AttributeToColumn;
+import simpleuml2rdbms.uml2rdbms.BooleanToBoolean;
+import simpleuml2rdbms.uml2rdbms.ClassToTable;
+import simpleuml2rdbms.uml2rdbms.FromAttribute;
+import simpleuml2rdbms.uml2rdbms.FromAttributeOwner;
+import simpleuml2rdbms.uml2rdbms.IntegerToNumber;
+import simpleuml2rdbms.uml2rdbms.NonLeafAttribute;
+import simpleuml2rdbms.uml2rdbms.PackageToSchema;
+import simpleuml2rdbms.uml2rdbms.PrimitiveToName;
+import simpleuml2rdbms.uml2rdbms.StringToVarchar;
+import simpleuml2rdbms.uml2rdbms.UML2RDBMSFactory;
+import simpleuml2rdbms.uml2rdbms.UML2RDBMSPackage;
+
+/**
+ * The SimpleUML2RDBMS transformation:
+ * <p>
+ * Construct with an evaluator
+ * <br>
+ * Populate each input model with {@link addRootObjects(String,List)}
+ * <br>
+ * {@link run()}
+ * <br>
+ * Extract each output model with {@link getRootObjects(String)}
+ */
+@SuppressWarnings("nls")
+public class SimpleUML2RDBMS extends AbstractTransformationExecutor
+{
+ public static final @NonNull /*@NonInvalid*/ RootPackageId PACKid_$metamodel$ = IdManager.getRootPackageId("$metamodel$");
+ public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_2015_s_QVTbaseLibrary = IdManager.getNsURIPackageId("http://www.eclipse.org/qvt/2015/QVTbaseLibrary", "qvtbaselib", null);
+ public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleRDBMS = IdManager.getNsURIPackageId("http://www.eclipse.org/qvt/examples/0.1/SimpleRDBMS", null, RDBMSPackage.eINSTANCE);
+ public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML = IdManager.getNsURIPackageId("http://www.eclipse.org/qvt/examples/0.1/SimpleUML", null, UMLPackage.eINSTANCE);
+ public static final @NonNull /*@NonInvalid*/ NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS = IdManager.getNsURIPackageId("http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS", null, UML2RDBMSPackage.eINSTANCE);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Association = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML.getClassId("Association", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_AssociationToForeignKey = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("AssociationToForeignKey", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Attribute = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML.getClassId("Attribute", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_AttributeToColumn = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("AttributeToColumn", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_BooleanToBoolean = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("BooleanToBoolean", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Class = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML.getClassId("Class", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_ClassToTable = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("ClassToTable", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Class_0 = PACKid_$metamodel$.getClassId("Class", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Classifier = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML.getClassId("Classifier", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Column = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleRDBMS.getClassId("Column", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_ForeignKey = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleRDBMS.getClassId("ForeignKey", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_FromAttribute = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("FromAttribute", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_FromAttributeOwner = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("FromAttributeOwner", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_IntegerToNumber = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("IntegerToNumber", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Key = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleRDBMS.getClassId("Key", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Model = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_2015_s_QVTbaseLibrary.getClassId("Model", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_NonLeafAttribute = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("NonLeafAttribute", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Package = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML.getClassId("Package", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_PackageToSchema = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("PackageToSchema", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_PrimitiveDataType = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML.getClassId("PrimitiveDataType", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_PrimitiveToName = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("PrimitiveToName", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Schema = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleRDBMS.getClassId("Schema", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_StringToVarchar = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleUML2RDBMS.getClassId("StringToVarchar", 0);
+ public static final @NonNull /*@NonInvalid*/ ClassId CLSSid_Table = PACKid_http_c_s_s_www_eclipse_org_s_qvt_s_examples_s_0_1_s_SimpleRDBMS.getClassId("Table", 0);
+ public static final @NonNull /*@NonInvalid*/ String STR_2 = "2";
+ public static final @NonNull /*@NonInvalid*/ String STR_BOOLEAN = "BOOLEAN";
+ public static final @NonNull /*@NonInvalid*/ String STR_Boolean = "Boolean";
+ public static final @NonNull /*@NonInvalid*/ String STR_Integer = "Integer";
+ public static final @NonNull /*@NonInvalid*/ String STR_NUMBER = "NUMBER";
+ public static final @NonNull /*@NonInvalid*/ String STR_String = "String";
+ public static final @NonNull /*@NonInvalid*/ String STR_VARCHAR = "VARCHAR";
+ public static final @NonNull /*@NonInvalid*/ String STR__ = "_";
+ public static final @NonNull /*@NonInvalid*/ String STR__pk = "_pk";
+ public static final @NonNull /*@NonInvalid*/ String STR__tid = "_tid";
+ public static final @NonNull /*@NonInvalid*/ String STR_base = "base";
+ public static final @NonNull /*@NonInvalid*/ String STR_persistent = "persistent";
+ public static final @NonNull /*@NonInvalid*/ String STR_primary = "primary";
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId BAG_CLSSid_AttributeToColumn = TypeId.BAG.getSpecializedId(CLSSid_AttributeToColumn);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_Column = TypeId.ORDERED_SET.getSpecializedId(CLSSid_Column);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_ForeignKey = TypeId.ORDERED_SET.getSpecializedId(CLSSid_ForeignKey);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId ORD_CLSSid_Key = TypeId.ORDERED_SET.getSpecializedId(CLSSid_Key);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_Association = TypeId.SET.getSpecializedId(CLSSid_Association);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_AssociationToForeignKey = TypeId.SET.getSpecializedId(CLSSid_AssociationToForeignKey);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_Attribute = TypeId.SET.getSpecializedId(CLSSid_Attribute);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_AttributeToColumn = TypeId.SET.getSpecializedId(CLSSid_AttributeToColumn);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_BooleanToBoolean = TypeId.SET.getSpecializedId(CLSSid_BooleanToBoolean);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_Class = TypeId.SET.getSpecializedId(CLSSid_Class);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_ClassToTable = TypeId.SET.getSpecializedId(CLSSid_ClassToTable);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_FromAttribute = TypeId.SET.getSpecializedId(CLSSid_FromAttribute);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_IntegerToNumber = TypeId.SET.getSpecializedId(CLSSid_IntegerToNumber);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_Key = TypeId.SET.getSpecializedId(CLSSid_Key);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_NonLeafAttribute = TypeId.SET.getSpecializedId(CLSSid_NonLeafAttribute);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_Package = TypeId.SET.getSpecializedId(CLSSid_Package);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_PackageToSchema = TypeId.SET.getSpecializedId(CLSSid_PackageToSchema);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_PrimitiveDataType = TypeId.SET.getSpecializedId(CLSSid_PrimitiveDataType);
+ public static final @NonNull /*@NonInvalid*/ CollectionTypeId SET_CLSSid_StringToVarchar = TypeId.SET.getSpecializedId(CLSSid_StringToVarchar);
+
+ /*
+ * Property-source to Property-target unnavigable navigation caches
+ */
+ protected final @NonNull Map<simpleuml2rdbms.uml.Class,ClassToTable> OPPOSITE_OF_ClassToTable_umlClass = new HashMap<simpleuml2rdbms.uml.Class,ClassToTable>();
+ protected final @NonNull Map<Attribute,FromAttribute> OPPOSITE_OF_FromAttribute_attribute = new HashMap<Attribute,FromAttribute>();
+ protected final @NonNull Map<Package,PackageToSchema> OPPOSITE_OF_PackageToSchema_umlPackage = new HashMap<Package,PackageToSchema>();
+ protected final @NonNull Map<PrimitiveDataType,PrimitiveToName> OPPOSITE_OF_PrimitiveToName_primitive = new HashMap<PrimitiveDataType,PrimitiveToName>();
+
+ /*
+ * Array of the ClassIds of each class for which allInstances() may be invoked. Array index is the ClassIndex.
+ */
+ private static final @NonNull ClassId[] classIndex2classId = new ClassId[]{
+ CLSSid_Association, // 0 => Association
+ CLSSid_AssociationToForeignKey, // 1 => AssociationToForeignKey
+ CLSSid_Attribute, // 2 => Attribute
+ CLSSid_AttributeToColumn, // 3 => AttributeToColumn
+ CLSSid_BooleanToBoolean, // 4 => BooleanToBoolean
+ CLSSid_Class, // 5 => Class
+ CLSSid_ClassToTable, // 6 => ClassToTable
+ CLSSid_IntegerToNumber, // 7 => IntegerToNumber
+ CLSSid_Key, // 8 => Key
+ CLSSid_NonLeafAttribute, // 9 => NonLeafAttribute
+ CLSSid_Package, // 10 => Package
+ CLSSid_PackageToSchema, // 11 => PackageToSchema
+ CLSSid_PrimitiveDataType, // 12 => PrimitiveDataType
+ CLSSid_StringToVarchar // 13 => StringToVarchar
+ };
+
+ /*
+ * Mapping from each ClassIndex to all the ClassIndexes to which an object of the outer index
+ * may contribute results to an allInstances() invocation.
+ * Non trivial inner arrays arise when one ClassId is a derivation of another and so an
+ * instance of the derived classId contributes to derived and inherited ClassIndexes.
+ */
+ private final static @NonNull int[][] classIndex2allClassIndexes = new int[][] {
+ {0}, // 0 : Association -> {Association}
+ {1}, // 1 : AssociationToForeignKey -> {AssociationToForeignKey}
+ {2}, // 2 : Attribute -> {Attribute}
+ {3}, // 3 : AttributeToColumn -> {AttributeToColumn}
+ {4}, // 4 : BooleanToBoolean -> {BooleanToBoolean}
+ {5}, // 5 : Class -> {Class}
+ {6}, // 6 : ClassToTable -> {ClassToTable}
+ {7}, // 7 : IntegerToNumber -> {IntegerToNumber}
+ {8}, // 8 : Key -> {Key}
+ {9}, // 9 : NonLeafAttribute -> {NonLeafAttribute}
+ {10}, // 10 : Package -> {Package}
+ {11}, // 11 : PackageToSchema -> {PackageToSchema}
+ {12}, // 12 : PrimitiveDataType -> {PrimitiveDataType}
+ {13} // 13 : StringToVarchar -> {StringToVarchar}
+ };
+
+ public SimpleUML2RDBMS(final @NonNull Executor executor) {
+ super(executor, new String[] {"uml", "rdbms", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
+ }
+
+ public boolean run() {
+ return __root__();
+ }
+
+ /**
+ *
+ * map packageToSchema_LM in SimpleUML2RDBMS {
+ * uml (p : uml::Package[?];
+ * |)
+ * { |}
+ * middle ( |)
+ * {realize p2s : uml2rdbms::PackageToSchema[?];
+ * |}
+ * where ( |)
+ * {_0 : String[?];
+ * |
+ * _0 := p.name;
+ * p2s.umlPackage := p;
+ * p2s.name := _0;
+ * }
+ *
+ */
+ protected boolean packageToSchema_LM(final @NonNull /*@NonInvalid*/ Package p) {
+ // predicates
+ // variable assignments
+ final @Nullable /*@Thrown*/ String name = p.getName();
+ // creations
+ final /*@Thrown*/ PackageToSchema p2s_10 = UML2RDBMSFactory.eINSTANCE.createPackageToSchema();
+ assert p2s_10 != null;
+ models[2/*middle*/].add(p2s_10);
+ // property assignments
+ p2s_10.setUmlPackage(p);
+ OPPOSITE_OF_PackageToSchema_umlPackage.put(p, p2s_10);
+ p2s_10.setName(name);
+ return true;
+ }
+
+ /**
+ *
+ * map packageToSchema_MR in SimpleUML2RDBMS {
+ * rdbms ( |)
+ * {realize s : rdbms::Schema[?];
+ * |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * |)
+ * { |}
+ * where ( |)
+ * {_0 : String[?];
+ * |
+ * _0 := p2s.name;
+ * s.name := _0;
+ * p2s.schema := s;
+ * }
+ *
+ */
+ protected boolean packageToSchema_MR(final @NonNull /*@NonInvalid*/ PackageToSchema p2s) {
+ // predicates
+ // variable assignments
+ final @Nullable /*@Thrown*/ String name = p2s.getName();
+ // creations
+ final /*@Thrown*/ Schema s_1 = RDBMSFactory.eINSTANCE.createSchema();
+ assert s_1 != null;
+ models[1/*rdbms*/].add(s_1);
+ // property assignments
+ s_1.setName(name);
+ p2s.setSchema(s_1);
+ return true;
+ }
+
+ /**
+ *
+ * map integerToNumber_LM in SimpleUML2RDBMS {
+ * uml (p : uml::Package[?];
+ * prim : uml::PrimitiveDataType[?];
+ * |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * |)
+ * {realize p2n : uml2rdbms::IntegerToNumber[?];
+ * |}
+ * where ( |
+ * p2s.umlPackage = pprim.namespace = pprim.name = 'Integer')
+ * {_0 : String[1];
+ * |
+ * _0 := prim.name + '2' + 'NUMBER';
+ * p2n.owner := p2s;
+ * p2n.primitive := prim;
+ * p2n.name := _0;
+ * }
+ *
+ */
+ protected boolean integerToNumber_LM(final @NonNull /*@NonInvalid*/ Package p_0, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_0, final @NonNull /*@NonInvalid*/ PrimitiveDataType prim) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package umlPackage = p2s_0.getUmlPackage();
+ final /*@Thrown*/ boolean eq = umlPackage.equals(p_0);
+ if (!eq) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ String name = prim.getName();
+ final /*@Thrown*/ boolean eq_0 = STR_Integer.equals(name);
+ if (!eq_0) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace = prim.getNamespace();
+ final /*@Thrown*/ boolean eq_1 = namespace.equals(p_0);
+ if (!eq_1) {
+ return false;
+ }
+ // variable assignments
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR_2);
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, STR_NUMBER);
+ // creations
+ final /*@Thrown*/ IntegerToNumber p2n_5 = UML2RDBMSFactory.eINSTANCE.createIntegerToNumber();
+ assert p2n_5 != null;
+ models[2/*middle*/].add(p2n_5);
+ // property assignments
+ p2n_5.setOwner(p2s_0);
+ p2n_5.setPrimitive(prim);
+ OPPOSITE_OF_PrimitiveToName_primitive.put(prim, p2n_5);
+ p2n_5.setName(sum_0);
+ return true;
+ }
+
+ /**
+ *
+ * map integerToNumber_MR in SimpleUML2RDBMS {
+ * rdbms ( |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * p2n : uml2rdbms::IntegerToNumber[?];
+ * |)
+ * { |}
+ * where ( |
+ * p2n.owner = p2s)
+ * {sqlType : String[?] = 'NUMBER';
+ * |
+ * p2n.typeName := sqlType;
+ * }
+ *
+ */
+ protected boolean integerToNumber_MR(final @NonNull /*@NonInvalid*/ IntegerToNumber p2n, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_1) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner = p2n.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(p2s_1);
+ if (!eq) {
+ return false;
+ }
+ // variable assignments
+ // property assignments
+ p2n.setTypeName(STR_NUMBER);
+ return true;
+ }
+
+ /**
+ *
+ * map booleanToBoolean_MR in SimpleUML2RDBMS {
+ * rdbms ( |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * p2n : uml2rdbms::BooleanToBoolean[?];
+ * |)
+ * { |}
+ * where ( |
+ * p2n.owner = p2s)
+ * {sqlType : String[?];
+ * |
+ * sqlType := 'BOOLEAN';
+ * p2n.typeName := sqlType;
+ * }
+ *
+ */
+ protected boolean booleanToBoolean_MR(final @NonNull /*@NonInvalid*/ BooleanToBoolean p2n_0, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_2) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner = p2n_0.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(p2s_2);
+ if (!eq) {
+ return false;
+ }
+ // variable assignments
+ // property assignments
+ p2n_0.setTypeName(STR_BOOLEAN);
+ return true;
+ }
+
+ /**
+ *
+ * map booleanToBoolean_LM in SimpleUML2RDBMS {
+ * uml (p : uml::Package[?];
+ * prim : uml::PrimitiveDataType[?];
+ * |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * |)
+ * {realize p2n : uml2rdbms::BooleanToBoolean[?];
+ * |}
+ * where ( |
+ * p2s.umlPackage = pprim.namespace = pprim.name = 'Boolean')
+ * {_0 : String[1];
+ * |
+ * _0 := prim.name + '2' + 'BOOLEAN';
+ * p2n.primitive := prim;
+ * p2n.name := _0;
+ * p2n.owner := p2s;
+ * }
+ *
+ */
+ protected boolean booleanToBoolean_LM(final @NonNull /*@NonInvalid*/ Package p_1, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_3, final @NonNull /*@NonInvalid*/ PrimitiveDataType prim_0) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package umlPackage = p2s_3.getUmlPackage();
+ final /*@Thrown*/ boolean eq = umlPackage.equals(p_1);
+ if (!eq) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ String name = prim_0.getName();
+ final /*@Thrown*/ boolean eq_0 = STR_Boolean.equals(name);
+ if (!eq_0) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace = prim_0.getNamespace();
+ final /*@Thrown*/ boolean eq_1 = namespace.equals(p_1);
+ if (!eq_1) {
+ return false;
+ }
+ // variable assignments
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR_2);
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, STR_BOOLEAN);
+ // creations
+ final /*@Thrown*/ BooleanToBoolean p2n_5 = UML2RDBMSFactory.eINSTANCE.createBooleanToBoolean();
+ assert p2n_5 != null;
+ models[2/*middle*/].add(p2n_5);
+ // property assignments
+ p2n_5.setPrimitive(prim_0);
+ OPPOSITE_OF_PrimitiveToName_primitive.put(prim_0, p2n_5);
+ p2n_5.setName(sum_0);
+ p2n_5.setOwner(p2s_3);
+ return true;
+ }
+
+ /**
+ *
+ * map stringToVarchar_MR in SimpleUML2RDBMS {
+ * rdbms ( |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * p2n : uml2rdbms::StringToVarchar[?];
+ * |)
+ * { |}
+ * where ( |
+ * p2n.owner = p2s)
+ * {sqlType : String[?] = 'VARCHAR';
+ * |
+ * p2n.typeName := sqlType;
+ * }
+ *
+ */
+ protected boolean stringToVarchar_MR(final @NonNull /*@NonInvalid*/ StringToVarchar p2n_1, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_4) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner = p2n_1.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(p2s_4);
+ if (!eq) {
+ return false;
+ }
+ // variable assignments
+ // property assignments
+ p2n_1.setTypeName(STR_VARCHAR);
+ return true;
+ }
+
+ /**
+ *
+ * map stringToVarchar_LM in SimpleUML2RDBMS {
+ * uml (p : uml::Package[?];
+ * prim : uml::PrimitiveDataType[?];
+ * |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * |)
+ * {realize p2n : uml2rdbms::StringToVarchar[?];
+ * |}
+ * where ( |
+ * p2s.umlPackage = pprim.namespace = pprim.name = 'String')
+ * {_0 : String[1];
+ * |
+ * _0 := prim.name + '2' + 'VARCHAR';
+ * p2n.name := _0;
+ * p2n.owner := p2s;
+ * p2n.primitive := prim;
+ * }
+ *
+ */
+ protected boolean stringToVarchar_LM(final @NonNull /*@NonInvalid*/ Package p_2, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_5, final @NonNull /*@NonInvalid*/ PrimitiveDataType prim_1) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package umlPackage = p2s_5.getUmlPackage();
+ final /*@Thrown*/ boolean eq = umlPackage.equals(p_2);
+ if (!eq) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ String name = prim_1.getName();
+ final /*@Thrown*/ boolean eq_0 = STR_String.equals(name);
+ if (!eq_0) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace = prim_1.getNamespace();
+ final /*@Thrown*/ boolean eq_1 = namespace.equals(p_2);
+ if (!eq_1) {
+ return false;
+ }
+ // variable assignments
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR_2);
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, STR_VARCHAR);
+ // creations
+ final /*@Thrown*/ StringToVarchar p2n_5 = UML2RDBMSFactory.eINSTANCE.createStringToVarchar();
+ assert p2n_5 != null;
+ models[2/*middle*/].add(p2n_5);
+ // property assignments
+ p2n_5.setName(sum_0);
+ p2n_5.setOwner(p2s_5);
+ p2n_5.setPrimitive(prim_1);
+ OPPOSITE_OF_PrimitiveToName_primitive.put(prim_1, p2n_5);
+ return true;
+ }
+
+ /**
+ *
+ * map classToTable_MR in SimpleUML2RDBMS {
+ * rdbms (s : rdbms::Schema[?];
+ * |)
+ * {realize t : rdbms::Table[?];
+ * realize pk : rdbms::Key[?];
+ * realize pc : rdbms::Column[?];
+ * |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * c2t : uml2rdbms::ClassToTable[?];
+ * |)
+ * { |}
+ * where ( |
+ * p2s.schema = sc2t.owner = p2s)
+ * {c2t_name : String[?] = c2t.name;
+ * _0 : String[1];
+ * _1 : String[1];
+ * |
+ * _0 := c2t_name + '_tid';
+ * _1 := c2t_name +
+ * '_pk';
+ * c2t.table := t;
+ * t.name := c2t_name;
+ * c2t.primaryKey := pk;
+ * c2t.column := pc;
+ * t.kind := 'base';
+ * t.schema := s;
+ * pk.owner := t;
+ * pk.kind := 'primary';
+ * pc.owner := t;
+ * pc.keys := OrderedSet{pk
+ * };
+ * pc.type := 'NUMBER';
+ * pc.name := _0;
+ * pk.name := _1;
+ * }
+ *
+ */
+ protected boolean classToTable_MR(final @NonNull /*@NonInvalid*/ ClassToTable c2t, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_6, final @NonNull /*@NonInvalid*/ Schema s) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner = c2t.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(p2s_6);
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Schema schema = p2s_6.getSchema();
+ final /*@Thrown*/ boolean eq_0 = schema.equals(s);
+ if (!eq_0) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String name = c2t.getName();
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR__tid);
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(name, STR__pk);
+ // creations
+ final /*@Thrown*/ Column pc = RDBMSFactory.eINSTANCE.createColumn();
+ assert pc != null;
+ models[1/*rdbms*/].add(pc);
+ final /*@Thrown*/ Key pk = RDBMSFactory.eINSTANCE.createKey();
+ assert pk != null;
+ models[1/*rdbms*/].add(pk);
+ final /*@Thrown*/ Table t_4 = RDBMSFactory.eINSTANCE.createTable();
+ assert t_4 != null;
+ models[1/*rdbms*/].add(t_4);
+ // property assignments
+ c2t.setTable(t_4);
+ t_4.setName(name);
+ c2t.setPrimaryKey(pk);
+ c2t.setColumn(pc);
+ t_4.setKind(STR_base);
+ t_4.setSchema(s);
+ pk.setOwner(t_4);
+ pk.setKind(STR_primary);
+ pc.setOwner(t_4);
+ final @NonNull /*@Thrown*/ OrderedSetValue OrderedSet = ValueUtil.createOrderedSetOfEach(ORD_CLSSid_Key, pk);
+ final List<Key> UNBOXED_OrderedSet = OrderedSet.asEcoreObjects(idResolver, Key.class);
+ assert UNBOXED_OrderedSet != null;
+ pc.getKeys().addAll(UNBOXED_OrderedSet);
+ pc.setType(STR_NUMBER);
+ pc.setName(sum);
+ pk.setName(sum_0);
+ return true;
+ }
+
+ /**
+ *
+ * map classToTable_LM in SimpleUML2RDBMS {
+ * uml (p : uml::Package[?];
+ * c : uml::Class[?];
+ * |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * |)
+ * {realize c2t : uml2rdbms::ClassToTable[?];
+ * |}
+ * where ( |
+ * p2s.umlPackage = pc.kind = 'persistent'c.namespace = p)
+ * {_0 : String[?];
+ * |
+ * _0 := c.name;
+ * c2t.owner := p2s;
+ * c2t.name := _0;
+ * c2t.umlClass := c;
+ * }
+ *
+ */
+ protected boolean classToTable_LM(final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c, final @NonNull /*@NonInvalid*/ Package p_3, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_7) {
+ // predicates
+ final @Nullable /*@Thrown*/ String kind = c.getKind();
+ final /*@Thrown*/ boolean eq = STR_persistent.equals(kind);
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace = c.getNamespace();
+ final /*@Thrown*/ boolean eq_0 = namespace.equals(p_3);
+ if (!eq_0) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package umlPackage = p2s_7.getUmlPackage();
+ final /*@Thrown*/ boolean eq_1 = umlPackage.equals(p_3);
+ if (!eq_1) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String name = c.getName();
+ // creations
+ final /*@Thrown*/ ClassToTable c2t_1 = UML2RDBMSFactory.eINSTANCE.createClassToTable();
+ assert c2t_1 != null;
+ models[2/*middle*/].add(c2t_1);
+ // property assignments
+ c2t_1.setOwner(p2s_7);
+ c2t_1.setName(name);
+ c2t_1.setUmlClass(c);
+ OPPOSITE_OF_ClassToTable_umlClass.put(c, c2t_1);
+ return true;
+ }
+
+ /**
+ *
+ * map associationToForeignKey_MR in SimpleUML2RDBMS {
+ * rdbms (s : rdbms::Schema[?];
+ * st : rdbms::Table[?];
+ * dt : rdbms::Table[?];
+ * rk : rdbms::Key[?];
+ * |)
+ * {realize fk : rdbms::ForeignKey[?];
+ * realize fc : rdbms::Column[?];
+ * |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * sc2t : uml2rdbms::ClassToTable[?];
+ * dc2t : uml2rdbms::ClassToTable[?];
+ * a2f : uml2rdbms::AssociationToForeignKey[?];
+ * |)
+ * { |}
+ * where ( |
+ * dc2t.table = dtsc2t.owner = p2sp2s.schema = ssc2t.table = sta2f.referenced = dc2ta2f.owner = sc2trk.kind = 'primary'rk.owner = dtst.schema =
+ * s)
+ * {_0 : String[?];
+ * _1 : String[?];
+ * _2 : String[1];
+ * |
+ * _0 := a2f.name;
+ * _1 := rk.column->first().type;
+ * _2 := a2f.name +
+ * '_tid';
+ * fk.name := _0;
+ * a2f.foreignKey := fk;
+ * fc.type := _1;
+ * fc.name := _2;
+ * a2f.column := fc;
+ * fk.owner := st;
+ * fc.owner := st;
+ * fk.refersTo := rk;
+ * fc.foreignKeys := OrderedSet{fk
+ * };
+ * }
+ *
+ */
+ protected boolean associationToForeignKey_MR(final @NonNull /*@NonInvalid*/ AssociationToForeignKey a2f, final @NonNull /*@NonInvalid*/ ClassToTable dc2t, final @NonNull /*@NonInvalid*/ Table dt, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_8, final @NonNull /*@NonInvalid*/ Key rk, final @NonNull /*@NonInvalid*/ Schema s_0, final @NonNull /*@NonInvalid*/ ClassToTable sc2t, final @NonNull /*@NonInvalid*/ Table st) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ ClassToTable owner = a2f.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(sc2t);
+ if (!eq) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ ClassToTable referenced = a2f.getReferenced();
+ final /*@Thrown*/ boolean eq_0 = dc2t.equals(referenced);
+ if (!eq_0) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ Table table = dc2t.getTable();
+ final /*@Thrown*/ boolean eq_1 = dt.equals(table);
+ if (!eq_1) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Schema schema = p2s_8.getSchema();
+ final /*@Thrown*/ boolean eq_2 = schema.equals(s_0);
+ if (!eq_2) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ String kind = rk.getKind();
+ final /*@Thrown*/ boolean eq_3 = STR_primary.equals(kind);
+ if (!eq_3) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Table owner_0 = rk.getOwner();
+ final /*@Thrown*/ boolean eq_4 = owner_0.equals(dt);
+ if (!eq_4) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner_1 = sc2t.getOwner();
+ final /*@Thrown*/ boolean eq_5 = owner_1.equals(p2s_8);
+ if (!eq_5) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ Table table_0 = sc2t.getTable();
+ final /*@Thrown*/ boolean eq_6 = st.equals(table_0);
+ if (!eq_6) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Schema schema_0 = st.getSchema();
+ final /*@Thrown*/ boolean eq_7 = schema_0.equals(s_0);
+ if (!eq_7) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ String name = a2f.getName();
+ // variable assignments
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<Column> column = rk.getColumn();
+ final @NonNull /*@Thrown*/ OrderedSetValue BOXED_column = idResolver.createOrderedSetOfAll(ORD_CLSSid_Column, column);
+ final @Nullable /*@Thrown*/ Column first = (Column)OrderedCollectionFirstOperation.INSTANCE.evaluate(BOXED_column);
+ if (first == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleRDBMS\'::Column::type\'");
+ }
+ final @Nullable /*@Thrown*/ String type = first.getType();
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR__tid);
+ // creations
+ final /*@Thrown*/ Column fc = RDBMSFactory.eINSTANCE.createColumn();
+ assert fc != null;
+ models[1/*rdbms*/].add(fc);
+ final /*@Thrown*/ ForeignKey fk = RDBMSFactory.eINSTANCE.createForeignKey();
+ assert fk != null;
+ models[1/*rdbms*/].add(fk);
+ // property assignments
+ fk.setName(name);
+ a2f.setForeignKey(fk);
+ fc.setType(type);
+ fc.setName(sum);
+ a2f.setColumn(fc);
+ fk.setOwner(st);
+ fc.setOwner(st);
+ fk.setRefersTo(rk);
+ final @NonNull /*@Thrown*/ OrderedSetValue OrderedSet = ValueUtil.createOrderedSetOfEach(ORD_CLSSid_ForeignKey, fk);
+ final List<ForeignKey> UNBOXED_OrderedSet = OrderedSet.asEcoreObjects(idResolver, ForeignKey.class);
+ assert UNBOXED_OrderedSet != null;
+ fc.getForeignKeys().addAll(UNBOXED_OrderedSet);
+ return true;
+ }
+
+ /**
+ *
+ * map associationToForeignKey_LM in SimpleUML2RDBMS {
+ * uml (p : uml::Package[?];
+ * sc : uml::Class[?];
+ * dc : uml::Class[?];
+ * a : uml::Association[?];
+ * |)
+ * { |}
+ * middle (p2s : uml2rdbms::PackageToSchema[?];
+ * sc2t : uml2rdbms::ClassToTable[?];
+ * dc2t : uml2rdbms::ClassToTable[?];
+ * |)
+ * {realize a2f : uml2rdbms::AssociationToForeignKey[?];
+ * |}
+ * where ( |
+ * sc2t.owner = p2sdc2t.umlClass = dcsc2t.umlClass = scp2s.umlPackage = pa.namespace = psc.namespace = pa.source = sca.destination =
+ * dc)
+ * {a2f_name : String[?];
+ * _1 : String[?];
+ * |
+ * a2f_name := if a.destination = dc and a.source = sc
+ * then a.name
+ * else
+ * if a.destination <> dc and a.source = sc
+ * then dc.name + '_' + a.name
+ * else
+ * if a.destination = dc and a.source <> sc
+ * then a.name + '_' + sc.name
+ * else dc.name + '_' + a.name + '_' + sc.name
+ * endif
+ * endif
+ * endif
+ * ;
+ * _1 := if a.destination = dc and a.source = sc
+ * then a2f_name
+ * else a.name
+ * endif;
+ * a2f.association := a;
+ * a2f.referenced := dc2t;
+ * a2f.name := a2f_name;
+ * a2f.owner := sc2t;
+ * a.name := _1;
+ * }
+ *
+ */
+ protected boolean associationToForeignKey_LM(final @NonNull /*@NonInvalid*/ Association a, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class dc, final @NonNull /*@NonInvalid*/ ClassToTable dc2t_0, final @NonNull /*@NonInvalid*/ Package p_4, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_9, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class sc, final @NonNull /*@NonInvalid*/ ClassToTable sc2t_0) {
+ // predicates
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class destination = a.getDestination();
+ final /*@Thrown*/ boolean eq = destination.equals(dc);
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace = a.getNamespace();
+ final /*@Thrown*/ boolean eq_0 = namespace.equals(p_4);
+ if (!eq_0) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class source = a.getSource();
+ final /*@Thrown*/ boolean eq_1 = source.equals(sc);
+ if (!eq_1) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ simpleuml2rdbms.uml.Class umlClass = dc2t_0.getUmlClass();
+ final /*@Thrown*/ boolean eq_2 = dc.equals(umlClass);
+ if (!eq_2) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package umlPackage = p2s_9.getUmlPackage();
+ final /*@Thrown*/ boolean eq_3 = umlPackage.equals(p_4);
+ if (!eq_3) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace_0 = sc.getNamespace();
+ final /*@Thrown*/ boolean eq_4 = namespace_0.equals(p_4);
+ if (!eq_4) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner = sc2t_0.getOwner();
+ final /*@Thrown*/ boolean eq_5 = owner.equals(p2s_9);
+ if (!eq_5) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ simpleuml2rdbms.uml.Class umlClass_0 = sc2t_0.getUmlClass();
+ final /*@Thrown*/ boolean eq_6 = sc.equals(umlClass_0);
+ if (!eq_6) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ String name = a.getName();
+ @NonNull /*@Caught*/ Object CAUGHT_eq_11;
+ try {
+ CAUGHT_eq_11 = eq;
+ }
+ catch (Exception e) {
+ CAUGHT_eq_11 = ValueUtil.createInvalidValue(e);
+ }
+ @NonNull /*@Caught*/ Object CAUGHT_eq_12;
+ try {
+ CAUGHT_eq_12 = eq_1;
+ }
+ catch (Exception e) {
+ CAUGHT_eq_12 = ValueUtil.createInvalidValue(e);
+ }
+ final @Nullable /*@Thrown*/ Boolean and_2 = BooleanAndOperation.INSTANCE.evaluate(CAUGHT_eq_11, CAUGHT_eq_12);
+ if (and_2 == null) {
+ throw new InvalidValueException("Null if condition");
+ }
+ // variable assignments
+ @Nullable /*@Thrown*/ String symbol_7;
+ if (and_2) {
+ symbol_7 = name;
+ }
+ else {
+ @NonNull /*@Caught*/ Object CAUGHT_ne;
+ try {
+ final /*@Thrown*/ boolean ne = !destination.equals(dc);
+ CAUGHT_ne = ne;
+ }
+ catch (Exception e) {
+ CAUGHT_ne = ValueUtil.createInvalidValue(e);
+ }
+ final @Nullable /*@Thrown*/ Boolean and_0 = BooleanAndOperation.INSTANCE.evaluate(CAUGHT_ne, CAUGHT_eq_12);
+ if (and_0 == null) {
+ throw new InvalidValueException("Null if condition");
+ }
+ @NonNull /*@Thrown*/ String symbol_6;
+ if (and_0) {
+ final @Nullable /*@Thrown*/ String name_0 = dc.getName();
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name_0, STR__);
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, name);
+ symbol_6 = sum_0;
+ }
+ else {
+ final @Nullable /*@Thrown*/ String name_6 = sc.getName();
+ @NonNull /*@Caught*/ Object CAUGHT_ne_0;
+ try {
+ final /*@Thrown*/ boolean ne_0 = !source.equals(sc);
+ CAUGHT_ne_0 = ne_0;
+ }
+ catch (Exception e) {
+ CAUGHT_ne_0 = ValueUtil.createInvalidValue(e);
+ }
+ final @Nullable /*@Thrown*/ Boolean and_1 = BooleanAndOperation.INSTANCE.evaluate(CAUGHT_eq_11, CAUGHT_ne_0);
+ if (and_1 == null) {
+ throw new InvalidValueException("Null if condition");
+ }
+ @NonNull /*@Thrown*/ String symbol_5;
+ if (and_1) {
+ final @NonNull /*@Thrown*/ String sum_1 = StringConcatOperation.INSTANCE.evaluate(name, STR__);
+ final @NonNull /*@Thrown*/ String sum_2 = StringConcatOperation.INSTANCE.evaluate(sum_1, name_6);
+ symbol_5 = sum_2;
+ }
+ else {
+ final @Nullable /*@Thrown*/ String name_4 = dc.getName();
+ final @NonNull /*@Thrown*/ String sum_3 = StringConcatOperation.INSTANCE.evaluate(name_4, STR__);
+ final @NonNull /*@Thrown*/ String sum_4 = StringConcatOperation.INSTANCE.evaluate(sum_3, name);
+ final @NonNull /*@Thrown*/ String sum_5 = StringConcatOperation.INSTANCE.evaluate(sum_4, STR__);
+ final @NonNull /*@Thrown*/ String sum_6 = StringConcatOperation.INSTANCE.evaluate(sum_5, name_6);
+ symbol_5 = sum_6;
+ }
+ symbol_6 = symbol_5;
+ }
+ symbol_7 = symbol_6;
+ }
+ @Nullable /*@Thrown*/ String symbol_8;
+ if (and_2) {
+ symbol_8 = symbol_7;
+ }
+ else {
+ symbol_8 = name;
+ }
+ // creations
+ final /*@Thrown*/ AssociationToForeignKey a2f_0 = UML2RDBMSFactory.eINSTANCE.createAssociationToForeignKey();
+ assert a2f_0 != null;
+ models[2/*middle*/].add(a2f_0);
+ // property assignments
+ a2f_0.setAssociation(a);
+ a2f_0.setReferenced(dc2t_0);
+ a2f_0.setName(symbol_7);
+ a2f_0.setOwner(sc2t_0);
+ a.setName(symbol_8);
+ return true;
+ }
+
+ /**
+ *
+ * map classPrimitiveAttributes_LM in SimpleUML2RDBMS {
+ * uml (t : uml::PrimitiveDataType[?];
+ * c : uml::Class[?];
+ * a : uml::Attribute[?];
+ * |)
+ * { |}
+ * middle (fao : uml2rdbms::ClassToTable[?];
+ * p2n : uml2rdbms::PrimitiveToName[?];
+ * |)
+ * {realize fa : uml2rdbms::AttributeToColumn[?];
+ * |}
+ * where ( |
+ * fao.umlClass = cp2n.primitive = ta.owner = ca.type =
+ * t)
+ * {_0 : String[?];
+ * _1 : String[?];
+ * |
+ * _0 := a.name;
+ * _1 := a.kind;
+ * fa.owner := fao;
+ * fa.type := p2n;
+ * fa.name := _0;
+ * fa.kind := _1;
+ * fa.attribute := a;
+ * fa.leafs := Set{fa
+ * };
+ * }
+ *
+ */
+ protected boolean classPrimitiveAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_0, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_0, final @NonNull /*@NonInvalid*/ ClassToTable fao, final @NonNull /*@NonInvalid*/ PrimitiveToName p2n_2, final @NonNull /*@NonInvalid*/ PrimitiveDataType t) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_0.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(c_0);
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type = a_0.getType();
+ final /*@Thrown*/ boolean eq_0 = type.equals(t);
+ if (!eq_0) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ simpleuml2rdbms.uml.Class umlClass = fao.getUmlClass();
+ final /*@Thrown*/ boolean eq_1 = c_0.equals(umlClass);
+ if (!eq_1) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PrimitiveDataType primitive = p2n_2.getPrimitive();
+ final /*@Thrown*/ boolean eq_2 = primitive.equals(t);
+ if (!eq_2) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String name = a_0.getName();
+ final @Nullable /*@Thrown*/ String kind = a_0.getKind();
+ // creations
+ final /*@Thrown*/ AttributeToColumn fa = UML2RDBMSFactory.eINSTANCE.createAttributeToColumn();
+ assert fa != null;
+ models[2/*middle*/].add(fa);
+ // property assignments
+ fa.setOwner(fao);
+ fa.setType(p2n_2);
+ fa.setName(name);
+ fa.setKind(kind);
+ fa.setAttribute(a_0);
+ OPPOSITE_OF_FromAttribute_attribute.put(a_0, fa);
+ final @NonNull /*@Thrown*/ SetValue Set = ValueUtil.createSetOfEach(SET_CLSSid_AttributeToColumn, fa);
+ final List<AttributeToColumn> UNBOXED_Set = Set.asEcoreObjects(idResolver, AttributeToColumn.class);
+ assert UNBOXED_Set != null;
+ fa.getLeafs().addAll(UNBOXED_Set);
+ return true;
+ }
+
+ /**
+ *
+ * map classComplexAttributes_LM in SimpleUML2RDBMS {
+ * uml (t : uml::Class[?];
+ * c : uml::Class[?];
+ * a : uml::Attribute[?];
+ * |)
+ * { |}
+ * middle (fao : uml2rdbms::ClassToTable[?];
+ * |)
+ * {realize fa : uml2rdbms::NonLeafAttribute[?];
+ * |}
+ * where ( |
+ * fao.umlClass = ca.owner = ca.type =
+ * t)
+ * {_0 : String[?];
+ * _1 : String[?];
+ * _2 : Set(uml2rdbms::AttributeToColumn);
+ * |
+ * _0 := a.kind;
+ * _1 := a.name;
+ * _2 := fao.fromAttributes.leafs->asSet();
+ * fa.attribute := a;
+ * fa.kind := _0;
+ * fa.owner := fao;
+ * fa.name := _1;
+ * fa.leafs := _2;
+ * }
+ *
+ */
+ protected boolean classComplexAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_1, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_1, final @NonNull /*@NonInvalid*/ ClassToTable fao_0, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class t_0) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_1.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(c_1);
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type = a_1.getType();
+ final /*@Thrown*/ boolean eq_0 = type.equals(t_0);
+ if (!eq_0) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ simpleuml2rdbms.uml.Class umlClass = fao_0.getUmlClass();
+ final /*@Thrown*/ boolean eq_1 = c_1.equals(umlClass);
+ if (!eq_1) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String kind = a_1.getKind();
+ final @Nullable /*@Thrown*/ String name = a_1.getName();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<FromAttribute> fromAttributes = fao_0.getFromAttributes();
+ final @NonNull /*@Thrown*/ SetValue BOXED_fromAttributes = idResolver.createSetOfAll(SET_CLSSid_FromAttribute, fromAttributes);
+ @NonNull /*@Thrown*/ BagValue.Accumulator accumulator = ValueUtil.createBagAccumulatorValue(BAG_CLSSid_AttributeToColumn);
+ @Nullable Iterator<?> ITERATOR__1 = BOXED_fromAttributes.iterator();
+ @NonNull /*@Thrown*/ BagValue collect;
+ while (true) {
+ if (!ITERATOR__1.hasNext()) {
+ collect = accumulator;
+ break;
+ }
+ @Nullable /*@NonInvalid*/ FromAttribute _1 = (FromAttribute)ITERATOR__1.next();
+ /**
+ * leafs
+ */
+ if (_1 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::FromAttribute::leafs\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<AttributeToColumn> leafs = _1.getLeafs();
+ final @NonNull /*@Thrown*/ SetValue BOXED_leafs = idResolver.createSetOfAll(SET_CLSSid_AttributeToColumn, leafs);
+ //
+ for (Object value : BOXED_leafs.flatten().getElements()) {
+ accumulator.add(value);
+ }
+ }
+ final @NonNull /*@Thrown*/ SetValue asSet = CollectionAsSetOperation.INSTANCE.evaluate(collect);
+ // creations
+ final /*@Thrown*/ NonLeafAttribute fa = UML2RDBMSFactory.eINSTANCE.createNonLeafAttribute();
+ assert fa != null;
+ models[2/*middle*/].add(fa);
+ // property assignments
+ fa.setAttribute(a_1);
+ OPPOSITE_OF_FromAttribute_attribute.put(a_1, fa);
+ fa.setKind(kind);
+ fa.setOwner(fao_0);
+ fa.setName(name);
+ final List<AttributeToColumn> UNBOXED_null = asSet.asEcoreObjects(idResolver, AttributeToColumn.class);
+ assert UNBOXED_null != null;
+ fa.getLeafs().addAll(UNBOXED_null);
+ return true;
+ }
+
+ /**
+ *
+ * map complexAttributePrimitiveAttributes_LM in SimpleUML2RDBMS {
+ * uml (ca : uml::Attribute[?];
+ * c : uml::Class[?];
+ * t : uml::PrimitiveDataType[?];
+ * a : uml::Attribute[?];
+ * |)
+ * { |}
+ * middle (fao : uml2rdbms::NonLeafAttribute[?];
+ * p2n : uml2rdbms::PrimitiveToName[?];
+ * |)
+ * {realize fa : uml2rdbms::AttributeToColumn[?];
+ * |}
+ * where ( |
+ * fao.attribute = cap2n.primitive = ta.owner = ca.type = tca.type = ca.owner = c)
+ * {_0 : String[?];
+ * _1 : String[1];
+ * |
+ * _0 := a.kind;
+ * _1 := fao.name + '_' +
+ * a.name;
+ * fa.owner := fao;
+ * fa.attribute := a;
+ * fa.kind := _0;
+ * fa.type := p2n;
+ * fa.leafs := Set{fa
+ * };
+ * fa.name := _1;
+ * }
+ *
+ */
+ protected boolean complexAttributePrimitiveAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_2, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_2, final @NonNull /*@NonInvalid*/ Attribute ca, final @NonNull /*@NonInvalid*/ NonLeafAttribute fao_1, final @NonNull /*@NonInvalid*/ PrimitiveToName p2n_3, final @NonNull /*@NonInvalid*/ PrimitiveDataType t_1) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_2.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(c_2);
+ if (!eq) {
+ return false;
+ }
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type = a_2.getType();
+ final /*@Thrown*/ boolean eq_1 = type.equals(t_1);
+ if (!eq_1) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_0 = ca.getType();
+ final /*@Thrown*/ boolean eq_2 = type_0.equals(c_2);
+ if (!eq_2) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ Attribute attribute = fao_1.getAttribute();
+ final /*@Thrown*/ boolean eq_3 = ca.equals(attribute);
+ if (!eq_3) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PrimitiveDataType primitive = p2n_3.getPrimitive();
+ final /*@Thrown*/ boolean eq_4 = primitive.equals(t_1);
+ if (!eq_4) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String kind = a_2.getKind();
+ final @Nullable /*@Thrown*/ String name = fao_1.getName();
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR__);
+ final @Nullable /*@Thrown*/ String name_0 = a_2.getName();
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, name_0);
+ // creations
+ final /*@Thrown*/ AttributeToColumn fa = UML2RDBMSFactory.eINSTANCE.createAttributeToColumn();
+ assert fa != null;
+ models[2/*middle*/].add(fa);
+ // property assignments
+ fa.setOwner(fao_1);
+ fa.setAttribute(a_2);
+ OPPOSITE_OF_FromAttribute_attribute.put(a_2, fa);
+ fa.setKind(kind);
+ fa.setType(p2n_3);
+ final @NonNull /*@Thrown*/ SetValue Set = ValueUtil.createSetOfEach(SET_CLSSid_AttributeToColumn, fa);
+ final List<AttributeToColumn> UNBOXED_Set = Set.asEcoreObjects(idResolver, AttributeToColumn.class);
+ assert UNBOXED_Set != null;
+ fa.getLeafs().addAll(UNBOXED_Set);
+ fa.setName(sum_0);
+ return true;
+ }
+
+ /**
+ *
+ * map complexAttributeComplexAttributes_LM in SimpleUML2RDBMS {
+ * uml (ca : uml::Attribute[?];
+ * c : uml::Class[?];
+ * t : uml::Class[?];
+ * a : uml::Attribute[?];
+ * |)
+ * { |}
+ * middle (fao : uml2rdbms::NonLeafAttribute[?];
+ * |)
+ * {realize fa : uml2rdbms::NonLeafAttribute[?];
+ * |}
+ * where ( |
+ * fao.attribute = caa.owner = ca.owner = cca.type = ca.type =
+ * t)
+ * {_0 : String[?];
+ * _1 : Set(uml2rdbms::AttributeToColumn);
+ * _2 : String[1];
+ * |
+ * _0 := a.kind;
+ * _1 := fao.fromAttributes.leafs->asSet();
+ * _2 := fao.name + '_' + a.name;
+ * fa.owner := fao;
+ * fa.kind := _0;
+ * fa.leafs := _1;
+ * fa.attribute := a;
+ * fa.name := _2;
+ * }
+ *
+ */
+ protected boolean complexAttributeComplexAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_3, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_3, final @NonNull /*@NonInvalid*/ Attribute ca_0, final @NonNull /*@NonInvalid*/ NonLeafAttribute fao_2, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class t_2) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_3.getOwner();
+ final /*@Thrown*/ boolean eq = owner.equals(c_3);
+ if (!eq) {
+ return false;
+ }
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type = a_3.getType();
+ final /*@Thrown*/ boolean eq_1 = type.equals(t_2);
+ if (!eq_1) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_0 = ca_0.getType();
+ final /*@Thrown*/ boolean eq_2 = type_0.equals(c_3);
+ if (!eq_2) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ Attribute attribute = fao_2.getAttribute();
+ final /*@Thrown*/ boolean eq_3 = ca_0.equals(attribute);
+ if (!eq_3) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String kind = a_3.getKind();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<FromAttribute> fromAttributes = fao_2.getFromAttributes();
+ final @NonNull /*@Thrown*/ SetValue BOXED_fromAttributes = idResolver.createSetOfAll(SET_CLSSid_FromAttribute, fromAttributes);
+ @NonNull /*@Thrown*/ BagValue.Accumulator accumulator = ValueUtil.createBagAccumulatorValue(BAG_CLSSid_AttributeToColumn);
+ @Nullable Iterator<?> ITERATOR__1 = BOXED_fromAttributes.iterator();
+ @NonNull /*@Thrown*/ BagValue collect;
+ while (true) {
+ if (!ITERATOR__1.hasNext()) {
+ collect = accumulator;
+ break;
+ }
+ @Nullable /*@NonInvalid*/ FromAttribute _1 = (FromAttribute)ITERATOR__1.next();
+ /**
+ * leafs
+ */
+ if (_1 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::FromAttribute::leafs\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<AttributeToColumn> leafs = _1.getLeafs();
+ final @NonNull /*@Thrown*/ SetValue BOXED_leafs = idResolver.createSetOfAll(SET_CLSSid_AttributeToColumn, leafs);
+ //
+ for (Object value : BOXED_leafs.flatten().getElements()) {
+ accumulator.add(value);
+ }
+ }
+ final @NonNull /*@Thrown*/ SetValue asSet = CollectionAsSetOperation.INSTANCE.evaluate(collect);
+ final @Nullable /*@Thrown*/ String name = fao_2.getName();
+ final @NonNull /*@Thrown*/ String sum = StringConcatOperation.INSTANCE.evaluate(name, STR__);
+ final @Nullable /*@Thrown*/ String name_0 = a_3.getName();
+ final @NonNull /*@Thrown*/ String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, name_0);
+ // creations
+ final /*@Thrown*/ NonLeafAttribute fa = UML2RDBMSFactory.eINSTANCE.createNonLeafAttribute();
+ assert fa != null;
+ models[2/*middle*/].add(fa);
+ // property assignments
+ fa.setOwner(fao_2);
+ fa.setKind(kind);
+ final List<AttributeToColumn> UNBOXED_null = asSet.asEcoreObjects(idResolver, AttributeToColumn.class);
+ assert UNBOXED_null != null;
+ fa.getLeafs().addAll(UNBOXED_null);
+ fa.setAttribute(a_3);
+ OPPOSITE_OF_FromAttribute_attribute.put(a_3, fa);
+ fa.setName(sum_0);
+ return true;
+ }
+
+ /**
+ *
+ * map attributeColumns_MR in SimpleUML2RDBMS {
+ * rdbms (t : rdbms::Table[?];
+ * ct : String[?];
+ * |)
+ * {realize c : rdbms::Column[?];
+ * |}
+ * middle (c2t : uml2rdbms::ClassToTable[?];
+ * p2n : uml2rdbms::PrimitiveToName[?];
+ * a2c : uml2rdbms::AttributeToColumn[?];
+ * |)
+ * { |}
+ * where ( |
+ * c2t.table = tp2n.typeName = cta2c.owner =
+ * c2tc2t.fromAttributes.leafs->includes(a2c)a2c.type = p2n)
+ * {_0 : String[?];
+ * _1 : String[?];
+ * |
+ * _0 := a2c.name;
+ * _1 := a2c.kind;
+ * c.name := _0;
+ * c.kind := _1;
+ * a2c.column := c;
+ * c.owner := t;
+ * c.type := ct;
+ * }
+ *
+ */
+ protected boolean attributeColumns_MR(final @NonNull /*@NonInvalid*/ AttributeToColumn a2c, final @NonNull /*@NonInvalid*/ ClassToTable c2t_0, final @NonNull /*@NonInvalid*/ String ct, final @NonNull /*@NonInvalid*/ PrimitiveToName p2n_4, final @NonNull /*@NonInvalid*/ Table t_3) {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ final @Nullable /*@Thrown*/ Table table = c2t_0.getTable();
+ final /*@Thrown*/ boolean eq = t_3.equals(table);
+ if (!eq) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ String typeName = p2n_4.getTypeName();
+ final /*@Thrown*/ boolean eq_0 = typeName.equals(ct);
+ if (!eq_0) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ FromAttributeOwner owner = a2c.getOwner();
+ final /*@Thrown*/ boolean eq_1 = owner.equals(c2t_0);
+ if (!eq_1) {
+ return false;
+ }
+ final @Nullable /*@Thrown*/ PrimitiveToName type = a2c.getType();
+ final /*@Thrown*/ boolean eq_2 = p2n_4.equals(type);
+ if (!eq_2) {
+ return false;
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<FromAttribute> fromAttributes = c2t_0.getFromAttributes();
+ final @NonNull /*@Thrown*/ SetValue BOXED_fromAttributes = idResolver.createSetOfAll(SET_CLSSid_FromAttribute, fromAttributes);
+ @NonNull /*@Thrown*/ BagValue.Accumulator accumulator = ValueUtil.createBagAccumulatorValue(BAG_CLSSid_AttributeToColumn);
+ @Nullable Iterator<?> ITERATOR__1 = BOXED_fromAttributes.iterator();
+ @NonNull /*@Thrown*/ BagValue collect;
+ while (true) {
+ if (!ITERATOR__1.hasNext()) {
+ collect = accumulator;
+ break;
+ }
+ @Nullable /*@NonInvalid*/ FromAttribute _1 = (FromAttribute)ITERATOR__1.next();
+ /**
+ * leafs
+ */
+ if (_1 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::FromAttribute::leafs\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ List<AttributeToColumn> leafs = _1.getLeafs();
+ final @NonNull /*@Thrown*/ SetValue BOXED_leafs = idResolver.createSetOfAll(SET_CLSSid_AttributeToColumn, leafs);
+ //
+ for (Object value : BOXED_leafs.flatten().getElements()) {
+ accumulator.add(value);
+ }
+ }
+ final /*@Thrown*/ boolean includes = CollectionIncludesOperation.INSTANCE.evaluate(collect, a2c).booleanValue();
+ if (!includes) {
+ return false;
+ }
+ // variable assignments
+ final @Nullable /*@Thrown*/ String name = a2c.getName();
+ final @Nullable /*@Thrown*/ String kind = a2c.getKind();
+ // creations
+ final /*@Thrown*/ Column c_4 = RDBMSFactory.eINSTANCE.createColumn();
+ assert c_4 != null;
+ models[1/*rdbms*/].add(c_4);
+ // property assignments
+ c_4.setName(name);
+ c_4.setKind(kind);
+ a2c.setColumn(c_4);
+ c_4.setOwner(t_3);
+ c_4.setType(ct);
+ return true;
+ }
+
+ /**
+ *
+ * map __root__ in SimpleUML2RDBMS {
+ *
+ * where ( |)
+ * { |}
+ * for p : uml::Package in uml.objectsOfKind(uml::Package)
+ * {
+ * map packageToSchema_LM {
+ * p := p;
+ * }}
+ * for p2s : uml2rdbms::PackageToSchema in middle.objectsOfKind(uml2rdbms::PackageToSchema)
+ * {
+ * map packageToSchema_MR {
+ * p2s := p2s;
+ * }}
+ * for c : uml::Class in uml.objectsOfKind(uml::Class)
+ * {
+ *
+ * map classToTable_LM {
+ * c := c;
+ * p := c.namespace;
+ * p2s := c.namespace.middle;
+ * }}
+ * for c2t : uml2rdbms::ClassToTable in middle.objectsOfKind(uml2rdbms::ClassToTable)
+ * {
+ *
+ * map classToTable_MR {
+ * c2t := c2t;
+ * p2s := c2t.owner;
+ * s := c2t.owner.schema;
+ * }}
+ * for a : uml::Association in uml.objectsOfKind(uml::Association)
+ * {
+ *
+ * map associationToForeignKey_LM {
+ * a := a;
+ * dc := a.destination;
+ * dc2t := a.destination.middle;
+ * p := a.namespace;
+ * p2s := a.source.middle.owner;
+ * sc := a.source;
+ * sc2t := a.source.middle;
+ * }}
+ * for a2f : uml2rdbms::AssociationToForeignKey in middle.objectsOfKind(uml2rdbms::AssociationToForeignKey)
+ * {
+ *
+ * for rk : rdbms::Key in rdbms.objectsOfKind(rdbms::Key)
+ * {
+ *
+ * map associationToForeignKey_MR {
+ * a2f := a2f;
+ * dc2t := a2f.referenced;
+ * dt := a2f.referenced.table;
+ * p2s := a2f.owner.owner;
+ * rk := rk;
+ * s := a2f.owner.table.schema;
+ * sc2t := a2f.owner;
+ * st := a2f.owner.table;
+ * }}}
+ * for prim : uml::PrimitiveDataType in uml.objectsOfKind(uml::PrimitiveDataType)
+ * {
+ *
+ * map stringToVarchar_LM {
+ * p := prim.namespace;
+ * p2s := prim.namespace.middle;
+ * prim := prim;
+ * }}
+ * for prim : uml::PrimitiveDataType in uml.objectsOfKind(uml::PrimitiveDataType)
+ * {
+ *
+ * map integerToNumber_LM {
+ * p := prim.namespace;
+ * p2s := prim.namespace.middle;
+ * prim := prim;
+ * }}
+ * for prim : uml::PrimitiveDataType in uml.objectsOfKind(uml::PrimitiveDataType)
+ * {
+ *
+ * map booleanToBoolean_LM {
+ * p := prim.namespace;
+ * p2s := prim.namespace.middle;
+ * prim := prim;
+ * }}
+ * for a : uml::Attribute in uml.objectsOfKind(uml::Attribute)
+ * ->select(type.oclIsKindOf(uml::PrimitiveDataType))
+ * {
+ *
+ * map classPrimitiveAttributes_LM {
+ *
+ * a := a;
+ * c := a.owner;
+ * fao := a.owner.middle;
+ * p2n := a.type.oclAsType(uml::PrimitiveDataType).middle;
+ * t := a.type;
+ * }}
+ * for p2n : uml2rdbms::IntegerToNumber in middle.objectsOfKind(uml2rdbms::IntegerToNumber)
+ * {
+ * map integerToNumber_MR {
+ * p2n := p2n;
+ * p2s := p2n.owner;
+ * }}
+ * for p2n : uml2rdbms::BooleanToBoolean in middle.objectsOfKind(uml2rdbms::BooleanToBoolean)
+ * {
+ * map booleanToBoolean_MR {
+ * p2n := p2n;
+ * p2s := p2n.owner;
+ * }}
+ * for p2n : uml2rdbms::StringToVarchar in middle.objectsOfKind(uml2rdbms::StringToVarchar)
+ * {
+ * map stringToVarchar_MR {
+ * p2n := p2n;
+ * p2s := p2n.owner;
+ * }}
+ * for a : uml::Attribute in uml.objectsOfKind(uml::Attribute)
+ * {
+ *
+ * map classComplexAttributes_LM {
+ * a := a;
+ * c := a.owner;
+ * fao := a.owner.middle;
+ * t := a.type;
+ * }}
+ * for fao : uml2rdbms::NonLeafAttribute in middle.objectsOfKind(uml2rdbms::NonLeafAttribute)
+ * {
+ *
+ * for a : uml::Attribute in uml.objectsOfKind(uml::Attribute)
+ * {
+ *
+ * map complexAttributeComplexAttributes_LM {
+ * a := a;
+ * c := fao.attribute.type;
+ * ca := fao.attribute;
+ * fao := fao;
+ * t := a.type;
+ * }}}
+ * for a : uml::Attribute in uml.objectsOfKind(uml::Attribute)
+ * ->select(type.oclIsKindOf(uml::PrimitiveDataType))
+ * {
+ *
+ * for ca : uml::Attribute in uml.objectsOfKind(uml::Attribute)
+ * {
+ *
+ * map complexAttributePrimitiveAttributes_LM {
+ *
+ * a := a;
+ * c := a.owner;
+ * ca := ca;
+ * fao := ca.middle;
+ * p2n := a.type.oclAsType(uml::PrimitiveDataType).middle;
+ * t := a.type;
+ * }}}
+ * for a2c : uml2rdbms::AttributeToColumn in middle.objectsOfKind(uml2rdbms::AttributeToColumn)
+ * ->select(owner.oclIsKindOf(uml2rdbms::ClassToTable))
+ * {
+ *
+ * map attributeColumns_MR {
+ *
+ * a2c := a2c;
+ * c2t := a2c.owner;
+ * ct := a2c.type.typeName;
+ * p2n := a2c.type;
+ * t := a2c.owner.oclAsType(uml2rdbms::ClassToTable).table;
+ * }}
+ */
+ protected boolean __root__() {
+ // predicates
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_AssociationToForeignKey_0 = idResolver.getClass(CLSSid_AssociationToForeignKey, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_AttributeToColumn_0 = idResolver.getClass(CLSSid_AttributeToColumn, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_BooleanToBoolean_0 = idResolver.getClass(CLSSid_BooleanToBoolean, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_ClassToTable_0 = idResolver.getClass(CLSSid_ClassToTable, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_IntegerToNumber_0 = idResolver.getClass(CLSSid_IntegerToNumber, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_NonLeafAttribute_0 = idResolver.getClass(CLSSid_NonLeafAttribute, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_PackageToSchema_0 = idResolver.getClass(CLSSid_PackageToSchema, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_StringToVarchar_0 = idResolver.getClass(CLSSid_StringToVarchar, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Association_0 = idResolver.getClass(CLSSid_Association, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Attribute_1 = idResolver.getClass(CLSSid_Attribute, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Class_0 = idResolver.getClass(CLSSid_Class, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Package_0 = idResolver.getClass(CLSSid_Package, null);
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_PrimitiveDataType_2 = idResolver.getClass(CLSSid_PrimitiveDataType, null);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_13 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Attribute, models[0/*uml*/], TYP_uml_c_c_Attribute_1);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_7 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_PrimitiveDataType, models[0/*uml*/], TYP_uml_c_c_PrimitiveDataType_2);
+ final List<Attribute> UNBOXED_objectsOfKind_13 = objectsOfKind_13.asEcoreObjects(idResolver, Attribute.class);
+ assert UNBOXED_objectsOfKind_13 != null;
+ final List<PrimitiveDataType> UNBOXED_objectsOfKind_7 = objectsOfKind_7.asEcoreObjects(idResolver, PrimitiveDataType.class);
+ assert UNBOXED_objectsOfKind_7 != null;
+ @NonNull /*@Thrown*/ SetValue.Accumulator accumulator = ValueUtil.createSetAccumulatorValue(SET_CLSSid_Attribute);
+ @Nullable Iterator<?> ITERATOR__1_0 = objectsOfKind_13.iterator();
+ @NonNull /*@Thrown*/ SetValue select_0;
+ while (true) {
+ if (!ITERATOR__1_0.hasNext()) {
+ select_0 = accumulator;
+ break;
+ }
+ @Nullable /*@NonInvalid*/ Attribute _1_0 = (Attribute)ITERATOR__1_0.next();
+ /**
+ * type.oclIsKindOf(uml::PrimitiveDataType)
+ */
+ if (_1_0 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML\'::Attribute::type\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_5 = _1_0.getType();
+ final /*@Thrown*/ boolean oclIsKindOf_0 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, type_5, TYP_uml_c_c_PrimitiveDataType_2).booleanValue();
+ //
+ if (oclIsKindOf_0 == ValueUtil.TRUE_VALUE) {
+ accumulator.add(_1_0);
+ }
+ }
+ final List<Attribute> UNBOXED_select_0 = select_0.asEcoreObjects(idResolver, Attribute.class);
+ assert UNBOXED_select_0 != null;
+ // mapping statements
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Package, models[0/*uml*/], TYP_uml_c_c_Package_0);
+ final List<Package> UNBOXED_objectsOfKind = objectsOfKind.asEcoreObjects(idResolver, Package.class);
+ assert UNBOXED_objectsOfKind != null;
+ for (Package p_11 : UNBOXED_objectsOfKind) {
+ if (p_11 != null) {
+ final @NonNull /*@NonInvalid*/ Package symbol_1 = (Package)p_11;
+ if (symbol_1 != null) {
+ packageToSchema_LM(symbol_1);
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_0 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_PackageToSchema, models[2/*middle*/], TYP_uml2rdbms_c_c_PackageToSchema_0);
+ final List<PackageToSchema> UNBOXED_objectsOfKind_0 = objectsOfKind_0.asEcoreObjects(idResolver, PackageToSchema.class);
+ assert UNBOXED_objectsOfKind_0 != null;
+ for (PackageToSchema p2s_21 : UNBOXED_objectsOfKind_0) {
+ if (p2s_21 != null) {
+ final @NonNull /*@NonInvalid*/ PackageToSchema symbol_5 = (PackageToSchema)p2s_21;
+ if (symbol_5 != null) {
+ packageToSchema_MR(symbol_5);
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_1 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Class, models[0/*uml*/], TYP_uml_c_c_Class_0);
+ final List<simpleuml2rdbms.uml.Class> UNBOXED_objectsOfKind_1 = objectsOfKind_1.asEcoreObjects(idResolver, simpleuml2rdbms.uml.Class.class);
+ assert UNBOXED_objectsOfKind_1 != null;
+ for (simpleuml2rdbms.uml.Class c_9 : UNBOXED_objectsOfKind_1) {
+ if (c_9 != null) {
+ final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class symbol_9 = (simpleuml2rdbms.uml.Class)c_9;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace = symbol_9.getNamespace();
+ final @NonNull /*@Thrown*/ PackageToSchema middle = ClassUtil.nonNullState (OPPOSITE_OF_PackageToSchema_umlPackage.get(namespace));
+ if (symbol_9 != null) {
+ if (namespace != null) {
+ if (middle != null) {
+ classToTable_LM(symbol_9, namespace, middle);
+ }
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_2 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_ClassToTable, models[2/*middle*/], TYP_uml2rdbms_c_c_ClassToTable_0);
+ final List<ClassToTable> UNBOXED_objectsOfKind_2 = objectsOfKind_2.asEcoreObjects(idResolver, ClassToTable.class);
+ assert UNBOXED_objectsOfKind_2 != null;
+ for (ClassToTable c2t_3 : UNBOXED_objectsOfKind_2) {
+ if (c2t_3 != null) {
+ final @NonNull /*@NonInvalid*/ ClassToTable symbol_15 = (ClassToTable)c2t_3;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner = symbol_15.getOwner();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Schema schema = owner.getSchema();
+ if (symbol_15 != null) {
+ if (owner != null) {
+ if (schema != null) {
+ classToTable_MR(symbol_15, owner, schema);
+ }
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_3 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Association, models[0/*uml*/], TYP_uml_c_c_Association_0);
+ final List<Association> UNBOXED_objectsOfKind_3 = objectsOfKind_3.asEcoreObjects(idResolver, Association.class);
+ assert UNBOXED_objectsOfKind_3 != null;
+ for (Association a_9 : UNBOXED_objectsOfKind_3) {
+ if (a_9 != null) {
+ final @NonNull /*@NonInvalid*/ Association symbol_21 = (Association)a_9;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class destination = symbol_21.getDestination();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class source_0 = symbol_21.getSource();
+ final @Nullable /*@Thrown*/ ClassToTable middle_2 = ClassUtil.nonNullState (OPPOSITE_OF_ClassToTable_umlClass.get(source_0));
+ final @Nullable /*@Thrown*/ ClassToTable middle_0 = ClassUtil.nonNullState (OPPOSITE_OF_ClassToTable_umlClass.get(destination));
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace_1 = symbol_21.getNamespace();
+ if (middle_2 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::ClassToTable::owner\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner_1 = middle_2.getOwner();
+ if (symbol_21 != null) {
+ if (destination != null) {
+ if (middle_0 != null) {
+ if (namespace_1 != null) {
+ if (owner_1 != null) {
+ if (source_0 != null) {
+ if (middle_2 != null) {
+ associationToForeignKey_LM(symbol_21, destination, middle_0, namespace_1, owner_1, source_0, middle_2);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_4 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_AssociationToForeignKey, models[2/*middle*/], TYP_uml2rdbms_c_c_AssociationToForeignKey_0);
+ final List<AssociationToForeignKey> UNBOXED_objectsOfKind_4 = objectsOfKind_4.asEcoreObjects(idResolver, AssociationToForeignKey.class);
+ assert UNBOXED_objectsOfKind_4 != null;
+ for (AssociationToForeignKey a2f_1 : UNBOXED_objectsOfKind_4) {
+ if (a2f_1 != null) {
+ final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_rdbms_c_c_Key_0 = idResolver.getClass(CLSSid_Key, null);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_5 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Key, models[1/*rdbms*/], TYP_rdbms_c_c_Key_0);
+ final List<Key> UNBOXED_objectsOfKind_5 = objectsOfKind_5.asEcoreObjects(idResolver, Key.class);
+ assert UNBOXED_objectsOfKind_5 != null;
+ for (Key rk_1 : UNBOXED_objectsOfKind_5) {
+ if (rk_1 != null) {
+ final @NonNull /*@NonInvalid*/ AssociationToForeignKey symbol_32 = (AssociationToForeignKey)a2f_1;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ ClassToTable owner_5 = symbol_32.getOwner();
+ final @Nullable /*@Thrown*/ ClassToTable referenced = symbol_32.getReferenced();
+ final @Nullable /*@Thrown*/ Table table_1 = owner_5.getTable();
+ if (referenced == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::ClassToTable::table\'");
+ }
+ final @Nullable /*@Thrown*/ Table table = referenced.getTable();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner_3 = owner_5.getOwner();
+ final @NonNull /*@NonInvalid*/ Key symbol_36 = (Key)rk_1;
+ if (table_1 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleRDBMS\'::Table::schema\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Schema schema_0 = table_1.getSchema();
+ if (symbol_32 != null) {
+ if (referenced != null) {
+ if (table != null) {
+ if (owner_3 != null) {
+ if (symbol_36 != null) {
+ if (schema_0 != null) {
+ if (owner_5 != null) {
+ if (table_1 != null) {
+ associationToForeignKey_MR(symbol_32, referenced, table, owner_3, symbol_36, schema_0, owner_5, table_1);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ for (PrimitiveDataType prim_5 : UNBOXED_objectsOfKind_7) {
+ if (prim_5 != null) {
+ final @NonNull /*@NonInvalid*/ PrimitiveDataType symbol_46 = (PrimitiveDataType)prim_5;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace_2 = symbol_46.getNamespace();
+ final @NonNull /*@Thrown*/ PackageToSchema middle_3 = ClassUtil.nonNullState (OPPOSITE_OF_PackageToSchema_umlPackage.get(namespace_2));
+ if (namespace_2 != null) {
+ if (middle_3 != null) {
+ if (symbol_46 != null) {
+ stringToVarchar_LM(namespace_2, middle_3, symbol_46);
+ }
+ }
+ }
+ }
+ }
+ for (PrimitiveDataType prim_6 : UNBOXED_objectsOfKind_7) {
+ if (prim_6 != null) {
+ final @NonNull /*@NonInvalid*/ PrimitiveDataType symbol_52 = (PrimitiveDataType)prim_6;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace_4 = symbol_52.getNamespace();
+ final @NonNull /*@Thrown*/ PackageToSchema middle_4 = ClassUtil.nonNullState (OPPOSITE_OF_PackageToSchema_umlPackage.get(namespace_4));
+ if (namespace_4 != null) {
+ if (middle_4 != null) {
+ if (symbol_52 != null) {
+ integerToNumber_LM(namespace_4, middle_4, symbol_52);
+ }
+ }
+ }
+ }
+ }
+ for (PrimitiveDataType prim_7 : UNBOXED_objectsOfKind_7) {
+ if (prim_7 != null) {
+ final @NonNull /*@NonInvalid*/ PrimitiveDataType symbol_58 = (PrimitiveDataType)prim_7;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Package namespace_6 = symbol_58.getNamespace();
+ final @NonNull /*@Thrown*/ PackageToSchema middle_5 = ClassUtil.nonNullState (OPPOSITE_OF_PackageToSchema_umlPackage.get(namespace_6));
+ if (namespace_6 != null) {
+ if (middle_5 != null) {
+ if (symbol_58 != null) {
+ booleanToBoolean_LM(namespace_6, middle_5, symbol_58);
+ }
+ }
+ }
+ }
+ }
+ for (Attribute a_10 : UNBOXED_select_0) {
+ if (a_10 != null) {
+ final @NonNull /*@NonInvalid*/ Attribute symbol_62 = (Attribute)a_10;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner_7 = symbol_62.getOwner();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_1 = symbol_62.getType();
+ final @Nullable /*@Thrown*/ ClassToTable middle_6 = ClassUtil.nonNullState (OPPOSITE_OF_ClassToTable_umlClass.get(owner_7));
+ final @NonNull /*@Thrown*/ PrimitiveDataType oclAsType = ClassUtil.nonNullState((PrimitiveDataType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_1, TYP_uml_c_c_PrimitiveDataType_2));
+ final @NonNull /*@Thrown*/ PrimitiveToName middle_7 = ClassUtil.nonNullState (OPPOSITE_OF_PrimitiveToName_primitive.get(oclAsType));
+ if (symbol_62 != null) {
+ if (owner_7 != null) {
+ if (middle_6 != null) {
+ if (middle_7 != null) {
+ if (type_1 instanceof PrimitiveDataType) {
+ classPrimitiveAttributes_LM(symbol_62, owner_7, middle_6, middle_7, (PrimitiveDataType)type_1);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_10 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_IntegerToNumber, models[2/*middle*/], TYP_uml2rdbms_c_c_IntegerToNumber_0);
+ final List<IntegerToNumber> UNBOXED_objectsOfKind_10 = objectsOfKind_10.asEcoreObjects(idResolver, IntegerToNumber.class);
+ assert UNBOXED_objectsOfKind_10 != null;
+ for (IntegerToNumber p2n_11 : UNBOXED_objectsOfKind_10) {
+ if (p2n_11 != null) {
+ final @NonNull /*@NonInvalid*/ IntegerToNumber symbol_70 = (IntegerToNumber)p2n_11;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner_9 = symbol_70.getOwner();
+ if (symbol_70 != null) {
+ if (owner_9 != null) {
+ integerToNumber_MR(symbol_70, owner_9);
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_11 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_BooleanToBoolean, models[2/*middle*/], TYP_uml2rdbms_c_c_BooleanToBoolean_0);
+ final List<BooleanToBoolean> UNBOXED_objectsOfKind_11 = objectsOfKind_11.asEcoreObjects(idResolver, BooleanToBoolean.class);
+ assert UNBOXED_objectsOfKind_11 != null;
+ for (BooleanToBoolean p2n_12 : UNBOXED_objectsOfKind_11) {
+ if (p2n_12 != null) {
+ final @NonNull /*@NonInvalid*/ BooleanToBoolean symbol_75 = (BooleanToBoolean)p2n_12;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner_10 = symbol_75.getOwner();
+ if (symbol_75 != null) {
+ if (owner_10 != null) {
+ booleanToBoolean_MR(symbol_75, owner_10);
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_12 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_StringToVarchar, models[2/*middle*/], TYP_uml2rdbms_c_c_StringToVarchar_0);
+ final List<StringToVarchar> UNBOXED_objectsOfKind_12 = objectsOfKind_12.asEcoreObjects(idResolver, StringToVarchar.class);
+ assert UNBOXED_objectsOfKind_12 != null;
+ for (StringToVarchar p2n_13 : UNBOXED_objectsOfKind_12) {
+ if (p2n_13 != null) {
+ final @NonNull /*@NonInvalid*/ StringToVarchar symbol_80 = (StringToVarchar)p2n_13;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ PackageToSchema owner_11 = symbol_80.getOwner();
+ if (symbol_80 != null) {
+ if (owner_11 != null) {
+ stringToVarchar_MR(symbol_80, owner_11);
+ }
+ }
+ }
+ }
+ for (Attribute a_11 : UNBOXED_objectsOfKind_13) {
+ if (a_11 != null) {
+ final @NonNull /*@NonInvalid*/ Attribute symbol_85 = (Attribute)a_11;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner_12 = symbol_85.getOwner();
+ final @Nullable /*@Thrown*/ ClassToTable middle_8 = ClassUtil.nonNullState (OPPOSITE_OF_ClassToTable_umlClass.get(owner_12));
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_2 = symbol_85.getType();
+ if (symbol_85 != null) {
+ if (owner_12 != null) {
+ if (middle_8 != null) {
+ if (type_2 instanceof simpleuml2rdbms.uml.Class) {
+ classComplexAttributes_LM(symbol_85, owner_12, middle_8, (simpleuml2rdbms.uml.Class)type_2);
+ }
+ }
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_14 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_NonLeafAttribute, models[2/*middle*/], TYP_uml2rdbms_c_c_NonLeafAttribute_0);
+ final List<NonLeafAttribute> UNBOXED_objectsOfKind_14 = objectsOfKind_14.asEcoreObjects(idResolver, NonLeafAttribute.class);
+ assert UNBOXED_objectsOfKind_14 != null;
+ for (NonLeafAttribute fao_7 : UNBOXED_objectsOfKind_14) {
+ if (fao_7 != null) {
+ for (Attribute a_12 : UNBOXED_objectsOfKind_13) {
+ if (a_12 != null) {
+ final @NonNull /*@NonInvalid*/ NonLeafAttribute symbol_96 = (NonLeafAttribute)fao_7;
+ final @NonNull /*@NonInvalid*/ Attribute symbol_93 = (Attribute)a_12;
+ final @Nullable /*@Thrown*/ Attribute attribute_0 = symbol_96.getAttribute();
+ if (attribute_0 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML\'::Attribute::type\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_3 = attribute_0.getType();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_4 = symbol_93.getType();
+ if (symbol_93 != null) {
+ if (type_3 instanceof simpleuml2rdbms.uml.Class) {
+ if (attribute_0 != null) {
+ if (symbol_96 != null) {
+ if (type_4 instanceof simpleuml2rdbms.uml.Class) {
+ complexAttributeComplexAttributes_LM(symbol_93, (simpleuml2rdbms.uml.Class)type_3, attribute_0, symbol_96, (simpleuml2rdbms.uml.Class)type_4);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ for (Attribute a_13 : UNBOXED_select_0) {
+ if (a_13 != null) {
+ for (Attribute ca_3 : UNBOXED_objectsOfKind_13) {
+ if (ca_3 != null) {
+ final @NonNull /*@NonInvalid*/ Attribute symbol_103 = (Attribute)a_13;
+ final @NonNull /*@NonInvalid*/ Attribute symbol_105 = (Attribute)ca_3;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ Classifier type_7 = symbol_103.getType();
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner_14 = symbol_103.getOwner();
+ final @Nullable /*@Thrown*/ FromAttribute middle_9 = ClassUtil.nonNullState (OPPOSITE_OF_FromAttribute_attribute.get(symbol_105));
+ final @NonNull /*@Thrown*/ PrimitiveDataType oclAsType_0 = ClassUtil.nonNullState((PrimitiveDataType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_7, TYP_uml_c_c_PrimitiveDataType_2));
+ final @NonNull /*@Thrown*/ PrimitiveToName middle_10 = ClassUtil.nonNullState (OPPOSITE_OF_PrimitiveToName_primitive.get(oclAsType_0));
+ if (symbol_103 != null) {
+ if (owner_14 != null) {
+ if (symbol_105 != null) {
+ if (middle_9 instanceof NonLeafAttribute) {
+ if (middle_10 != null) {
+ if (type_7 instanceof PrimitiveDataType) {
+ complexAttributePrimitiveAttributes_LM(symbol_103, owner_14, symbol_105, (NonLeafAttribute)middle_9, middle_10, (PrimitiveDataType)type_7);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_18 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_AttributeToColumn, models[2/*middle*/], TYP_uml2rdbms_c_c_AttributeToColumn_0);
+ @NonNull /*@Thrown*/ SetValue.Accumulator accumulator_0 = ValueUtil.createSetAccumulatorValue(SET_CLSSid_AttributeToColumn);
+ @Nullable Iterator<?> ITERATOR__1_1 = objectsOfKind_18.iterator();
+ @NonNull /*@Thrown*/ SetValue select_1;
+ while (true) {
+ if (!ITERATOR__1_1.hasNext()) {
+ select_1 = accumulator_0;
+ break;
+ }
+ @Nullable /*@NonInvalid*/ AttributeToColumn _1_1 = (AttributeToColumn)ITERATOR__1_1.next();
+ /**
+ * owner.oclIsKindOf(uml2rdbms::ClassToTable)
+ */
+ if (_1_1 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::FromAttribute::owner\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ FromAttributeOwner owner_15 = _1_1.getOwner();
+ final /*@Thrown*/ boolean oclIsKindOf_1 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, owner_15, TYP_uml2rdbms_c_c_ClassToTable_0).booleanValue();
+ //
+ if (oclIsKindOf_1 == ValueUtil.TRUE_VALUE) {
+ accumulator_0.add(_1_1);
+ }
+ }
+ final List<AttributeToColumn> UNBOXED_select_1 = select_1.asEcoreObjects(idResolver, AttributeToColumn.class);
+ assert UNBOXED_select_1 != null;
+ for (AttributeToColumn a2c_1 : UNBOXED_select_1) {
+ if (a2c_1 != null) {
+ final @NonNull /*@NonInvalid*/ AttributeToColumn symbol_113 = (AttributeToColumn)a2c_1;
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ FromAttributeOwner owner_16 = symbol_113.getOwner();
+ final @Nullable /*@Thrown*/ PrimitiveToName type_9 = symbol_113.getType();
+ if (type_9 == null) {
+ throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS\'::PrimitiveToName::typeName\'");
+ }
+ @SuppressWarnings("null")
+ final @NonNull /*@Thrown*/ String typeName = type_9.getTypeName();
+ final @NonNull /*@Thrown*/ ClassToTable oclAsType_1 = ClassUtil.nonNullState((ClassToTable)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, owner_16, TYP_uml2rdbms_c_c_ClassToTable_0));
+ final @Nullable /*@Thrown*/ Table table_2 = oclAsType_1.getTable();
+ if (symbol_113 != null) {
+ if (owner_16 instanceof ClassToTable) {
+ if (typeName != null) {
+ if (type_9 != null) {
+ if (table_2 != null) {
+ attributeColumns_MR(symbol_113, (ClassToTable)owner_16, typeName, type_9, table_2);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return true;
+ }
+}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/test/SimpleUML2RDBMS.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/test/SimpleUML2RDBMS.java
index 92198e52f..6923b9c85 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/test/SimpleUML2RDBMS.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/cg/test/SimpleUML2RDBMS.java
@@ -15,7 +15,7 @@ import java.util.List;
import java.util.Map;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.ids.ClassId;
import org.eclipse.ocl.pivot.ids.CollectionTypeId;
import org.eclipse.ocl.pivot.ids.IdManager;
@@ -192,8 +192,8 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
{13} // 13 : StringToVarchar -> {StringToVarchar}
};
- public SimpleUML2RDBMS(final @NonNull Evaluator evaluator) {
- super(evaluator, new String[] {"uml", "rdbms", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
+ public SimpleUML2RDBMS(final @NonNull Executor executor) {
+ super(executor, new String[] {"uml", "rdbms", "middle"}, null, classIndex2classId, classIndex2allClassIndexes);
}
public boolean run() {
@@ -568,7 +568,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classToTable_MR(final @NonNull /*@NonInvalid*/ ClassToTable c2t, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_6, final @NonNull /*@NonInvalid*/ Schema s) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ PackageToSchema owner = c2t.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(p2s_6);
@@ -713,7 +713,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean associationToForeignKey_MR(final @NonNull /*@NonInvalid*/ AssociationToForeignKey a2f, final @NonNull /*@NonInvalid*/ ClassToTable dc2t, final @NonNull /*@NonInvalid*/ Table dt, final @NonNull /*@NonInvalid*/ PackageToSchema p2s_8, final @NonNull /*@NonInvalid*/ Key rk, final @NonNull /*@NonInvalid*/ Schema s_0, final @NonNull /*@NonInvalid*/ ClassToTable sc2t, final @NonNull /*@NonInvalid*/ Table st) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ ClassToTable owner = a2f.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(sc2t);
@@ -1021,7 +1021,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classPrimitiveAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_0, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_0, final @NonNull /*@NonInvalid*/ ClassToTable fao, final @NonNull /*@NonInvalid*/ PrimitiveToName p2n_2, final @NonNull /*@NonInvalid*/ PrimitiveDataType t) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_0.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_0);
@@ -1098,7 +1098,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean classComplexAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_1, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_1, final @NonNull /*@NonInvalid*/ ClassToTable fao_0, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class t_0) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_1.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_1);
@@ -1196,7 +1196,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean complexAttributePrimitiveAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_2, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_2, final @NonNull /*@NonInvalid*/ Attribute ca, final @NonNull /*@NonInvalid*/ NonLeafAttribute fao_1, final @NonNull /*@NonInvalid*/ PrimitiveToName p2n_3, final @NonNull /*@NonInvalid*/ PrimitiveDataType t_1) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_2.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_2);
@@ -1286,7 +1286,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean complexAttributeComplexAttributes_LM(final @NonNull /*@NonInvalid*/ Attribute a_3, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class c_3, final @NonNull /*@NonInvalid*/ Attribute ca_0, final @NonNull /*@NonInvalid*/ NonLeafAttribute fao_2, final @NonNull /*@NonInvalid*/ simpleuml2rdbms.uml.Class t_2) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner = a_3.getOwner();
final /*@Thrown*/ boolean eq = owner.equals(c_3);
@@ -1393,7 +1393,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean attributeColumns_MR(final @NonNull /*@NonInvalid*/ AttributeToColumn a2c, final @NonNull /*@NonInvalid*/ ClassToTable c2t_0, final @NonNull /*@NonInvalid*/ String ct, final @NonNull /*@NonInvalid*/ PrimitiveToName p2n_4, final @NonNull /*@NonInvalid*/ Table t_3) {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @Nullable /*@Thrown*/ Table table = c2t_0.getTable();
final /*@Thrown*/ boolean eq = t_3.equals(table);
if (!eq) {
@@ -1629,7 +1629,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
*/
protected boolean __root__() {
// predicates
- final @NonNull /*@NonInvalid*/ IdResolver idResolver = evaluator.getIdResolver();
+ final @NonNull /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_AssociationToForeignKey_0 = idResolver.getClass(CLSSid_AssociationToForeignKey, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_AttributeToColumn_0 = idResolver.getClass(CLSSid_AttributeToColumn, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml2rdbms_c_c_BooleanToBoolean_0 = idResolver.getClass(CLSSid_BooleanToBoolean, null);
@@ -1643,8 +1643,8 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Class_0 = idResolver.getClass(CLSSid_Class, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_Package_0 = idResolver.getClass(CLSSid_Package, null);
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_uml_c_c_PrimitiveDataType_2 = idResolver.getClass(CLSSid_PrimitiveDataType, null);
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_13 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Attribute, models[0/*uml*/], TYP_uml_c_c_Attribute_1);
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_7 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_PrimitiveDataType, models[0/*uml*/], TYP_uml_c_c_PrimitiveDataType_2);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_13 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Attribute, models[0/*uml*/], TYP_uml_c_c_Attribute_1);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_7 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_PrimitiveDataType, models[0/*uml*/], TYP_uml_c_c_PrimitiveDataType_2);
final List<Attribute> UNBOXED_objectsOfKind_13 = objectsOfKind_13.asEcoreObjects(idResolver, Attribute.class);
assert UNBOXED_objectsOfKind_13 != null;
final List<PrimitiveDataType> UNBOXED_objectsOfKind_7 = objectsOfKind_7.asEcoreObjects(idResolver, PrimitiveDataType.class);
@@ -1666,7 +1666,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ Classifier type_5 = _1_0.getType();
- final /*@Thrown*/ boolean oclIsKindOf_0 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, type_5, TYP_uml_c_c_PrimitiveDataType_2).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf_0 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, type_5, TYP_uml_c_c_PrimitiveDataType_2).booleanValue();
//
if (oclIsKindOf_0 == ValueUtil.TRUE_VALUE) {
accumulator.add(_1_0);
@@ -1675,7 +1675,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
final List<Attribute> UNBOXED_select_0 = select_0.asEcoreObjects(idResolver, Attribute.class);
assert UNBOXED_select_0 != null;
// mapping statements
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Package, models[0/*uml*/], TYP_uml_c_c_Package_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Package, models[0/*uml*/], TYP_uml_c_c_Package_0);
final List<Package> UNBOXED_objectsOfKind = objectsOfKind.asEcoreObjects(idResolver, Package.class);
assert UNBOXED_objectsOfKind != null;
for (Package p_11 : UNBOXED_objectsOfKind) {
@@ -1686,7 +1686,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_0 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_PackageToSchema, models[2/*middle*/], TYP_uml2rdbms_c_c_PackageToSchema_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_0 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_PackageToSchema, models[2/*middle*/], TYP_uml2rdbms_c_c_PackageToSchema_0);
final List<PackageToSchema> UNBOXED_objectsOfKind_0 = objectsOfKind_0.asEcoreObjects(idResolver, PackageToSchema.class);
assert UNBOXED_objectsOfKind_0 != null;
for (PackageToSchema p2s_21 : UNBOXED_objectsOfKind_0) {
@@ -1697,7 +1697,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_1 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Class, models[0/*uml*/], TYP_uml_c_c_Class_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_1 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Class, models[0/*uml*/], TYP_uml_c_c_Class_0);
final List<simpleuml2rdbms.uml.Class> UNBOXED_objectsOfKind_1 = objectsOfKind_1.asEcoreObjects(idResolver, simpleuml2rdbms.uml.Class.class);
assert UNBOXED_objectsOfKind_1 != null;
for (simpleuml2rdbms.uml.Class c_9 : UNBOXED_objectsOfKind_1) {
@@ -1715,7 +1715,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_2 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_ClassToTable, models[2/*middle*/], TYP_uml2rdbms_c_c_ClassToTable_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_2 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_ClassToTable, models[2/*middle*/], TYP_uml2rdbms_c_c_ClassToTable_0);
final List<ClassToTable> UNBOXED_objectsOfKind_2 = objectsOfKind_2.asEcoreObjects(idResolver, ClassToTable.class);
assert UNBOXED_objectsOfKind_2 != null;
for (ClassToTable c2t_3 : UNBOXED_objectsOfKind_2) {
@@ -1734,7 +1734,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_3 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Association, models[0/*uml*/], TYP_uml_c_c_Association_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_3 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Association, models[0/*uml*/], TYP_uml_c_c_Association_0);
final List<Association> UNBOXED_objectsOfKind_3 = objectsOfKind_3.asEcoreObjects(idResolver, Association.class);
assert UNBOXED_objectsOfKind_3 != null;
for (Association a_9 : UNBOXED_objectsOfKind_3) {
@@ -1770,13 +1770,13 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_4 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_AssociationToForeignKey, models[2/*middle*/], TYP_uml2rdbms_c_c_AssociationToForeignKey_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_4 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_AssociationToForeignKey, models[2/*middle*/], TYP_uml2rdbms_c_c_AssociationToForeignKey_0);
final List<AssociationToForeignKey> UNBOXED_objectsOfKind_4 = objectsOfKind_4.asEcoreObjects(idResolver, AssociationToForeignKey.class);
assert UNBOXED_objectsOfKind_4 != null;
for (AssociationToForeignKey a2f_1 : UNBOXED_objectsOfKind_4) {
if (a2f_1 != null) {
final @NonNull /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_rdbms_c_c_Key_0 = idResolver.getClass(CLSSid_Key, null);
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_5 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_Key, models[1/*rdbms*/], TYP_rdbms_c_c_Key_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_5 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_Key, models[1/*rdbms*/], TYP_rdbms_c_c_Key_0);
final List<Key> UNBOXED_objectsOfKind_5 = objectsOfKind_5.asEcoreObjects(idResolver, Key.class);
assert UNBOXED_objectsOfKind_5 != null;
for (Key rk_1 : UNBOXED_objectsOfKind_5) {
@@ -1872,7 +1872,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ Classifier type_1 = symbol_62.getType();
final @Nullable /*@Thrown*/ ClassToTable middle_6 = ClassUtil.nonNullState (OPPOSITE_OF_ClassToTable_umlClass.get(owner_7));
- final @NonNull /*@Thrown*/ PrimitiveDataType oclAsType = ClassUtil.nonNullState((PrimitiveDataType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, type_1, TYP_uml_c_c_PrimitiveDataType_2));
+ final @NonNull /*@Thrown*/ PrimitiveDataType oclAsType = ClassUtil.nonNullState((PrimitiveDataType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_1, TYP_uml_c_c_PrimitiveDataType_2));
final @NonNull /*@Thrown*/ PrimitiveToName middle_7 = ClassUtil.nonNullState (OPPOSITE_OF_PrimitiveToName_primitive.get(oclAsType));
if (symbol_62 != null) {
if (owner_7 != null) {
@@ -1887,7 +1887,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_10 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_IntegerToNumber, models[2/*middle*/], TYP_uml2rdbms_c_c_IntegerToNumber_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_10 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_IntegerToNumber, models[2/*middle*/], TYP_uml2rdbms_c_c_IntegerToNumber_0);
final List<IntegerToNumber> UNBOXED_objectsOfKind_10 = objectsOfKind_10.asEcoreObjects(idResolver, IntegerToNumber.class);
assert UNBOXED_objectsOfKind_10 != null;
for (IntegerToNumber p2n_11 : UNBOXED_objectsOfKind_10) {
@@ -1902,7 +1902,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_11 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_BooleanToBoolean, models[2/*middle*/], TYP_uml2rdbms_c_c_BooleanToBoolean_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_11 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_BooleanToBoolean, models[2/*middle*/], TYP_uml2rdbms_c_c_BooleanToBoolean_0);
final List<BooleanToBoolean> UNBOXED_objectsOfKind_11 = objectsOfKind_11.asEcoreObjects(idResolver, BooleanToBoolean.class);
assert UNBOXED_objectsOfKind_11 != null;
for (BooleanToBoolean p2n_12 : UNBOXED_objectsOfKind_11) {
@@ -1917,7 +1917,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_12 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_StringToVarchar, models[2/*middle*/], TYP_uml2rdbms_c_c_StringToVarchar_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_12 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_StringToVarchar, models[2/*middle*/], TYP_uml2rdbms_c_c_StringToVarchar_0);
final List<StringToVarchar> UNBOXED_objectsOfKind_12 = objectsOfKind_12.asEcoreObjects(idResolver, StringToVarchar.class);
assert UNBOXED_objectsOfKind_12 != null;
for (StringToVarchar p2n_13 : UNBOXED_objectsOfKind_12) {
@@ -1951,7 +1951,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_14 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_NonLeafAttribute, models[2/*middle*/], TYP_uml2rdbms_c_c_NonLeafAttribute_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_14 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_NonLeafAttribute, models[2/*middle*/], TYP_uml2rdbms_c_c_NonLeafAttribute_0);
final List<NonLeafAttribute> UNBOXED_objectsOfKind_14 = objectsOfKind_14.asEcoreObjects(idResolver, NonLeafAttribute.class);
assert UNBOXED_objectsOfKind_14 != null;
for (NonLeafAttribute fao_7 : UNBOXED_objectsOfKind_14) {
@@ -1994,7 +1994,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ simpleuml2rdbms.uml.Class owner_14 = symbol_103.getOwner();
final @Nullable /*@Thrown*/ FromAttribute middle_9 = ClassUtil.nonNullState (OPPOSITE_OF_FromAttribute_attribute.get(symbol_105));
- final @NonNull /*@Thrown*/ PrimitiveDataType oclAsType_0 = ClassUtil.nonNullState((PrimitiveDataType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, type_7, TYP_uml_c_c_PrimitiveDataType_2));
+ final @NonNull /*@Thrown*/ PrimitiveDataType oclAsType_0 = ClassUtil.nonNullState((PrimitiveDataType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_7, TYP_uml_c_c_PrimitiveDataType_2));
final @NonNull /*@Thrown*/ PrimitiveToName middle_10 = ClassUtil.nonNullState (OPPOSITE_OF_PrimitiveToName_primitive.get(oclAsType_0));
if (symbol_103 != null) {
if (owner_14 != null) {
@@ -2013,7 +2013,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
}
}
- final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_18 = ModelObjectsOfKindOperation.INSTANCE.evaluate(evaluator, SET_CLSSid_AttributeToColumn, models[2/*middle*/], TYP_uml2rdbms_c_c_AttributeToColumn_0);
+ final @NonNull /*@NonInvalid*/ SetValue objectsOfKind_18 = ModelObjectsOfKindOperation.INSTANCE.evaluate(executor, SET_CLSSid_AttributeToColumn, models[2/*middle*/], TYP_uml2rdbms_c_c_AttributeToColumn_0);
@NonNull /*@Thrown*/ SetValue.Accumulator accumulator_0 = ValueUtil.createSetAccumulatorValue(SET_CLSSid_AttributeToColumn);
@Nullable Iterator<?> ITERATOR__1_1 = objectsOfKind_18.iterator();
@NonNull /*@Thrown*/ SetValue select_1;
@@ -2031,7 +2031,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ FromAttributeOwner owner_15 = _1_1.getOwner();
- final /*@Thrown*/ boolean oclIsKindOf_1 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(evaluator, owner_15, TYP_uml2rdbms_c_c_ClassToTable_0).booleanValue();
+ final /*@Thrown*/ boolean oclIsKindOf_1 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, owner_15, TYP_uml2rdbms_c_c_ClassToTable_0).booleanValue();
//
if (oclIsKindOf_1 == ValueUtil.TRUE_VALUE) {
accumulator_0.add(_1_1);
@@ -2050,7 +2050,7 @@ public class SimpleUML2RDBMS extends AbstractTransformationExecutor
}
@SuppressWarnings("null")
final @NonNull /*@Thrown*/ String typeName = type_9.getTypeName();
- final @NonNull /*@Thrown*/ ClassToTable oclAsType_1 = ClassUtil.nonNullState((ClassToTable)OclAnyOclAsTypeOperation.INSTANCE.evaluate(evaluator, owner_16, TYP_uml2rdbms_c_c_ClassToTable_0));
+ final @NonNull /*@Thrown*/ ClassToTable oclAsType_1 = ClassUtil.nonNullState((ClassToTable)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, owner_16, TYP_uml2rdbms_c_c_ClassToTable_0));
final @Nullable /*@Thrown*/ Table table_2 = oclAsType_1.getTable();
if (symbol_113 != null) {
if (owner_16 instanceof ClassToTable) {
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java
index 8628280a6..6da059813 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java
@@ -28,7 +28,7 @@ import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.ocl.examples.codegen.dynamic.OCL2JavaFileObject;
import org.eclipse.ocl.examples.xtext.tests.TestUtil;
import org.eclipse.ocl.pivot.CompleteEnvironment;
-import org.eclipse.ocl.pivot.evaluation.Evaluator;
+import org.eclipse.ocl.pivot.evaluation.Executor;
import org.eclipse.ocl.pivot.internal.manager.MetamodelManagerInternal;
import org.eclipse.ocl.pivot.internal.utilities.OCLInternal;
import org.eclipse.ocl.pivot.internal.validation.PivotEObjectValidator;
@@ -162,9 +162,9 @@ public class QVTiCompilerTests extends LoadTestCase
Transformation asTransformation = loadTransformation(myQVT, transformURI, genModelURI);
assert asTransformation != null;
Class<? extends TransformationExecutor> txClass = generateCode(myQVT, asTransformation, "../org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/");
- Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Evaluator.class));
- TxEvaluator evaluator = myQVT.createEvaluator(txConstructor);
- TransformationExecutor tx = evaluator.getTransformationExecutor();
+ Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Executor.class));
+ TxEvaluator executor = myQVT.createEvaluator(txConstructor);
+ TransformationExecutor tx = executor.getTransformationExecutor();
Resource inputResource = resourceSet.getResource(inputModelURI, true);
tx.addRootObjects("hsv", ClassUtil.nonNullState(inputResource.getContents()));
tx.run();
@@ -205,9 +205,9 @@ public class QVTiCompilerTests extends LoadTestCase
assert asTransformation != null;
Class<? extends TransformationExecutor> txClass = generateCode(myQVT, asTransformation, "../org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/");
- Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Evaluator.class));
- TxEvaluator evaluator = myQVT.createEvaluator(txConstructor);
- TransformationExecutor tx = evaluator.getTransformationExecutor();
+ Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Executor.class));
+ TxEvaluator executor = myQVT.createEvaluator(txConstructor);
+ TransformationExecutor tx = executor.getTransformationExecutor();
Resource inputResource = resourceSet.getResource(inputModelURI, true);
tx.addRootObjects("leftCS", ClassUtil.nonNullState(inputResource.getContents()));
tx.run();
@@ -234,9 +234,9 @@ public class QVTiCompilerTests extends LoadTestCase
Transformation asTransformation = loadTransformation(myQVT, transformURI, genModelURI);
assert asTransformation != null;
Class<? extends TransformationExecutor> txClass = generateCode(myQVT, asTransformation, "../org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/");
- Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Evaluator.class));
- TransformationEvaluator evaluator = myQVT.createEvaluator(txConstructor);
- TransformationExecutor tx = evaluator.getTransformationExecutor();
+ Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Executor.class));
+ TransformationEvaluator executor = myQVT.createEvaluator(txConstructor);
+ TransformationExecutor tx = executor.getTransformationExecutor();
Resource inputResource = resourceSet.getResource(inputModelURI, true);
tx.addRootObjects("uml", ClassUtil.nonNullState(inputResource.getContents()));
tx.run();
@@ -265,9 +265,9 @@ public class QVTiCompilerTests extends LoadTestCase
Transformation asTransformation = loadTransformation(myQVT, transformURI, genModelURI);
assert asTransformation != null;
Class<? extends TransformationExecutor> txClass = generateCode(myQVT, asTransformation, "../org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/");
- Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Evaluator.class));
- TransformationEvaluator evaluator = myQVT.createEvaluator(txConstructor);
- TransformationExecutor tx = evaluator.getTransformationExecutor();
+ Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Executor.class));
+ TransformationEvaluator executor = myQVT.createEvaluator(txConstructor);
+ TransformationExecutor tx = executor.getTransformationExecutor();
Resource inputResource = resourceSet.getResource(inputModelURI, true);
tx.addRootObjects("uml", ClassUtil.nonNullState(inputResource.getContents()));
tx.run();
@@ -301,8 +301,8 @@ public class QVTiCompilerTests extends LoadTestCase
assert asTransformation != null;
Class<? extends TransformationExecutor> txClass = generateCode(myQVT, asTransformation, "../org.eclipse.qvtd.xtext.qvtimperative.tests/src-gen/");
Constructor<? extends TransformationExecutor> txConstructor = ClassUtil.nonNullState(txClass.getConstructor(Evaluator.class));
- TransformationEvaluator evaluator = myQVT.createEvaluator(txConstructor);
- TransformationExecutor tx = evaluator.getTransformationExecutor();
+ TransformationEvaluator executor = myQVT.createEvaluator(txConstructor);
+ TransformationExecutor tx = executor.getTransformationExecutor();
Resource inputResource = resourceSet.getResource(inputModelURI, true);
tx.addRootObjects("uml", ClassUtil.nonNullState(inputResource.getContents()));
tx.run();
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/SimpleUML2RDBMS/SimpleUML2RDBMS.qvti b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/SimpleUML2RDBMS/SimpleUML2RDBMS.qvti
index 2e3985d17..46fb00dfd 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/SimpleUML2RDBMS/SimpleUML2RDBMS.qvti
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/SimpleUML2RDBMS/SimpleUML2RDBMS.qvti
@@ -2,14 +2,14 @@ import simplerdbms : 'SimpleRDBMS.ecore#/';
import simpleuml : 'SimpleUML.ecore#/';
import umltordbms : 'SimpleUML2RDBMS.ecore#/';
-transformation test::SimpleUML2RDBMS
+transformation simpleUML2RDBMS::SimpleUML2RDBMS
{
uml imports simpleuml;
rdbms imports simplerdbms;
middle imports umltordbms;
}
-map packageToSchema_LM in test::SimpleUML2RDBMS
+map packageToSchema_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(p : Package) {}
enforce middle() {
@@ -21,7 +21,7 @@ map packageToSchema_LM in test::SimpleUML2RDBMS
}
}
-map packageToSchema_MR in test::SimpleUML2RDBMS
+map packageToSchema_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms() {
realize s : Schema
@@ -33,7 +33,7 @@ map packageToSchema_MR in test::SimpleUML2RDBMS
}
}
-map integerToNumber_LM in test::SimpleUML2RDBMS
+map integerToNumber_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(p : Package,
prim : PrimitiveDataType) {}
@@ -49,7 +49,7 @@ map integerToNumber_LM in test::SimpleUML2RDBMS
}
}
-map integerToNumber_MR in test::SimpleUML2RDBMS
+map integerToNumber_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms() {}
check middle(p2s : PackageToSchema,
@@ -61,7 +61,7 @@ map integerToNumber_MR in test::SimpleUML2RDBMS
}
}
-map booleanToBoolean_MR in test::SimpleUML2RDBMS
+map booleanToBoolean_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms() {}
check middle(p2s : PackageToSchema,
@@ -74,7 +74,7 @@ map booleanToBoolean_MR in test::SimpleUML2RDBMS
}
}
-map booleanToBoolean_LM in test::SimpleUML2RDBMS
+map booleanToBoolean_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(p : Package,
prim : PrimitiveDataType) {}
@@ -90,7 +90,7 @@ map booleanToBoolean_LM in test::SimpleUML2RDBMS
}
}
-map stringToVarchar_MR in test::SimpleUML2RDBMS
+map stringToVarchar_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms() {}
check middle(p2s : PackageToSchema,
@@ -102,7 +102,7 @@ map stringToVarchar_MR in test::SimpleUML2RDBMS
}
}
-map stringToVarchar_LM in test::SimpleUML2RDBMS
+map stringToVarchar_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(p : Package,
prim : PrimitiveDataType) {}
@@ -118,7 +118,7 @@ map stringToVarchar_LM in test::SimpleUML2RDBMS
}
}
-map classToTable_MR in test::SimpleUML2RDBMS
+map classToTable_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms(s : Schema) {
realize t : Table,
@@ -146,7 +146,7 @@ map classToTable_MR in test::SimpleUML2RDBMS
}
}
-map classToTable_LM in test::SimpleUML2RDBMS
+map classToTable_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(p : Package,
c : Class) {}
@@ -162,7 +162,7 @@ map classToTable_LM in test::SimpleUML2RDBMS
}
}
-map associationToForeignKey_MR in test::SimpleUML2RDBMS
+map associationToForeignKey_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms(s : Schema,
st : Table,
@@ -196,7 +196,7 @@ map associationToForeignKey_MR in test::SimpleUML2RDBMS
}
}
-map associationToForeignKey_LM in test::SimpleUML2RDBMS
+map associationToForeignKey_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(p : Package,
sc : Class,
@@ -237,7 +237,7 @@ map associationToForeignKey_LM in test::SimpleUML2RDBMS
}
}
-map classPrimitiveAttributes_LM in test::SimpleUML2RDBMS
+map classPrimitiveAttributes_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(t : PrimitiveDataType,
c : Class,
@@ -262,7 +262,7 @@ map classPrimitiveAttributes_LM in test::SimpleUML2RDBMS
}
}
-map classComplexAttributes_LM in test::SimpleUML2RDBMS
+map classComplexAttributes_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(t : Class,
c : Class,
@@ -283,7 +283,7 @@ map classComplexAttributes_LM in test::SimpleUML2RDBMS
}
}
-map complexAttributePrimitiveAttributes_LM in test::SimpleUML2RDBMS
+map complexAttributePrimitiveAttributes_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(ca : Attribute,
c : Class,
@@ -311,7 +311,7 @@ map complexAttributePrimitiveAttributes_LM in test::SimpleUML2RDBMS
}
}
-map complexAttributeComplexAttributes_LM in test::SimpleUML2RDBMS
+map complexAttributeComplexAttributes_LM in simpleUML2RDBMS::SimpleUML2RDBMS
{
check uml(ca : Attribute,
c : Class,
@@ -336,7 +336,7 @@ map complexAttributeComplexAttributes_LM in test::SimpleUML2RDBMS
}
}
-map attributeColumns_MR in test::SimpleUML2RDBMS
+map attributeColumns_MR in simpleUML2RDBMS::SimpleUML2RDBMS
{
enforce rdbms(t : Table,
ct : String) {
@@ -358,7 +358,7 @@ map attributeColumns_MR in test::SimpleUML2RDBMS
}
}
-map __root__ in test::SimpleUML2RDBMS
+map __root__ in simpleUML2RDBMS::SimpleUML2RDBMS
{
where () {}
for p : simpleuml::Package in uml.objectsOfKind(Package) {

Back to the top