Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Willink2017-09-13 14:52:42 +0000
committerEd Willink2017-09-20 07:53:25 +0000
commita189feceaf72b6519b115cd474cd7ea83f4709cd (patch)
tree9f38f5d9c613f12100480330700fecc418dbfee0
parent220efd70181d17e6decad071caf5391ae18806d4 (diff)
downloadorg.eclipse.qvtd-0.15.0M2.tar.gz
org.eclipse.qvtd-0.15.0M2.tar.xz
org.eclipse.qvtd-0.15.0M2.zip
[515327] Accommodate type literals with primitive usage0.15.0M2
-rw-r--r--plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvtm2qvts/DatumCaches.java8
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/ClassDatumImpl.java2
-rw-r--r--tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java6
3 files changed, 10 insertions, 6 deletions
diff --git a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvtm2qvts/DatumCaches.java b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvtm2qvts/DatumCaches.java
index a6b026963..5f2d50c83 100644
--- a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvtm2qvts/DatumCaches.java
+++ b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvtm2qvts/DatumCaches.java
@@ -236,6 +236,10 @@ public class DatumCaches
getUsage(value);
throw new IllegalStateException("No DomainUsage for " + value);
}
+// if (valueUsage == domainUsageAnalysis.getNoneUsage()) {
+// getUsage(value);
+// throw new IllegalStateException("None DomainUsage for " + value);
+// }
Type propertyType = targetProp.getType();
if ((propertyType != null) && (propertyType.getESObject() != EcorePackage.Literals.EOBJECT)) { // FIXME Legacy fix tolerating undeclared import of EObject
DomainUsage propertyUsage = getUsage(propertyType);
@@ -243,7 +247,7 @@ public class DatumCaches
getUsage(propertyType);
throw new IllegalStateException("No DomainUsage for " + propertyType);
}
- if (valueUsage == domainUsageAnalysis.getNoneUsage()) {
+ if ((valueUsage != domainUsageAnalysis.getNoneUsage()) && (valueUsage != domainUsageAnalysis.getPrimitiveUsage())) {
valueUsage = domainUsageAnalysis.intersection(propertyUsage, valueUsage);
}
else {
@@ -258,7 +262,7 @@ public class DatumCaches
throw new IllegalStateException("No left/right DomainUsage commonality for \"" + propAssign + "\"");
}
PropertyDatum oppositeDatum = getPropertyDatum(oppositeTypedModel, getElementClass(targetProp), oppositeProp);
- targetDatum.setOpposite(oppositeDatum);
+ targetDatum.setOpposite(oppositeDatum); // FIXME this property is obsolete
result.add(oppositeDatum);
}
return result;
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/ClassDatumImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/ClassDatumImpl.java
index 0befa9f38..769a55ed4 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/ClassDatumImpl.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/ClassDatumImpl.java
@@ -423,7 +423,7 @@ public class ClassDatumImpl extends AbstractDatumImpl implements ClassDatum {
@Override
public String toString() {
- return completeClass.getName();
+ return String.valueOf(getReferredTypedModel()) + "!" + completeClass.getName();
}
} //ClassDatumImpl
diff --git a/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java b/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java
index 0c36f269f..0a355789c 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java
@@ -245,9 +245,9 @@ public class QVTrCompilerTests extends LoadTestCase
// AbstractTransformer.EXCEPTIONS.setState(true);
// AbstractTransformer.INVOCATIONS.setState(true);
// QVTm2QVTp.PARTITIONING.setState(true);
- AbstractMerger.EARLY.setState(true);
- AbstractMerger.FAILURE.setState(true);
- AbstractMerger.LATE.setState(true);
+ // AbstractMerger.EARLY.setState(true);
+ // AbstractMerger.FAILURE.setState(true);
+ // AbstractMerger.LATE.setState(true);
ConnectivityChecker.CONNECTIVITY_CLASSDATUMS.setState(true);
ConnectivityChecker.CONNECTIVITY_CONNECTIONS.setState(true);
ConnectivityChecker.CONNECTIVITY_EDGES.setState(true);

Back to the top