| transformation equndefined; |
| |
| modeltype ECORE uses 'http://www.eclipse.org/emf/2002/Ecore'; |
| |
| mapping main(in model: ecore::EPackage): ecore::EPackage { |
| end { |
| var int : Integer := 1; |
| var real : Real := 2.0; |
| var str : String := ''; |
| var bool : Boolean := true; |
| var bag : Bag(Integer) := Bag{1}; |
| var set : Set(Integer) := Set{1}; |
| var oset : OrderedSet(Integer) := OrderedSet{1}; |
| var seq : Sequence(Integer) := Sequence{1}; |
| |
| result.eClassifiers += test(invalid = model, '=model'); |
| result.eClassifiers += test(model = invalid, 'model='); |
| result.eClassifiers += test(invalid = int, '=int'); |
| result.eClassifiers += test(int = invalid, 'int='); |
| result.eClassifiers += test(invalid = real, '=real'); |
| result.eClassifiers += test(real = invalid, 'real='); |
| result.eClassifiers += test(invalid = str, '=str'); |
| result.eClassifiers += test(str = invalid, 'str='); |
| result.eClassifiers += test(invalid = bool, '=bool'); |
| result.eClassifiers += test(bool = invalid, 'bool='); |
| --result.eClassifiers += test(Invalid = bag, '=bag'); |
| result.eClassifiers += test(bag = invalid, 'bag='); |
| --result.eClassifiers += test(invalid = set, '=set'); |
| result.eClassifiers += test(set = invalid, 'set='); |
| --result.eClassifiers += test(invalid = oset, '=oset'); |
| result.eClassifiers += test(oset = invalid, 'oset='); |
| --result.eClassifiers += test(invalid = seq, '=seq'); |
| result.eClassifiers += test(seq = invalid, 'seq='); |
| |
| result.eClassifiers += test(invalid <> model, '<>model'); |
| result.eClassifiers += test(model <> invalid, 'model<>'); |
| result.eClassifiers += test(invalid <> int, '<>int'); |
| result.eClassifiers += test(int <> invalid, 'int<>'); |
| result.eClassifiers += test(invalid <> real, '<>real'); |
| result.eClassifiers += test(real <> invalid, 'real<>'); |
| result.eClassifiers += test(invalid <> str, '<>str'); |
| result.eClassifiers += test(str <> invalid, 'str<>'); |
| result.eClassifiers += test(invalid <> bool, '<>bool'); |
| result.eClassifiers += test(bool <> invalid, 'bool<>'); |
| --result.eClassifiers += test(invalid <> bag, '<>bag'); |
| result.eClassifiers += test(bag <> invalid, 'bag<>'); |
| --result.eClassifiers += test(invalid <> set, '<>set'); |
| result.eClassifiers += test(set <> invalid, 'set<>'); |
| --result.eClassifiers += test(invalid <> oset, '<>oset'); |
| result.eClassifiers += test(oset <> invalid, 'oset<>'); |
| --result.eClassifiers += test(invalid <> seq, '<>seq'); |
| result.eClassifiers += test(seq <> invalid, 'seq<>'); |
| } |
| } |
| |
| mapping test(in b : Boolean, in s : String) : ecore::EClass { |
| name := s + ': ' + if b.oclIsUndefined() then 'undef' else if b then 'true' else 'false' endif endif; |
| } |