diff options
author | Ed Willink | 2016-02-09 11:01:08 +0000 |
---|---|---|
committer | Ed Willink | 2016-02-09 11:43:39 +0000 |
commit | 94548d8b61aac8321863165ce6426e75a82d815d (patch) | |
tree | 5de8908830de086a1e4a41f268ac0df163093f38 | |
parent | 8c3867b58bdb125dd2a7f0be082e0ced2134cd5b (diff) | |
download | org.eclipse.qvtd-94548d8b61aac8321863165ce6426e75a82d815d.tar.gz org.eclipse.qvtd-94548d8b61aac8321863165ce6426e75a82d815d.tar.xz org.eclipse.qvtd-94548d8b61aac8321863165ce6426e75a82d815d.zip |
[unrelated] Fix AS2CS of "this"
2 files changed, 31 insertions, 2 deletions
diff --git a/plugins/org.eclipse.qvtd.xtext.qvtcore/src/org/eclipse/qvtd/xtext/qvtcore/utilities/QVTcoreCSResource.java b/plugins/org.eclipse.qvtd.xtext.qvtcore/src/org/eclipse/qvtd/xtext/qvtcore/utilities/QVTcoreCSResource.java index 0d651b144..8afa17925 100644 --- a/plugins/org.eclipse.qvtd.xtext.qvtcore/src/org/eclipse/qvtd/xtext/qvtcore/utilities/QVTcoreCSResource.java +++ b/plugins/org.eclipse.qvtd.xtext.qvtcore/src/org/eclipse/qvtd/xtext/qvtcore/utilities/QVTcoreCSResource.java @@ -26,6 +26,8 @@ import org.eclipse.ocl.xtext.base.cs2as.CS2AS; import org.eclipse.ocl.xtext.base.utilities.BaseCSResource; import org.eclipse.ocl.xtext.essentialocl.utilities.EssentialOCLCSResource; import org.eclipse.qvtd.pivot.qvtbase.FunctionParameter; +import org.eclipse.qvtd.pivot.qvtbase.Transformation; +import org.eclipse.qvtd.pivot.qvtbase.TypedModel; import org.eclipse.qvtd.pivot.qvtcore.QVTcorePackage; import org.eclipse.qvtd.pivot.qvtcore.utilities.QVTcoreASResourceFactory; import org.eclipse.qvtd.pivot.qvtcorebase.CorePattern; @@ -57,7 +59,6 @@ public class QVTcoreCSResource extends EssentialOCLCSResource } @Override - @SuppressWarnings("null") public @NonNull URI getASURI(@NonNull URI csURI) { return URI.createURI(csURI.toString() + "as"); } @@ -78,6 +79,12 @@ public class QVTcoreCSResource extends EssentialOCLCSResource else if ((element instanceof Variable) && (element.eContainer() instanceof CorePattern)) { return (Variable)element; } + else if ((element instanceof Variable) && (element.eContainer() instanceof Transformation)) { + return (Variable)element; + } + else if ((element instanceof Variable) && (element.eContainer() instanceof TypedModel)) { + return (Variable)element; + } else { return super.isPathable(element); } diff --git a/plugins/org.eclipse.qvtd.xtext.qvtrelation/src/org/eclipse/qvtd/xtext/qvtrelation/utilities/QVTrelationCSResource.java b/plugins/org.eclipse.qvtd.xtext.qvtrelation/src/org/eclipse/qvtd/xtext/qvtrelation/utilities/QVTrelationCSResource.java index 99c1bb03b..64a7d8855 100644 --- a/plugins/org.eclipse.qvtd.xtext.qvtrelation/src/org/eclipse/qvtd/xtext/qvtrelation/utilities/QVTrelationCSResource.java +++ b/plugins/org.eclipse.qvtd.xtext.qvtrelation/src/org/eclipse/qvtd/xtext/qvtrelation/utilities/QVTrelationCSResource.java @@ -11,12 +11,19 @@ package org.eclipse.qvtd.xtext.qvtrelation.utilities; import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EObject; import org.eclipse.jdt.annotation.NonNull; +import org.eclipse.jdt.annotation.Nullable; +import org.eclipse.ocl.pivot.NamedElement; +import org.eclipse.ocl.pivot.Variable; import org.eclipse.ocl.pivot.internal.resource.ASResourceFactory; import org.eclipse.ocl.pivot.internal.utilities.EnvironmentFactoryInternal; import org.eclipse.ocl.pivot.resource.ASResource; import org.eclipse.ocl.xtext.base.cs2as.CS2AS; import org.eclipse.ocl.xtext.essentialocl.utilities.EssentialOCLCSResource; +import org.eclipse.qvtd.pivot.qvtbase.FunctionParameter; +import org.eclipse.qvtd.pivot.qvtbase.Transformation; +import org.eclipse.qvtd.pivot.qvtbase.TypedModel; import org.eclipse.qvtd.pivot.qvtrelation.QVTrelationPackage; import org.eclipse.qvtd.pivot.qvtrelation.utilities.QVTrelationASResourceFactory; import org.eclipse.qvtd.xtext.qvtrelation.cs2as.QVTrelationCS2AS; @@ -39,7 +46,6 @@ public class QVTrelationCSResource extends EssentialOCLCSResource } @Override - @SuppressWarnings("null") public @NonNull URI getASURI(@NonNull URI csURI) { return URI.createURI(csURI.toString() + "as"); } @@ -48,4 +54,20 @@ public class QVTrelationCSResource extends EssentialOCLCSResource public @NonNull String getEditorName() { return "QVT Relation"; } + + @Override + public @Nullable NamedElement isPathable(@NonNull EObject element) { + if (element instanceof FunctionParameter) { + return (FunctionParameter)element; + } + else if ((element instanceof Variable) && (element.eContainer() instanceof Transformation)) { + return (Variable)element; + } + else if ((element instanceof Variable) && (element.eContainer() instanceof TypedModel)) { + return (Variable)element; + } + else { + return super.isPathable(element); + } + } } |