diff --git a/plugins/org.etsi.mts.tdl.TDLan2/.launch/TOP (1).launch b/plugins/org.etsi.mts.tdl.TDLan2/.launch/TOP (1).launch
index 6fc4305c9b7902e2a6ef95665c53cffbcf46c596..2892d6749c9da9c0d038cb00610f8012987e1f7a 100644
--- a/plugins/org.etsi.mts.tdl.TDLan2/.launch/TOP (1).launch
+++ b/plugins/org.etsi.mts.tdl.TDLan2/.launch/TOP (1).launch
@@ -32,13 +32,12 @@
-
+
-
@@ -64,8 +63,6 @@
-
-
@@ -89,7 +86,6 @@
-
@@ -118,7 +114,6 @@
-
@@ -186,7 +181,6 @@
-
@@ -226,8 +220,6 @@
-
-
@@ -246,12 +238,6 @@
-
-
-
-
-
-
@@ -315,7 +301,6 @@
-
@@ -375,6 +360,11 @@
+
+
+
+
+
@@ -387,17 +377,18 @@
+
+
-
-
+
@@ -413,6 +404,8 @@
+
+
diff --git a/plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/transform/AbstractTranslator.java b/plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/transform/AbstractTranslator.java
index 9c66519b11105321ff884457d5b7377597abdab0..4e23324e4bf1fabde9f9dda3abb485d40904c28c 100644
--- a/plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/transform/AbstractTranslator.java
+++ b/plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/transform/AbstractTranslator.java
@@ -1,7 +1,9 @@
package org.etsi.mts.tdl.transform;
+import java.util.HashSet;
import java.util.List;
import java.util.Optional;
+import java.util.Set;
import java.util.TreeMap;
import java.util.function.Predicate;
@@ -285,4 +287,30 @@ public abstract class AbstractTranslator {
this.generatedPackage = generatedPackage;
}
+ public void ensureUniqueNames(Package p) {
+ Set names = new HashSet<>();
+ for (PackageableElement pe: p.getPackagedElement()) {
+ makeUnique(pe, names);
+ if (pe instanceof EnumDataType)
+ for (PackageableElement l: ((EnumDataType) pe).getValue())
+ makeUnique(l, names);
+ else if (pe instanceof Package) {
+ ensureUniqueNames((Package) pe);
+ }
+ }
+
+ }
+
+ private void makeUnique(NamedElement e, Set names) {
+ String name = e.getName();
+ int i = 1;
+ String newName = name;
+ while (names.contains(newName)) {
+ newName = name + "_" + i++;
+ }
+ if (!newName.equals(name))
+ e.setName(newName);
+ names.add(newName);
+ }
+
}
\ No newline at end of file
diff --git a/plugins/org.etsi.mts.tdl.execution.java/.gitignore b/plugins/org.etsi.mts.tdl.execution.java/.gitignore
index b83d22266ac8aa2f8df2edef68082c789727841d..c188840704215ddf7b130068617520ffdbfa5140 100644
--- a/plugins/org.etsi.mts.tdl.execution.java/.gitignore
+++ b/plugins/org.etsi.mts.tdl.execution.java/.gitignore
@@ -1 +1,4 @@
/target/
+/example-a-api
+/example-a-src
+/example-lib
diff --git a/plugins/org.etsi.mts.tdl.graphical.labels.data.ui/META-INF/MANIFEST.MF b/plugins/org.etsi.mts.tdl.graphical.labels.data.ui/META-INF/MANIFEST.MF
index a0def5e630a9b9cf3bbf605e5249dfd69357b09b..bfae79ec1686dea1ddb1a0c436fd323ce8e30f19 100644
--- a/plugins/org.etsi.mts.tdl.graphical.labels.data.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.etsi.mts.tdl.graphical.labels.data.ui/META-INF/MANIFEST.MF
@@ -24,3 +24,4 @@ Export-Package: org.etsi.mts.tdl.graphical.labels.ui.quickfix,
org.etsi.mts.tdl.graphical.labels.data.ui.internal,
org.etsi.mts.tdl.graphical.labels.ide.contentassist.antlr.internal,
org.etsi.mts.tdl.graphical.labels.ide.contentassist.antlr
+Bundle-Activator: org.etsi.mts.tdl.graphical.labels.data.ui.internal.DataActivator
diff --git a/plugins/org.etsi.mts.tdl.model/.project b/plugins/org.etsi.mts.tdl.model/.project
index 16b43bee5312266ce6e198be33367349922d6e44..dc251f152e3f95caede138dc9a5d53ac0458dc84 100644
--- a/plugins/org.etsi.mts.tdl.model/.project
+++ b/plugins/org.etsi.mts.tdl.model/.project
@@ -11,23 +11,12 @@
- org.eclipse.ocl.pivot.ui.oclbuilder
+ org.eclipse.ui.externaltools.ExternalToolBuilder
+ full,incremental,
- disabledExtensions
- *,essentialocl
-
-
- disabledPaths
- bin/**,target/**
-
-
- enabledExtensions
- ecore,ocl,oclinecore,oclstdlib,uml
-
-
- enabledPaths
- **
+ LaunchConfigHandle
+ <project>/.externalToolBuilders/org.eclipse.ocl.pivot.ui.oclbuilder.launch
diff --git a/plugins/org.etsi.mts.tdl.model/META-INF/MANIFEST.MF b/plugins/org.etsi.mts.tdl.model/META-INF/MANIFEST.MF
index 2e217a5430a02b0e28eaa0935d566c2baf5e25a5..4a487ef8e7c012ad01e616f97b61e0f2207f7d49 100644
--- a/plugins/org.etsi.mts.tdl.model/META-INF/MANIFEST.MF
+++ b/plugins/org.etsi.mts.tdl.model/META-INF/MANIFEST.MF
@@ -18,10 +18,12 @@ Export-Package: org.etsi.mts.tdl,
org.etsi.mts.tdl.structuredobjectives.impl,
org.etsi.mts.tdl.structuredobjectives.util
Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources,
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.emf.ecore.xmi;visibility:=reexport,
org.etsi.mts.tdl.model;visibility:=reexport,
org.eclipse.ocl.pivot;visibility:=reexport,
+ org.eclipse.ocl.examples.codegen;visibility:=reexport,
org.eclipse.ocl.xtext.essentialocl,
org.eclipse.ocl.xtext.completeocl,
org.eclipse.emf.mwe2.launch;resolution:=optional,
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ComponentInstanceRole.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ComponentInstanceRole.java
index 58ab4013c9f0a19dc6cd0a297372746bd8f0c988..010eef923ec82bc2b98994f821a93574e636dc65 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ComponentInstanceRole.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ComponentInstanceRole.java
@@ -68,8 +68,7 @@ public enum ComponentInstanceRole implements Enumerator
* @generated
*/
private static final ComponentInstanceRole[] VALUES_ARRAY =
- new ComponentInstanceRole[]
- {
+ new ComponentInstanceRole[] {
SUT,
TESTER,
};
@@ -92,11 +91,9 @@ public enum ComponentInstanceRole implements Enumerator
*/
public static ComponentInstanceRole get(String literal)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ComponentInstanceRole result = VALUES_ARRAY[i];
- if (result.toString().equals(literal))
- {
+ if (result.toString().equals(literal)) {
return result;
}
}
@@ -113,11 +110,9 @@ public enum ComponentInstanceRole implements Enumerator
*/
public static ComponentInstanceRole getByName(String name)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ComponentInstanceRole result = VALUES_ARRAY[i];
- if (result.getName().equals(name))
- {
+ if (result.getName().equals(name)) {
return result;
}
}
@@ -134,8 +129,7 @@ public enum ComponentInstanceRole implements Enumerator
*/
public static ComponentInstanceRole get(int value)
{
- switch (value)
- {
+ switch (value) {
case SUT_VALUE: return SUT;
case TESTER_VALUE: return TESTER;
}
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/GateTypeKind.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/GateTypeKind.java
index d4db35e929571fb6b0b21e74cb4caa9f4ed6a053..940fde23d6f7c8bccb5d680bdefe978afba2caca 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/GateTypeKind.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/GateTypeKind.java
@@ -68,8 +68,7 @@ public enum GateTypeKind implements Enumerator
* @generated
*/
private static final GateTypeKind[] VALUES_ARRAY =
- new GateTypeKind[]
- {
+ new GateTypeKind[] {
MESSAGE,
PROCEDURE,
};
@@ -92,11 +91,9 @@ public enum GateTypeKind implements Enumerator
*/
public static GateTypeKind get(String literal)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
GateTypeKind result = VALUES_ARRAY[i];
- if (result.toString().equals(literal))
- {
+ if (result.toString().equals(literal)) {
return result;
}
}
@@ -113,11 +110,9 @@ public enum GateTypeKind implements Enumerator
*/
public static GateTypeKind getByName(String name)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
GateTypeKind result = VALUES_ARRAY[i];
- if (result.getName().equals(name))
- {
+ if (result.getName().equals(name)) {
return result;
}
}
@@ -134,8 +129,7 @@ public enum GateTypeKind implements Enumerator
*/
public static GateTypeKind get(int value)
{
- switch (value)
- {
+ switch (value) {
case MESSAGE_VALUE: return MESSAGE;
case PROCEDURE_VALUE: return PROCEDURE;
}
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/NamedElement.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/NamedElement.java
index 5ea0acad3617ecf54ce08fe5b47c052c35c5e3c6..c723977955a6a0ed4c20617b6206bb641186823e 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/NamedElement.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/NamedElement.java
@@ -28,7 +28,6 @@ public interface NamedElement extends Element
* @return the value of the 'Qualified Name' attribute.
* @see org.etsi.mts.tdl.tdlPackage#getNamedElement_QualifiedName()
* @model required="true" transient="true" changeable="false" volatile="true" derived="true"
- * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='\n if (self.name.oclIsUndefined()) then\n \'\'\n else\n if (not self.oclContainer().oclIsUndefined()) then\n if (self.oclContainer().oclIsKindOf(NamedElement)) then\n self.oclContainer().oclAsType(NamedElement).qualifiedName + \'::\' + self.name\n else\n self.oclContainer().oclAsType(ocl::OclElement)->closure(oclContainer())\n ->select(c | c.oclIsKindOf(NamedElement))\n ->asOrderedSet()\n ->first().oclAsType(NamedElement).qualifiedName + \'::\' + self.name\n endif\n else\n self.name\n endif\n endif'"
* @generated
*/
String getQualifiedName();
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ParameterKind.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ParameterKind.java
index f800cf5465a50cb3d6d08ba12b240ed09c6b29de..be93d25a3f1e4231249575343f8988cfa85c3c28 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ParameterKind.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/ParameterKind.java
@@ -89,8 +89,7 @@ public enum ParameterKind implements Enumerator
* @generated
*/
private static final ParameterKind[] VALUES_ARRAY =
- new ParameterKind[]
- {
+ new ParameterKind[] {
IN,
OUT,
EXCEPTION,
@@ -114,11 +113,9 @@ public enum ParameterKind implements Enumerator
*/
public static ParameterKind get(String literal)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ParameterKind result = VALUES_ARRAY[i];
- if (result.toString().equals(literal))
- {
+ if (result.toString().equals(literal)) {
return result;
}
}
@@ -135,11 +132,9 @@ public enum ParameterKind implements Enumerator
*/
public static ParameterKind getByName(String name)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ParameterKind result = VALUES_ARRAY[i];
- if (result.getName().equals(name))
- {
+ if (result.getName().equals(name)) {
return result;
}
}
@@ -156,8 +151,7 @@ public enum ParameterKind implements Enumerator
*/
public static ParameterKind get(int value)
{
- switch (value)
- {
+ switch (value) {
case IN_VALUE: return IN;
case OUT_VALUE: return OUT;
case EXCEPTION_VALUE: return EXCEPTION;
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/TimeLabelUseKind.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/TimeLabelUseKind.java
index de8f680af8240638f4951d5c8ab2eb67dd8f2de0..3a38d29003b59c53707ee265a278614967c10f6d 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/TimeLabelUseKind.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/TimeLabelUseKind.java
@@ -89,8 +89,7 @@ public enum TimeLabelUseKind implements Enumerator
* @generated
*/
private static final TimeLabelUseKind[] VALUES_ARRAY =
- new TimeLabelUseKind[]
- {
+ new TimeLabelUseKind[] {
LAST,
PREVIOUS,
FIRST,
@@ -114,11 +113,9 @@ public enum TimeLabelUseKind implements Enumerator
*/
public static TimeLabelUseKind get(String literal)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
TimeLabelUseKind result = VALUES_ARRAY[i];
- if (result.toString().equals(literal))
- {
+ if (result.toString().equals(literal)) {
return result;
}
}
@@ -135,11 +132,9 @@ public enum TimeLabelUseKind implements Enumerator
*/
public static TimeLabelUseKind getByName(String name)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
TimeLabelUseKind result = VALUES_ARRAY[i];
- if (result.getName().equals(name))
- {
+ if (result.getName().equals(name)) {
return result;
}
}
@@ -156,8 +151,7 @@ public enum TimeLabelUseKind implements Enumerator
*/
public static TimeLabelUseKind get(int value)
{
- switch (value)
- {
+ switch (value) {
case LAST_VALUE: return LAST;
case PREVIOUS_VALUE: return PREVIOUS;
case FIRST_VALUE: return FIRST;
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/UnassignedMemberTreatment.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/UnassignedMemberTreatment.java
index a0e61288b2dbc3429d691c4c59910847d09c94c6..f6ce4c73eeb4d36d0447e9407fab04e63a5e849c 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/UnassignedMemberTreatment.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/UnassignedMemberTreatment.java
@@ -89,8 +89,7 @@ public enum UnassignedMemberTreatment implements Enumerator
* @generated
*/
private static final UnassignedMemberTreatment[] VALUES_ARRAY =
- new UnassignedMemberTreatment[]
- {
+ new UnassignedMemberTreatment[] {
UNDEFINED,
ANY_VALUE,
ANY_VALUE_OR_OMIT,
@@ -114,11 +113,9 @@ public enum UnassignedMemberTreatment implements Enumerator
*/
public static UnassignedMemberTreatment get(String literal)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
UnassignedMemberTreatment result = VALUES_ARRAY[i];
- if (result.toString().equals(literal))
- {
+ if (result.toString().equals(literal)) {
return result;
}
}
@@ -135,11 +132,9 @@ public enum UnassignedMemberTreatment implements Enumerator
*/
public static UnassignedMemberTreatment getByName(String name)
{
- for (int i = 0; i < VALUES_ARRAY.length; ++i)
- {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
UnassignedMemberTreatment result = VALUES_ARRAY[i];
- if (result.getName().equals(name))
- {
+ if (result.getName().equals(name)) {
return result;
}
}
@@ -156,8 +151,7 @@ public enum UnassignedMemberTreatment implements Enumerator
*/
public static UnassignedMemberTreatment get(int value)
{
- switch (value)
- {
+ switch (value) {
case UNDEFINED_VALUE: return UNDEFINED;
case ANY_VALUE_VALUE: return ANY_VALUE;
case ANY_VALUE_OR_OMIT_VALUE: return ANY_VALUE_OR_OMIT;
diff --git a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/impl/ActionBehaviourImpl.java b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/impl/ActionBehaviourImpl.java
index 225332b1258a018c822702f0c7a254fce231bbdc..8494686ca13e2f55e509614a0e19ef54c64473a5 100644
--- a/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/impl/ActionBehaviourImpl.java
+++ b/plugins/org.etsi.mts.tdl.model/src-gen/org/etsi/mts/tdl/impl/ActionBehaviourImpl.java
@@ -4,22 +4,39 @@ package org.etsi.mts.tdl.impl;
import java.lang.reflect.InvocationTargetException;
+import java.util.Iterator;
+import java.util.List;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.WrappedException;
-
import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EOperation;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.ocl.pivot.evaluation.Executor;
+import org.eclipse.ocl.pivot.ids.IdResolver;
+import org.eclipse.ocl.pivot.ids.IdResolver.IdResolverExtension;
+import org.eclipse.ocl.pivot.library.collection.CollectionAsOrderedSetOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation;
+import org.eclipse.ocl.pivot.messages.PivotMessages;
+import org.eclipse.ocl.pivot.utilities.PivotUtil;
+import org.eclipse.ocl.pivot.utilities.ValueUtil;
+import org.eclipse.ocl.pivot.values.InvalidValueException;
+import org.eclipse.ocl.pivot.values.OrderedSetValue;
+import org.eclipse.ocl.pivot.values.SetValue;
import org.etsi.mts.tdl.ActionBehaviour;
import org.etsi.mts.tdl.AtomicBehaviour;
import org.etsi.mts.tdl.Behaviour;
+import org.etsi.mts.tdl.Block;
import org.etsi.mts.tdl.ComponentInstance;
+import org.etsi.mts.tdl.Element;
+import org.etsi.mts.tdl.TestConfiguration;
+import org.etsi.mts.tdl.TestDescription;
import org.etsi.mts.tdl.tdlPackage;
+import org.etsi.mts.tdl.tdlTables;
/**
*
@@ -75,12 +92,10 @@ public abstract class ActionBehaviourImpl extends AtomicBehaviourImpl implements
@Override
public ComponentInstance getComponentInstance()
{
- if (componentInstance != null && componentInstance.eIsProxy())
- {
+ if (componentInstance != null && componentInstance.eIsProxy()) {
InternalEObject oldComponentInstance = (InternalEObject)componentInstance;
componentInstance = (ComponentInstance)eResolveProxy(oldComponentInstance);
- if (componentInstance != oldComponentInstance)
- {
+ if (componentInstance != oldComponentInstance) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, tdlPackage.ACTION_BEHAVIOUR__COMPONENT_INSTANCE, oldComponentInstance, componentInstance));
}
@@ -112,16 +127,6 @@ public abstract class ActionBehaviourImpl extends AtomicBehaviourImpl implements
eNotify(new ENotificationImpl(this, Notification.SET, tdlPackage.ACTION_BEHAVIOUR__COMPONENT_INSTANCE, oldComponentInstance, componentInstance));
}
- /**
- * The cached invocation delegate for the '{@link #getParticipatingComponents() Get Participating Components}' operation.
- *
- *
- * @see #getParticipatingComponents()
- * @generated
- * @ordered
- */
- protected static final EOperation.Internal.InvocationDelegate GET_PARTICIPATING_COMPONENTS__EINVOCATION_DELEGATE = ((EOperation.Internal)tdlPackage.Literals.ACTION_BEHAVIOUR___GET_PARTICIPATING_COMPONENTS).getInvocationDelegate();
-
/**
*
*
@@ -131,14 +136,126 @@ public abstract class ActionBehaviourImpl extends AtomicBehaviourImpl implements
@Override
public EList getParticipatingComponents()
{
- try
- {
- return (EList)GET_PARTICIPATING_COMPONENTS__EINVOCATION_DELEGATE.dynamicInvoke(this, null);
+ /**
+ *
+ * if
+ * self.getParentTestDescription()
+ * ->exists(td | td.isLocallyOrdered) and
+ * self.container()
+ * .oclIsKindOf(Block)
+ * then
+ * if not self.componentInstance.oclIsUndefined()
+ * then OrderedSet{self.componentInstance}
+ * else
+ * self.container()
+ * .oclAsType(Block)
+ * .getParticipatingComponentsExcluding(self)
+ * ->asOrderedSet()
+ * endif
+ * else
+ * self.getParentTestDescription()
+ * .testConfiguration.componentInstance->asOrderedSet()
+ * endif
+ */
+ final /*@NonInvalid*/ Executor executor = PivotUtil.getExecutor(this);
+ final /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+ final /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_tdl_c_c_Block_0 = idResolver.getClass(tdlTables.CLSSid_Block, null);
+ final /*@NonInvalid*/ Element container = this.container();
+ final /*@NonInvalid*/ TestDescription getParentTestDescription_0 = this.getParentTestDescription();
+ final /*@NonInvalid*/ SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, tdlTables.SET_CLSSid_TestDescription, getParentTestDescription_0);
+ /*@Thrown*/ Object accumulator = ValueUtil.FALSE_VALUE;
+ Iterator