Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/util/OCLOperations.java')
-rw-r--r--plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/util/OCLOperations.java8
1 files changed, 4 insertions, 4 deletions
diff --git a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/util/OCLOperations.java b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/util/OCLOperations.java
index 91eb129e..2f38f82a 100644
--- a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/util/OCLOperations.java
+++ b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/util/OCLOperations.java
@@ -76,7 +76,7 @@ public final class OCLOperations {
public Object next() {
Object next = inner.next();
final SourceElement se = tls.getDefaultSourceElement(next);
- if (se != null) {
+ if (se != null && !se.isMapsToSelf()) {
final EList<TargetElement> seMapsTo = se.getMapsTo();
if (!seMapsTo.isEmpty()) {
assert seMapsTo.get(0).getObject().eResource() != null;
@@ -149,7 +149,7 @@ public final class OCLOperations {
public Object next() {
Object next = inner.next();
final SourceElement se = tr.getUniqueSourceElement(next);
- if (se != null) {
+ if (se != null && !se.isMapsToSelf()) {
final EList<TargetElement> seMapsTo = se.getMapsTo();
if (!seMapsTo.isEmpty()) {
assert seMapsTo.get(0).getObject().eResource() != null;
@@ -537,7 +537,7 @@ public final class OCLOperations {
public Object execute(final StackFrame frame) {
final Object object = frame.getLocal(0, 0);
final SourceElement se = frame.getEnv().getTraces().getDefaultSourceElement(object);
- if (se != null) {
+ if (se != null && !se.isMapsToSelf()) {
final EList<TargetElement> seMapsTo = se.getMapsTo();
if (!seMapsTo.isEmpty()) {
assert seMapsTo.get(0).getObject().eResource() != null;
@@ -563,7 +563,7 @@ public final class OCLOperations {
final TracedRule tr = frame.getEnv().getTraces().getLinksByRule(rule, false);
if (tr != null) {
final SourceElement se = tr.getUniqueSourceElement(object);
- if (se != null) {
+ if (se != null && !se.isMapsToSelf()) {
final EList<TargetElement> seMapsTo = se.getMapsTo();
if (!seMapsTo.isEmpty()) {
assert seMapsTo.get(0).getObject().eResource() != null;

Back to the top