| modeltype ecore uses ecore('http://www.eclipse.org/emf/2002/Ecore'); |
| |
| transformation NewTransformation(in model : ecore, out ecore); |
| |
| main(in inModel : ecore::EPackage) { |
| var a := null; |
| compute (s : String = 'a') { |
| s := s + 'b'; |
| s := s + 'c'; |
| }; |
| s := s + 'd'; |
| inModel.map toEPackage(s); |
| } |
| |
| mapping EPackage::toEPackage(in s : String) : EPackage { |
| name := compute (s1 : String = s) { |
| s1 := s1 + 'e'; |
| s1 := s1 + 'f'; |
| }; |
| name := result.name + s1; |
| name := compute (s2 : String = s) { |
| s1 := s1 + 'e'; |
| s1 := s1 + 'f'; |
| }; |
| name := result.name + /*@*/s1; |
| } |