Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'tests/org.eclipse.m2m.atl.emftvm.tests/test-data/PrimitiveTypeLazyRuleTest.atl')
-rw-r--r--tests/org.eclipse.m2m.atl.emftvm.tests/test-data/PrimitiveTypeLazyRuleTest.atl21
1 files changed, 12 insertions, 9 deletions
diff --git a/tests/org.eclipse.m2m.atl.emftvm.tests/test-data/PrimitiveTypeLazyRuleTest.atl b/tests/org.eclipse.m2m.atl.emftvm.tests/test-data/PrimitiveTypeLazyRuleTest.atl
index f8aee241..34b6eef8 100644
--- a/tests/org.eclipse.m2m.atl.emftvm.tests/test-data/PrimitiveTypeLazyRuleTest.atl
+++ b/tests/org.eclipse.m2m.atl.emftvm.tests/test-data/PrimitiveTypeLazyRuleTest.atl
@@ -13,7 +13,7 @@ rule EPackage {
eClassifiers <- s.eClassifiers
->select(c | c.oclIsKindOf(ECORE!EClass))
->collect(c | c.eStructuralFeatures
- ->collect(f | thisModule.CartesianEClass(c, f.name)))
+ ->collect(f | thisModule.CartesianEClassifier(c, f.name)))
->flatten())
do {
s.eClassifiers
@@ -21,19 +21,22 @@ rule EPackage {
->collect(c |
c.eStructuralFeatures->collect(f |
thisModule.assertNotOclUndefined(
- thisModule.resolveTemp(Sequence{c, f.name}, 'CartesianEClass', 't')
+ thisModule.resolveTemp(Sequence{c, f.name}, 'CartesianEClassifier', 't')
)
)
);
}
}
-unique lazy rule CartesianEClass {
- from s : ECORE!EClass,
+unique lazy abstract rule CartesianEClassifier {
+ from s : ECORE!EClassifier,
name : String
- to t : ECORE!EClass (
+ to t : ECORE!EClassifier (
name <- s.name + '_' + name)
- do {
- t;
- }
-} \ No newline at end of file
+}
+
+unique lazy rule CartesianEClass extends CartesianEClassifier {
+ from s : ECORE!EClass,
+ name : String
+ to t : ECORE!EClass
+}

Back to the top