diff options
Diffstat (limited to 'plugins/uml/alf/org.eclipse.papyrus.uml.alf/syntax-gen/org/eclipse/papyrus/uml/alf/impl/alf.ecore')
-rw-r--r-- | plugins/uml/alf/org.eclipse.papyrus.uml.alf/syntax-gen/org/eclipse/papyrus/uml/alf/impl/alf.ecore | 38 |
1 files changed, 16 insertions, 22 deletions
diff --git a/plugins/uml/alf/org.eclipse.papyrus.uml.alf/syntax-gen/org/eclipse/papyrus/uml/alf/impl/alf.ecore b/plugins/uml/alf/org.eclipse.papyrus.uml.alf/syntax-gen/org/eclipse/papyrus/uml/alf/impl/alf.ecore index b0e8c6c06e5..1df2f678b5b 100644 --- a/plugins/uml/alf/org.eclipse.papyrus.uml.alf/syntax-gen/org/eclipse/papyrus/uml/alf/impl/alf.ecore +++ b/plugins/uml/alf/org.eclipse.papyrus.uml.alf/syntax-gen/org/eclipse/papyrus/uml/alf/impl/alf.ecore @@ -1147,22 +1147,12 @@ </eOperations>
<eOperations name="properties" upperBound="-1" eType="#//ElementReference">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 if not self.isClassifier() then OrderedSet(ElementReference){}
 else if self.isAssociation() then
 -- NOTE: This is to ensure proper ordering.
 self.memberEnds()->appendAll(self.parents().properties()->asOrderedSet())
 else
 self.element.oclAsType(uml::Classifier).allAttributes()->
 collect(a | ExternalElementReference{element = a})->
 asOrderedSet()
 endif endif"/>
- </eAnnotations>
- </eOperations>
- <eOperations name="memberEnds" upperBound="-1" eType="#//ElementReference">
- <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 if not self.isAssociation() then OrderedSet(ElementReference){}
 else
 self.element.oclAsType(uml::Association).memberEnd->
 collect(e | ExternalElementReference{element = e})->
 asOrderedSet()
 endif"/>
+ <details key="body" value="
 if not self.isClassifier() then OrderedSet(ElementReference){}
 else if self.isAssociation() then 
 	self.members()->select(isProperty())
 else
 self.element.oclAsType(uml::Classifier).allAttributes()->
 collect(a | ExternalElementReference{element = a})->
 asOrderedSet()
 endif endif"/>
</eAnnotations>
</eOperations>
<eOperations name="associationEnds" upperBound="-1" eType="#//ElementReference">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 -- NOTE: This is to ensure proper ordering.
 self.ownedEnds()->appendAll(self.parents().associationEnds()->asOrderedSet())"/>
- </eAnnotations>
- </eOperations>
- <eOperations name="ownedEnds" upperBound="-1" eType="#//ElementReference">
- <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 if not self.isAssociation() then OrderedSet(ElementReference){}
 else
 self.element.oclAsType(uml::Association).ownedEnd->
 collect(e | ExternalElementReference{element = e})->
 asOrderedSet()
 endif"/>
+ <details key="body" value="
		if not self.isAssociation() then OrderedSet(ElementReference){}
		else 
			self.element.oclAsType(uml::Association).ownedEnd->
 collect(e | ExternalElementReference{element = e})->
 asOrderedSet()
		endif"/>
</eAnnotations>
</eOperations>
<eOperations name="opposite" eType="#//ElementReference">
@@ -1634,6 +1624,16 @@ <details key="body" value="self.boundReferencesTo(self.referent.nestedClassifiers())->asOrderedSet()"/>
</eAnnotations>
</eOperations>
+ <eOperations name="properties" upperBound="-1" eType="#//ElementReference">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
+ <details key="body" value="self.boundReferencesTo(self.referent.properties())->asOrderedSet()"/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="associationEnds" upperBound="-1" eType="#//ElementReference">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
+ <details key="body" value="self.boundReferencesTo(self.referent.associationEnds())->asOrderedSet()"/>
+ </eAnnotations>
+ </eOperations>
<eOperations name="opposite" eType="#//ElementReference">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="body" value="
 self.boundReferenceTo(self.referent.opposite())"/>
@@ -3369,7 +3369,7 @@ </eOperations>
<eOperations name="InvocationExpression_parameterElements" upperBound="-1" eType="#//ElementReference">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 let referent = self.referent in
 if self.isBehavior or self.isOperation then
 referent.parameters()
 else if self.isAssociationEnd then
 let association = referent.association() in
 association.properties()->reject(equals(referent))->
 collect(p | self.parameterFromPropertyWithMultiplicity(p, '1', '1'))->asOrderedSet()
 else if referent <> null then
 referent.properties()->
 collect(p | self.parameterFromProperty(p))->asOrderedSet() 
 else
 OrderedSet(ElementReference){}
 endif endif endif"/>
+ <details key="body" value="
 let referent = self.referent in
 if self.isBehavior or self.isOperation then
 referent.parameters()
 else if self.isAssociationEnd then
 let association = referent.association() in
 association.associationEnds()->reject(equals(referent))->
 collect(p | self.parameterFromPropertyWithMultiplicity(p, '1', '1'))->asOrderedSet()
 else if referent <> null then
 referent.properties()->
 collect(p | self.parameterFromProperty(p))->asOrderedSet() 
 else
 OrderedSet(ElementReference){}
 endif endif endif"/>
</eAnnotations>
</eOperations>
<eOperations name="parameterFromProperty" lowerBound="1" eType="#//ElementReference">
@@ -4233,7 +4233,7 @@ </eOperations>
<eOperations name="linkOperationExpressionAssociationReference" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="self.referent <> null"/>
+ <details key="body" value="
	self.referent <> null and 
	-- Also check that the association owns all its ends.
	self.referent.properties()->forAll(isAssociationEnd())"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context">
@@ -4257,7 +4257,7 @@ </eOperations>
<eOperations name="parameterElements" upperBound="-1" eType="#//ElementReference">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 if self.isClear then
 OrderedSet(ElementReference){
 FormalParameter{
 direction = 'in',
 typePart = TypedElementDefinition{
 lowerBound = '1',
 upperBound = '1'
 }
 }.toReference()
 }
 else
 let referent = self.referent in
 if referent = null then OrderedSet(ElementReference){}
 else
 self.referent.properties()->collect(property | 
 -- NOTE: Arguments for a link operation have multiplicity 1..1.
 parameterFromPropertyWithMultiplicity(property, '1', '1')
 )->asOrderedSet()
 endif
 endif"/>
+ <details key="body" value="
 if self.isClear then
 OrderedSet(ElementReference){
 FormalParameter{
 direction = 'in',
 typePart = TypedElementDefinition{
 lowerBound = '1',
 upperBound = '1'
 }
 }.toReference()
 }
 else
 let referent = self.referent in
 if referent = null then OrderedSet(ElementReference){}
 else
 self.referent.associationEnds()->collect(property | 
 -- NOTE: Arguments for a link operation have multiplicity 1..1.
 parameterFromPropertyWithMultiplicity(property, '1', '1')
 )->asOrderedSet()
 endif
 endif"/>
</eAnnotations>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operation" lowerBound="1"
@@ -5678,12 +5678,6 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="isBitStringConversion"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" volatile="true"
transient="true" derived="true">
- <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
- <details key="body" value="FeatureInvocationExpression"/>
- </eAnnotations>
- <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
- <details key="body" value="FeatureInvocationExpression"/>
- </eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="derivation" value="self.isIntegerType(self.operand.type)"/>
</eAnnotations>
@@ -5801,7 +5795,7 @@ </eOperations>
<eOperations name="behaviorInvocationExpressionReferentConstraint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
- <details key="body" value="
 self.isImplicit or 
 let referent = self.referent in
 referent <> null and 
 -- NOTE: This check prevents the invocation from disambiguating to an 
 -- illegal constructor invocation.
 not referent.isConstructor()"/>
+ <details key="body" value="
 self.isImplicit or 
 let referent = self.referent in
 referent <> null and 
 -- NOTE: This check prevents the invocation from disambiguating to an 
 -- illegal constructor invocation.
 not referent.isConstructor() and
 -- Also check that the association owns all its ends.
 referent.isAssociationEnd() implies
 	referent.association().properties()->forAll(isAssociationEnd())"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context">
|