blob: 508c870012835c20bbd34e29cb336e652fd5121b [file] [log] [blame]
transformation iteratetest;
modeltype ECORE uses 'http://www.eclipse.org/emf/2002/Ecore';
mapping main(in root: ecore::EPackage): ecore::EPackage {
name := 'iteratetest';
eSubpackages += object ecore::EPackage {
name := 'explicit';
eClassifiers := root.eClassifiers->iterate(c; set1 : OrderedSet(ecore::EClassifier) = OrderedSet {} |
set1->including(object ecore::EClass { name := c.name })->asOrderedSet())
};
eSubpackages += object ecore::EPackage {
name := 'implicit';
var tmp := root.eClassifiers->iterate(set2 : OrderedSet(String) = OrderedSet {} |
set2->including(name)->asOrderedSet());
eClassifiers := tmp->iterate(c; set2 : OrderedSet(ecore::EClassifier) = OrderedSet {} |
set2->including(object ecore::EClass { name := c })->asOrderedSet())
};
}