Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Willink2017-03-05 08:16:48 +0000
committerEd Willink2017-03-11 10:47:30 +0000
commitc71581c121d45b23d2f1c8ce47013b43aa13c4ac (patch)
tree6bfc2368aa22d782acb2dbde7321d9078b16c10a
parentefd0989b807a2727a024a01dbc192949ab99667f (diff)
downloadorg.eclipse.qvtd-c71581c121d45b23d2f1c8ce47013b43aa13c4ac.tar.gz
org.eclipse.qvtd-c71581c121d45b23d2f1c8ce47013b43aa13c4ac.tar.xz
org.eclipse.qvtd-c71581c121d45b23d2f1c8ce47013b43aa13c4ac.zip
[512737] Ensure all realized edges contribute to an AssignmentRegion
-rw-r--r--plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/partitioner/Partitioner.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/partitioner/Partitioner.java b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/partitioner/Partitioner.java
index 0a9c28359..93519712c 100644
--- a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/partitioner/Partitioner.java
+++ b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/partitioner/Partitioner.java
@@ -533,11 +533,22 @@ public class Partitioner
regions.add(createSpeculationRegion());
regions.add(createSpeculatedRegion());
}
+ //
+ // Create an AssignmentRegion for each to-be-realized edge to an output, which may also realize most trace edges too.
+ //
for (@NonNull Edge outputEdge : realizedOutputEdges) {
if (!hasRealizedEdge(outputEdge)) {
regions.add(createAssignmentRegion(outputEdge, regions.size()));
}
}
+ //
+ // Create an AssignmentRegion for each still to-be-realized edge to an output.
+ //
+ for (@NonNull Edge edge : realizedEdges) {
+ if (!hasRealizedEdge(edge)) {
+ regions.add(createAssignmentRegion(edge, regions.size()));
+ }
+ }
check();
}
}

Back to the top