-- @atlcompiler atl2006 -- Generated by: $Id: EModelCopyGenerator.atl 7412 2008-04-01 09:51:42Z dwagelaa $ module EModelCopy; create OUT : OUTMODEL from IN : INMODEL; helper def : inElements : Set(INMODEL!"ecore::EObject") = INMODEL!"ecore::EObject".allInstancesFrom('IN'); rule EAttribute { from s : INMODEL!"ecore::EAttribute" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EAttribute" mapsTo s ( name <- s.name, ordered <- s.ordered, unique <- s.unique, lowerBound <- s.lowerBound, upperBound <- s.upperBound, changeable <- s.changeable, volatile <- s.volatile, transient <- s.transient, defaultValueLiteral <- s.defaultValueLiteral, unsettable <- s.unsettable, "derived" <- s."derived", iD <- s.iD, eAnnotations <- s.eAnnotations, eType <- s.eType, eGenericType <- s.eGenericType) } rule EAnnotation { from s : INMODEL!"ecore::EAnnotation" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EAnnotation" mapsTo s ( source <- s.source, eAnnotations <- s.eAnnotations, details <- s.details, contents <- s.contents, references <- s.references) } rule EClass { from s : INMODEL!"ecore::EClass" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EClass" mapsTo s ( name <- s.name, instanceClassName <- s.instanceClassName, instanceTypeName <- s.instanceTypeName, "abstract" <- s."abstract", interface <- s.interface, eAnnotations <- s.eAnnotations, eTypeParameters <- s.eTypeParameters, eSuperTypes <- s.eSuperTypes, eOperations <- s.eOperations, eStructuralFeatures <- s.eStructuralFeatures, eGenericSuperTypes <- s.eGenericSuperTypes) } rule EDataType { from s : INMODEL!"ecore::EDataType" ( if thisModule.inElements->includes(s) then s.oclIsTypeOf(INMODEL!"ecore::EDataType") else false endif) to t : OUTMODEL!"ecore::EDataType" mapsTo s ( name <- s.name, instanceClassName <- s.instanceClassName, instanceTypeName <- s.instanceTypeName, serializable <- s.serializable, eAnnotations <- s.eAnnotations, eTypeParameters <- s.eTypeParameters) } rule EEnum { from s : INMODEL!"ecore::EEnum" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EEnum" mapsTo s ( name <- s.name, instanceClassName <- s.instanceClassName, instanceTypeName <- s.instanceTypeName, serializable <- s.serializable, eAnnotations <- s.eAnnotations, eTypeParameters <- s.eTypeParameters, eLiterals <- s.eLiterals) } rule EEnumLiteral { from s : INMODEL!"ecore::EEnumLiteral" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EEnumLiteral" mapsTo s ( name <- s.name, value <- s.value, instance <- s.instance, literal <- s.literal, eAnnotations <- s.eAnnotations) } rule EObject { from s : INMODEL!"ecore::EObject" ( if thisModule.inElements->includes(s) then s.oclIsTypeOf(INMODEL!"ecore::EObject") else false endif) to t : OUTMODEL!"ecore::EObject" mapsTo s () } rule EOperation { from s : INMODEL!"ecore::EOperation" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EOperation" mapsTo s ( name <- s.name, ordered <- s.ordered, unique <- s.unique, lowerBound <- s.lowerBound, upperBound <- s.upperBound, eAnnotations <- s.eAnnotations, eType <- s.eType, eGenericType <- s.eGenericType, eTypeParameters <- s.eTypeParameters, eParameters <- s.eParameters, eExceptions <- s.eExceptions, eGenericExceptions <- s.eGenericExceptions) } rule EPackage { from s : INMODEL!"ecore::EPackage" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EPackage" mapsTo s ( name <- s.name, nsURI <- s.nsURI, nsPrefix <- s.nsPrefix, eAnnotations <- s.eAnnotations, eFactoryInstance <- s.eFactoryInstance, eClassifiers <- s.eClassifiers, eSubpackages <- s.eSubpackages) } rule EParameter { from s : INMODEL!"ecore::EParameter" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EParameter" mapsTo s ( name <- s.name, ordered <- s.ordered, unique <- s.unique, lowerBound <- s.lowerBound, upperBound <- s.upperBound, eAnnotations <- s.eAnnotations, eType <- s.eType, eGenericType <- s.eGenericType) } rule EReference { from s : INMODEL!"ecore::EReference" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EReference" mapsTo s ( name <- s.name, ordered <- s.ordered, unique <- s.unique, lowerBound <- s.lowerBound, upperBound <- s.upperBound, changeable <- s.changeable, volatile <- s.volatile, transient <- s.transient, defaultValueLiteral <- s.defaultValueLiteral, unsettable <- s.unsettable, "derived" <- s."derived", containment <- s.containment, resolveProxies <- s.resolveProxies, eAnnotations <- s.eAnnotations, eType <- s.eType, eGenericType <- s.eGenericType, eOpposite <- s.eOpposite, eKeys <- s.eKeys) } rule EStringToStringMapEntry { from s : INMODEL!"ecore::EStringToStringMapEntry" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EStringToStringMapEntry" mapsTo s ( key <- s.key, value <- s.value) } rule EGenericType { from s : INMODEL!"ecore::EGenericType" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::EGenericType" mapsTo s ( eUpperBound <- s.eUpperBound, eTypeArguments <- s.eTypeArguments, eLowerBound <- s.eLowerBound, eTypeParameter <- s.eTypeParameter, eClassifier <- s.eClassifier) } rule ETypeParameter { from s : INMODEL!"ecore::ETypeParameter" (thisModule.inElements->includes(s)) to t : OUTMODEL!"ecore::ETypeParameter" mapsTo s ( name <- s.name, eAnnotations <- s.eAnnotations, eBounds <- s.eBounds) }