diff options
author | Ed Willink | 2017-07-10 10:40:37 +0000 |
---|---|---|
committer | Ed Willink | 2017-07-10 10:44:14 +0000 |
commit | e2e86c5f2b36359c5d3860f0d6f50f755285840f (patch) | |
tree | 4547d4621e01114fc31a8b3195e8b7b352064b12 | |
parent | e7442af005e05075b15a0b8906995232ae49a54e (diff) | |
download | org.eclipse.qvtd-e2e86c5f2b36359c5d3860f0d6f50f755285840f.tar.gz org.eclipse.qvtd-e2e86c5f2b36359c5d3860f0d6f50f755285840f.tar.xz org.eclipse.qvtd-e2e86c5f2b36359c5d3860f0d6f50f755285840f.zip |
wip
78 files changed, 1290 insertions, 1170 deletions
diff --git a/doc/org.eclipse.qvtd.doc.miniocl/emf-gen/org/eclipse/qvtd/doc/miniocl/lookup/impl/LookupEnvironmentImpl.java b/doc/org.eclipse.qvtd.doc.miniocl/emf-gen/org/eclipse/qvtd/doc/miniocl/lookup/impl/LookupEnvironmentImpl.java index 09f8dae87..2b4e9095e 100644 --- a/doc/org.eclipse.qvtd.doc.miniocl/emf-gen/org/eclipse/qvtd/doc/miniocl/lookup/impl/LookupEnvironmentImpl.java +++ b/doc/org.eclipse.qvtd.doc.miniocl/emf-gen/org/eclipse/qvtd/doc/miniocl/lookup/impl/LookupEnvironmentImpl.java @@ -19,7 +19,7 @@ import org.eclipse.ocl.pivot.evaluation.Executor; import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal; import org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation; import org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation; -import org.eclipse.ocl.pivot.values.OrderedSetValue; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.qvtd.doc.miniocl.NamedElement; import org.eclipse.qvtd.doc.miniocl.lookup.EnvironmentPackage; import org.eclipse.qvtd.doc.miniocl.lookup.EnvironmentTables; @@ -84,6 +84,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public EList<NamedElement> getNamedElements() { if (namedElements == null) { namedElements = new EObjectResolvingEList<NamedElement>(NamedElement.class, this, EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS); @@ -96,6 +97,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public LookupEnvironment getParentEnv() { if (parentEnv != null && parentEnv.eIsProxy()) { InternalEObject oldParentEnv = (InternalEObject)parentEnv; @@ -122,6 +124,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public void setParentEnv(LookupEnvironment newParentEnv) { LookupEnvironment oldParentEnv = parentEnv; parentEnv = newParentEnv; @@ -134,9 +137,10 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public <NE extends NamedElement> LookupEnvironment addElements(final Collection<NE> elements) { /** - * + * * LookupEnvironment{ * namedElements = namedElements->includingAll(elements), parentEnv = parentEnv * } @@ -149,7 +153,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen final /*@Thrown*/ org.eclipse.qvtd.doc.miniocl.lookup.@NonNull LookupEnvironment symbol_0 = (LookupEnvironment)TYP_lookup_c_c_LookupEnvironment_0.createInstance(); @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<NamedElement> namedElements = this.getNamedElements(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); + final /*@Thrown*/ @NonNull CollectionValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_elements = idResolver.createCollectionOfAll(EnvironmentTables.COL_TMPLid_, elements); final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue includingAll = CollectionIncludingAllOperation.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements); final List<? extends Object> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, Object.class); @@ -165,9 +169,10 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public LookupEnvironment addElements(final NamedElement elements) { /** - * + * * LookupEnvironment{ * namedElements = namedElements->including(elements), parentEnv = parentEnv * } @@ -180,8 +185,8 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen final /*@Thrown*/ org.eclipse.qvtd.doc.miniocl.lookup.@NonNull LookupEnvironment symbol_0 = (LookupEnvironment)TYP_lookup_c_c_LookupEnvironment_0.createInstance(); @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<NamedElement> namedElements = this.getNamedElements(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue including = (OrderedSetValue)CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, elements); + final /*@Thrown*/ @NonNull CollectionValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); + final /*@Thrown*/ @NonNull CollectionValue including = CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, elements); final List<NamedElement> UNBOXED_including = including.asEcoreObjects(idResolver, NamedElement.class); assert UNBOXED_including != null; CTORid_namedElements.initValue(symbol_0, UNBOXED_including); @@ -195,6 +200,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public boolean hasFinalResult() { throw new UnsupportedOperationException("LookupEnvironment::hasFinalResult() has been created for CG purposes. Don't call this method"); } @@ -204,6 +210,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen * <!-- end-user-doc --> * @generated */ + @Override public Executor getExecutor() { throw new UnsupportedOperationException("LookupEnvironment::getEvaluator() has been created for CG purposes. Don't call this method"); } @@ -216,11 +223,11 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: - return getNamedElements(); - case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: - if (resolve) return getParentEnv(); - return basicGetParentEnv(); + case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: + return getNamedElements(); + case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: + if (resolve) return getParentEnv(); + return basicGetParentEnv(); } return super.eGet(featureID, resolve, coreType); } @@ -234,13 +241,13 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: - getNamedElements().clear(); - getNamedElements().addAll((Collection<? extends NamedElement>)newValue); - return; - case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: - setParentEnv((LookupEnvironment)newValue); - return; + case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: + getNamedElements().clear(); + getNamedElements().addAll((Collection<? extends NamedElement>)newValue); + return; + case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: + setParentEnv((LookupEnvironment)newValue); + return; } super.eSet(featureID, newValue); } @@ -253,12 +260,12 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen @Override public void eUnset(int featureID) { switch (featureID) { - case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: - getNamedElements().clear(); - return; - case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: - setParentEnv((LookupEnvironment)null); - return; + case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: + getNamedElements().clear(); + return; + case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: + setParentEnv((LookupEnvironment)null); + return; } super.eUnset(featureID); } @@ -271,10 +278,10 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen @Override public boolean eIsSet(int featureID) { switch (featureID) { - case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: - return namedElements != null && !namedElements.isEmpty(); - case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: - return parentEnv != null; + case EnvironmentPackage.LOOKUP_ENVIRONMENT__NAMED_ELEMENTS: + return namedElements != null && !namedElements.isEmpty(); + case EnvironmentPackage.LOOKUP_ENVIRONMENT__PARENT_ENV: + return parentEnv != null; } return super.eIsSet(featureID); } @@ -288,14 +295,14 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen @SuppressWarnings({"rawtypes", "unchecked" }) public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException { switch (operationID) { - case EnvironmentPackage.LOOKUP_ENVIRONMENT___ADD_ELEMENTS__COLLECTION: - return addElements((Collection)arguments.get(0)); - case EnvironmentPackage.LOOKUP_ENVIRONMENT___ADD_ELEMENTS__NAMEDELEMENT: - return addElements((NamedElement)arguments.get(0)); - case EnvironmentPackage.LOOKUP_ENVIRONMENT___HAS_FINAL_RESULT: - return hasFinalResult(); - case EnvironmentPackage.LOOKUP_ENVIRONMENT___GET_EXECUTOR: - return getExecutor(); + case EnvironmentPackage.LOOKUP_ENVIRONMENT___ADD_ELEMENTS__COLLECTION: + return addElements((Collection)arguments.get(0)); + case EnvironmentPackage.LOOKUP_ENVIRONMENT___ADD_ELEMENTS__NAMEDELEMENT: + return addElements((NamedElement)arguments.get(0)); + case EnvironmentPackage.LOOKUP_ENVIRONMENT___HAS_FINAL_RESULT: + return hasFinalResult(); + case EnvironmentPackage.LOOKUP_ENVIRONMENT___GET_EXECUTOR: + return getExecutor(); } return super.eInvoke(operationID, arguments); } diff --git a/doc/org.eclipse.qvtd.doc.minioclcs.xtext/src-gen/org/eclipse/qvtd/doc/minioclcs/xtext/library/model/RootObjectsOperation.java b/doc/org.eclipse.qvtd.doc.minioclcs.xtext/src-gen/org/eclipse/qvtd/doc/minioclcs/xtext/library/model/RootObjectsOperation.java index a047dc974..0418c8d77 100644 --- a/doc/org.eclipse.qvtd.doc.minioclcs.xtext/src-gen/org/eclipse/qvtd/doc/minioclcs/xtext/library/model/RootObjectsOperation.java +++ b/doc/org.eclipse.qvtd.doc.minioclcs.xtext/src-gen/org/eclipse/qvtd/doc/minioclcs/xtext/library/model/RootObjectsOperation.java @@ -1,10 +1,10 @@ /** * This file was copied and re-packaged automatically by * org.eclipse.qvtd.doc.miniocl.build.MiniOCLBuildEverything - * from + * from * ..\..\plugins\org.eclipse.qvtd.runtime\src\org\eclipse\qvtd\runtime\library\model\RootObjectsOperation.java * - * Do not edit this file. + * Do not edit this file. */ /******************************************************************************* * Copyright (c) 2015, 2016 Willink Transformations and others. diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Domain.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Domain.java index 1d1c127e7..8ae9ebb8b 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Domain.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Domain.java @@ -211,7 +211,7 @@ public interface Domain extends NamedElement, ReferringElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='TypedModelIsTransformationModelParameter'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv TypedModelIsTransformationModelParameter:\n * let\n * severity : Integer[1] = \'Domain::TypedModelIsTransformationModelParameter\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = oclContainer()\n * .oclIsKindOf(Transformation) and typedModel <> null implies\n * oclContainer()\n * .oclAsType(Transformation)\n * .modelParameter->includes(typedModel)\n * in\n * \'Domain::TypedModelIsTransformationModelParameter\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Domain_c_c_TypedModelIsTransformationModelParameter);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_and;\n\t\ttry {\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_oclIsKindOf;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtbase_c_c_Transformation = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Transformation, null);\n\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object oclContainer = <%org.eclipse.ocl.pivot.library.classifier.ClassifierOclContainerOperation%>.INSTANCE.evaluate(executor, this);\n\t\t\t\tfinal /*@Thrown\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, oclContainer, TYP_qvtbase_c_c_Transformation).booleanValue();\n\t\t\t\tCAUGHT_oclIsKindOf = oclIsKindOf;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_oclIsKindOf = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> TypedModel typedModel = this.getTypedModel();\n\t\t\tfinal /*@NonInvalid\052/ boolean ne = typedModel != null;\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean and = <%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%>.INSTANCE.evaluate(CAUGHT_oclIsKindOf, ne);\n\t\t\tCAUGHT_and = and;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_and = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_includes;\n\t\ttry {\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtbase_c_c_Transformation_0 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Transformation, null);\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object oclContainer_0 = <%org.eclipse.ocl.pivot.library.classifier.ClassifierOclContainerOperation%>.INSTANCE.evaluate(executor, this);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Transformation oclAsType = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.qvtd.pivot.qvtbase.Transformation%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, oclContainer_0, TYP_qvtbase_c_c_Transformation_0));\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = oclAsType.getModelParameter();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> TypedModel typedModel_0 = this.getTypedModel();\n\t\t\tfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(BOXED_modelParameter, typedModel_0).booleanValue();\n\t\t\tCAUGHT_includes = includes;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_includes = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean result = <%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%>.INSTANCE.evaluate(CAUGHT_and, CAUGHT_includes);\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Domain_c_c_TypedModelIsTransformationModelParameter, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv TypedModelIsTransformationModelParameter:\n * let\n * severity : Integer[1] = \'Domain::TypedModelIsTransformationModelParameter\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = oclContainer()\n * .oclIsKindOf(Transformation) and typedModel <> null implies\n * oclContainer()\n * .oclAsType(Transformation)\n * .modelParameter->includes(typedModel)\n * in\n * \'Domain::TypedModelIsTransformationModelParameter\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Domain_c_c_TypedModelIsTransformationModelParameter);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_and;\n\t\ttry {\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_oclIsKindOf;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtbase_c_c_Transformation = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Transformation, null);\n\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object oclContainer = <%org.eclipse.ocl.pivot.library.classifier.ClassifierOclContainerOperation%>.INSTANCE.evaluate(executor, this);\n\t\t\t\tfinal /*@Thrown\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, oclContainer, TYP_qvtbase_c_c_Transformation).booleanValue();\n\t\t\t\tCAUGHT_oclIsKindOf = oclIsKindOf;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_oclIsKindOf = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> TypedModel typedModel = this.getTypedModel();\n\t\t\tfinal /*@NonInvalid\052/ boolean ne = typedModel != null;\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean and = <%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%>.INSTANCE.evaluate(CAUGHT_oclIsKindOf, ne);\n\t\t\tCAUGHT_and = and;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_and = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_includes;\n\t\ttry {\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtbase_c_c_Transformation_0 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Transformation, null);\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object oclContainer_0 = <%org.eclipse.ocl.pivot.library.classifier.ClassifierOclContainerOperation%>.INSTANCE.evaluate(executor, this);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Transformation oclAsType = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.qvtd.pivot.qvtbase.Transformation%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, oclContainer_0, TYP_qvtbase_c_c_Transformation_0));\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = oclAsType.getModelParameter();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> TypedModel typedModel_0 = this.getTypedModel();\n\t\t\tfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(BOXED_modelParameter, typedModel_0).booleanValue();\n\t\t\tCAUGHT_includes = includes;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_includes = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean result = <%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%>.INSTANCE.evaluate(CAUGHT_and, CAUGHT_includes);\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Domain_c_c_TypedModelIsTransformationModelParameter, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateTypedModelIsTransformationModelParameter(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Function.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Function.java index 277e798d4..1ba128b33 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Function.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Function.java @@ -63,7 +63,7 @@ public interface Function extends Operation { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='ParametersAreFunctionParameter'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv ParametersAreFunctionParameter:\n * let\n * severity : Integer[1] = \'Function::ParametersAreFunctionParameter\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = ownedParameters->forAll(\n * oclIsKindOf(FunctionParameter))\n * in\n * \'Function::ParametersAreFunctionParameter\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Function_c_c_ParametersAreFunctionParameter);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Parameter%>> ownedParameters = this.getOwnedParameters();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_ownedParameters = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Parameter, ownedParameters);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_ownedParameters.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Parameter _1 = (<%org.eclipse.ocl.pivot.Parameter%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(FunctionParameter)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtbase_c_c_FunctionParameter = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_FunctionParameter, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtbase_c_c_FunctionParameter).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Function_c_c_ParametersAreFunctionParameter, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv ParametersAreFunctionParameter:\n * let\n * severity : Integer[1] = \'Function::ParametersAreFunctionParameter\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = ownedParameters->forAll(\n * oclIsKindOf(FunctionParameter))\n * in\n * \'Function::ParametersAreFunctionParameter\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Function_c_c_ParametersAreFunctionParameter);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Parameter%>> ownedParameters = this.getOwnedParameters();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_ownedParameters = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Parameter, ownedParameters);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_ownedParameters.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Parameter _1 = (<%org.eclipse.ocl.pivot.Parameter%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(FunctionParameter)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtbase_c_c_FunctionParameter = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_FunctionParameter, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtbase_c_c_FunctionParameter).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Function_c_c_ParametersAreFunctionParameter, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateParametersAreFunctionParameter(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/QVTbasePackage.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/QVTbasePackage.java index 1b7b225d2..6f3c64abc 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/QVTbasePackage.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/QVTbasePackage.java @@ -825,6 +825,15 @@ public interface QVTbasePackage extends EPackage { int FUNCTION_PARAMETER__TYPE = PivotPackage.PARAMETER__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_PARAMETER__CACHE_NEEDED = PivotPackage.PARAMETER__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Rule.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Rule.java index b513ceb45..ddba033d1 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Rule.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Rule.java @@ -164,7 +164,7 @@ public interface Rule extends NamedElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='DomainNameIsUnique'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv DomainNameIsUnique:\n * let severity : Integer[1] = \'Rule::DomainNameIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[1] = domain->isUnique(name)\n * in\n * \'Rule::DomainNameIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_DomainNameIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = this.getDomain();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain, domain);\n\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.iterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * name\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t//\n\t\t\tif (accumulator.includes(name) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse {\n\t\t\t\taccumulator.add(name);\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_DomainNameIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv DomainNameIsUnique:\n * let severity : Integer[1] = \'Rule::DomainNameIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[1] = domain->isUnique(name)\n * in\n * \'Rule::DomainNameIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_DomainNameIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = this.getDomain();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain, domain);\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.lazyIterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * name\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t//\n\t\t\tif (accumulator.includes(name) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse {\n\t\t\t\taccumulator.mutableIncluding(name);\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_DomainNameIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateDomainNameIsUnique(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -173,7 +173,7 @@ public interface Rule extends NamedElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='NoOverridesCycle'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv NoOverridesCycle:\n * let severity : Integer[1] = \'Rule::NoOverridesCycle\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = overridden->closure(overridden)\n * ->excludes(self)\n * in\n * \'Rule::NoOverridesCycle\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> StandardLibrary standardLibrary = idResolver.getStandardLibrary();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_NoOverridesCycle);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule overridden = this.getOverridden();\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue oclAsSet = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Rule, overridden);\n\t\tfinal org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet);\n\t\tfinal <%org.eclipse.ocl.pivot.library.LibraryIteration%>.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (<%org.eclipse.ocl.pivot.library.LibraryIteration%>.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, <%org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables%>.Operations._Set__closure);\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Rule, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Rule);\n\t\t/**\n\t\t * Implementation of the iterator body.\n\t\t \052/\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%> BODY_closure_0 = new <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%>()\n\t\t{\n\t\t\t/**\n\t\t\t * overridden\n\t\t\t \052/\n\t\t\t@Override\n\t\t\tpublic @<%org.eclipse.jdt.annotation.Nullable%> Object evaluate(final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.evaluation.Executor%> executor, final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.ids.TypeId%> typeId, final @<%org.eclipse.jdt.annotation.Nullable%> Object oclAsSet, final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object _1) {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule symbol_0 = (<%org.eclipse.qvtd.pivot.qvtbase.Rule%>)_1;\n\t\t\t\tif (symbol_0 == null) {\n\t\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Rule::overridden\\\'\");\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule overridden_0 = symbol_0.getOverridden();\n\t\t\t\treturn overridden_0;\n\t\t\t}\n\t\t};\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%> MGR_closure_0 = new <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%>(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Rule, BODY_closure_0, oclAsSet, ACC_closure_0);\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue closure = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.values.SetValue%>)IMPL_closure_0.evaluateIteration(MGR_closure_0));\n\t\tfinal /*@Thrown\052/ boolean result = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesOperation%>.INSTANCE.evaluate(closure, this).booleanValue();\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_NoOverridesCycle, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv NoOverridesCycle:\n * let severity : Integer[1] = \'Rule::NoOverridesCycle\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = overridden->closure(overridden)\n * ->excludes(self)\n * in\n * \'Rule::NoOverridesCycle\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> StandardLibrary standardLibrary = idResolver.getStandardLibrary();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_NoOverridesCycle);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule overridden = this.getOverridden();\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue oclAsSet = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Rule, overridden);\n\t\tfinal org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet);\n\t\tfinal <%org.eclipse.ocl.pivot.library.LibraryIteration%>.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (<%org.eclipse.ocl.pivot.library.LibraryIteration%>.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, <%org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables%>.Operations._Set__closure);\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Rule, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Rule);\n\t\t/**\n\t\t * Implementation of the iterator body.\n\t\t \052/\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%> BODY_closure_0 = new <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%>()\n\t\t{\n\t\t\t/**\n\t\t\t * overridden\n\t\t\t \052/\n\t\t\t@Override\n\t\t\tpublic @<%org.eclipse.jdt.annotation.Nullable%> Object evaluate(final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.evaluation.Executor%> executor, final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.ids.TypeId%> typeId, final @<%org.eclipse.jdt.annotation.Nullable%> Object oclAsSet, final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object _1) {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule symbol_0 = (<%org.eclipse.qvtd.pivot.qvtbase.Rule%>)_1;\n\t\t\t\tif (symbol_0 == null) {\n\t\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Rule::overridden\\\'\");\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule overridden_0 = symbol_0.getOverridden();\n\t\t\t\treturn overridden_0;\n\t\t\t}\n\t\t};\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%> MGR_closure_0 = new <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%>(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Rule, BODY_closure_0, oclAsSet, ACC_closure_0);\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue closure = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.values.CollectionValue%>)IMPL_closure_0.evaluateIteration(MGR_closure_0));\n\t\tfinal /*@Thrown\052/ boolean result = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesOperation%>.INSTANCE.evaluate(closure, this).booleanValue();\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_NoOverridesCycle, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'" * @generated */ boolean validateNoOverridesCycle(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -182,7 +182,7 @@ public interface Rule extends NamedElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='OverridingRuleOverridesAllDomains'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv OverridingRuleOverridesAllDomains:\n * let\n * severity : Integer[1] = \'Rule::OverridingRuleOverridesAllDomains\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = overridden <> null implies\n * overridden.domain->forAll(od |\n * self.domain.name->includes(od.name))\n * in\n * \'Rule::OverridingRuleOverridesAllDomains\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_OverridingRuleOverridesAllDomains);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule overridden = this.getOverridden();\n\t\tfinal /*@NonInvalid\052/ boolean ne = overridden != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (overridden == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Rule::domain\\\'\");\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = overridden.getDomain();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain, domain);\n\t\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR_od = BOXED_domain.iterator();\n\t\t\t/*@Thrown\052/ boolean forAll;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR_od.hasNext()) {\n\t\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain od = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR_od.next();\n\t\t\t\t/**\n\t\t\t\t * self.domain.name->includes(od.name)\n\t\t\t\t \052/\n\t\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_includes;\n\t\t\t\ttry {\n\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain_0 = this.getDomain();\n\t\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_domain_0 = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain, domain_0);\n\t\t\t\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SequenceValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSequenceAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SEQ_PRIMid_String);\n\t\t\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain_0.iterator();\n\t\t\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SequenceValue collect;\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\t\t\tcollect = accumulator_0;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t\t\t\t\t/**\n\t\t\t\t\t\t * name\n\t\t\t\t\t\t \052/\n\t\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t\t\t\t//\n\t\t\t\t\t\taccumulator_0.add(name);\n\t\t\t\t\t}\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = od.getName();\n\t\t\t\t\tfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(collect, name_0).booleanValue();\n\t\t\t\t\tCAUGHT_includes = includes;\n\t\t\t\t}\n\t\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\t\tCAUGHT_includes = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t\t}\n\t\t\t\t//\n\t\t\t\tif (CAUGHT_includes == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t\t}\n\t\t\t\telse if (CAUGHT_includes == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t\t}\n\t\t\t\telse if (CAUGHT_includes instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\t\taccumulator = CAUGHT_includes;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t\t}\n\t\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tresult = forAll;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_OverridingRuleOverridesAllDomains, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv OverridingRuleOverridesAllDomains:\n * let\n * severity : Integer[1] = \'Rule::OverridingRuleOverridesAllDomains\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = overridden <> null implies\n * overridden.domain->forAll(od |\n * self.domain.name->includes(od.name))\n * in\n * \'Rule::OverridingRuleOverridesAllDomains\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_OverridingRuleOverridesAllDomains);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Rule overridden = this.getOverridden();\n\t\tfinal /*@NonInvalid\052/ boolean ne = overridden != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (overridden == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Rule::domain\\\'\");\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = overridden.getDomain();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain, domain);\n\t\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR_od = BOXED_domain.eagerIterator();\n\t\t\t/*@Thrown\052/ boolean forAll;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR_od.hasNext()) {\n\t\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain od = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR_od.next();\n\t\t\t\t/**\n\t\t\t\t * self.domain.name->includes(od.name)\n\t\t\t\t \052/\n\t\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_includes;\n\t\t\t\ttry {\n\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain_0 = this.getDomain();\n\t\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_domain_0 = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_Domain, domain_0);\n\t\t\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SEQ_PRIMid_String);\n\t\t\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain_0.lazyIterator();\n\t\t\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\t\t\tcollect = accumulator_0;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t\t\t\t\t/**\n\t\t\t\t\t\t * name\n\t\t\t\t\t\t \052/\n\t\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t\t\t\t//\n\t\t\t\t\t\taccumulator_0.mutableIncluding(name);\n\t\t\t\t\t}\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = od.getName();\n\t\t\t\t\tfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(collect, name_0).booleanValue();\n\t\t\t\t\tCAUGHT_includes = includes;\n\t\t\t\t}\n\t\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\t\tCAUGHT_includes = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t\t}\n\t\t\t\t//\n\t\t\t\tif (CAUGHT_includes == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t\t}\n\t\t\t\telse if (CAUGHT_includes == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t\t}\n\t\t\t\telse if (CAUGHT_includes instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\t\taccumulator = CAUGHT_includes;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t\t}\n\t\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tresult = forAll;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Rule_c_c_OverridingRuleOverridesAllDomains, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateOverridingRuleOverridesAllDomains(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Transformation.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Transformation.java index 021ea19bc..dea6c2b1c 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Transformation.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/Transformation.java @@ -178,7 +178,7 @@ public interface Transformation extends org.eclipse.ocl.pivot.Class { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='ExtendedTypedModelIsExtended'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv ExtendedTypedModelIsExtended:\n * let\n * severity : Integer[1] = \'Transformation::ExtendedTypedModelIsExtended\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = extends <> null implies\n * extends.modelParameter->forAll(etm |\n * self.modelParameter->select(name = etm.name)\n * .usedPackage->includesAll(etm.usedPackage))\n * in\n * \'Transformation::ExtendedTypedModelIsExtended\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ExtendedTypedModelIsExtended);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_2;\nif (le) {\n\tsymbol_2 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation symbol_0 = this.getExtends();\n\t\tfinal /*@NonInvalid\052/ boolean ne = symbol_0 != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (symbol_0 == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Transformation::modelParameter\\\'\");\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = symbol_0.getModelParameter();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR_etm = BOXED_modelParameter.iterator();\n\t\t\t/*@Thrown\052/ boolean forAll;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR_etm.hasNext()) {\n\t\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel etm = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR_etm.next();\n\t\t\t\t/**\n\t\t\t\t *\n\t\t\t\t * self.modelParameter->select(name = etm.name)\n\t\t\t\t * .usedPackage->includesAll(etm.usedPackage)\n\t\t\t\t \052/\n\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter_0 = this.getModelParameter();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_modelParameter_0 = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter_0);\n\t\t\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createOrderedSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel);\n\t\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_modelParameter_0.iterator();\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue select;\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\t\tselect = accumulator_0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1.next();\n\t\t\t\t\t/**\n\t\t\t\t\t * name = etm.name\n\t\t\t\t\t \052/\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = etm.getName();\n\t\t\t\t\tfinal /*@NonInvalid\052/ boolean eq = (name != null) ? name.equals(name_0) : (name_0 == null);\n\t\t\t\t\t//\n\t\t\t\t\tif (eq == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\t\taccumulator_0.add(_1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SequenceValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSequenceAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SEQ_CLSSid_Package);\n\t\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1_0 = select.iterator();\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SequenceValue collect;\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (!ITERATOR__1_0.hasNext()) {\n\t\t\t\t\t\tcollect = accumulator_1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1_0 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1_0.next();\n\t\t\t\t\t/**\n\t\t\t\t\t * usedPackage\n\t\t\t\t\t \052/\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Package%>> usedPackage = _1_0.getUsedPackage();\n\t\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_usedPackage = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Package, usedPackage);\n\t\t\t\t\t//\n\t\t\t\t\tfor (Object value : BOXED_usedPackage.flatten().getElements()) {\n\t\t\t\t\t\taccumulator_1.add(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Package%>> usedPackage_0 = etm.getUsedPackage();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_usedPackage_0 = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Package, usedPackage_0);\n\t\t\t\tfinal /*@NonInvalid\052/ boolean includesAll = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesAllOperation%>.INSTANCE.evaluate(collect, BOXED_usedPackage_0).booleanValue();\n\t\t\t\t//\n\t\t\t\tif (includesAll == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t\t}\n\t\t\t\telse if (includesAll == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t\t}\n\t\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tresult = forAll;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ExtendedTypedModelIsExtended, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_2 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_2;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv ExtendedTypedModelIsExtended:\n * let\n * severity : Integer[1] = \'Transformation::ExtendedTypedModelIsExtended\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = extends <> null implies\n * extends.modelParameter->forAll(etm |\n * self.modelParameter->select(name = etm.name)\n * .usedPackage->includesAll(etm.usedPackage))\n * in\n * \'Transformation::ExtendedTypedModelIsExtended\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ExtendedTypedModelIsExtended);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation extends_ = this.getExtends();\n\t\tfinal /*@NonInvalid\052/ boolean ne = extends_ != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (extends_ == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Transformation::modelParameter\\\'\");\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = extends_.getModelParameter();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR_etm = BOXED_modelParameter.eagerIterator();\n\t\t\t/*@Thrown\052/ boolean forAll;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR_etm.hasNext()) {\n\t\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel etm = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR_etm.next();\n\t\t\t\t/**\n\t\t\t\t *\n\t\t\t\t * self.modelParameter->select(name = etm.name)\n\t\t\t\t * .usedPackage->includesAll(etm.usedPackage)\n\t\t\t\t \052/\n\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter_0 = this.getModelParameter();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_modelParameter_0 = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter_0);\n\t\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel);\n\t\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_modelParameter_0.lazyIterator();\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue select;\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\t\tselect = accumulator_0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1.next();\n\t\t\t\t\t/**\n\t\t\t\t\t * name = etm.name\n\t\t\t\t\t \052/\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = etm.getName();\n\t\t\t\t\tfinal /*@NonInvalid\052/ boolean eq = (name != null) ? name.equals(name_0) : (name_0 == null);\n\t\t\t\t\t//\n\t\t\t\t\tif (eq == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\t\taccumulator_0.mutableIncluding(_1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SEQ_CLSSid_Package);\n\t\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1_0 = select.lazyIterator();\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (!ITERATOR__1_0.hasNext()) {\n\t\t\t\t\t\tcollect = accumulator_1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1_0 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1_0.next();\n\t\t\t\t\t/**\n\t\t\t\t\t * usedPackage\n\t\t\t\t\t \052/\n\t\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Package%>> usedPackage = _1_0.getUsedPackage();\n\t\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_usedPackage = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Package, usedPackage);\n\t\t\t\t\t//\n\t\t\t\t\tfor (Object value : BOXED_usedPackage.flatten().getElements()) {\n\t\t\t\t\t\taccumulator_1.mutableIncluding(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Package%>> usedPackage_0 = etm.getUsedPackage();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_usedPackage_0 = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Package, usedPackage_0);\n\t\t\t\tfinal /*@NonInvalid\052/ boolean includesAll = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesAllOperation%>.INSTANCE.evaluate(collect, BOXED_usedPackage_0).booleanValue();\n\t\t\t\t//\n\t\t\t\tif (includesAll == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\t\tforAll = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t\t}\n\t\t\t\telse if (includesAll == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t\t}\n\t\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tresult = forAll;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ExtendedTypedModelIsExtended, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateExtendedTypedModelIsExtended(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -187,7 +187,7 @@ public interface Transformation extends org.eclipse.ocl.pivot.Class { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='ModelParameterIsUnique'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv ModelParameterIsUnique:\n * let\n * severity : Integer[1] = \'Transformation::ModelParameterIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[1] = modelParameter->isUnique(name)\n * in\n * \'Transformation::ModelParameterIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ModelParameterIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = this.getModelParameter();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_modelParameter.iterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * name\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t//\n\t\t\tif (accumulator.includes(name) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse {\n\t\t\t\taccumulator.add(name);\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ModelParameterIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv ModelParameterIsUnique:\n * let\n * severity : Integer[1] = \'Transformation::ModelParameterIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[1] = modelParameter->isUnique(name)\n * in\n * \'Transformation::ModelParameterIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ModelParameterIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = this.getModelParameter();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.ORD_CLSSid_TypedModel);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_modelParameter.lazyIterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * name\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = _1.getName();\n\t\t\t//\n\t\t\tif (accumulator.includes(name) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse {\n\t\t\t\taccumulator.mutableIncluding(name);\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_ModelParameterIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateModelParameterIsUnique(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -196,7 +196,7 @@ public interface Transformation extends org.eclipse.ocl.pivot.Class { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='NoExtendsCycle'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv NoExtendsCycle:\n * let severity : Integer[1] = \'Transformation::NoExtendsCycle\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = extends->closure(extends)\n * ->excludes(self)\n * in\n * \'Transformation::NoExtendsCycle\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> StandardLibrary standardLibrary = idResolver.getStandardLibrary();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_NoExtendsCycle);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_3;\nif (le) {\n\tsymbol_3 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation symbol_0 = this.getExtends();\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue oclAsSet = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Transformation, symbol_0);\n\t\tfinal org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet);\n\t\tfinal <%org.eclipse.ocl.pivot.library.LibraryIteration%>.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (<%org.eclipse.ocl.pivot.library.LibraryIteration%>.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, <%org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables%>.Operations._Set__closure);\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Transformation, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Transformation);\n\t\t/**\n\t\t * Implementation of the iterator body.\n\t\t \052/\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%> BODY_closure_0 = new <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%>()\n\t\t{\n\t\t\t/**\n\t\t\t * extends\n\t\t\t \052/\n\t\t\t@Override\n\t\t\tpublic @<%org.eclipse.jdt.annotation.Nullable%> Object evaluate(final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.evaluation.Executor%> executor, final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.ids.TypeId%> typeId, final @<%org.eclipse.jdt.annotation.Nullable%> Object oclAsSet, final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object _1) {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation symbol_1 = (<%org.eclipse.qvtd.pivot.qvtbase.Transformation%>)_1;\n\t\t\t\tif (symbol_1 == null) {\n\t\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Transformation::extends\\\'\");\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation symbol_2 = symbol_1.getExtends();\n\t\t\t\treturn symbol_2;\n\t\t\t}\n\t\t};\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%> MGR_closure_0 = new <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%>(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Transformation, BODY_closure_0, oclAsSet, ACC_closure_0);\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue closure = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.values.SetValue%>)IMPL_closure_0.evaluateIteration(MGR_closure_0));\n\t\tfinal /*@Thrown\052/ boolean result = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesOperation%>.INSTANCE.evaluate(closure, this).booleanValue();\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_NoExtendsCycle, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_3 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_3;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv NoExtendsCycle:\n * let severity : Integer[1] = \'Transformation::NoExtendsCycle\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = extends->closure(extends)\n * ->excludes(self)\n * in\n * \'Transformation::NoExtendsCycle\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> StandardLibrary standardLibrary = idResolver.getStandardLibrary();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_NoExtendsCycle);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation extends_ = this.getExtends();\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue oclAsSet = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Transformation, extends_);\n\t\tfinal org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet);\n\t\tfinal <%org.eclipse.ocl.pivot.library.LibraryIteration%>.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (<%org.eclipse.ocl.pivot.library.LibraryIteration%>.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, <%org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables%>.Operations._Set__closure);\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Transformation, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.CLSSid_Transformation);\n\t\t/**\n\t\t * Implementation of the iterator body.\n\t\t \052/\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%> BODY_closure_0 = new <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%>()\n\t\t{\n\t\t\t/**\n\t\t\t * extends\n\t\t\t \052/\n\t\t\t@Override\n\t\t\tpublic @<%org.eclipse.jdt.annotation.Nullable%> Object evaluate(final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.evaluation.Executor%> executor, final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.ids.TypeId%> typeId, final @<%org.eclipse.jdt.annotation.Nullable%> Object oclAsSet, final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object _1) {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation symbol_0 = (<%org.eclipse.qvtd.pivot.qvtbase.Transformation%>)_1;\n\t\t\t\tif (symbol_0 == null) {\n\t\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Transformation::extends\\\'\");\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.Nullable%> Transformation extends__0 = symbol_0.getExtends();\n\t\t\t\treturn extends__0;\n\t\t\t}\n\t\t};\n\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%> MGR_closure_0 = new <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%>(executor, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.SET_CLSSid_Transformation, BODY_closure_0, oclAsSet, ACC_closure_0);\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue closure = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.values.CollectionValue%>)IMPL_closure_0.evaluateIteration(MGR_closure_0));\n\t\tfinal /*@Thrown\052/ boolean result = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesOperation%>.INSTANCE.evaluate(closure, this).booleanValue();\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.STR_Transformation_c_c_NoExtendsCycle, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables%>.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'" * @generated */ boolean validateNoExtendsCycle(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/DomainImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/DomainImpl.java index b2aa01824..16c0cef51 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/DomainImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/DomainImpl.java @@ -454,7 +454,7 @@ public abstract class DomainImpl extends NamedElementImpl implements Domain { final /*@NonInvalid*/ java.lang.@Nullable Object oclContainer_0 = ClassifierOclContainerOperation.INSTANCE.evaluate(executor, this); final /*@Thrown*/ org.eclipse.qvtd.pivot.qvtbase.@NonNull Transformation oclAsType = ClassUtil.nonNullState((Transformation)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, oclContainer_0, TYP_qvtbase_c_c_Transformation_0)); final /*@Thrown*/ java.util.@NonNull List<TypedModel> modelParameter = oclAsType.getModelParameter(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter); final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable TypedModel typedModel_0 = this.getTypedModel(); final /*@Thrown*/ boolean includes = CollectionIncludesOperation.INSTANCE.evaluate(BOXED_modelParameter, typedModel_0).booleanValue(); CAUGHT_includes = includes; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/FunctionImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/FunctionImpl.java index 0566ee089..1512c5c39 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/FunctionImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/FunctionImpl.java @@ -168,9 +168,9 @@ public class FunctionImpl extends OperationImpl implements Function { } else { final /*@NonInvalid*/ java.util.@NonNull List<Parameter> ownedParameters = this.getOwnedParameters(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedParameters = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Parameter, ownedParameters); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedParameters = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Parameter, ownedParameters); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedParameters.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedParameters.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbaseFactoryImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbaseFactoryImpl.java index f92188fd3..b68723659 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbaseFactoryImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbaseFactoryImpl.java @@ -16,6 +16,7 @@ import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.impl.EFactoryImpl; import org.eclipse.emf.ecore.plugin.EcorePlugin; import org.eclipse.jdt.annotation.NonNull; +import org.eclipse.qvtd.pivot.qvtbase.*; import org.eclipse.qvtd.pivot.qvtbase.BaseModel; import org.eclipse.qvtd.pivot.qvtbase.Function; import org.eclipse.qvtd.pivot.qvtbase.FunctionParameter; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbasePackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbasePackageImpl.java index 5e61a1443..6fc493263 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbasePackageImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/QVTbasePackageImpl.java @@ -130,7 +130,7 @@ public class QVTbasePackageImpl extends EPackageImpl implements QVTbasePackage { /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. - * + * * <p>This method is used to initialize {@link QVTbasePackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> @@ -160,18 +160,17 @@ public class QVTbasePackageImpl extends EPackageImpl implements QVTbasePackage { // Register package validator EValidator.Registry.INSTANCE.put - (theQVTbasePackage, - new EValidator.Descriptor() { - @Override - public EValidator getEValidator() { - return QVTbaseValidator.INSTANCE; - } - }); + (theQVTbasePackage, + new EValidator.Descriptor() { + public EValidator getEValidator() { + return QVTbaseValidator.INSTANCE; + } + }); // Mark meta-data to indicate it can't be changed theQVTbasePackage.freeze(); - + // Update the registry and return the package EPackage.Registry.INSTANCE.put(QVTbasePackage.eNS_URI, theQVTbasePackage); return theQVTbasePackage; @@ -939,12 +938,12 @@ public class QVTbasePackageImpl extends EPackageImpl implements QVTbasePackage { * @generated */ protected void createEcoreAnnotations() { - String source = "http://www.eclipse.org/emf/2002/Ecore"; + String source = "http://www.eclipse.org/emf/2002/Ecore"; addAnnotation - (this, - source, - new String[] { - }); + (this, + source, + new String[] { + }); } /** @@ -954,25 +953,25 @@ public class QVTbasePackageImpl extends EPackageImpl implements QVTbasePackage { * @generated */ protected void createEmofAnnotations() { - String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; + String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; addAnnotation - (getPredicate_ConditionExpression(), - source, - new String[] { - "body", "predicate" - }); + (getPredicate_ConditionExpression(), + source, + new String[] { + "body", "predicate" + }); addAnnotation - (getTransformation_Extends(), - source, - new String[] { - "body", "extendedBy" - }); + (getTransformation_Extends(), + source, + new String[] { + "body", "extendedBy" + }); addAnnotation - (getTypedModel_DependsOn(), - source, - new String[] { - "body", "dependent" - }); + (getTypedModel_DependsOn(), + source, + new String[] { + "body", "dependent" + }); } /** @@ -982,79 +981,79 @@ public class QVTbasePackageImpl extends EPackageImpl implements QVTbasePackage { * @generated */ protected void createUMLAnnotations() { - String source = "http://www.eclipse.org/uml2/2.0.0/UML"; + String source = "http://www.eclipse.org/uml2/2.0.0/UML"; addAnnotation - (getDomain__ValidateNameIsTypedModelName__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "NameIsTypedModelName" - }); + (getDomain__ValidateNameIsTypedModelName__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "NameIsTypedModelName" + }); addAnnotation - (getDomain__ValidateTypedModelIsTransformationModelParameter__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "TypedModelIsTransformationModelParameter" - }); + (getDomain__ValidateTypedModelIsTransformationModelParameter__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "TypedModelIsTransformationModelParameter" + }); addAnnotation - (getFunction__ValidateParametersAreFunctionParameter__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "ParametersAreFunctionParameter" - }); + (getFunction__ValidateParametersAreFunctionParameter__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "ParametersAreFunctionParameter" + }); addAnnotation - (getFunction__ValidateReturnTypeIsQueryType__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "ReturnTypeIsQueryType" - }); + (getFunction__ValidateReturnTypeIsQueryType__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "ReturnTypeIsQueryType" + }); addAnnotation - (getPredicate__ValidateConditionIsBoolean__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "ConditionIsBoolean" - }); + (getPredicate__ValidateConditionIsBoolean__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "ConditionIsBoolean" + }); addAnnotation - (getRule__ValidateDomainNameIsUnique__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "DomainNameIsUnique" - }); + (getRule__ValidateDomainNameIsUnique__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "DomainNameIsUnique" + }); addAnnotation - (getRule__ValidateNoOverridesCycle__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "NoOverridesCycle" - }); + (getRule__ValidateNoOverridesCycle__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "NoOverridesCycle" + }); addAnnotation - (getRule__ValidateOverridingRuleOverridesAllDomains__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "OverridingRuleOverridesAllDomains" - }); + (getRule__ValidateOverridingRuleOverridesAllDomains__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "OverridingRuleOverridesAllDomains" + }); addAnnotation - (getTransformation__ValidateContextTypeIsTransformation__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "ContextTypeIsTransformation" - }); + (getTransformation__ValidateContextTypeIsTransformation__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "ContextTypeIsTransformation" + }); addAnnotation - (getTransformation__ValidateExtendedTypedModelIsExtended__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "ExtendedTypedModelIsExtended" - }); + (getTransformation__ValidateExtendedTypedModelIsExtended__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "ExtendedTypedModelIsExtended" + }); addAnnotation - (getTransformation__ValidateModelParameterIsUnique__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "ModelParameterIsUnique" - }); + (getTransformation__ValidateModelParameterIsUnique__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "ModelParameterIsUnique" + }); addAnnotation - (getTransformation__ValidateNoExtendsCycle__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "NoExtendsCycle" - }); + (getTransformation__ValidateNoExtendsCycle__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "NoExtendsCycle" + }); } } //QVTbasePackageImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/RuleImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/RuleImpl.java index d1fd76bb6..aae6a0368 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/RuleImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/RuleImpl.java @@ -45,9 +45,8 @@ import org.eclipse.ocl.pivot.messages.PivotMessages; import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SequenceValue; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvtbase.Domain; import org.eclipse.qvtd.pivot.qvtbase.QVTbasePackage; import org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables; @@ -328,9 +327,9 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Domain> domain = this.getDomain(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Domain, domain); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTbaseTables.ORD_CLSSid_Domain); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Domain, domain); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTbaseTables.ORD_CLSSid_Domain); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -349,7 +348,7 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; @@ -398,7 +397,7 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { /*@Caught*/ @NonNull Object CAUGHT_result; try { final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Rule overridden = this.getOverridden(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, QVTbaseTables.SET_CLSSid_Rule, overridden); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, QVTbaseTables.SET_CLSSid_Rule, overridden); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, QVTbaseTables.SET_CLSSid_Rule, QVTbaseTables.CLSSid_Rule); @@ -420,7 +419,7 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0 = new ExecutorSingleIterationManager(executor, QVTbaseTables.SET_CLSSid_Rule, BODY_closure_0, oclAsSet, ACC_closure_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); final /*@Thrown*/ boolean result = CollectionExcludesOperation.INSTANCE.evaluate(closure, this).booleanValue(); CAUGHT_result = result; } @@ -476,9 +475,9 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<Domain> domain = overridden.getDomain(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Domain, domain); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Domain, domain); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR_od = BOXED_domain.iterator(); + @NonNull Iterator<Object> ITERATOR_od = BOXED_domain.eagerIterator(); /*@Thrown*/ boolean forAll; while (true) { if (!ITERATOR_od.hasNext()) { @@ -499,10 +498,10 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Domain> domain_0 = this.getDomain(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_domain_0 = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Domain, domain_0); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSequenceAccumulatorValue(QVTbaseTables.SEQ_PRIMid_String); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain_0.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_domain_0 = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_Domain, domain_0); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(QVTbaseTables.SEQ_PRIMid_String); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain_0.lazyIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1.hasNext()) { collect = accumulator_0; @@ -515,7 +514,7 @@ public abstract class RuleImpl extends NamedElementImpl implements Rule { */ final /*@NonInvalid*/ java.lang.@Nullable String name = _1.getName(); // - accumulator_0.add(name); + accumulator_0.mutableIncluding(name); } final /*@NonInvalid*/ java.lang.@Nullable String name_0 = od.getName(); final /*@Thrown*/ boolean includes = CollectionIncludesOperation.INSTANCE.evaluate(collect, name_0).booleanValue(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/TransformationImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/TransformationImpl.java index ebf4c2473..cce671fc2 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/TransformationImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/impl/TransformationImpl.java @@ -48,10 +48,8 @@ import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.NameUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.OrderedSetValue; -import org.eclipse.ocl.pivot.values.SequenceValue; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvtbase.Function; import org.eclipse.qvtd.pivot.qvtbase.QVTbasePackage; import org.eclipse.qvtd.pivot.qvtbase.QVTbaseTables; @@ -555,24 +553,24 @@ public class TransformationImpl extends ClassImpl implements Transformation { final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull IdResolver idResolver = executor.getIdResolver(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue severity_0 = CGStringGetSeverityOperation.INSTANCE.evaluate(executor, QVTbaseTables.STR_Transformation_c_c_ExtendedTypedModelIsExtended); final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, QVTbaseTables.INT_0).booleanValue(); - /*@NonInvalid*/ boolean symbol_2; + /*@NonInvalid*/ boolean symbol_0; if (le) { - symbol_2 = ValueUtil.TRUE_VALUE; + symbol_0 = ValueUtil.TRUE_VALUE; } else { /*@Caught*/ @NonNull Object CAUGHT_result; try { - final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation symbol_0 = this.getExtends(); - final /*@NonInvalid*/ boolean ne = symbol_0 != null; + final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation extends_ = this.getExtends(); + final /*@NonInvalid*/ boolean ne = extends_ != null; /*@Thrown*/ boolean result; if (ne) { - if (symbol_0 == null) { + if (extends_ == null) { throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/2015/QVTbase\'::Transformation::modelParameter\'"); } - final /*@Thrown*/ java.util.@NonNull List<TypedModel> modelParameter = symbol_0.getModelParameter(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter); + final /*@Thrown*/ java.util.@NonNull List<TypedModel> modelParameter = extends_.getModelParameter(); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR_etm = BOXED_modelParameter.iterator(); + @NonNull Iterator<Object> ITERATOR_etm = BOXED_modelParameter.eagerIterator(); /*@Thrown*/ boolean forAll; while (true) { if (!ITERATOR_etm.hasNext()) { @@ -592,10 +590,10 @@ public class TransformationImpl extends ClassImpl implements Transformation { * .usedPackage->includesAll(etm.usedPackage) */ final /*@NonInvalid*/ java.util.@NonNull List<TypedModel> modelParameter_0 = this.getModelParameter(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_modelParameter_0 = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter_0); - /*@Thrown*/ OrderedSetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createOrderedSetAccumulatorValue(QVTbaseTables.ORD_CLSSid_TypedModel); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_modelParameter_0.iterator(); - /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue select; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_modelParameter_0 = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter_0); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(QVTbaseTables.ORD_CLSSid_TypedModel); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_modelParameter_0.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select; while (true) { if (!ITERATOR__1.hasNext()) { select = accumulator_0; @@ -611,12 +609,12 @@ public class TransformationImpl extends ClassImpl implements Transformation { final /*@NonInvalid*/ boolean eq = (name != null) ? name.equals(name_0) : (name_0 == null); // if (eq == ValueUtil.TRUE_VALUE) { - accumulator_0.add(_1); + accumulator_0.mutableIncluding(_1); } } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_1 = ValueUtil.createSequenceAccumulatorValue(QVTbaseTables.SEQ_CLSSid_Package); - @NonNull Iterator<Object> ITERATOR__1_0 = select.iterator(); - /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_1 = ValueUtil.createCollectionAccumulatorValue(QVTbaseTables.SEQ_CLSSid_Package); + @NonNull Iterator<Object> ITERATOR__1_0 = select.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1_0.hasNext()) { collect = accumulator_1; @@ -628,14 +626,14 @@ public class TransformationImpl extends ClassImpl implements Transformation { * usedPackage */ final /*@NonInvalid*/ java.util.@NonNull List<org.eclipse.ocl.pivot.Package> usedPackage = _1_0.getUsedPackage(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_usedPackage = idResolver.createSetOfAll(QVTbaseTables.SET_CLSSid_Package, usedPackage); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_usedPackage = idResolver.createSetOfAll(QVTbaseTables.SET_CLSSid_Package, usedPackage); // for (Object value : BOXED_usedPackage.flatten().getElements()) { - accumulator_1.add(value); + accumulator_1.mutableIncluding(value); } } final /*@NonInvalid*/ java.util.@NonNull List<org.eclipse.ocl.pivot.Package> usedPackage_0 = etm.getUsedPackage(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_usedPackage_0 = idResolver.createSetOfAll(QVTbaseTables.SET_CLSSid_Package, usedPackage_0); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_usedPackage_0 = idResolver.createSetOfAll(QVTbaseTables.SET_CLSSid_Package, usedPackage_0); final /*@NonInvalid*/ boolean includesAll = CollectionIncludesAllOperation.INSTANCE.evaluate(collect, BOXED_usedPackage_0).booleanValue(); // if (includesAll == ValueUtil.FALSE_VALUE) { // Normal unsuccessful body evaluation result @@ -660,9 +658,9 @@ public class TransformationImpl extends ClassImpl implements Transformation { CAUGHT_result = ValueUtil.createInvalidValue(e); } final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, QVTbaseTables.STR_Transformation_c_c_ExtendedTypedModelIsExtended, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, QVTbaseTables.INT_0).booleanValue(); - symbol_2 = logDiagnostic; + symbol_0 = logDiagnostic; } - return Boolean.TRUE == symbol_2; + return Boolean.TRUE == symbol_0; } /** @@ -698,9 +696,9 @@ public class TransformationImpl extends ClassImpl implements Transformation { /*@Caught*/ @NonNull Object CAUGHT_result; try { final /*@NonInvalid*/ java.util.@NonNull List<TypedModel> modelParameter = this.getModelParameter(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTbaseTables.ORD_CLSSid_TypedModel); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_modelParameter.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTbaseTables.ORD_CLSSid_TypedModel, modelParameter); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTbaseTables.ORD_CLSSid_TypedModel); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_modelParameter.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -719,7 +717,7 @@ public class TransformationImpl extends ClassImpl implements Transformation { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; @@ -760,15 +758,15 @@ public class TransformationImpl extends ClassImpl implements Transformation { final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull StandardLibrary standardLibrary = idResolver.getStandardLibrary(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue severity_0 = CGStringGetSeverityOperation.INSTANCE.evaluate(executor, QVTbaseTables.STR_Transformation_c_c_NoExtendsCycle); final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, QVTbaseTables.INT_0).booleanValue(); - /*@NonInvalid*/ boolean symbol_3; + /*@NonInvalid*/ boolean symbol_1; if (le) { - symbol_3 = ValueUtil.TRUE_VALUE; + symbol_1 = ValueUtil.TRUE_VALUE; } else { /*@Caught*/ @NonNull Object CAUGHT_result; try { - final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation symbol_0 = this.getExtends(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, QVTbaseTables.SET_CLSSid_Transformation, symbol_0); + final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation extends_ = this.getExtends(); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, QVTbaseTables.SET_CLSSid_Transformation, extends_); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, QVTbaseTables.SET_CLSSid_Transformation, QVTbaseTables.CLSSid_Transformation); @@ -781,16 +779,16 @@ public class TransformationImpl extends ClassImpl implements Transformation { */ @Override public @Nullable Object evaluate(final @NonNull Executor executor, final @NonNull TypeId typeId, final @Nullable Object oclAsSet, final /*@NonInvalid*/ java.lang.@Nullable Object _1) { - final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation symbol_1 = (Transformation)_1; - if (symbol_1 == null) { + final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation symbol_0 = (Transformation)_1; + if (symbol_0 == null) { throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/2015/QVTbase\'::Transformation::extends\'"); } - final /*@Thrown*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation symbol_2 = symbol_1.getExtends(); - return symbol_2; + final /*@Thrown*/ org.eclipse.qvtd.pivot.qvtbase.@Nullable Transformation extends__0 = symbol_0.getExtends(); + return extends__0; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0 = new ExecutorSingleIterationManager(executor, QVTbaseTables.SET_CLSSid_Transformation, BODY_closure_0, oclAsSet, ACC_closure_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); final /*@Thrown*/ boolean result = CollectionExcludesOperation.INSTANCE.evaluate(closure, this).booleanValue(); CAUGHT_result = result; } @@ -798,8 +796,8 @@ public class TransformationImpl extends ClassImpl implements Transformation { CAUGHT_result = ValueUtil.createInvalidValue(e); } final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, QVTbaseTables.STR_Transformation_c_c_NoExtendsCycle, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, QVTbaseTables.INT_0).booleanValue(); - symbol_3 = logDiagnostic; + symbol_1 = logDiagnostic; } - return Boolean.TRUE == symbol_3; + return Boolean.TRUE == symbol_1; } } //TransformationImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseAdapterFactory.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseAdapterFactory.java index 92577c2b9..7c7a353f9 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseAdapterFactory.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseAdapterFactory.java @@ -29,6 +29,7 @@ import org.eclipse.ocl.pivot.TypedElement; import org.eclipse.ocl.pivot.VariableDeclaration; import org.eclipse.ocl.pivot.util.Visitable; import org.eclipse.ocl.pivot.utilities.Nameable; +import org.eclipse.qvtd.pivot.qvtbase.*; import org.eclipse.qvtd.pivot.qvtbase.BaseModel; import org.eclipse.qvtd.pivot.qvtbase.Domain; import org.eclipse.qvtd.pivot.qvtbase.Function; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseSwitch.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseSwitch.java index e3582bda9..0f28f8bc8 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseSwitch.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseSwitch.java @@ -28,6 +28,7 @@ import org.eclipse.ocl.pivot.TypedElement; import org.eclipse.ocl.pivot.VariableDeclaration; import org.eclipse.ocl.pivot.util.Visitable; import org.eclipse.ocl.pivot.utilities.Nameable; +import org.eclipse.qvtd.pivot.qvtbase.*; import org.eclipse.qvtd.pivot.qvtbase.BaseModel; import org.eclipse.qvtd.pivot.qvtbase.Domain; import org.eclipse.qvtd.pivot.qvtbase.Function; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseValidator.java b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseValidator.java index 5a46c93c8..9c4107fef 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseValidator.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtbase/emf-gen/org/eclipse/qvtd/pivot/qvtbase/util/QVTbaseValidator.java @@ -21,6 +21,7 @@ import org.eclipse.emf.common.util.ResourceLocator; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.util.EObjectValidator; import org.eclipse.ocl.pivot.util.PivotValidator; +import org.eclipse.qvtd.pivot.qvtbase.*; import org.eclipse.qvtd.pivot.qvtbase.BaseModel; import org.eclipse.qvtd.pivot.qvtbase.Domain; import org.eclipse.qvtd.pivot.qvtbase.Function; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/BottomPattern.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/BottomPattern.java index 6771a432f..37ae99c04 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/BottomPattern.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/BottomPattern.java @@ -127,7 +127,7 @@ public interface BottomPattern extends CorePattern { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='VariablesAreBottomVariables'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv VariablesAreBottomVariables:\n * let\n * severity : Integer[1] = \'BottomPattern::VariablesAreBottomVariables\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = variable->forAll(\n * oclIsKindOf(BottomVariable))\n * in\n * \'BottomPattern::VariablesAreBottomVariables\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_BottomPattern_c_c_VariablesAreBottomVariables);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Variable%>> variable = this.getVariable();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_variable = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.SET_CLSSid_Variable, variable);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_variable.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Variable _1 = (<%org.eclipse.ocl.pivot.Variable%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(BottomVariable)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtcore_c_c_BottomVariable = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.CLSSid_BottomVariable, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtcore_c_c_BottomVariable).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_BottomPattern_c_c_VariablesAreBottomVariables, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv VariablesAreBottomVariables:\n * let\n * severity : Integer[1] = \'BottomPattern::VariablesAreBottomVariables\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = variable->forAll(\n * oclIsKindOf(BottomVariable))\n * in\n * \'BottomPattern::VariablesAreBottomVariables\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_BottomPattern_c_c_VariablesAreBottomVariables);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Variable%>> variable = this.getVariable();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_variable = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.SET_CLSSid_Variable, variable);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_variable.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Variable _1 = (<%org.eclipse.ocl.pivot.Variable%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(BottomVariable)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtcore_c_c_BottomVariable = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.CLSSid_BottomVariable, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtcore_c_c_BottomVariable).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_BottomPattern_c_c_VariablesAreBottomVariables, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateVariablesAreBottomVariables(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/GuardPattern.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/GuardPattern.java index 339c8672c..e9e39b87d 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/GuardPattern.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/GuardPattern.java @@ -69,7 +69,7 @@ public interface GuardPattern extends CorePattern { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='VariablesAreGuardVariables'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv VariablesAreGuardVariables:\n * let\n * severity : Integer[1] = \'GuardPattern::VariablesAreGuardVariables\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = variable->forAll(\n * oclIsKindOf(GuardVariable))\n * in\n * \'GuardPattern::VariablesAreGuardVariables\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_GuardPattern_c_c_VariablesAreGuardVariables);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Variable%>> variable = this.getVariable();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_variable = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.SET_CLSSid_Variable, variable);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_variable.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Variable _1 = (<%org.eclipse.ocl.pivot.Variable%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(GuardVariable)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtcore_c_c_GuardVariable = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.CLSSid_GuardVariable, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtcore_c_c_GuardVariable).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_GuardPattern_c_c_VariablesAreGuardVariables, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv VariablesAreGuardVariables:\n * let\n * severity : Integer[1] = \'GuardPattern::VariablesAreGuardVariables\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = variable->forAll(\n * oclIsKindOf(GuardVariable))\n * in\n * \'GuardPattern::VariablesAreGuardVariables\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_GuardPattern_c_c_VariablesAreGuardVariables);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Variable%>> variable = this.getVariable();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_variable = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.SET_CLSSid_Variable, variable);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_variable.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Variable _1 = (<%org.eclipse.ocl.pivot.Variable%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(GuardVariable)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtcore_c_c_GuardVariable = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.CLSSid_GuardVariable, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtcore_c_c_GuardVariable).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_GuardPattern_c_c_VariablesAreGuardVariables, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateVariablesAreGuardVariables(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/Mapping.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/Mapping.java index e4e7cde45..c6a93c082 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/Mapping.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/Mapping.java @@ -87,7 +87,7 @@ public interface Mapping extends Rule, Area { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='DomainsAreCoreDomains'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv DomainsAreCoreDomains:\n * let severity : Integer[1] = \'Mapping::DomainsAreCoreDomains\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = domain->forAll(oclIsKindOf(CoreDomain))\n * in\n * \'Mapping::DomainsAreCoreDomains\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_Mapping_c_c_DomainsAreCoreDomains);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = this.getDomain();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.ORD_CLSSid_Domain, domain);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(CoreDomain)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtcore_c_c_CoreDomain = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.CLSSid_CoreDomain, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtcore_c_c_CoreDomain).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_Mapping_c_c_DomainsAreCoreDomains, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv DomainsAreCoreDomains:\n * let severity : Integer[1] = \'Mapping::DomainsAreCoreDomains\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = domain->forAll(oclIsKindOf(CoreDomain))\n * in\n * \'Mapping::DomainsAreCoreDomains\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_Mapping_c_c_DomainsAreCoreDomains);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = this.getDomain();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.ORD_CLSSid_Domain, domain);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(CoreDomain)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtcore_c_c_CoreDomain = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.CLSSid_CoreDomain, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtcore_c_c_CoreDomain).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.STR_Mapping_c_c_DomainsAreCoreDomains, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtcore.QVTcoreTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateDomainsAreCoreDomains(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/QVTcorePackage.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/QVTcorePackage.java index 060226349..cf4558af7 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/QVTcorePackage.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/QVTcorePackage.java @@ -658,6 +658,15 @@ public interface QVTcorePackage extends EPackage { int BOTTOM_VARIABLE__TYPE = PivotPackage.VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOTTOM_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1401,6 +1410,15 @@ public interface QVTcorePackage extends EPackage { int GUARD_VARIABLE__TYPE = PivotPackage.VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GUARD_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2333,6 +2351,15 @@ public interface QVTcorePackage extends EPackage { int REALIZED_VARIABLE__TYPE = PivotPackage.VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int REALIZED_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/BottomPatternImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/BottomPatternImpl.java index 1f517032f..4d7cb1440 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/BottomPatternImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/BottomPatternImpl.java @@ -242,9 +242,9 @@ public class BottomPatternImpl extends CorePatternImpl implements BottomPattern else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Variable> variable = this.getVariable(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_variable = idResolver.createSetOfAll(QVTcoreTables.SET_CLSSid_Variable, variable); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_variable = idResolver.createSetOfAll(QVTcoreTables.SET_CLSSid_Variable, variable); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_variable.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_variable.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/GuardPatternImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/GuardPatternImpl.java index 1145c36e6..a45c27e57 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/GuardPatternImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/GuardPatternImpl.java @@ -161,9 +161,9 @@ public class GuardPatternImpl extends CorePatternImpl implements GuardPattern { else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Variable> variable = this.getVariable(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_variable = idResolver.createSetOfAll(QVTcoreTables.SET_CLSSid_Variable, variable); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_variable = idResolver.createSetOfAll(QVTcoreTables.SET_CLSSid_Variable, variable); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_variable.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_variable.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/MappingImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/MappingImpl.java index 2c56ac5bb..6063bc44f 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/MappingImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/MappingImpl.java @@ -271,9 +271,9 @@ public class MappingImpl extends RuleImpl implements Mapping { else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Domain> domain = this.getDomain(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTcoreTables.ORD_CLSSid_Domain, domain); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTcoreTables.ORD_CLSSid_Domain, domain); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/QVTcorePackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/QVTcorePackageImpl.java index 2c6c5d5c3..4f26c9b62 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/QVTcorePackageImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtcore/emf-gen/org/eclipse/qvtd/pivot/qvtcore/impl/QVTcorePackageImpl.java @@ -181,7 +181,7 @@ public class QVTcorePackageImpl extends EPackageImpl implements QVTcorePackage { /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. - * + * * <p>This method is used to initialize {@link QVTcorePackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> @@ -212,18 +212,17 @@ public class QVTcorePackageImpl extends EPackageImpl implements QVTcorePackage { // Register package validator EValidator.Registry.INSTANCE.put - (theQVTcorePackage, - new EValidator.Descriptor() { - @Override - public EValidator getEValidator() { - return QVTcoreValidator.INSTANCE; - } - }); + (theQVTcorePackage, + new EValidator.Descriptor() { + public EValidator getEValidator() { + return QVTcoreValidator.INSTANCE; + } + }); // Mark meta-data to indicate it can't be changed theQVTcorePackage.freeze(); - + // Update the registry and return the package EPackage.Registry.INSTANCE.put(QVTcorePackage.eNS_URI, theQVTcorePackage); return theQVTcorePackage; @@ -1187,12 +1186,12 @@ public class QVTcorePackageImpl extends EPackageImpl implements QVTcorePackage { * @generated */ protected void createEcoreAnnotations() { - String source = "http://www.eclipse.org/emf/2002/Ecore"; + String source = "http://www.eclipse.org/emf/2002/Ecore"; addAnnotation - (this, - source, - new String[] { - }); + (this, + source, + new String[] { + }); } /** @@ -1202,37 +1201,37 @@ public class QVTcorePackageImpl extends EPackageImpl implements QVTcorePackage { * @generated */ protected void createEmofAnnotations() { - String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; + String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; addAnnotation - (getAssignment_Value(), - source, - new String[] { - "body", "valueAssignment" - }); + (getAssignment_Value(), + source, + new String[] { + "body", "valueAssignment" + }); addAnnotation - (getNavigationAssignment_SlotExpression(), - source, - new String[] { - "body", "slotAssignment" - }); + (getNavigationAssignment_SlotExpression(), + source, + new String[] { + "body", "slotAssignment" + }); addAnnotation - (getOppositePropertyAssignment_TargetProperty(), - source, - new String[] { - "body", "assignment" - }); + (getOppositePropertyAssignment_TargetProperty(), + source, + new String[] { + "body", "assignment" + }); addAnnotation - (getPropertyAssignment_TargetProperty(), - source, - new String[] { - "body", "assignment" - }); + (getPropertyAssignment_TargetProperty(), + source, + new String[] { + "body", "assignment" + }); addAnnotation - (getVariableAssignment_TargetVariable(), - source, - new String[] { - "body", "assignment" - }); + (getVariableAssignment_TargetVariable(), + source, + new String[] { + "body", "assignment" + }); } /** @@ -1242,97 +1241,97 @@ public class QVTcorePackageImpl extends EPackageImpl implements QVTcorePackage { * @generated */ protected void createUMLAnnotations() { - String source = "http://www.eclipse.org/uml2/2.0.0/UML"; + String source = "http://www.eclipse.org/uml2/2.0.0/UML"; addAnnotation - (getBottomPattern__ValidateVariablesAreBottomVariables__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "VariablesAreBottomVariables" - }); + (getBottomPattern__ValidateVariablesAreBottomVariables__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "VariablesAreBottomVariables" + }); addAnnotation - (getGuardPattern__ValidateVariablesAreGuardVariables__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "VariablesAreGuardVariables" - }); + (getGuardPattern__ValidateVariablesAreGuardVariables__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "VariablesAreGuardVariables" + }); addAnnotation - (getMapping__ValidateDomainsAreCoreDomains__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "DomainsAreCoreDomains" - }); + (getMapping__ValidateDomainsAreCoreDomains__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "DomainsAreCoreDomains" + }); addAnnotation - (getMapping__ValidateNestedNameIsNull__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "NestedNameIsNull" - }); + (getMapping__ValidateNestedNameIsNull__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "NestedNameIsNull" + }); addAnnotation - (getMapping__ValidateRootNameIsNotNull__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "RootNameIsNotNull" - }); + (getMapping__ValidateRootNameIsNotNull__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "RootNameIsNotNull" + }); addAnnotation - (getOppositePropertyAssignment__ValidateCompatibleTypeForPartialValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForPartialValue" - }); + (getOppositePropertyAssignment__ValidateCompatibleTypeForPartialValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForPartialValue" + }); addAnnotation - (getOppositePropertyAssignment__ValidateCompatibleTypeForTotalValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForTotalValue" - }); + (getOppositePropertyAssignment__ValidateCompatibleTypeForTotalValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForTotalValue" + }); addAnnotation - (getOppositePropertyAssignment__ValidateOppositePropertyIsImplicit__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "OppositePropertyIsImplicit" - }); + (getOppositePropertyAssignment__ValidateOppositePropertyIsImplicit__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "OppositePropertyIsImplicit" + }); addAnnotation - (getOppositePropertyAssignment__ValidateTargetPropetyIsSlotProperty__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "TargetPropetyIsSlotProperty" - }); + (getOppositePropertyAssignment__ValidateTargetPropetyIsSlotProperty__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "TargetPropetyIsSlotProperty" + }); addAnnotation - (getPropertyAssignment__ValidateCompatibleTypeForPartialValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForPartialValue" - }); + (getPropertyAssignment__ValidateCompatibleTypeForPartialValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForPartialValue" + }); addAnnotation - (getPropertyAssignment__ValidateCompatibleTypeForTotalValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForTotalValue" - }); + (getPropertyAssignment__ValidateCompatibleTypeForTotalValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForTotalValue" + }); addAnnotation - (getPropertyAssignment__ValidatePropertyIsNotImplicit__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "PropertyIsNotImplicit" - }); + (getPropertyAssignment__ValidatePropertyIsNotImplicit__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "PropertyIsNotImplicit" + }); addAnnotation - (getPropertyAssignment__ValidateTargetPropetyIsSlotProperty__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "TargetPropetyIsSlotProperty" - }); + (getPropertyAssignment__ValidateTargetPropetyIsSlotProperty__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "TargetPropetyIsSlotProperty" + }); addAnnotation - (getRealizedVariable__ValidateNonDataTypeForType__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "NonDataTypeForType" - }); + (getRealizedVariable__ValidateNonDataTypeForType__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "NonDataTypeForType" + }); addAnnotation - (getVariableAssignment__ValidateCompatibleTypeForValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForValue" - }); + (getVariableAssignment__ValidateCompatibleTypeForValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForValue" + }); } } //QVTcorePackageImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativePackage.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativePackage.java index f098baf58..c75a39ec1 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativePackage.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativePackage.java @@ -617,6 +617,15 @@ public interface QVTimperativePackage extends EPackage { int CONNECTION_VARIABLE__TYPE = PivotPackage.VARIABLE_DECLARATION__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONNECTION_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE_DECLARATION__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -779,6 +788,15 @@ public interface QVTimperativePackage extends EPackage { int APPEND_PARAMETER__TYPE = CONNECTION_VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPEND_PARAMETER__CACHE_NEEDED = CONNECTION_VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1227,6 +1245,15 @@ public interface QVTimperativePackage extends EPackage { int BUFFER_STATEMENT__TYPE = CONNECTION_VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BUFFER_STATEMENT__CACHE_NEEDED = CONNECTION_VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1641,6 +1668,15 @@ public interface QVTimperativePackage extends EPackage { int VARIABLE_STATEMENT__TYPE = PivotPackage.VARIABLE_DECLARATION__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VARIABLE_STATEMENT__CACHE_NEEDED = PivotPackage.VARIABLE_DECLARATION__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1803,6 +1839,15 @@ public interface QVTimperativePackage extends EPackage { int DECLARE_STATEMENT__TYPE = VARIABLE_STATEMENT__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DECLARE_STATEMENT__CACHE_NEEDED = VARIABLE_STATEMENT__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2010,6 +2055,15 @@ public interface QVTimperativePackage extends EPackage { int MAPPING_PARAMETER__TYPE = PivotPackage.VARIABLE_DECLARATION__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MAPPING_PARAMETER__CACHE_NEEDED = PivotPackage.VARIABLE_DECLARATION__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2172,6 +2226,15 @@ public interface QVTimperativePackage extends EPackage { int GUARD_PARAMETER__TYPE = MAPPING_PARAMETER__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GUARD_PARAMETER__CACHE_NEEDED = MAPPING_PARAMETER__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3254,6 +3317,15 @@ public interface QVTimperativePackage extends EPackage { int LOOP_VARIABLE__TYPE = PivotPackage.VARIABLE_DECLARATION__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LOOP_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE_DECLARATION__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3939,6 +4011,15 @@ public interface QVTimperativePackage extends EPackage { int NEW_STATEMENT__TYPE = VARIABLE_STATEMENT__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int NEW_STATEMENT__CACHE_NEEDED = VARIABLE_STATEMENT__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -4382,6 +4463,15 @@ public interface QVTimperativePackage extends EPackage { int SIMPLE_PARAMETER__TYPE = MAPPING_PARAMETER__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_PARAMETER__CACHE_NEEDED = MAPPING_PARAMETER__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/BufferStatementImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/BufferStatementImpl.java index 4e513688f..d032a458f 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/BufferStatementImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/BufferStatementImpl.java @@ -244,9 +244,9 @@ public class BufferStatementImpl extends ConnectionVariableImpl implements Buffe */ final /*@NonInvalid*/ org.eclipse.ocl.pivot.evaluation.@NonNull Executor executor = PivotUtilInternal.getExecutor(this); final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull IdResolver idResolver = executor.getIdResolver(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_names = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_PRIMid_String, names); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_names = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_PRIMid_String, names); /*@NonInvalid*/ java.lang.@NonNull String s = QVTimperativeTables.STR_; - @NonNull Iterator<Object> ITERATOR_n = BOXED_names.iterator(); + @NonNull Iterator<Object> ITERATOR_n = BOXED_names.lazyIterator(); /*@NonInvalid*/ java.lang.@Nullable String iterate; while (true) { if (!ITERATOR_n.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/ImperativeTransformationImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/ImperativeTransformationImpl.java index 4f9d4c86b..52d836ee5 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/ImperativeTransformationImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/ImperativeTransformationImpl.java @@ -103,9 +103,9 @@ public class ImperativeTransformationImpl extends TransformationImpl implements } else { final /*@NonInvalid*/ java.util.@NonNull List<Rule> rule = this.getRule(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_rule = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_Rule, rule); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_rule = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_Rule, rule); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_rule.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_rule.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingCallImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingCallImpl.java index 5d6f0ab72..85234c0a8 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingCallImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingCallImpl.java @@ -46,10 +46,7 @@ import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.BagValue; -import org.eclipse.ocl.pivot.values.OrderedSetValue; -import org.eclipse.ocl.pivot.values.SequenceValue; -import org.eclipse.ocl.pivot.values.SetValue; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.qvtd.pivot.qvtimperative.Mapping; import org.eclipse.qvtd.pivot.qvtimperative.MappingCall; import org.eclipse.qvtd.pivot.qvtimperative.MappingParameter; @@ -226,10 +223,10 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtimperative.@NonNull Mapping referredMapping = this.getReferredMapping(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<MappingParameter> ownedMappingParameters = referredMapping.getOwnedMappingParameters(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); - /*@Thrown*/ BagValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createBagAccumulatorValue(QVTimperativeTables.BAG_PRIMid_String); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameters.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull BagValue collect; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTimperativeTables.BAG_PRIMid_String); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameters.lazyIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1.hasNext()) { collect = accumulator; @@ -242,9 +239,9 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall */ final /*@NonInvalid*/ java.lang.@Nullable String name = _1.getName(); // - accumulator.add(name); + accumulator.mutableIncluding(name); } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue asSet = CollectionAsSetOperation.INSTANCE.evaluate(collect); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue asSet = CollectionAsSetOperation.INSTANCE.evaluate(collect); final org.eclipse.ocl.pivot.@NonNull Class TYPE_sortedBy_0 = executor.getStaticTypeOf(asSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_sortedBy_0 = (LibraryIteration.LibraryIterationExtension)TYPE_sortedBy_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__sortedBy); final @NonNull Object ACC_sortedBy_0 = IMPL_sortedBy_0.createAccumulatorValue(executor, QVTimperativeTables.ORD_PRIMid_String, TypeId.STRING); @@ -262,7 +259,7 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall } }; final @NonNull ExecutorSingleIterationManager MGR_sortedBy_0 = new ExecutorSingleIterationManager(executor, QVTimperativeTables.ORD_PRIMid_String, BODY_sortedBy_0, asSet, ACC_sortedBy_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue sortedBy = ClassUtil.nonNullState((OrderedSetValue)IMPL_sortedBy_0.evaluateIteration(MGR_sortedBy_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue sortedBy = ClassUtil.nonNullState((CollectionValue)IMPL_sortedBy_0.evaluateIteration(MGR_sortedBy_0)); final /*@Thrown*/ java.util.@NonNull List<String> ECORE_sortedBy = ((IdResolver.IdResolverExtension)idResolver).ecoreValueOfAll(String.class, sortedBy); return (EList<String>)ECORE_sortedBy; } @@ -282,10 +279,10 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull StandardLibrary standardLibrary = idResolver.getStandardLibrary(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<MappingParameterBinding> ownedMappingParameterBindings = this.getOwnedMappingParameterBindings(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedMappingParameterBindings = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_CLSSid_MappingParameterBinding, ownedMappingParameterBindings); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(QVTimperativeTables.SEQ_CLSSid_MappingParameter); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameterBindings.iterator(); - /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect_0; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedMappingParameterBindings = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_CLSSid_MappingParameterBinding, ownedMappingParameterBindings); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTimperativeTables.SEQ_CLSSid_MappingParameter); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameterBindings.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect_0; while (true) { if (!ITERATOR__1.hasNext()) { collect_0 = accumulator; @@ -299,11 +296,11 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtimperative.@NonNull MappingParameter boundVariable = _1.getBoundVariable(); // - accumulator.add(boundVariable); + accumulator.mutableIncluding(boundVariable); } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSequenceAccumulatorValue(QVTimperativeTables.SEQ_PRIMid_String); - @NonNull Iterator<Object> ITERATOR__1_0 = collect_0.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(QVTimperativeTables.SEQ_PRIMid_String); + @NonNull Iterator<Object> ITERATOR__1_0 = collect_0.lazyIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1_0.hasNext()) { collect = accumulator_0; @@ -316,9 +313,9 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall */ final /*@NonInvalid*/ java.lang.@Nullable String name = _1_0.getName(); // - accumulator_0.add(name); + accumulator_0.mutableIncluding(name); } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue asSet = CollectionAsSetOperation.INSTANCE.evaluate(collect); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue asSet = CollectionAsSetOperation.INSTANCE.evaluate(collect); final org.eclipse.ocl.pivot.@NonNull Class TYPE_sortedBy_0 = executor.getStaticTypeOf(asSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_sortedBy_0 = (LibraryIteration.LibraryIterationExtension)TYPE_sortedBy_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__sortedBy); final @NonNull Object ACC_sortedBy_0 = IMPL_sortedBy_0.createAccumulatorValue(executor, QVTimperativeTables.ORD_PRIMid_String, TypeId.STRING); @@ -336,7 +333,7 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall } }; final @NonNull ExecutorSingleIterationManager MGR_sortedBy_0 = new ExecutorSingleIterationManager(executor, QVTimperativeTables.ORD_PRIMid_String, BODY_sortedBy_0, asSet, ACC_sortedBy_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue sortedBy = ClassUtil.nonNullState((OrderedSetValue)IMPL_sortedBy_0.evaluateIteration(MGR_sortedBy_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue sortedBy = ClassUtil.nonNullState((CollectionValue)IMPL_sortedBy_0.evaluateIteration(MGR_sortedBy_0)); final /*@Thrown*/ java.util.@NonNull List<String> ECORE_sortedBy = ((IdResolver.IdResolverExtension)idResolver).ecoreValueOfAll(String.class, sortedBy); return (EList<String>)ECORE_sortedBy; } @@ -494,9 +491,9 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<MappingParameterBinding> ownedMappingParameterBindings = this.getOwnedMappingParameterBindings(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedMappingParameterBindings = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_CLSSid_MappingParameterBinding, ownedMappingParameterBindings); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.ORD_CLSSid_MappingParameterBinding); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameterBindings.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedMappingParameterBindings = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_CLSSid_MappingParameterBinding, ownedMappingParameterBindings); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.ORD_CLSSid_MappingParameterBinding); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameterBindings.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -516,7 +513,7 @@ public class MappingCallImpl extends MappingStatementImpl implements MappingCall break; } else { - accumulator.add(boundVariable); + accumulator.mutableIncluding(boundVariable); } } final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, QVTimperativeTables.STR_MappingCall_c_c_UniqueCallBindings, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, QVTimperativeTables.INT_0).booleanValue(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingImpl.java index 7b116e8de..893c35e97 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingImpl.java @@ -30,6 +30,7 @@ import org.eclipse.jdt.annotation.Nullable; import org.eclipse.ocl.pivot.VariableDeclaration; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal; +import org.eclipse.ocl.pivot.library.collection.CollectionMutableUnionOperation; import org.eclipse.ocl.pivot.library.collection.CollectionSelectByKindOperation; import org.eclipse.ocl.pivot.library.collection.CollectionUnionOperation; import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation; @@ -37,8 +38,6 @@ import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.OrderedSetValue; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvtbase.impl.RuleImpl; import org.eclipse.qvtd.pivot.qvtimperative.Mapping; import org.eclipse.qvtd.pivot.qvtimperative.MappingParameter; @@ -241,9 +240,9 @@ public class MappingImpl extends RuleImpl implements Mapping { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<MappingParameter> ownedMappingParameters = this.getOwnedMappingParameters(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.SET_CLSSid_MappingParameter); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameters.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.SET_CLSSid_MappingParameter); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedMappingParameters.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -262,7 +261,7 @@ public class MappingImpl extends RuleImpl implements Mapping { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; @@ -314,14 +313,14 @@ public class MappingImpl extends RuleImpl implements Mapping { final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_qvtimperative_c_c_VariableStatement = idResolver.getClass(QVTimperativeTables.CLSSid_VariableStatement, null); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<MappingParameter> ownedMappingParameters = this.getOwnedMappingParameters(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Statement> ownedStatements = this.getOwnedStatements(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedStatements = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_CLSSid_Statement, ownedStatements); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue selectByKind = (OrderedSetValue)CollectionSelectByKindOperation.INSTANCE.evaluate(executor, BOXED_ownedStatements, TYP_qvtimperative_c_c_VariableStatement); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue union = (SetValue)CollectionUnionOperation.INSTANCE.evaluate(BOXED_ownedMappingParameters, selectByKind); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.SET_CLSSid_VariableDeclaration); - @NonNull Iterator<Object> ITERATOR__1 = union.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedStatements = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_CLSSid_Statement, ownedStatements); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue selectByKind = CollectionSelectByKindOperation.INSTANCE.evaluate(executor, BOXED_ownedStatements, TYP_qvtimperative_c_c_VariableStatement); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue union = CollectionMutableUnionOperation.INSTANCE.evaluate(executor, QVTimperativeTables.SET_CLSSid_VariableDeclaration, BOXED_ownedMappingParameters, selectByKind); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.SET_CLSSid_VariableDeclaration); + @NonNull Iterator<Object> ITERATOR__1 = union.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -340,7 +339,7 @@ public class MappingImpl extends RuleImpl implements Mapping { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingParameterBindingImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingParameterBindingImpl.java index 0a31069ee..083a3733a 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingParameterBindingImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/MappingParameterBindingImpl.java @@ -203,7 +203,7 @@ public abstract class MappingParameterBindingImpl extends ElementImpl implements final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtimperative.@NonNull Mapping referredMapping = owningMappingCall.getReferredMapping(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<MappingParameter> ownedMappingParameters = referredMapping.getOwnedMappingParameters(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedMappingParameters = idResolver.createSetOfAll(QVTimperativeTables.SET_CLSSid_MappingParameter, ownedMappingParameters); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtimperative.@NonNull MappingParameter boundVariable = this.getBoundVariable(); final /*@NonInvalid*/ boolean result = CollectionIncludesOperation.INSTANCE.evaluate(BOXED_ownedMappingParameters, boundVariable).booleanValue(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/SetStatementImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/SetStatementImpl.java index d98817697..2eb33e9a5 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/SetStatementImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/SetStatementImpl.java @@ -56,8 +56,8 @@ import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage; import org.eclipse.qvtd.pivot.qvtimperative.QVTimperativeTables; import org.eclipse.qvtd.pivot.qvtimperative.SetStatement; @@ -762,7 +762,7 @@ public class SetStatementImpl extends ObservableStatementImpl implements SetStat final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_VariableExp = idResolver.getClass(QVTimperativeTables.CLSSid_VariableExp, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull OCLExpression ownedExpression = this.getOwnedExpression(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, QVTimperativeTables.SET_CLSSid_OCLExpression, ownedExpression); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, QVTimperativeTables.SET_CLSSid_OCLExpression, ownedExpression); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, QVTimperativeTables.SET_CLSSid_OclElement, QVTimperativeTables.SET_CLSSid_OclElement); @@ -775,17 +775,17 @@ public class SetStatementImpl extends ObservableStatementImpl implements SetStat */ @Override public @Nullable Object evaluate(final @NonNull Executor executor, final @NonNull TypeId typeId, final @Nullable Object oclAsSet, final /*@NonInvalid*/ java.lang.@Nullable Object e_0) { - final /*@NonInvalid*/ java.lang.@Nullable Object symbol_0 = (Object)e_0; - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclContents = ClassifierOclContentsOperation.INSTANCE.evaluate(executor, QVTimperativeTables.SET_CLSSid_OclElement, symbol_0); + final /*@NonInvalid*/ java.lang.@Nullable Object symbol_0 = e_0; + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclContents = ClassifierOclContentsOperation.INSTANCE.evaluate(executor, QVTimperativeTables.SET_CLSSid_OclElement, symbol_0); return oclContents; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0 = new ExecutorSingleIterationManager(executor, QVTimperativeTables.SET_CLSSid_OclElement, BODY_closure_0, oclAsSet, ACC_closure_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue selectByKind = (SetValue)CollectionSelectByKindOperation.INSTANCE.evaluate(executor, closure, TYP_VariableExp); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.SET_CLSSid_VariableExp); - @NonNull Iterator<Object> ITERATOR__1 = selectByKind.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue select_0; + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue selectByKind = CollectionSelectByKindOperation.INSTANCE.evaluate(executor, closure, TYP_VariableExp); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTimperativeTables.SET_CLSSid_VariableExp); + @NonNull Iterator<Object> ITERATOR__1 = selectByKind.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select_0; while (true) { if (!ITERATOR__1.hasNext()) { select_0 = accumulator; @@ -801,12 +801,12 @@ public class SetStatementImpl extends ObservableStatementImpl implements SetStat final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, referredVariable, TYP_qvtimperative_c_c_NewStatement).booleanValue(); // if (oclIsKindOf == ValueUtil.TRUE_VALUE) { - accumulator.add(_1); + accumulator.mutableIncluding(_1); } } - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSetAccumulatorValue(QVTimperativeTables.SET_CLSSid_VariableExp); - @NonNull Iterator<Object> ITERATOR_s = select_0.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue select; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(QVTimperativeTables.SET_CLSSid_VariableExp); + @NonNull Iterator<Object> ITERATOR_s = select_0.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select; while (true) { if (!ITERATOR_s.hasNext()) { select = accumulator_0; @@ -849,7 +849,7 @@ public class SetStatementImpl extends ObservableStatementImpl implements SetStat } // if (and == ValueUtil.TRUE_VALUE) { - accumulator_0.add(s); + accumulator_0.mutableIncluding(s); } } final /*@Thrown*/ boolean result = CollectionIsEmptyOperation.INSTANCE.evaluate(select).booleanValue(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/StatementImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/StatementImpl.java index 143e2a574..b6481a498 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/StatementImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/StatementImpl.java @@ -71,9 +71,9 @@ public abstract class StatementImpl extends NamedElementImpl implements Statemen */ final /*@NonInvalid*/ org.eclipse.ocl.pivot.evaluation.@NonNull Executor executor = PivotUtilInternal.getExecutor(this); final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull IdResolver idResolver = executor.getIdResolver(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_names = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_PRIMid_String, names); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_names = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_PRIMid_String, names); /*@NonInvalid*/ java.lang.@NonNull String s = QVTimperativeTables.STR_; - @NonNull Iterator<Object> ITERATOR_n = BOXED_names.iterator(); + @NonNull Iterator<Object> ITERATOR_n = BOXED_names.lazyIterator(); /*@NonInvalid*/ java.lang.@Nullable String iterate; while (true) { if (!ITERATOR_n.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/VariableStatementImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/VariableStatementImpl.java index 3fe177d79..941730b8e 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/VariableStatementImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/VariableStatementImpl.java @@ -73,9 +73,9 @@ public abstract class VariableStatementImpl extends VariableDeclarationImpl impl */ final /*@NonInvalid*/ org.eclipse.ocl.pivot.evaluation.@NonNull Executor executor = PivotUtilInternal.getExecutor(this); final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull IdResolver idResolver = executor.getIdResolver(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_names = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_PRIMid_String, names); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_names = idResolver.createOrderedSetOfAll(QVTimperativeTables.ORD_PRIMid_String, names); /*@NonInvalid*/ java.lang.@NonNull String s = QVTimperativeTables.STR_; - @NonNull Iterator<Object> ITERATOR_n = BOXED_names.iterator(); + @NonNull Iterator<Object> ITERATOR_n = BOXED_names.lazyIterator(); /*@NonInvalid*/ java.lang.@Nullable String iterate; while (true) { if (!ITERATOR_n.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeValidator.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeValidator.java index 28635a108..da341443d 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeValidator.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeValidator.java @@ -22,6 +22,7 @@ import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.util.EObjectValidator; import org.eclipse.ocl.pivot.util.PivotValidator; import org.eclipse.qvtd.pivot.qvtbase.util.QVTbaseValidator; +import org.eclipse.qvtd.pivot.qvtimperative.*; import org.eclipse.qvtd.pivot.qvtimperative.AddStatement; import org.eclipse.qvtd.pivot.qvtimperative.AppendParameter; import org.eclipse.qvtd.pivot.qvtimperative.AppendParameterBinding; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Key.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Key.java index c258d2a22..824f27a77 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Key.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Key.java @@ -124,7 +124,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='IdentifiesIsAUsedPackageClass'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv IdentifiesIsAUsedPackageClass:\n * let\n * severity : Integer[1] = \'Key::IdentifiesIsAUsedPackageClass\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = transformation <> null implies\n * transformation.modelParameter.usedPackage->includes(identifies.owningPackage)\n * in\n * \'Key::IdentifiesIsAUsedPackageClass\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsAUsedPackageClass);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.Nullable%> RelationalTransformation transformation = this.getTransformation();\n\t\tfinal /*@NonInvalid\052/ boolean ne = transformation != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (transformation == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Transformation::modelParameter\\\'\");\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = transformation.getModelParameter();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SequenceValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSequenceAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SEQ_CLSSid_Package);\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_modelParameter.iterator();\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SequenceValue collect;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\tcollect = accumulator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1.next();\n\t\t\t\t/**\n\t\t\t\t * usedPackage\n\t\t\t\t \052/\n\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Package%>> usedPackage = _1.getUsedPackage();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_usedPackage = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Package, usedPackage);\n\t\t\t\t//\n\t\t\t\tfor (Object value : BOXED_usedPackage.flatten().getElements()) {\n\t\t\t\t\taccumulator.add(value);\n\t\t\t\t}\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Package owningPackage = identifies.getOwningPackage();\n\t\t\tfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(collect, owningPackage).booleanValue();\n\t\t\tresult = includes;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsAUsedPackageClass, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv IdentifiesIsAUsedPackageClass:\n * let\n * severity : Integer[1] = \'Key::IdentifiesIsAUsedPackageClass\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = transformation <> null implies\n * transformation.modelParameter.usedPackage->includes(identifies.owningPackage)\n * in\n * \'Key::IdentifiesIsAUsedPackageClass\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsAUsedPackageClass);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.Nullable%> RelationalTransformation transformation = this.getTransformation();\n\t\tfinal /*@NonInvalid\052/ boolean ne = transformation != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (transformation == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTbase\\\'::Transformation::modelParameter\\\'\");\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>> modelParameter = transformation.getModelParameter();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_TypedModel, modelParameter);\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SEQ_CLSSid_Package);\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_modelParameter.eagerIterator();\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\tcollect = accumulator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> TypedModel _1 = (<%org.eclipse.qvtd.pivot.qvtbase.TypedModel%>)ITERATOR__1.next();\n\t\t\t\t/**\n\t\t\t\t * usedPackage\n\t\t\t\t \052/\n\t\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Package%>> usedPackage = _1.getUsedPackage();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_usedPackage = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Package, usedPackage);\n\t\t\t\t//\n\t\t\t\tfor (Object value : BOXED_usedPackage.flatten().getElements()) {\n\t\t\t\t\taccumulator.mutableIncluding(value);\n\t\t\t\t}\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Package owningPackage = identifies.getOwningPackage();\n\t\t\tfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(collect, owningPackage).booleanValue();\n\t\t\tresult = includes;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsAUsedPackageClass, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateIdentifiesIsAUsedPackageClass(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -133,7 +133,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='NoSuperKeys'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv NoSuperKeys:\n * let severity : Integer[1] = \'Key::NoSuperKeys\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = transformation <> null implies\n * let\n * superClasses : Set(Class[*|?]) = identifies.superClasses->closure(superClasses)\n * in\n * let\n * otherKeys : Set(qvtrelation::Key) = transformation.ownedKey->excluding(self)\n * in otherKeys.identifies->excludesAll(superClasses)\n * in\n * \'Key::NoSuperKeys\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> StandardLibrary standardLibrary = idResolver.getStandardLibrary();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_NoSuperKeys);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.Nullable%> RelationalTransformation transformation = this.getTransformation();\n\t\tfinal /*@NonInvalid\052/ boolean ne = transformation != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Class%>> superClasses_0 = identifies.getSuperClasses();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_superClasses_0 = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, superClasses_0);\n\t\t\tfinal org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYPE_superClasses_2 = executor.getStaticTypeOf(BOXED_superClasses_0);\n\t\t\tfinal <%org.eclipse.ocl.pivot.library.LibraryIteration%>.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_superClasses_2 = (<%org.eclipse.ocl.pivot.library.LibraryIteration%>.LibraryIterationExtension)TYPE_superClasses_2.lookupImplementation(standardLibrary, <%org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables%>.Operations._Set__closure);\n\t\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> Object ACC_superClasses_2 = IMPL_superClasses_2.createAccumulatorValue(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class);\n\t\t\t/**\n\t\t\t * Implementation of the iterator body.\n\t\t\t \052/\n\t\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%> BODY_superClasses_2 = new <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%>()\n\t\t\t{\n\t\t\t\t/**\n\t\t\t\t * superClasses\n\t\t\t\t \052/\n\t\t\t\t@Override\n\t\t\t\tpublic @<%org.eclipse.jdt.annotation.Nullable%> Object evaluate(final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.evaluation.Executor%> executor, final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.ids.TypeId%> typeId, final @<%org.eclipse.jdt.annotation.Nullable%> Object BOXED_superClasses_0, final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object _1) {\n\t\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Class symbol_0 = (<%org.eclipse.ocl.pivot.Class%>)_1;\n\t\t\t\t\tif (symbol_0 == null) {\n\t\t\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'Class::superClasses\\\'\");\n\t\t\t\t\t}\n\t\t\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Class%>> superClasses_1 = symbol_0.getSuperClasses();\n\t\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_superClasses_1 = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, superClasses_1);\n\t\t\t\t\treturn BOXED_superClasses_1;\n\t\t\t\t}\n\t\t\t};\n\t\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%> MGR_superClasses_2 = new <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%>(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, BODY_superClasses_2, BOXED_superClasses_0, ACC_superClasses_2);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue superClasses = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.values.SetValue%>)IMPL_superClasses_2.evaluateIteration(MGR_superClasses_2));\n\t\t\tif (transformation == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTrelation\\\'::RelationalTransformation::ownedKey\\\'\");\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtrelation.Key%>> ownedKey = transformation.getOwnedKey();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_ownedKey = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Key, ownedKey);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue otherKeys = (<%org.eclipse.ocl.pivot.values.SetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%>.INSTANCE.evaluate(BOXED_ownedKey, this);\n\t\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.BagValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createBagAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.BAG_CLSSid_Class);\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1_0 = otherKeys.iterator();\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> BagValue collect;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR__1_0.hasNext()) {\n\t\t\t\t\tcollect = accumulator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> Key _1_0 = (<%org.eclipse.qvtd.pivot.qvtrelation.Key%>)ITERATOR__1_0.next();\n\t\t\t\t/**\n\t\t\t\t * identifies\n\t\t\t\t \052/\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies_0 = _1_0.getIdentifies();\n\t\t\t\t//\n\t\t\t\taccumulator.add(identifies_0);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ boolean excludesAll = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesAllOperation%>.INSTANCE.evaluate(collect, superClasses).booleanValue();\n\t\t\tresult = excludesAll;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_NoSuperKeys, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv NoSuperKeys:\n * let severity : Integer[1] = \'Key::NoSuperKeys\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = transformation <> null implies\n * let\n * superClasses : Set(Class[*|?]) = identifies.superClasses->closure(superClasses)\n * in\n * let\n * otherKeys : Set(qvtrelation::Key) = transformation.ownedKey->excluding(self)\n * in otherKeys.identifies->excludesAll(superClasses)\n * in\n * \'Key::NoSuperKeys\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> StandardLibrary standardLibrary = idResolver.getStandardLibrary();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_NoSuperKeys);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.Nullable%> RelationalTransformation transformation = this.getTransformation();\n\t\tfinal /*@NonInvalid\052/ boolean ne = transformation != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Class%>> superClasses_0 = identifies.getSuperClasses();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_superClasses_0 = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, superClasses_0);\n\t\t\tfinal org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYPE_superClasses_2 = executor.getStaticTypeOf(BOXED_superClasses_0);\n\t\t\tfinal <%org.eclipse.ocl.pivot.library.LibraryIteration%>.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_superClasses_2 = (<%org.eclipse.ocl.pivot.library.LibraryIteration%>.LibraryIterationExtension)TYPE_superClasses_2.lookupImplementation(standardLibrary, <%org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables%>.Operations._Set__closure);\n\t\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> Object ACC_superClasses_2 = IMPL_superClasses_2.createAccumulatorValue(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class);\n\t\t\t/**\n\t\t\t * Implementation of the iterator body.\n\t\t\t \052/\n\t\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%> BODY_superClasses_2 = new <%org.eclipse.ocl.pivot.library.AbstractBinaryOperation%>()\n\t\t\t{\n\t\t\t\t/**\n\t\t\t\t * superClasses\n\t\t\t\t \052/\n\t\t\t\t@Override\n\t\t\t\tpublic @<%org.eclipse.jdt.annotation.Nullable%> Object evaluate(final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.evaluation.Executor%> executor, final @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.ids.TypeId%> typeId, final @<%org.eclipse.jdt.annotation.Nullable%> Object BOXED_superClasses_0, final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object _1) {\n\t\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Class symbol_0 = (<%org.eclipse.ocl.pivot.Class%>)_1;\n\t\t\t\t\tif (symbol_0 == null) {\n\t\t\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'Class::superClasses\\\'\");\n\t\t\t\t\t}\n\t\t\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Class%>> superClasses_1 = symbol_0.getSuperClasses();\n\t\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_superClasses_1 = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, superClasses_1);\n\t\t\t\t\treturn BOXED_superClasses_1;\n\t\t\t\t}\n\t\t\t};\n\t\t\tfinal @<%org.eclipse.jdt.annotation.NonNull%> <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%> MGR_superClasses_2 = new <%org.eclipse.ocl.pivot.internal.library.executor.ExecutorSingleIterationManager%>(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Class, BODY_superClasses_2, BOXED_superClasses_0, ACC_superClasses_2);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue superClasses = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.values.CollectionValue%>)IMPL_superClasses_2.evaluateIteration(MGR_superClasses_2));\n\t\t\tif (transformation == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTrelation\\\'::RelationalTransformation::ownedKey\\\'\");\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtrelation.Key%>> ownedKey = transformation.getOwnedKey();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_ownedKey = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Key, ownedKey);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue otherKeys = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%>.INSTANCE.evaluate(BOXED_ownedKey, this);\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.BAG_CLSSid_Class);\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1_0 = otherKeys.eagerIterator();\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR__1_0.hasNext()) {\n\t\t\t\t\tcollect = accumulator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> Key _1_0 = (<%org.eclipse.qvtd.pivot.qvtrelation.Key%>)ITERATOR__1_0.next();\n\t\t\t\t/**\n\t\t\t\t * identifies\n\t\t\t\t \052/\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies_0 = _1_0.getIdentifies();\n\t\t\t\t//\n\t\t\t\taccumulator.mutableIncluding(identifies_0);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ boolean excludesAll = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesAllOperation%>.INSTANCE.evaluate(collect, superClasses).booleanValue();\n\t\t\tresult = excludesAll;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_NoSuperKeys, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'" * @generated */ boolean validateNoSuperKeys(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -142,7 +142,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='IdentifiesIsUnique'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv IdentifiesIsUnique:\n * let severity : Integer[1] = \'Key::IdentifiesIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = transformation <> null implies\n * let\n * otherKeys : Set(qvtrelation::Key) = transformation.ownedKey->excluding(self)\n * in otherKeys.identifies->excludes(identifies)\n * in\n * \'Key::IdentifiesIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.Nullable%> RelationalTransformation transformation = this.getTransformation();\n\t\tfinal /*@NonInvalid\052/ boolean ne = transformation != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (transformation == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTrelation\\\'::RelationalTransformation::ownedKey\\\'\");\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtrelation.Key%>> ownedKey = transformation.getOwnedKey();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_ownedKey = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Key, ownedKey);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue otherKeys = (<%org.eclipse.ocl.pivot.values.SetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%>.INSTANCE.evaluate(BOXED_ownedKey, this);\n\t\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.BagValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createBagAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.BAG_CLSSid_Class);\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = otherKeys.iterator();\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> BagValue collect;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\tcollect = accumulator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> Key _1 = (<%org.eclipse.qvtd.pivot.qvtrelation.Key%>)ITERATOR__1.next();\n\t\t\t\t/**\n\t\t\t\t * identifies\n\t\t\t\t \052/\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = _1.getIdentifies();\n\t\t\t\t//\n\t\t\t\taccumulator.add(identifies);\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies_0 = this.getIdentifies();\n\t\t\tfinal /*@Thrown\052/ boolean excludes = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesOperation%>.INSTANCE.evaluate(collect, identifies_0).booleanValue();\n\t\t\tresult = excludes;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv IdentifiesIsUnique:\n * let severity : Integer[1] = \'Key::IdentifiesIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[?] = transformation <> null implies\n * let\n * otherKeys : Set(qvtrelation::Key) = transformation.ownedKey->excluding(self)\n * in otherKeys.identifies->excludes(identifies)\n * in\n * \'Key::IdentifiesIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.Nullable%> RelationalTransformation transformation = this.getTransformation();\n\t\tfinal /*@NonInvalid\052/ boolean ne = transformation != null;\n\t\t/*@Thrown\052/ boolean result;\n\t\tif (ne) {\n\t\t\tif (transformation == null) {\n\t\t\t\tthrow new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null source for \\\'\\\'http://www.eclipse.org/qvt/2015/QVTrelation\\\'::RelationalTransformation::ownedKey\\\'\");\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtrelation.Key%>> ownedKey = transformation.getOwnedKey();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_ownedKey = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Key, ownedKey);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue otherKeys = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%>.INSTANCE.evaluate(BOXED_ownedKey, this);\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.BAG_CLSSid_Class);\n\t\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = otherKeys.eagerIterator();\n\t\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\t\twhile (true) {\n\t\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\t\tcollect = accumulator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> Key _1 = (<%org.eclipse.qvtd.pivot.qvtrelation.Key%>)ITERATOR__1.next();\n\t\t\t\t/**\n\t\t\t\t * identifies\n\t\t\t\t \052/\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = _1.getIdentifies();\n\t\t\t\t//\n\t\t\t\taccumulator.mutableIncluding(identifies);\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies_0 = this.getIdentifies();\n\t\t\tfinal /*@Thrown\052/ boolean excludes = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesOperation%>.INSTANCE.evaluate(collect, identifies_0).booleanValue();\n\t\t\tresult = excludes;\n\t\t}\n\t\telse {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_IdentifiesIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateIdentifiesIsUnique(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -151,7 +151,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='OppositePartsHaveOpposites'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv OppositePartsHaveOpposites:\n * let severity : Integer[1] = \'Key::OppositePartsHaveOpposites\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = oppositePart->forAll(opposite <> null)\n * in\n * \'Key::OppositePartsHaveOpposites\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsHaveOpposites);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> oppositePart = this.getOppositePart();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_oppositePart = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, oppositePart);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_oppositePart.iterator();\n\t/*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t/**\n\t\t * opposite <> null\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Property opposite = _1.getOpposite();\n\t\tfinal /*@NonInvalid\052/ boolean ne = opposite != null;\n\t\t//\n\t\tif (ne == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (ne == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsHaveOpposites, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv OppositePartsHaveOpposites:\n * let severity : Integer[1] = \'Key::OppositePartsHaveOpposites\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = oppositePart->forAll(opposite <> null)\n * in\n * \'Key::OppositePartsHaveOpposites\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsHaveOpposites);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> oppositePart = this.getOppositePart();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_oppositePart = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, oppositePart);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_oppositePart.lazyIterator();\n\t/*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t/**\n\t\t * opposite <> null\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Property opposite = _1.getOpposite();\n\t\tfinal /*@NonInvalid\052/ boolean ne = opposite != null;\n\t\t//\n\t\tif (ne == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (ne == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsHaveOpposites, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateOppositePartsHaveOpposites(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -160,7 +160,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='OppositePartsAreOppositeParts'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv OppositePartsAreOppositeParts:\n * let\n * severity : Integer[1] = \'Key::OppositePartsAreOppositeParts\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = oppositePart->forAll(\n * self.identifies.conformsTo(type))\n * in\n * \'Key::OppositePartsAreOppositeParts\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsAreOppositeParts);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> oppositePart = this.getOppositePart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_oppositePart = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, oppositePart);\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_oppositePart.iterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * self.identifies.conformsTo(type)\n\t\t\t \052/\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type = _1.getType();\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, identifies, type).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t//\n\t\t\tif (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\taccumulator = CAUGHT_conformsTo;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t}\n\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsAreOppositeParts, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv OppositePartsAreOppositeParts:\n * let\n * severity : Integer[1] = \'Key::OppositePartsAreOppositeParts\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = oppositePart->forAll(\n * self.identifies.conformsTo(type))\n * in\n * \'Key::OppositePartsAreOppositeParts\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsAreOppositeParts);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> oppositePart = this.getOppositePart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_oppositePart = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, oppositePart);\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_oppositePart.lazyIterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * self.identifies.conformsTo(type)\n\t\t\t \052/\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type = _1.getType();\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, identifies, type).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t//\n\t\t\tif (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\taccumulator = CAUGHT_conformsTo;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t}\n\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_OppositePartsAreOppositeParts, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateOppositePartsAreOppositeParts(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -169,7 +169,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='PartsAreParts'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv PartsAreParts:\n * let severity : Integer[1] = \'Key::PartsAreParts\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = part->forAll(\n * self.identifies.conformsTo(owningClass))\n * in\n * \'Key::PartsAreParts\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreParts);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> part = this.getPart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_part = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, part);\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_part.iterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * self.identifies.conformsTo(owningClass)\n\t\t\t \052/\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Class owningClass = _1.getOwningClass();\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, identifies, owningClass).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t//\n\t\t\tif (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\taccumulator = CAUGHT_conformsTo;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t}\n\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreParts, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv PartsAreParts:\n * let severity : Integer[1] = \'Key::PartsAreParts\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = part->forAll(\n * self.identifies.conformsTo(owningClass))\n * in\n * \'Key::PartsAreParts\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreParts);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> part = this.getPart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_part = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, part);\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_part.lazyIterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * self.identifies.conformsTo(owningClass)\n\t\t\t \052/\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class identifies = this.getIdentifies();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Class owningClass = _1.getOwningClass();\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, identifies, owningClass).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t//\n\t\t\tif (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\taccumulator = CAUGHT_conformsTo;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t}\n\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreParts, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validatePartsAreParts(DiagnosticChain diagnostics, Map<Object, Object> context); @@ -178,7 +178,7 @@ public interface Key extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='PartsAreUnique'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv PartsAreUnique:\n * let severity : Integer[1] = \'Key::PartsAreUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = part->excludesAll(oppositePart.opposite)\n * in\n * \'Key::PartsAreUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> part = this.getPart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_part = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, part);\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> oppositePart = this.getOppositePart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_oppositePart = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, oppositePart);\n\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.BagValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createBagAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.BAG_CLSSid_Property);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_oppositePart.iterator();\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> BagValue collect;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tcollect = accumulator;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * opposite\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Property opposite = _1.getOpposite();\n\t\t\t//\n\t\t\taccumulator.add(opposite);\n\t\t}\n\t\tfinal /*@Thrown\052/ boolean result = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesAllOperation%>.INSTANCE.evaluate(BOXED_part, collect).booleanValue();\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv PartsAreUnique:\n * let severity : Integer[1] = \'Key::PartsAreUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = part->excludesAll(oppositePart.opposite)\n * in\n * \'Key::PartsAreUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> part = this.getPart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_part = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, part);\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Property%>> oppositePart = this.getOppositePart();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_oppositePart = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Property, oppositePart);\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.BAG_CLSSid_Property);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_oppositePart.lazyIterator();\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tcollect = accumulator;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property _1 = (<%org.eclipse.ocl.pivot.Property%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * opposite\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Property opposite = _1.getOpposite();\n\t\t\t//\n\t\t\taccumulator.mutableIncluding(opposite);\n\t\t}\n\t\tfinal /*@Thrown\052/ boolean result = <%org.eclipse.ocl.pivot.library.collection.CollectionExcludesAllOperation%>.INSTANCE.evaluate(BOXED_part, collect).booleanValue();\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Key_c_c_PartsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validatePartsAreUnique(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/QVTrelationPackage.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/QVTrelationPackage.java index 1f0bb7b37..f347b054a 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/QVTrelationPackage.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/QVTrelationPackage.java @@ -1806,6 +1806,15 @@ public interface QVTrelationPackage extends EPackage { int SHARED_VARIABLE__TYPE = PivotPackage.VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SHARED_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2005,6 +2014,15 @@ public interface QVTrelationPackage extends EPackage { int TEMPLATE_VARIABLE__TYPE = PivotPackage.VARIABLE__TYPE; /** + * The feature id for the '<em><b>Cache Needed</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TEMPLATE_VARIABLE__CACHE_NEEDED = PivotPackage.VARIABLE__CACHE_NEEDED; + + /** * The feature id for the '<em><b>Type Value</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Relation.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Relation.java index 9b60ff40d..d53bcf0a7 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Relation.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/Relation.java @@ -161,7 +161,7 @@ public interface Relation extends Rule { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='DomainsAreRelationDomains'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv DomainsAreRelationDomains:\n * let\n * severity : Integer[1] = \'Relation::DomainsAreRelationDomains\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = domain->forAll(\n * oclIsKindOf(RelationDomain))\n * in\n * \'Relation::DomainsAreRelationDomains\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Relation_c_c_DomainsAreRelationDomains);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = this.getDomain();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_Domain, domain);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(RelationDomain)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtrelation_c_c_RelationDomain = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.CLSSid_RelationDomain, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_RelationDomain).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Relation_c_c_DomainsAreRelationDomains, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv DomainsAreRelationDomains:\n * let\n * severity : Integer[1] = \'Relation::DomainsAreRelationDomains\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = domain->forAll(\n * oclIsKindOf(RelationDomain))\n * in\n * \'Relation::DomainsAreRelationDomains\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Relation_c_c_DomainsAreRelationDomains);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = this.getDomain();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_Domain, domain);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(RelationDomain)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtrelation_c_c_RelationDomain = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.CLSSid_RelationDomain, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_RelationDomain).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_Relation_c_c_DomainsAreRelationDomains, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateDomainsAreRelationDomains(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationCallExp.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationCallExp.java index f044d5f5f..322a17960 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationCallExp.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationCallExp.java @@ -83,7 +83,7 @@ public interface RelationCallExp extends OCLExpression { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='MatchingArgumentCount'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv MatchingArgumentCount:\n * let\n * severity : Integer[1] = \'RelationCallExp::MatchingArgumentCount\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = self.argument->size() =\n * self.referredRelation.domain.oclAsType(RelationDomain)\n * .rootVariable->size()\n * in\n * \'RelationCallExp::MatchingArgumentCount\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationCallExp_c_c_MatchingArgumentCount);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.OCLExpression%>> argument = this.getArgument();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_argument = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_OCLExpression, argument);\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size = <%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%>.INSTANCE.evaluate(BOXED_argument);\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> Relation referredRelation = this.getReferredRelation();\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = referredRelation.getDomain();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_Domain, domain);\n\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SequenceValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSequenceAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SEQ_CLSSid_RelationDomain);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.iterator();\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SequenceValue collect_0;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tcollect_0 = accumulator;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * oclAsType(RelationDomain)\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtrelation_c_c_RelationDomain_0 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.CLSSid_RelationDomain, null);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> RelationDomain oclAsType = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomain%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_RelationDomain_0));\n\t\t\t//\n\t\t\taccumulator.add(oclAsType);\n\t\t}\n\t\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SequenceValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSequenceAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SEQ_CLSSid_Variable);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1_0 = collect_0.iterator();\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SequenceValue collect;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1_0.hasNext()) {\n\t\t\t\tcollect = accumulator_0;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> RelationDomain _1_0 = (<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomain%>)ITERATOR__1_0.next();\n\t\t\t/**\n\t\t\t * rootVariable\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Variable%>> rootVariable = _1_0.getRootVariable();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_rootVariable = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_Variable, rootVariable);\n\t\t\t//\n\t\t\tfor (Object value : BOXED_rootVariable.flatten().getElements()) {\n\t\t\t\taccumulator_0.add(value);\n\t\t\t}\n\t\t}\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size_0 = <%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%>.INSTANCE.evaluate(collect);\n\t\tfinal /*@Thrown\052/ boolean result = size.equals(size_0);\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationCallExp_c_c_MatchingArgumentCount, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv MatchingArgumentCount:\n * let\n * severity : Integer[1] = \'RelationCallExp::MatchingArgumentCount\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = self.argument->size() =\n * self.referredRelation.domain.oclAsType(RelationDomain)\n * .rootVariable->size()\n * in\n * \'RelationCallExp::MatchingArgumentCount\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationCallExp_c_c_MatchingArgumentCount);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.OCLExpression%>> argument = this.getArgument();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_argument = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_OCLExpression, argument);\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size = <%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%>.INSTANCE.evaluate(BOXED_argument);\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> Relation referredRelation = this.getReferredRelation();\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Domain%>> domain = referredRelation.getDomain();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_Domain, domain);\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SEQ_CLSSid_RelationDomain);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_domain.lazyIterator();\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect_0;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tcollect_0 = accumulator;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Domain _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Domain%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t * oclAsType(RelationDomain)\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtrelation_c_c_RelationDomain_0 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.CLSSid_RelationDomain, null);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> RelationDomain oclAsType = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomain%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_RelationDomain_0));\n\t\t\t//\n\t\t\taccumulator.mutableIncluding(oclAsType);\n\t\t}\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createCollectionAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SEQ_CLSSid_Variable);\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1_0 = collect_0.eagerIterator();\n\t\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue collect;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1_0.hasNext()) {\n\t\t\t\tcollect = accumulator_0;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> RelationDomain _1_0 = (<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomain%>)ITERATOR__1_0.next();\n\t\t\t/**\n\t\t\t * rootVariable\n\t\t\t \052/\n\t\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.Variable%>> rootVariable = _1_0.getRootVariable();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_rootVariable = idResolver.createOrderedSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.ORD_CLSSid_Variable, rootVariable);\n\t\t\t//\n\t\t\tfor (Object value : BOXED_rootVariable.flatten().getElements()) {\n\t\t\t\taccumulator_0.mutableIncluding(value);\n\t\t\t}\n\t\t}\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size_0 = <%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%>.INSTANCE.evaluate(collect);\n\t\tfinal /*@Thrown\052/ boolean result = size.equals(size_0);\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationCallExp_c_c_MatchingArgumentCount, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateMatchingArgumentCount(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationDomain.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationDomain.java index 34f470408..ed755b256 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationDomain.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationDomain.java @@ -92,7 +92,7 @@ public interface RelationDomain extends Domain { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='RelationDomainAssignmentsAreUnique'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv RelationDomainAssignmentsAreUnique:\n * let\n * severity : Integer[1] = \'RelationDomain::RelationDomainAssignmentsAreUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[1] = defaultAssignment->isUnique(variable)\n * in\n * \'RelationDomain::RelationDomainAssignmentsAreUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationDomain_c_c_RelationDomainAssignmentsAreUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomainAssignment%>> defaultAssignment = this.getDefaultAssignment();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_defaultAssignment = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_RelationDomainAssignment, defaultAssignment);\n\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_RelationDomainAssignment);\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_defaultAssignment.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> RelationDomainAssignment _1 = (<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomainAssignment%>)ITERATOR__1.next();\n\t\t/**\n\t\t * variable\n\t\t \052/\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Variable variable = _1.getVariable();\n\t\t//\n\t\tif (accumulator.includes(variable) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\tbreak;\n\t\t}\n\t\telse {\n\t\t\taccumulator.add(variable);\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationDomain_c_c_RelationDomainAssignmentsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv RelationDomainAssignmentsAreUnique:\n * let\n * severity : Integer[1] = \'RelationDomain::RelationDomainAssignmentsAreUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let result : Boolean[1] = defaultAssignment->isUnique(variable)\n * in\n * \'RelationDomain::RelationDomainAssignmentsAreUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationDomain_c_c_RelationDomainAssignmentsAreUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomainAssignment%>> defaultAssignment = this.getDefaultAssignment();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_defaultAssignment = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_RelationDomainAssignment, defaultAssignment);\n\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_RelationDomainAssignment);\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_defaultAssignment.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtrelation.@<%org.eclipse.jdt.annotation.NonNull%> RelationDomainAssignment _1 = (<%org.eclipse.qvtd.pivot.qvtrelation.RelationDomainAssignment%>)ITERATOR__1.next();\n\t\t/**\n\t\t * variable\n\t\t \052/\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Variable variable = _1.getVariable();\n\t\t//\n\t\tif (accumulator.includes(variable) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\tbreak;\n\t\t}\n\t\telse {\n\t\t\taccumulator.mutableIncluding(variable);\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationDomain_c_c_RelationDomainAssignmentsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateRelationDomainAssignmentsAreUnique(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationalTransformation.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationalTransformation.java index 8ba6f038d..7de8faa87 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationalTransformation.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/RelationalTransformation.java @@ -55,7 +55,7 @@ public interface RelationalTransformation extends Transformation { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='RulesAreRelations'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv RulesAreRelations:\n * let\n * severity : Integer[1] = \'RelationalTransformation::RulesAreRelations\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = rule->forAll(oclIsKindOf(Relation))\n * in\n * \'RelationalTransformation::RulesAreRelations\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationalTransformation_c_c_RulesAreRelations);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Rule%>> rule = this.getRule();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_rule = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Rule, rule);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_rule.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Rule _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Rule%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(Relation)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtrelation_c_c_Relation = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.CLSSid_Relation, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_Relation).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationalTransformation_c_c_RulesAreRelations, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv RulesAreRelations:\n * let\n * severity : Integer[1] = \'RelationalTransformation::RulesAreRelations\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = rule->forAll(oclIsKindOf(Relation))\n * in\n * \'RelationalTransformation::RulesAreRelations\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationalTransformation_c_c_RulesAreRelations);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvtbase.Rule%>> rule = this.getRule();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_rule = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.SET_CLSSid_Rule, rule);\n\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_rule.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvtbase.@<%org.eclipse.jdt.annotation.NonNull%> Rule _1 = (<%org.eclipse.qvtd.pivot.qvtbase.Rule%>)ITERATOR__1.next();\n\t\t/**\n\t\t * oclIsKindOf(Relation)\n\t\t \052/\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_qvtrelation_c_c_Relation = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.CLSSid_Relation, null);\n\t\tfinal /*@NonInvalid\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_Relation).booleanValue();\n\t\t//\n\t\tif (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t}\n\t\telse if (oclIsKindOf == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t}\n\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.STR_RelationalTransformation_c_c_RulesAreRelations, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateRulesAreRelations(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/KeyImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/KeyImpl.java index 1319d1e60..843a6d479 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/KeyImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/KeyImpl.java @@ -48,10 +48,8 @@ import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.BagValue; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SequenceValue; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvtbase.TypedModel; import org.eclipse.qvtd.pivot.qvtrelation.Key; import org.eclipse.qvtd.pivot.qvtrelation.QVTrelationPackage; @@ -300,10 +298,10 @@ public class KeyImpl extends ElementImpl implements Key { throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/2015/QVTbase\'::Transformation::modelParameter\'"); } final /*@Thrown*/ java.util.@NonNull List<TypedModel> modelParameter = transformation.getModelParameter(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_TypedModel, modelParameter); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(QVTrelationTables.SEQ_CLSSid_Package); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_modelParameter.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_modelParameter = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_TypedModel, modelParameter); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTrelationTables.SEQ_CLSSid_Package); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_modelParameter.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1.hasNext()) { collect = accumulator; @@ -315,10 +313,10 @@ public class KeyImpl extends ElementImpl implements Key { * usedPackage */ final /*@NonInvalid*/ java.util.@NonNull List<org.eclipse.ocl.pivot.Package> usedPackage = _1.getUsedPackage(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_usedPackage = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Package, usedPackage); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_usedPackage = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Package, usedPackage); // for (Object value : BOXED_usedPackage.flatten().getElements()) { - accumulator.add(value); + accumulator.mutableIncluding(value); } } @SuppressWarnings("null") @@ -386,7 +384,7 @@ public class KeyImpl extends ElementImpl implements Key { @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class identifies = this.getIdentifies(); final /*@NonInvalid*/ java.util.@NonNull List<org.eclipse.ocl.pivot.Class> superClasses_0 = identifies.getSuperClasses(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_superClasses_0 = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Class, superClasses_0); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_superClasses_0 = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Class, superClasses_0); final org.eclipse.ocl.pivot.@NonNull Class TYPE_superClasses_2 = executor.getStaticTypeOf(BOXED_superClasses_0); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_superClasses_2 = (LibraryIteration.LibraryIterationExtension)TYPE_superClasses_2.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_superClasses_2 = IMPL_superClasses_2.createAccumulatorValue(executor, QVTrelationTables.SET_CLSSid_Class, QVTrelationTables.SET_CLSSid_Class); @@ -404,22 +402,22 @@ public class KeyImpl extends ElementImpl implements Key { throw new InvalidValueException("Null source for \'Class::superClasses\'"); } final /*@Thrown*/ java.util.@NonNull List<org.eclipse.ocl.pivot.Class> superClasses_1 = symbol_0.getSuperClasses(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_superClasses_1 = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Class, superClasses_1); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_superClasses_1 = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Class, superClasses_1); return BOXED_superClasses_1; } }; final @NonNull ExecutorSingleIterationManager MGR_superClasses_2 = new ExecutorSingleIterationManager(executor, QVTrelationTables.SET_CLSSid_Class, BODY_superClasses_2, BOXED_superClasses_0, ACC_superClasses_2); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue superClasses = ClassUtil.nonNullState((SetValue)IMPL_superClasses_2.evaluateIteration(MGR_superClasses_2)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue superClasses = ClassUtil.nonNullState((CollectionValue)IMPL_superClasses_2.evaluateIteration(MGR_superClasses_2)); if (transformation == null) { throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/qvt/2015/QVTrelation\'::RelationalTransformation::ownedKey\'"); } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<Key> ownedKey = transformation.getOwnedKey(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_ownedKey = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Key, ownedKey); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue otherKeys = (SetValue)CollectionExcludingOperation.INSTANCE.evaluate(BOXED_ownedKey, this); - /*@Thrown*/ BagValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createBagAccumulatorValue(QVTrelationTables.BAG_CLSSid_Class); - @NonNull Iterator<Object> ITERATOR__1_0 = otherKeys.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull BagValue collect; + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedKey = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Key, ownedKey); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue otherKeys = CollectionExcludingOperation.INSTANCE.evaluate(BOXED_ownedKey, this); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTrelationTables.BAG_CLSSid_Class); + @NonNull Iterator<Object> ITERATOR__1_0 = otherKeys.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1_0.hasNext()) { collect = accumulator; @@ -433,7 +431,7 @@ public class KeyImpl extends ElementImpl implements Key { @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class identifies_0 = _1_0.getIdentifies(); // - accumulator.add(identifies_0); + accumulator.mutableIncluding(identifies_0); } final /*@Thrown*/ boolean excludesAll = CollectionExcludesAllOperation.INSTANCE.evaluate(collect, superClasses).booleanValue(); result = excludesAll; @@ -495,11 +493,11 @@ public class KeyImpl extends ElementImpl implements Key { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<Key> ownedKey = transformation.getOwnedKey(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_ownedKey = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Key, ownedKey); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue otherKeys = (SetValue)CollectionExcludingOperation.INSTANCE.evaluate(BOXED_ownedKey, this); - /*@Thrown*/ BagValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createBagAccumulatorValue(QVTrelationTables.BAG_CLSSid_Class); - @NonNull Iterator<Object> ITERATOR__1 = otherKeys.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull BagValue collect; + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedKey = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Key, ownedKey); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue otherKeys = CollectionExcludingOperation.INSTANCE.evaluate(BOXED_ownedKey, this); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTrelationTables.BAG_CLSSid_Class); + @NonNull Iterator<Object> ITERATOR__1 = otherKeys.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1.hasNext()) { collect = accumulator; @@ -513,7 +511,7 @@ public class KeyImpl extends ElementImpl implements Key { @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class identifies = _1.getIdentifies(); // - accumulator.add(identifies); + accumulator.mutableIncluding(identifies); } @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class identifies_0 = this.getIdentifies(); @@ -566,9 +564,9 @@ public class KeyImpl extends ElementImpl implements Key { else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Property> oppositePart = this.getOppositePart(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_oppositePart = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, oppositePart); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_oppositePart = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, oppositePart); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_oppositePart.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_oppositePart.lazyIterator(); /*@NonInvalid*/ java.lang.@Nullable Boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -641,9 +639,9 @@ public class KeyImpl extends ElementImpl implements Key { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Property> oppositePart = this.getOppositePart(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_oppositePart = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, oppositePart); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_oppositePart = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, oppositePart); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_oppositePart.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_oppositePart.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -732,9 +730,9 @@ public class KeyImpl extends ElementImpl implements Key { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Property> part = this.getPart(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_part = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, part); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_part = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, part); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_part.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_part.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -822,13 +820,13 @@ public class KeyImpl extends ElementImpl implements Key { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Property> part = this.getPart(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_part = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, part); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_part = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, part); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Property> oppositePart = this.getOppositePart(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_oppositePart = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, oppositePart); - /*@Thrown*/ BagValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createBagAccumulatorValue(QVTrelationTables.BAG_CLSSid_Property); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_oppositePart.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull BagValue collect; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_oppositePart = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Property, oppositePart); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTrelationTables.BAG_CLSSid_Property); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_oppositePart.lazyIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1.hasNext()) { collect = accumulator; @@ -841,7 +839,7 @@ public class KeyImpl extends ElementImpl implements Key { */ final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Property opposite = _1.getOpposite(); // - accumulator.add(opposite); + accumulator.mutableIncluding(opposite); } final /*@Thrown*/ boolean result = CollectionExcludesAllOperation.INSTANCE.evaluate(BOXED_part, collect).booleanValue(); CAUGHT_result = result; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/QVTrelationPackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/QVTrelationPackageImpl.java index d7be740e3..3d9169c3c 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/QVTrelationPackageImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/QVTrelationPackageImpl.java @@ -148,7 +148,7 @@ public class QVTrelationPackageImpl extends EPackageImpl implements QVTrelationP /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. - * + * * <p>This method is used to initialize {@link QVTrelationPackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> @@ -180,18 +180,17 @@ public class QVTrelationPackageImpl extends EPackageImpl implements QVTrelationP // Register package validator EValidator.Registry.INSTANCE.put - (theQVTrelationPackage, - new EValidator.Descriptor() { - @Override - public EValidator getEValidator() { - return QVTrelationValidator.INSTANCE; - } - }); + (theQVTrelationPackage, + new EValidator.Descriptor() { + public EValidator getEValidator() { + return QVTrelationValidator.INSTANCE; + } + }); // Mark meta-data to indicate it can't be changed theQVTrelationPackage.freeze(); - + // Update the registry and return the package EPackage.Registry.INSTANCE.put(QVTrelationPackage.eNS_URI, theQVTrelationPackage); return theQVTrelationPackage; @@ -978,12 +977,12 @@ public class QVTrelationPackageImpl extends EPackageImpl implements QVTrelationP * @generated */ protected void createEcoreAnnotations() { - String source = "http://www.eclipse.org/emf/2002/Ecore"; + String source = "http://www.eclipse.org/emf/2002/Ecore"; addAnnotation - (this, - source, - new String[] { - }); + (this, + source, + new String[] { + }); } /** @@ -993,67 +992,67 @@ public class QVTrelationPackageImpl extends EPackageImpl implements QVTrelationP * @generated */ protected void createEmofAnnotations() { - String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; + String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; addAnnotation - (getKey_Identifies(), - source, - new String[] { - "body", "key" - }); + (getKey_Identifies(), + source, + new String[] { + "body", "key" + }); addAnnotation - (getKey_OppositePart(), - source, - new String[] { - "body", "oppKey" - }); + (getKey_OppositePart(), + source, + new String[] { + "body", "oppKey" + }); addAnnotation - (getKey_Part(), - source, - new String[] { - "body", "key" - }); + (getKey_Part(), + source, + new String[] { + "body", "key" + }); addAnnotation - (getRelation_When(), - source, - new String[] { - "body", "whenOwner" - }); + (getRelation_When(), + source, + new String[] { + "body", "whenOwner" + }); addAnnotation - (getRelation_Where(), - source, - new String[] { - "body", "whereOwner" - }); + (getRelation_Where(), + source, + new String[] { + "body", "whereOwner" + }); addAnnotation - (getRelationCallExp_Argument(), - source, - new String[] { - "body", "relationCallExp" - }); + (getRelationCallExp_Argument(), + source, + new String[] { + "body", "relationCallExp" + }); addAnnotation - (getRelationCallExp_ReferredRelation(), - source, - new String[] { - "body", "relationCallExp" - }); + (getRelationCallExp_ReferredRelation(), + source, + new String[] { + "body", "relationCallExp" + }); addAnnotation - (getRelationDomain_DefaultAssignment(), - source, - new String[] { - "body", "owner" - }); + (getRelationDomain_DefaultAssignment(), + source, + new String[] { + "body", "owner" + }); addAnnotation - (getRelationDomainAssignment_ValueExp(), - source, - new String[] { - "body", "domainAssignment" - }); + (getRelationDomainAssignment_ValueExp(), + source, + new String[] { + "body", "domainAssignment" + }); addAnnotation - (getRelationDomainAssignment_Variable(), - source, - new String[] { - "body", "domainAssignment" - }); + (getRelationDomainAssignment_Variable(), + source, + new String[] { + "body", "domainAssignment" + }); } /** @@ -1063,91 +1062,91 @@ public class QVTrelationPackageImpl extends EPackageImpl implements QVTrelationP * @generated */ protected void createUMLAnnotations() { - String source = "http://www.eclipse.org/uml2/2.0.0/UML"; + String source = "http://www.eclipse.org/uml2/2.0.0/UML"; addAnnotation - (getKey__ValidateIdentifiesIsNotAbstract__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "IdentifiesIsNotAbstract" - }); + (getKey__ValidateIdentifiesIsNotAbstract__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "IdentifiesIsNotAbstract" + }); addAnnotation - (getKey__ValidateIdentifiesIsAUsedPackageClass__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "IdentifiesIsAUsedPackageClass" - }); + (getKey__ValidateIdentifiesIsAUsedPackageClass__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "IdentifiesIsAUsedPackageClass" + }); addAnnotation - (getKey__ValidateNoSuperKeys__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "NoSuperKeys" - }); + (getKey__ValidateNoSuperKeys__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "NoSuperKeys" + }); addAnnotation - (getKey__ValidateIdentifiesIsUnique__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "IdentifiesIsUnique" - }); + (getKey__ValidateIdentifiesIsUnique__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "IdentifiesIsUnique" + }); addAnnotation - (getKey__ValidateOppositePartsHaveOpposites__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "OppositePartsHaveOpposites" - }); + (getKey__ValidateOppositePartsHaveOpposites__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "OppositePartsHaveOpposites" + }); addAnnotation - (getKey__ValidateOppositePartsAreOppositeParts__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "OppositePartsAreOppositeParts" - }); + (getKey__ValidateOppositePartsAreOppositeParts__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "OppositePartsAreOppositeParts" + }); addAnnotation - (getKey__ValidatePartsAreParts__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "PartsAreParts" - }); + (getKey__ValidatePartsAreParts__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "PartsAreParts" + }); addAnnotation - (getKey__ValidatePartsAreUnique__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "PartsAreUnique" - }); + (getKey__ValidatePartsAreUnique__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "PartsAreUnique" + }); addAnnotation - (getRelation__ValidateDomainsAreRelationDomains__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "DomainsAreRelationDomains" - }); + (getRelation__ValidateDomainsAreRelationDomains__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "DomainsAreRelationDomains" + }); addAnnotation - (getRelation__ValidateTransformationIsRelationalTransformation__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "TransformationIsRelationalTransformation" - }); + (getRelation__ValidateTransformationIsRelationalTransformation__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "TransformationIsRelationalTransformation" + }); addAnnotation - (getRelationCallExp__ValidateMatchingArgumentCount__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "MatchingArgumentCount" - }); + (getRelationCallExp__ValidateMatchingArgumentCount__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "MatchingArgumentCount" + }); addAnnotation - (getRelationDomain__ValidateRelationDomainAssignmentsAreUnique__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "RelationDomainAssignmentsAreUnique" - }); + (getRelationDomain__ValidateRelationDomainAssignmentsAreUnique__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "RelationDomainAssignmentsAreUnique" + }); addAnnotation - (getRelationDomainAssignment__ValidateCompatibleTypeForValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForValue" - }); + (getRelationDomainAssignment__ValidateCompatibleTypeForValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForValue" + }); addAnnotation - (getRelationalTransformation__ValidateRulesAreRelations__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "RulesAreRelations" - }); + (getRelationalTransformation__ValidateRulesAreRelations__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "RulesAreRelations" + }); } } //QVTrelationPackageImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationCallExpImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationCallExpImpl.java index 91284b5bf..331bbe2e0 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationCallExpImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationCallExpImpl.java @@ -38,7 +38,6 @@ import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SequenceValue; import org.eclipse.qvtd.pivot.qvtbase.Domain; import org.eclipse.qvtd.pivot.qvtrelation.QVTrelationPackage; import org.eclipse.qvtd.pivot.qvtrelation.QVTrelationTables; @@ -191,16 +190,16 @@ public class RelationCallExpImpl extends OCLExpressionImpl implements RelationCa try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<OCLExpression> argument = this.getArgument(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_argument = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_OCLExpression, argument); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_argument = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_OCLExpression, argument); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_argument); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.pivot.qvtrelation.@NonNull Relation referredRelation = this.getReferredRelation(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Domain> domain = referredRelation.getDomain(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_Domain, domain); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(QVTrelationTables.SEQ_CLSSid_RelationDomain); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect_0; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_Domain, domain); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(QVTrelationTables.SEQ_CLSSid_RelationDomain); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.lazyIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect_0; while (true) { if (!ITERATOR__1.hasNext()) { collect_0 = accumulator; @@ -214,11 +213,11 @@ public class RelationCallExpImpl extends OCLExpressionImpl implements RelationCa final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_qvtrelation_c_c_RelationDomain_0 = idResolver.getClass(QVTrelationTables.CLSSid_RelationDomain, null); final /*@Thrown*/ org.eclipse.qvtd.pivot.qvtrelation.@NonNull RelationDomain oclAsType = ClassUtil.nonNullState((RelationDomain)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, _1, TYP_qvtrelation_c_c_RelationDomain_0)); // - accumulator.add(oclAsType); + accumulator.mutableIncluding(oclAsType); } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSequenceAccumulatorValue(QVTrelationTables.SEQ_CLSSid_Variable); - @NonNull Iterator<Object> ITERATOR__1_0 = collect_0.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(QVTrelationTables.SEQ_CLSSid_Variable); + @NonNull Iterator<Object> ITERATOR__1_0 = collect_0.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1_0.hasNext()) { collect = accumulator_0; @@ -230,10 +229,10 @@ public class RelationCallExpImpl extends OCLExpressionImpl implements RelationCa * rootVariable */ final /*@NonInvalid*/ java.util.@NonNull List<Variable> rootVariable = _1_0.getRootVariable(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_rootVariable = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_Variable, rootVariable); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_rootVariable = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_Variable, rootVariable); // for (Object value : BOXED_rootVariable.flatten().getElements()) { - accumulator_0.add(value); + accumulator_0.mutableIncluding(value); } } final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size_0 = CollectionSizeOperation.INSTANCE.evaluate(collect); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationDomainImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationDomainImpl.java index 987247cf2..9fd7b9bfa 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationDomainImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationDomainImpl.java @@ -32,7 +32,6 @@ import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvtbase.impl.DomainImpl; import org.eclipse.qvtd.pivot.qvtrelation.DomainPattern; import org.eclipse.qvtd.pivot.qvtrelation.QVTrelationPackage; @@ -179,9 +178,9 @@ public class RelationDomainImpl extends DomainImpl implements RelationDomain { } else { final /*@NonInvalid*/ java.util.@NonNull List<RelationDomainAssignment> defaultAssignment = this.getDefaultAssignment(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_defaultAssignment = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_RelationDomainAssignment, defaultAssignment); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTrelationTables.SET_CLSSid_RelationDomainAssignment); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_defaultAssignment.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_defaultAssignment = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_RelationDomainAssignment, defaultAssignment); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTrelationTables.SET_CLSSid_RelationDomainAssignment); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_defaultAssignment.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -201,7 +200,7 @@ public class RelationDomainImpl extends DomainImpl implements RelationDomain { break; } else { - accumulator.add(variable); + accumulator.mutableIncluding(variable); } } final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, QVTrelationTables.STR_RelationDomain_c_c_RelationDomainAssignmentsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, QVTrelationTables.INT_0).booleanValue(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationImpl.java index 3d5d62990..aa365e31f 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationImpl.java @@ -317,9 +317,9 @@ public class RelationImpl extends RuleImpl implements Relation { else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<Domain> domain = this.getDomain(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_Domain, domain); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_domain = idResolver.createOrderedSetOfAll(QVTrelationTables.ORD_CLSSid_Domain, domain); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_domain.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationalTransformationImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationalTransformationImpl.java index 5e1f12439..41014f30a 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationalTransformationImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtrelation/emf-gen/org/eclipse/qvtd/pivot/qvtrelation/impl/RelationalTransformationImpl.java @@ -130,9 +130,9 @@ public class RelationalTransformationImpl extends TransformationImpl implements } else { final /*@NonInvalid*/ java.util.@NonNull List<Rule> rule = this.getRule(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_rule = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Rule, rule); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_rule = idResolver.createSetOfAll(QVTrelationTables.SET_CLSSid_Rule, rule); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_rule.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_rule.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/QVTschedulePackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/QVTschedulePackageImpl.java index 8a2027214..eaab9c92a 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/QVTschedulePackageImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtschedule/emf-gen/org/eclipse/qvtd/pivot/qvtschedule/impl/QVTschedulePackageImpl.java @@ -407,7 +407,7 @@ public class QVTschedulePackageImpl extends EPackageImpl implements QVTscheduleP /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. - * + * * <p>This method is used to initialize {@link QVTschedulePackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> @@ -440,7 +440,7 @@ public class QVTschedulePackageImpl extends EPackageImpl implements QVTscheduleP // Mark meta-data to indicate it can't be changed theQVTschedulePackage.freeze(); - + // Update the registry and return the package EPackage.Registry.INSTANCE.put(QVTschedulePackage.eNS_URI, theQVTschedulePackage); return theQVTschedulePackage; @@ -2086,12 +2086,12 @@ public class QVTschedulePackageImpl extends EPackageImpl implements QVTscheduleP * @generated */ protected void createEcoreAnnotations() { - String source = "http://www.eclipse.org/emf/2002/Ecore"; + String source = "http://www.eclipse.org/emf/2002/Ecore"; addAnnotation - (this, - source, - new String[] { - }); + (this, + source, + new String[] { + }); } } //QVTschedulePackageImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/CollectionTemplateExp.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/CollectionTemplateExp.java index 6d8a6ef80..d8e579cd3 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/CollectionTemplateExp.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/CollectionTemplateExp.java @@ -112,7 +112,7 @@ public interface CollectionTemplateExp extends TemplateExp { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='MemberTypeisCollectionElementType'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv MemberTypeisCollectionElementType:\n * let\n * severity : Integer[1] = \'CollectionTemplateExp::MemberTypeisCollectionElementType\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = member->forAll(\n * type.conformsTo(referredCollectionType.elementType))\n * in\n * \'CollectionTemplateExp::MemberTypeisCollectionElementType\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_CollectionTemplateExp_c_c_MemberTypeisCollectionElementType);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.OCLExpression%>> member = this.getMember();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_member = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.SET_CLSSid_OCLExpression, member);\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_member.iterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression _1 = (<%org.eclipse.ocl.pivot.OCLExpression%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t *\n\t\t\t * type.conformsTo(referredCollectionType.elementType)\n\t\t\t \052/\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type = _1.getType();\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType referredCollectionType = this.getReferredCollectionType();\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type elementType = referredCollectionType.getElementType();\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, type, elementType).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t//\n\t\t\tif (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\taccumulator = CAUGHT_conformsTo;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t}\n\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_CollectionTemplateExp_c_c_MemberTypeisCollectionElementType, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv MemberTypeisCollectionElementType:\n * let\n * severity : Integer[1] = \'CollectionTemplateExp::MemberTypeisCollectionElementType\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[?] = member->forAll(\n * type.conformsTo(referredCollectionType.elementType))\n * in\n * \'CollectionTemplateExp::MemberTypeisCollectionElementType\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_CollectionTemplateExp_c_c_MemberTypeisCollectionElementType);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_result;\n\ttry {\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.ocl.pivot.OCLExpression%>> member = this.getMember();\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_member = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.SET_CLSSid_OCLExpression, member);\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Object accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_member.lazyIterator();\n\t\t/*@Thrown\052/ boolean result;\n\t\twhile (true) {\n\t\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\t\tif (accumulator == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)accumulator;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression _1 = (<%org.eclipse.ocl.pivot.OCLExpression%>)ITERATOR__1.next();\n\t\t\t/**\n\t\t\t *\n\t\t\t * type.conformsTo(referredCollectionType.elementType)\n\t\t\t \052/\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type = _1.getType();\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType referredCollectionType = this.getReferredCollectionType();\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type elementType = referredCollectionType.getElementType();\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, type, elementType).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t//\n\t\t\tif (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t\t\t// Normal unsuccessful body evaluation result\n\t\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\n\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Stop immediately\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\t\t\t\t// Normal successful body evaluation result\n\t\t\t\t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Carry on\n\t\t\t}\n\t\t\telse if (CAUGHT_conformsTo instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\t\t// Abnormal exception evaluation result\n\t\t\t\taccumulator = CAUGHT_conformsTo;\t\t\t\t\t\t\t\t\t// Cache an exception failure\n\t\t\t}\n\t\t\telse {\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// Impossible badly typed result\n\t\t\t\taccumulator = new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(<%org.eclipse.ocl.pivot.messages.PivotMessages%>.NonBooleanBody, \"forAll\");\n\t\t\t}\n\t\t}\n\t\tCAUGHT_result = result;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_result = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_CollectionTemplateExp_c_c_MemberTypeisCollectionElementType, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validateMemberTypeisCollectionElementType(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/ObjectTemplateExp.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/ObjectTemplateExp.java index f69267640..51e9b47b6 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/ObjectTemplateExp.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/ObjectTemplateExp.java @@ -82,7 +82,7 @@ public interface ObjectTemplateExp extends TemplateExp { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='PartPropertyIsUnique'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv PartPropertyIsUnique:\n * let\n * severity : Integer[1] = \'ObjectTemplateExp::PartPropertyIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = part->isUnique(resolvedProperty)\n * in\n * \'ObjectTemplateExp::PartPropertyIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_ObjectTemplateExp_c_c_PartPropertyIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem%>> part = this.getPart();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue BOXED_part = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.SET_CLSSid_PropertyTemplateItem, part);\n\t/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.SET_CLSSid_PropertyTemplateItem);\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_part.iterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvttemplate.@<%org.eclipse.jdt.annotation.NonNull%> PropertyTemplateItem _1 = (<%org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem%>)ITERATOR__1.next();\n\t\t/**\n\t\t * resolvedProperty\n\t\t \052/\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty = _1.getResolvedProperty();\n\t\t//\n\t\tif (accumulator.includes(resolvedProperty) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\tbreak;\n\t\t}\n\t\telse {\n\t\t\taccumulator.add(resolvedProperty);\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_ObjectTemplateExp_c_c_PartPropertyIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv PartPropertyIsUnique:\n * let\n * severity : Integer[1] = \'ObjectTemplateExp::PartPropertyIsUnique\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : Boolean[1] = part->isUnique(resolvedProperty)\n * in\n * \'ObjectTemplateExp::PartPropertyIsUnique\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_ObjectTemplateExp_c_c_PartPropertyIsUnique);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem%>> part = this.getPart();\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> CollectionValue BOXED_part = idResolver.createSetOfAll(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.SET_CLSSid_PropertyTemplateItem, part);\n\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> MutableIterable accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.SET_CLSSid_PropertyTemplateItem);\n\t@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><<%java.lang.Object%>> ITERATOR__1 = BOXED_part.lazyIterator();\n\t/*@NonInvalid\052/ boolean result;\n\twhile (true) {\n\t\tif (!ITERATOR__1.hasNext()) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t\tbreak;\n\t\t}\n\t\t@SuppressWarnings(\"null\")\n\t\t/*@NonInvalid\052/ org.eclipse.qvtd.pivot.qvttemplate.@<%org.eclipse.jdt.annotation.NonNull%> PropertyTemplateItem _1 = (<%org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem%>)ITERATOR__1.next();\n\t\t/**\n\t\t * resolvedProperty\n\t\t \052/\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty = _1.getResolvedProperty();\n\t\t//\n\t\tif (accumulator.includes(resolvedProperty) == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n\t\t\tresult = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE;\t\t\t// Abort after second find\n\t\t\tbreak;\n\t\t}\n\t\telse {\n\t\t\taccumulator.mutableIncluding(resolvedProperty);\n\t\t}\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_ObjectTemplateExp_c_c_PartPropertyIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'" * @generated */ boolean validatePartPropertyIsUnique(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/PropertyTemplateItem.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/PropertyTemplateItem.java index 97220b261..a60488494 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/PropertyTemplateItem.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/PropertyTemplateItem.java @@ -198,7 +198,7 @@ public interface PropertyTemplateItem extends Element, ReferringElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='CompatibleTypeForCollectionValue'" - * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv CompatibleTypeForCollectionValue:\n * let\n * severity : Integer[1] = \'PropertyTemplateItem::CompatibleTypeForCollectionValue\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : OclAny[1] = let\n * status : Boolean[?] = resolvedProperty.type.oclIsKindOf(CollectionType) and\n * value.type.oclIsKindOf(CollectionType) implies\n * let\n * propertyType : Type[1] = resolvedProperty.type.oclAsType(CollectionType).elementType\n * in\n * let\n * valueType : Type[1] = value.type.oclAsType(CollectionType).elementType\n * in\n * valueType.conformsTo(propertyType) or\n * propertyType.conformsTo(valueType)\n * in\n * if status = true\n * then true\n * else\n * Tuple{\n * message = value.type.oclAsType(CollectionType).elementType.name + \' must conform to \' +\n * resolvedProperty.type.oclAsType(CollectionType).elementType.name + \' or vice-versa\', status = status\n * }\n * endif\n * in\n * \'PropertyTemplateItem::CompatibleTypeForCollectionValue\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_PropertyTemplateItem_c_c_CompatibleTypeForCollectionValue);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> Object symbol_3;\nif (le) {\n\tsymbol_3 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_symbol_2;\n\ttry {\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_and;\n\t\ttry {\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_oclIsKindOf;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_0 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty = this.getResolvedProperty();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type = resolvedProperty.getType();\n\t\t\t\tfinal /*@Thrown\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, type, TYP_CollectionType_0).booleanValue();\n\t\t\t\tCAUGHT_oclIsKindOf = oclIsKindOf;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_oclIsKindOf = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_oclIsKindOf_0;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_1 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression value = this.getValue();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_0 = value.getType();\n\t\t\t\tfinal /*@Thrown\052/ boolean oclIsKindOf_0 = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, type_0, TYP_CollectionType_1).booleanValue();\n\t\t\t\tCAUGHT_oclIsKindOf_0 = oclIsKindOf_0;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_oclIsKindOf_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean and = <%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%>.INSTANCE.evaluate(CAUGHT_oclIsKindOf, CAUGHT_oclIsKindOf_0);\n\t\t\tCAUGHT_and = and;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_and = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_or;\n\t\ttry {\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_propertyType;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_2 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty_0 = this.getResolvedProperty();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_1 = resolvedProperty_0.getType();\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_1, TYP_CollectionType_2));\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type propertyType = oclAsType.getElementType();\n\t\t\t\tCAUGHT_propertyType = propertyType;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_propertyType = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_valueType;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_3 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression value_0 = this.getValue();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_2 = value_0.getType();\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType_0 = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_2, TYP_CollectionType_3));\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type valueType = oclAsType_0.getElementType();\n\t\t\t\tCAUGHT_valueType = valueType;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_valueType = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\tif (CAUGHT_valueType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_valueType;\n\t\t\t\t}\n\t\t\t\tif (CAUGHT_propertyType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_propertyType;\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, CAUGHT_valueType, CAUGHT_propertyType).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo_0;\n\t\t\ttry {\n\t\t\t\tif (CAUGHT_propertyType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_propertyType;\n\t\t\t\t}\n\t\t\t\tif (CAUGHT_valueType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_valueType;\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo_0 = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, CAUGHT_propertyType, CAUGHT_valueType).booleanValue();\n\t\t\t\tCAUGHT_conformsTo_0 = conformsTo_0;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean or = <%org.eclipse.ocl.pivot.library.logical.BooleanOrOperation%>.INSTANCE.evaluate(CAUGHT_conformsTo, CAUGHT_conformsTo_0);\n\t\t\tCAUGHT_or = or;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_or = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean status = <%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%>.INSTANCE.evaluate(CAUGHT_and, CAUGHT_or);\n\t\tfinal /*@Thrown\052/ boolean symbol_0 = status == Boolean.TRUE;\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> Object symbol_2;\n\t\tif (symbol_0) {\n\t\t\tsymbol_2 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\telse {\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_5 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression value_1 = this.getValue();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_3 = value_1.getType();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType_1 = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_3, TYP_CollectionType_5));\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type elementType = oclAsType_1.getElementType();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = elementType.getName();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> String sum = <%org.eclipse.ocl.pivot.library.string.StringConcatOperation%>.INSTANCE.evaluate(name, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR__32_must_32_conform_32_to_32);\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty_1 = this.getResolvedProperty();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_4 = resolvedProperty_1.getType();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType_2 = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_4, TYP_CollectionType_5));\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type elementType_0 = oclAsType_2.getElementType();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = elementType_0.getName();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> String sum_0 = <%org.eclipse.ocl.pivot.library.string.StringConcatOperation%>.INSTANCE.evaluate(sum, name_0);\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> String sum_1 = <%org.eclipse.ocl.pivot.library.string.StringConcatOperation%>.INSTANCE.evaluate(sum_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR__32_or_32_vice_m_versa);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> TupleValue symbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createTupleOfEach(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.TUPLid_, sum_1, status);\n\t\t\tsymbol_2 = symbol_1;\n\t\t}\n\t\tCAUGHT_symbol_2 = symbol_2;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_symbol_2 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_PropertyTemplateItem_c_c_CompatibleTypeForCollectionValue, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_symbol_2, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n\tsymbol_3 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_3;'" + * annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv CompatibleTypeForCollectionValue:\n * let\n * severity : Integer[1] = \'PropertyTemplateItem::CompatibleTypeForCollectionValue\'.getSeverity()\n * in\n * if severity <= 0\n * then true\n * else\n * let\n * result : OclAny[1] = let\n * status : Boolean[?] = resolvedProperty.type.oclIsKindOf(CollectionType) and\n * value.type.oclIsKindOf(CollectionType) implies\n * let\n * propertyType : Type[1] = resolvedProperty.type.oclAsType(CollectionType).elementType\n * in\n * let\n * valueType : Type[1] = value.type.oclAsType(CollectionType).elementType\n * in\n * valueType.conformsTo(propertyType) or\n * propertyType.conformsTo(valueType)\n * in\n * if status = true\n * then true\n * else\n * Tuple{\n * message = value.type.oclAsType(CollectionType).elementType.name + \' must conform to \' +\n * resolvedProperty.type.oclAsType(CollectionType).elementType.name + \' or vice-versa\', status = status\n * }\n * endif\n * in\n * \'PropertyTemplateItem::CompatibleTypeForCollectionValue\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_PropertyTemplateItem_c_c_CompatibleTypeForCollectionValue);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> Object symbol_3;\nif (le) {\n\tsymbol_3 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_symbol_2;\n\ttry {\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_and;\n\t\ttry {\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_oclIsKindOf;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_4 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty = this.getResolvedProperty();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type = resolvedProperty.getType();\n\t\t\t\tfinal /*@Thrown\052/ boolean oclIsKindOf = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, type, TYP_CollectionType_4).booleanValue();\n\t\t\t\tCAUGHT_oclIsKindOf = oclIsKindOf;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_oclIsKindOf = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_oclIsKindOf_0;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_5 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression value = this.getValue();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_0 = value.getType();\n\t\t\t\tfinal /*@Thrown\052/ boolean oclIsKindOf_0 = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%>.INSTANCE.evaluate(executor, type_0, TYP_CollectionType_5).booleanValue();\n\t\t\t\tCAUGHT_oclIsKindOf_0 = oclIsKindOf_0;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_oclIsKindOf_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean and = <%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%>.INSTANCE.evaluate(CAUGHT_oclIsKindOf, CAUGHT_oclIsKindOf_0);\n\t\t\tCAUGHT_and = and;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_and = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_or;\n\t\ttry {\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_propertyType;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_6 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty_0 = this.getResolvedProperty();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_1 = resolvedProperty_0.getType();\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_1, TYP_CollectionType_6));\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type propertyType = oclAsType.getElementType();\n\t\t\t\tCAUGHT_propertyType = propertyType;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_propertyType = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_valueType;\n\t\t\ttry {\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_7 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression value_0 = this.getValue();\n\t\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_2 = value_0.getType();\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType_0 = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_2, TYP_CollectionType_7));\n\t\t\t\t@SuppressWarnings(\"null\")\n\t\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type valueType = oclAsType_0.getElementType();\n\t\t\t\tCAUGHT_valueType = valueType;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_valueType = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo;\n\t\t\ttry {\n\t\t\t\tif (CAUGHT_valueType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_valueType;\n\t\t\t\t}\n\t\t\t\tif (CAUGHT_propertyType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_propertyType;\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, CAUGHT_valueType, CAUGHT_propertyType).booleanValue();\n\t\t\t\tCAUGHT_conformsTo = conformsTo;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\t/*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_conformsTo_0;\n\t\t\ttry {\n\t\t\t\tif (CAUGHT_propertyType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_propertyType;\n\t\t\t\t}\n\t\t\t\tif (CAUGHT_valueType instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n\t\t\t\t\tthrow (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_valueType;\n\t\t\t\t}\n\t\t\t\tfinal /*@Thrown\052/ boolean conformsTo_0 = <%org.eclipse.ocl.pivot.library.classifier.OclTypeConformsToOperation%>.INSTANCE.evaluate(executor, CAUGHT_propertyType, CAUGHT_valueType).booleanValue();\n\t\t\t\tCAUGHT_conformsTo_0 = conformsTo_0;\n\t\t\t}\n\t\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\t\tCAUGHT_conformsTo_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean or = <%org.eclipse.ocl.pivot.library.logical.BooleanOrOperation%>.INSTANCE.evaluate(CAUGHT_conformsTo, CAUGHT_conformsTo_0);\n\t\t\tCAUGHT_or = or;\n\t\t}\n\t\tcatch (<%java.lang.Exception%> e) {\n\t\t\tCAUGHT_or = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean status = <%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%>.INSTANCE.evaluate(CAUGHT_and, CAUGHT_or);\n\t\tfinal /*@Thrown\052/ boolean symbol_0 = status == Boolean.TRUE;\n\t\t/*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> Object symbol_2;\n\t\tif (symbol_0) {\n\t\t\tsymbol_2 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n\t\t}\n\t\telse {\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_8 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_CollectionType_9 = idResolver.getClass(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.CLSSid_CollectionType, null);\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> OCLExpression value_1 = this.getValue();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_3 = value_1.getType();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType_1 = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_3, TYP_CollectionType_8));\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type elementType = oclAsType_1.getElementType();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = elementType.getName();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> String sum = <%org.eclipse.ocl.pivot.library.string.StringConcatOperation%>.INSTANCE.evaluate(name, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR__32_must_32_conform_32_to_32);\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Property resolvedProperty_1 = this.getResolvedProperty();\n\t\t\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.Nullable%> Type type_4 = resolvedProperty_1.getType();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> CollectionType oclAsType_2 = <%org.eclipse.ocl.pivot.utilities.ClassUtil%>.nonNullState((<%org.eclipse.ocl.pivot.CollectionType%>)<%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsTypeOperation%>.INSTANCE.evaluate(executor, type_4, TYP_CollectionType_9));\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Type elementType_0 = oclAsType_2.getElementType();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = elementType_0.getName();\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> String sum_0 = <%org.eclipse.ocl.pivot.library.string.StringConcatOperation%>.INSTANCE.evaluate(sum, name_0);\n\t\t\tfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.NonNull%> String sum_1 = <%org.eclipse.ocl.pivot.library.string.StringConcatOperation%>.INSTANCE.evaluate(sum_0, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR__32_or_32_vice_m_versa);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> TupleValue symbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createTupleOfEach(<%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.TUPLid_, sum_1, status);\n\t\t\tsymbol_2 = symbol_1;\n\t\t}\n\t\tCAUGHT_symbol_2 = symbol_2;\n\t}\n\tcatch (<%java.lang.Exception%> e) {\n\t\tCAUGHT_symbol_2 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.STR_PropertyTemplateItem_c_c_CompatibleTypeForCollectionValue, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_symbol_2, <%org.eclipse.qvtd.pivot.qvttemplate.QVTtemplateTables%>.INT_0).booleanValue();\n\tsymbol_3 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_3;'" * @generated */ boolean validateCompatibleTypeForCollectionValue(DiagnosticChain diagnostics, Map<Object, Object> context); diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/CollectionTemplateExpImpl.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/CollectionTemplateExpImpl.java index 12f31f185..24b63f197 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/CollectionTemplateExpImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/CollectionTemplateExpImpl.java @@ -238,9 +238,9 @@ public class CollectionTemplateExpImpl extends TemplateExpImpl implements Collec try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<OCLExpression> member = this.getMember(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_member = idResolver.createSetOfAll(QVTtemplateTables.SET_CLSSid_OCLExpression, member); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_member = idResolver.createSetOfAll(QVTtemplateTables.SET_CLSSid_OCLExpression, member); /*@Thrown*/ java.lang.@Nullable Object accumulator = ValueUtil.TRUE_VALUE; - @NonNull Iterator<Object> ITERATOR__1 = BOXED_member.iterator(); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_member.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/ObjectTemplateExpImpl.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/ObjectTemplateExpImpl.java index b0c4a9be6..1f1b42dde 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/ObjectTemplateExpImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/ObjectTemplateExpImpl.java @@ -33,7 +33,6 @@ import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.util.Visitor; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.pivot.qvttemplate.ObjectTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem; import org.eclipse.qvtd.pivot.qvttemplate.QVTtemplatePackage; @@ -180,9 +179,9 @@ public class ObjectTemplateExpImpl extends TemplateExpImpl implements ObjectTemp else { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<PropertyTemplateItem> part = this.getPart(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue BOXED_part = idResolver.createSetOfAll(QVTtemplateTables.SET_CLSSid_PropertyTemplateItem, part); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(QVTtemplateTables.SET_CLSSid_PropertyTemplateItem); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_part.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_part = idResolver.createSetOfAll(QVTtemplateTables.SET_CLSSid_PropertyTemplateItem, part); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(QVTtemplateTables.SET_CLSSid_PropertyTemplateItem); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_part.lazyIterator(); /*@NonInvalid*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -202,7 +201,7 @@ public class ObjectTemplateExpImpl extends TemplateExpImpl implements ObjectTemp break; } else { - accumulator.add(resolvedProperty); + accumulator.mutableIncluding(resolvedProperty); } } final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, QVTtemplateTables.STR_ObjectTemplateExp_c_c_PartPropertyIsUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, QVTtemplateTables.INT_0).booleanValue(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/PropertyTemplateItemImpl.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/PropertyTemplateItemImpl.java index d3d48be6a..3c9dcb1f3 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/PropertyTemplateItemImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/PropertyTemplateItemImpl.java @@ -758,11 +758,11 @@ public class PropertyTemplateItemImpl extends ElementImpl implements PropertyTem try { /*@Caught*/ @NonNull Object CAUGHT_oclIsKindOf; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_0 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_4 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Property resolvedProperty = this.getResolvedProperty(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Type type = resolvedProperty.getType(); - final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, type, TYP_CollectionType_0).booleanValue(); + final /*@Thrown*/ boolean oclIsKindOf = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, type, TYP_CollectionType_4).booleanValue(); CAUGHT_oclIsKindOf = oclIsKindOf; } catch (Exception e) { @@ -770,11 +770,11 @@ public class PropertyTemplateItemImpl extends ElementImpl implements PropertyTem } /*@Caught*/ @NonNull Object CAUGHT_oclIsKindOf_0; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_1 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_5 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull OCLExpression value = this.getValue(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Type type_0 = value.getType(); - final /*@Thrown*/ boolean oclIsKindOf_0 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, type_0, TYP_CollectionType_1).booleanValue(); + final /*@Thrown*/ boolean oclIsKindOf_0 = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, type_0, TYP_CollectionType_5).booleanValue(); CAUGHT_oclIsKindOf_0 = oclIsKindOf_0; } catch (Exception e) { @@ -790,11 +790,11 @@ public class PropertyTemplateItemImpl extends ElementImpl implements PropertyTem try { /*@Caught*/ @NonNull Object CAUGHT_propertyType; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_2 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_6 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Property resolvedProperty_0 = this.getResolvedProperty(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Type type_1 = resolvedProperty_0.getType(); - final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_1, TYP_CollectionType_2)); + final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_1, TYP_CollectionType_6)); @SuppressWarnings("null") final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull Type propertyType = oclAsType.getElementType(); CAUGHT_propertyType = propertyType; @@ -804,11 +804,11 @@ public class PropertyTemplateItemImpl extends ElementImpl implements PropertyTem } /*@Caught*/ @NonNull Object CAUGHT_valueType; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_3 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_7 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull OCLExpression value_0 = this.getValue(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Type type_2 = value_0.getType(); - final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType_0 = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_2, TYP_CollectionType_3)); + final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType_0 = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_2, TYP_CollectionType_7)); @SuppressWarnings("null") final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull Type valueType = oclAsType_0.getElementType(); CAUGHT_valueType = valueType; @@ -857,11 +857,12 @@ public class PropertyTemplateItemImpl extends ElementImpl implements PropertyTem symbol_2 = ValueUtil.TRUE_VALUE; } else { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_5 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_8 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_CollectionType_9 = idResolver.getClass(QVTtemplateTables.CLSSid_CollectionType, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull OCLExpression value_1 = this.getValue(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Type type_3 = value_1.getType(); - final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType_1 = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_3, TYP_CollectionType_5)); + final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType_1 = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_3, TYP_CollectionType_8)); @SuppressWarnings("null") final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull Type elementType = oclAsType_1.getElementType(); final /*@Thrown*/ java.lang.@Nullable String name = elementType.getName(); @@ -869,7 +870,7 @@ public class PropertyTemplateItemImpl extends ElementImpl implements PropertyTem @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Property resolvedProperty_1 = this.getResolvedProperty(); final /*@NonInvalid*/ org.eclipse.ocl.pivot.@Nullable Type type_4 = resolvedProperty_1.getType(); - final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType_2 = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_4, TYP_CollectionType_5)); + final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull CollectionType oclAsType_2 = ClassUtil.nonNullState((CollectionType)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, type_4, TYP_CollectionType_9)); @SuppressWarnings("null") final /*@Thrown*/ org.eclipse.ocl.pivot.@NonNull Type elementType_0 = oclAsType_2.getElementType(); final /*@Thrown*/ java.lang.@Nullable String name_0 = elementType_0.getName(); diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplateFactoryImpl.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplateFactoryImpl.java index 149420838..b069c4156 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplateFactoryImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplateFactoryImpl.java @@ -16,6 +16,7 @@ import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.impl.EFactoryImpl; import org.eclipse.emf.ecore.plugin.EcorePlugin; import org.eclipse.jdt.annotation.NonNull; +import org.eclipse.qvtd.pivot.qvttemplate.*; import org.eclipse.qvtd.pivot.qvttemplate.CollectionTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.ObjectTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem; diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplatePackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplatePackageImpl.java index 4a8803ce4..eee218fb2 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplatePackageImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/impl/QVTtemplatePackageImpl.java @@ -90,7 +90,7 @@ public class QVTtemplatePackageImpl extends EPackageImpl implements QVTtemplateP /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. - * + * * <p>This method is used to initialize {@link QVTtemplatePackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> @@ -120,18 +120,17 @@ public class QVTtemplatePackageImpl extends EPackageImpl implements QVTtemplateP // Register package validator EValidator.Registry.INSTANCE.put - (theQVTtemplatePackage, - new EValidator.Descriptor() { - @Override - public EValidator getEValidator() { - return QVTtemplateValidator.INSTANCE; - } - }); + (theQVTtemplatePackage, + new EValidator.Descriptor() { + public EValidator getEValidator() { + return QVTtemplateValidator.INSTANCE; + } + }); // Mark meta-data to indicate it can't be changed theQVTtemplatePackage.freeze(); - + // Update the registry and return the package EPackage.Registry.INSTANCE.put(QVTtemplatePackage.eNS_URI, theQVTtemplatePackage); return theQVTtemplatePackage; @@ -625,12 +624,12 @@ public class QVTtemplatePackageImpl extends EPackageImpl implements QVTtemplateP * @generated */ protected void createEcoreAnnotations() { - String source = "http://www.eclipse.org/emf/2002/Ecore"; + String source = "http://www.eclipse.org/emf/2002/Ecore"; addAnnotation - (this, - source, - new String[] { - }); + (this, + source, + new String[] { + }); } /** @@ -640,43 +639,43 @@ public class QVTtemplatePackageImpl extends EPackageImpl implements QVTtemplateP * @generated */ protected void createEmofAnnotations() { - String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; + String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; addAnnotation - (getCollectionTemplateExp_Member(), - source, - new String[] { - "body", "listContainer" - }); + (getCollectionTemplateExp_Member(), + source, + new String[] { + "body", "listContainer" + }); addAnnotation - (getCollectionTemplateExp_Rest(), - source, - new String[] { - "body", "matchingExp" - }); + (getCollectionTemplateExp_Rest(), + source, + new String[] { + "body", "matchingExp" + }); addAnnotation - (getPropertyTemplateItem_ReferredProperty(), - source, - new String[] { - "body", "propertyItem" - }); + (getPropertyTemplateItem_ReferredProperty(), + source, + new String[] { + "body", "propertyItem" + }); addAnnotation - (getPropertyTemplateItem_Value(), - source, - new String[] { - "body", "propertyItem" - }); + (getPropertyTemplateItem_Value(), + source, + new String[] { + "body", "propertyItem" + }); addAnnotation - (getTemplateExp_BindsTo(), - source, - new String[] { - "body", "templateExp" - }); + (getTemplateExp_BindsTo(), + source, + new String[] { + "body", "templateExp" + }); addAnnotation - (getTemplateExp_Where(), - source, - new String[] { - "body", "owner" - }); + (getTemplateExp_Where(), + source, + new String[] { + "body", "owner" + }); } /** @@ -686,67 +685,67 @@ public class QVTtemplatePackageImpl extends EPackageImpl implements QVTtemplateP * @generated */ protected void createUMLAnnotations() { - String source = "http://www.eclipse.org/uml2/2.0.0/UML"; + String source = "http://www.eclipse.org/uml2/2.0.0/UML"; addAnnotation - (getCollectionTemplateExp__ValidateMemberTypeisCollectionElementType__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "MemberTypeisCollectionElementType" - }); + (getCollectionTemplateExp__ValidateMemberTypeisCollectionElementType__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "MemberTypeisCollectionElementType" + }); addAnnotation - (getCollectionTemplateExp__ValidateRestTypeisCollectionType__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "RestTypeisCollectionType" - }); + (getCollectionTemplateExp__ValidateRestTypeisCollectionType__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "RestTypeisCollectionType" + }); addAnnotation - (getCollectionTemplateExp__ValidateTypeisCollectionType__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "TypeisCollectionType" - }); + (getCollectionTemplateExp__ValidateTypeisCollectionType__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "TypeisCollectionType" + }); addAnnotation - (getObjectTemplateExp__ValidatePartPropertyIsUnique__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "PartPropertyIsUnique" - }); + (getObjectTemplateExp__ValidatePartPropertyIsUnique__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "PartPropertyIsUnique" + }); addAnnotation - (getObjectTemplateExp__ValidateTypeisObjectType__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "TypeisObjectType" - }); + (getObjectTemplateExp__ValidateTypeisObjectType__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "TypeisObjectType" + }); addAnnotation - (getPropertyTemplateItem__ValidateCompatibleClassForProperty__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleClassForProperty" - }); + (getPropertyTemplateItem__ValidateCompatibleClassForProperty__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleClassForProperty" + }); addAnnotation - (getPropertyTemplateItem__ValidateCompatibleTypeForObjectValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForObjectValue" - }); + (getPropertyTemplateItem__ValidateCompatibleTypeForObjectValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForObjectValue" + }); addAnnotation - (getPropertyTemplateItem__ValidateCompatibleTypeForCollectionElementValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForCollectionElementValue" - }); + (getPropertyTemplateItem__ValidateCompatibleTypeForCollectionElementValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForCollectionElementValue" + }); addAnnotation - (getPropertyTemplateItem__ValidateCompatibleTypeForCollectionValue__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "CompatibleTypeForCollectionValue" - }); + (getPropertyTemplateItem__ValidateCompatibleTypeForCollectionValue__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "CompatibleTypeForCollectionValue" + }); addAnnotation - (getTemplateExp__ValidateWhereIsBoolean__DiagnosticChain_Map(), - source, - new String[] { - "originalName", "WhereIsBoolean" - }); + (getTemplateExp__ValidateWhereIsBoolean__DiagnosticChain_Map(), + source, + new String[] { + "originalName", "WhereIsBoolean" + }); } } //QVTtemplatePackageImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateAdapterFactory.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateAdapterFactory.java index 611752a22..eca598a4e 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateAdapterFactory.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateAdapterFactory.java @@ -23,6 +23,7 @@ import org.eclipse.ocl.pivot.ReferringElement; import org.eclipse.ocl.pivot.TypedElement; import org.eclipse.ocl.pivot.util.Visitable; import org.eclipse.ocl.pivot.utilities.Nameable; +import org.eclipse.qvtd.pivot.qvttemplate.*; import org.eclipse.qvtd.pivot.qvttemplate.CollectionTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.ObjectTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem; diff --git a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateSwitch.java b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateSwitch.java index 4b419712c..426fcf57f 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateSwitch.java +++ b/plugins/org.eclipse.qvtd.pivot.qvttemplate/emf-gen/org/eclipse/qvtd/pivot/qvttemplate/util/QVTtemplateSwitch.java @@ -22,6 +22,7 @@ import org.eclipse.ocl.pivot.ReferringElement; import org.eclipse.ocl.pivot.TypedElement; import org.eclipse.ocl.pivot.util.Visitable; import org.eclipse.ocl.pivot.utilities.Nameable; +import org.eclipse.qvtd.pivot.qvttemplate.*; import org.eclipse.qvtd.pivot.qvttemplate.CollectionTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.ObjectTemplateExp; import org.eclipse.qvtd.pivot.qvttemplate.PropertyTemplateItem; diff --git a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/internal/evaluation/AbstractTransformerInternal.java b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/internal/evaluation/AbstractTransformerInternal.java index 5ee4f8512..c33f470d6 100644 --- a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/internal/evaluation/AbstractTransformerInternal.java +++ b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/internal/evaluation/AbstractTransformerInternal.java @@ -37,11 +37,10 @@ import org.eclipse.ocl.pivot.ids.PackageId; import org.eclipse.ocl.pivot.ids.PropertyId; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.internal.evaluation.EvaluationCache; -import org.eclipse.ocl.pivot.internal.values.SetValueImpl; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.NameUtil; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; +import org.eclipse.ocl.pivot.values.MutableIterable; import org.eclipse.qvtd.runtime.evaluation.AbstractTransformer; import org.eclipse.qvtd.runtime.evaluation.AbstractTypedModelInstance; import org.eclipse.qvtd.runtime.evaluation.Connection; @@ -443,7 +442,7 @@ public abstract class AbstractTransformerInternal /*extends AbstractModelManager } @Deprecated // only used by exe2016/bugmde2016 tests - private static class UnenforcedSetAccumulator extends SetValueImpl implements SetValue.Accumulator + private static class UnenforcedSetAccumulator extends SetValueImpl implements MutableIterable { public UnenforcedSetAccumulator(@NonNull CollectionTypeId typeId) { super(typeId, new ArrayList<>()); @@ -608,7 +607,7 @@ public abstract class AbstractTransformerInternal /*extends AbstractModelManager } @Deprecated // Use createConnection - protected SetValue.@NonNull Accumulator createUnenforcedSetAccumulatorValue(@NonNull CollectionTypeId typeId) { + protected @NonNull MutableIterable createUnenforcedSetAccumulatorValue(@NonNull CollectionTypeId typeId) { return new UnenforcedSetAccumulator(typeId); } diff --git a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/AllObjectsOperation.java b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/AllObjectsOperation.java index 1f9c50ed7..62352ee7c 100644 --- a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/AllObjectsOperation.java +++ b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/AllObjectsOperation.java @@ -17,8 +17,9 @@ import org.eclipse.ocl.pivot.ids.CollectionTypeId; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.library.AbstractUnaryOperation; import org.eclipse.ocl.pivot.messages.PivotMessages; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; +import org.eclipse.ocl.pivot.values.MutableIterable; import org.eclipse.qvtd.runtime.evaluation.TypedModelInstance; /** @@ -31,7 +32,7 @@ public class AllObjectsOperation extends AbstractUnaryOperation public static final @NonNull AllObjectsOperation INSTANCE = new AllObjectsOperation(); @Override - public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) { + public @NonNull CollectionValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) { if (!(sourceVal instanceof TypedModelInstance)) { throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal)); } diff --git a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfKindOperation.java b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfKindOperation.java index 7bf85d09b..08643b244 100644 --- a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfKindOperation.java +++ b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfKindOperation.java @@ -17,8 +17,8 @@ import org.eclipse.ocl.pivot.ids.CollectionTypeId; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.library.AbstractBinaryOperation; import org.eclipse.ocl.pivot.messages.PivotMessages; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.runtime.evaluation.TypedModelInstance; import com.google.common.collect.Lists; @@ -33,7 +33,7 @@ public class ModelObjectsOfKindOperation extends AbstractBinaryOperation public static final @NonNull ModelObjectsOfKindOperation INSTANCE = new ModelObjectsOfKindOperation(); @Override - public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) { + public @NonNull CollectionValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) { org.eclipse.ocl.pivot.Class type = asClass(typeVal); if (!(sourceVal instanceof TypedModelInstance)) { throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal)); diff --git a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfTypeOperation.java b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfTypeOperation.java index c71c8d7f4..9643c3080 100644 --- a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfTypeOperation.java +++ b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/ModelObjectsOfTypeOperation.java @@ -19,8 +19,8 @@ import org.eclipse.ocl.pivot.ids.CollectionTypeId; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.library.AbstractBinaryOperation; import org.eclipse.ocl.pivot.messages.PivotMessages; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.runtime.evaluation.TypedModelInstance; /** @@ -33,7 +33,7 @@ public class ModelObjectsOfTypeOperation extends AbstractBinaryOperation public static final @NonNull ModelObjectsOfTypeOperation INSTANCE = new ModelObjectsOfTypeOperation(); @Override - public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) { + public @NonNull CollectionValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal, @Nullable Object typeVal) { org.eclipse.ocl.pivot.Class type = asClass(typeVal); if (!(sourceVal instanceof TypedModelInstance)) { throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal)); diff --git a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/RootObjectsOperation.java b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/RootObjectsOperation.java index 5fdfa822a..a09519c90 100644 --- a/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/RootObjectsOperation.java +++ b/plugins/org.eclipse.qvtd.runtime/src/org/eclipse/qvtd/runtime/library/model/RootObjectsOperation.java @@ -19,8 +19,8 @@ import org.eclipse.ocl.pivot.ids.CollectionTypeId; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.library.AbstractUnaryOperation; import org.eclipse.ocl.pivot.messages.PivotMessages; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.runtime.evaluation.TypedModelInstance; /** @@ -33,7 +33,7 @@ public class RootObjectsOperation extends AbstractUnaryOperation public static final @NonNull RootObjectsOperation INSTANCE = new RootObjectsOperation(); @Override - public @NonNull SetValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) { + public @NonNull CollectionValue evaluate(@NonNull Executor executor, @NonNull TypeId returnTypeId, @Nullable Object sourceVal) { if (!(sourceVal instanceof TypedModelInstance)) { throw new InvalidValueException(PivotMessages.TypedValueRequired, "TypedModelInstance", getTypeName(sourceVal)); } diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/UMLXTables.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/UMLXTables.java index aa75323af..574aec7c3 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/UMLXTables.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/UMLXTables.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016, 2017 Willink Transformations and others. + * Copyright (c) 2016 Willink Transformations and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelDiagramImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelDiagramImpl.java index 072f2215b..0c44c122e 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelDiagramImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelDiagramImpl.java @@ -38,8 +38,6 @@ import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.library.string.StringConcatOperation; import org.eclipse.ocl.pivot.utilities.ValueUtil; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SequenceValue; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.RelDiagram; import org.eclipse.qvtd.umlx.RelDomainNode; import org.eclipse.qvtd.umlx.RelInvocationNode; @@ -345,10 +343,10 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<RelDomainNode> ownedRelDomainNodes = this.getOwnedRelDomainNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedRelDomainNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelDomainNode, ownedRelDomainNodes); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedRelDomainNodes.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedRelDomainNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelDomainNode, ownedRelDomainNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedRelDomainNodes.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1.hasNext()) { collect = accumulator; @@ -361,15 +359,15 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { */ @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<RelPatternNode> ownedRelPatternNodes = _1.getOwnedRelPatternNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedRelPatternNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelPatternNode, ownedRelPatternNodes); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedRelPatternNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelPatternNode, ownedRelPatternNodes); // for (Object value : BOXED_ownedRelPatternNodes.flatten().getElements()) { - accumulator.add(value); + accumulator.mutableIncluding(value); } } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); - @NonNull Iterator<Object> ITERATOR__1_0 = collect.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue select_0; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); + @NonNull Iterator<Object> ITERATOR__1_0 = collect.lazyIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select_0; while (true) { if (!ITERATOR__1_0.hasNext()) { select_0 = accumulator_0; @@ -387,12 +385,12 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { } // if (not == ValueUtil.TRUE_VALUE) { - accumulator_0.add(_1_0); + accumulator_0.mutableIncluding(_1_0); } } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_1 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); - @NonNull Iterator<Object> ITERATOR__1_1 = select_0.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue select; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_1 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); + @NonNull Iterator<Object> ITERATOR__1_1 = select_0.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select; while (true) { if (!ITERATOR__1_1.hasNext()) { select = accumulator_1; @@ -410,12 +408,12 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { } // if (not_0 == ValueUtil.TRUE_VALUE) { - accumulator_1.add(_1_1); + accumulator_1.mutableIncluding(_1_1); } } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_2 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_PRIMid_String); - @NonNull Iterator<Object> ITERATOR__1_2 = select.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue allNames; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_2 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_PRIMid_String); + @NonNull Iterator<Object> ITERATOR__1_2 = select.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue allNames; while (true) { if (!ITERATOR__1_2.hasNext()) { allNames = accumulator_2; @@ -428,10 +426,11 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { */ final /*@NonInvalid*/ java.lang.@Nullable String name = _1_2.getName(); // - accumulator_2.add(name); + accumulator_2.mutableIncluding(name); } - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_3 = ValueUtil.createSetAccumulatorValue(UMLXTables.SEQ_PRIMid_String); - @Nullable Iterator<Object> ITERATOR_n = allNames.iterator(); + allNames.cachedIterable(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_3 = ValueUtil.createSetAccumulatorValue(UMLXTables.SEQ_PRIMid_String); + @Nullable Iterator<Object> ITERATOR_n = allNames.eagerIterator(); /*@Thrown*/ boolean status; while (true) { if (!ITERATOR_n.hasNext()) { @@ -448,7 +447,7 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { break; } else { - accumulator_3.add(n); + accumulator_3.mutableIncluding(n); } } /*@Thrown*/ java.lang.@NonNull Object symbol_1; @@ -456,9 +455,9 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { symbol_1 = ValueUtil.TRUE_VALUE; } else { - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_4 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_PRIMid_String); - @Nullable Iterator<Object> ITERATOR_n_0 = allNames.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue select_1; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_4 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_PRIMid_String); + @Nullable Iterator<Object> ITERATOR_n_0 = allNames.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select_1; while (true) { if (!ITERATOR_n_0.hasNext()) { select_1 = accumulator_4; @@ -472,12 +471,12 @@ public class RelDiagramImpl extends UMLXNamedElementImpl implements RelDiagram { final /*@Thrown*/ boolean gt = OclComparableGreaterThanOperation.INSTANCE.evaluate(executor, count, UMLXTables.INT_1).booleanValue(); // if (gt == ValueUtil.TRUE_VALUE) { - accumulator_4.add(n_0); + accumulator_4.mutableIncluding(n_0); } } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue repeatedNames = CollectionAsSetOperation.INSTANCE.evaluate(select_1); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue repeatedNames = CollectionAsSetOperation.INSTANCE.evaluate(select_1); /*@NonInvalid*/ java.lang.@NonNull String acc = UMLXTables.STR_RelDiagram_c_c_RelPatternNodeNamesAreUnique_c; - @Nullable Iterator<Object> ITERATOR_n_1 = repeatedNames.iterator(); + @Nullable Iterator<Object> ITERATOR_n_1 = repeatedNames.eagerIterator(); /*@Thrown*/ java.lang.@Nullable String iterate; while (true) { if (!ITERATOR_n_1.hasNext()) { diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelInvocationNodeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelInvocationNodeImpl.java index ca1b9aca7..da160f1b3 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelInvocationNodeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelInvocationNodeImpl.java @@ -27,6 +27,7 @@ import org.eclipse.jdt.annotation.NonNull; import org.eclipse.ocl.pivot.ids.TypeId; import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal; import org.eclipse.ocl.pivot.library.collection.CollectionAsSetOperation; +import org.eclipse.ocl.pivot.library.collection.CollectionMutableAsSetOperation; import org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation; import org.eclipse.ocl.pivot.library.oclany.OclAnyToStringOperation; import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation; @@ -232,96 +233,90 @@ public class RelInvocationNodeImpl extends RelNodeImpl implements RelInvocationN symbol_2 = ValueUtil.TRUE_VALUE; } else { - /*@Caught*/ @NonNull Object CAUGHT_symbol_1; - try { + @SuppressWarnings("null") + final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelDiagram referredRelDiagram = this.getReferredRelDiagram(); + @SuppressWarnings("null") + final /*@NonInvalid*/ java.util.@NonNull List<RelDomainNode> ownedRelDomainNodes = referredRelDiagram.getOwnedRelDomainNodes(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedRelDomainNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelDomainNode, ownedRelDomainNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedRelDomainNodes.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; + while (true) { + if (!ITERATOR__1.hasNext()) { + collect = accumulator; + break; + } @SuppressWarnings("null") - final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelDiagram referredRelDiagram = this.getReferredRelDiagram(); + /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelDomainNode _1 = (RelDomainNode)ITERATOR__1.next(); + /** + * ownedRelPatternNodes + */ @SuppressWarnings("null") - final /*@NonInvalid*/ java.util.@NonNull List<RelDomainNode> ownedRelDomainNodes = referredRelDiagram.getOwnedRelDomainNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedRelDomainNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelDomainNode, ownedRelDomainNodes); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedRelDomainNodes.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; - while (true) { - if (!ITERATOR__1.hasNext()) { - collect = accumulator; - break; - } - @SuppressWarnings("null") - /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelDomainNode _1 = (RelDomainNode)ITERATOR__1.next(); - /** - * ownedRelPatternNodes - */ - @SuppressWarnings("null") - final /*@NonInvalid*/ java.util.@NonNull List<RelPatternNode> ownedRelPatternNodes = _1.getOwnedRelPatternNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedRelPatternNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelPatternNode, ownedRelPatternNodes); - // - for (Object value : BOXED_ownedRelPatternNodes.flatten().getElements()) { - accumulator.add(value); - } + final /*@NonInvalid*/ java.util.@NonNull List<RelPatternNode> ownedRelPatternNodes = _1.getOwnedRelPatternNodes(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedRelPatternNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelPatternNode, ownedRelPatternNodes); + // + for (Object value : BOXED_ownedRelPatternNodes.flatten().getElements()) { + accumulator.mutableIncluding(value); } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); - @NonNull Iterator<Object> ITERATOR__1_0 = collect.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue select; - while (true) { - if (!ITERATOR__1_0.hasNext()) { - select = accumulator_0; - break; - } - @SuppressWarnings("null") - /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode _1_0 = (RelPatternNode)ITERATOR__1_0.next(); - /** - * isRoot - */ - final /*@NonInvalid*/ boolean isRoot = _1_0.isIsRoot(); - // - if (isRoot == ValueUtil.TRUE_VALUE) { - accumulator_0.add(_1_0); - } + } + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); + @NonNull Iterator<Object> ITERATOR__1_0 = collect.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue select; + while (true) { + if (!ITERATOR__1_0.hasNext()) { + select = accumulator_0; + break; } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue expectedNodes = CollectionAsSetOperation.INSTANCE.evaluate(select); @SuppressWarnings("null") - final /*@NonInvalid*/ java.util.@NonNull List<RelInvocationEdge> ownedRelInvocationEdges = this.getOwnedRelInvocationEdges(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedRelInvocationEdges = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelInvocationEdge, ownedRelInvocationEdges); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_1 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); - @NonNull Iterator<Object> ITERATOR__1_1 = BOXED_ownedRelInvocationEdges.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect_0; - while (true) { - if (!ITERATOR__1_1.hasNext()) { - collect_0 = accumulator_1; - break; - } - @SuppressWarnings("null") - /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelInvocationEdge _1_1 = (RelInvocationEdge)ITERATOR__1_1.next(); - /** - * referredRelPatternNode - */ - @SuppressWarnings("null") - final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode referredRelPatternNode = _1_1.getReferredRelPatternNode(); - // - accumulator_1.add(referredRelPatternNode); + /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode _1_0 = (RelPatternNode)ITERATOR__1_0.next(); + /** + * isRoot + */ + final /*@NonInvalid*/ boolean isRoot = _1_0.isIsRoot(); + // + if (isRoot == ValueUtil.TRUE_VALUE) { + accumulator_0.mutableIncluding(_1_0); } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue actualNodes = CollectionAsSetOperation.INSTANCE.evaluate(collect_0); - final /*@Thrown*/ boolean status = expectedNodes.equals(actualNodes); - /*@Thrown*/ java.lang.@NonNull Object symbol_1; - if (status) { - symbol_1 = ValueUtil.TRUE_VALUE; - } - else { - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size_0 = CollectionSizeOperation.INSTANCE.evaluate(expectedNodes); - final /*@Thrown*/ java.lang.@NonNull String toString_0 = OclAnyToStringOperation.INSTANCE.evaluate(size_0); - final /*@Thrown*/ java.lang.@NonNull String sum = StringConcatOperation.INSTANCE.evaluate(UMLXTables.STR_RelInvocationNode_c_c_CompatibleEdges_32, toString_0); - final /*@Thrown*/ java.lang.@NonNull String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, UMLXTables.STR_quot); - final /*@Thrown*/ java.lang.@NonNull String sum_1 = StringConcatOperation.INSTANCE.evaluate(sum_0, toString_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull TupleValue symbol_0 = ValueUtil.createTupleOfEach(UMLXTables.TUPLid_, sum_1, status); - symbol_1 = symbol_0; + } + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue expectedNodes = CollectionMutableAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_RelPatternNode, select); + expectedNodes.cachedIterable(); + @SuppressWarnings("null") + final /*@NonInvalid*/ java.util.@NonNull List<RelInvocationEdge> ownedRelInvocationEdges = this.getOwnedRelInvocationEdges(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedRelInvocationEdges = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelInvocationEdge, ownedRelInvocationEdges); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_1 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_RelPatternNode); + @NonNull Iterator<Object> ITERATOR__1_1 = BOXED_ownedRelInvocationEdges.lazyIterator(); + /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect_0; + while (true) { + if (!ITERATOR__1_1.hasNext()) { + collect_0 = accumulator_1; + break; } - CAUGHT_symbol_1 = symbol_1; + @SuppressWarnings("null") + /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelInvocationEdge _1_1 = (RelInvocationEdge)ITERATOR__1_1.next(); + /** + * referredRelPatternNode + */ + @SuppressWarnings("null") + final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode referredRelPatternNode = _1_1.getReferredRelPatternNode(); + // + accumulator_1.mutableIncluding(referredRelPatternNode); + } + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue actualNodes = CollectionMutableAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_RelPatternNode, collect_0); + final /*@NonInvalid*/ boolean status = expectedNodes.equals(actualNodes); + /*@NonInvalid*/ java.lang.@NonNull Object symbol_1; + if (status) { + symbol_1 = ValueUtil.TRUE_VALUE; } - catch (Exception e) { - CAUGHT_symbol_1 = ValueUtil.createInvalidValue(e); + else { + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size_0 = CollectionSizeOperation.INSTANCE.evaluate(expectedNodes); + final /*@NonInvalid*/ java.lang.@NonNull String toString_0 = OclAnyToStringOperation.INSTANCE.evaluate(size_0); + final /*@NonInvalid*/ java.lang.@NonNull String sum = StringConcatOperation.INSTANCE.evaluate(UMLXTables.STR_RelInvocationNode_c_c_CompatibleEdges_32, toString_0); + final /*@NonInvalid*/ java.lang.@NonNull String sum_0 = StringConcatOperation.INSTANCE.evaluate(sum, UMLXTables.STR_quot); + final /*@NonInvalid*/ java.lang.@NonNull String sum_1 = StringConcatOperation.INSTANCE.evaluate(sum_0, toString_0); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull TupleValue symbol_0 = ValueUtil.createTupleOfEach(UMLXTables.TUPLid_, sum_1, status); + symbol_1 = symbol_0; } - final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, UMLXTables.STR_RelInvocationNode_c_c_CompatibleEdges, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_symbol_1, UMLXTables.INT_0).booleanValue(); + final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, UMLXTables.STR_RelInvocationNode_c_c_CompatibleEdges, this, (Object)null, diagnostics, context, (Object)null, severity_0, symbol_1, UMLXTables.INT_0).booleanValue(); symbol_2 = logDiagnostic; } return Boolean.TRUE == symbol_2; diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternEdgeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternEdgeImpl.java index c84d454f6..fa894f6e3 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternEdgeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternEdgeImpl.java @@ -44,8 +44,8 @@ import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.RelDomainNode; import org.eclipse.qvtd.umlx.RelPatternEdge; import org.eclipse.qvtd.umlx.RelPatternNode; @@ -678,7 +678,7 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode target_0 = this.getTarget(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier = target_0.getReferredEClassifier(); final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass sourceEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier, TYP_ecore_c_c_EClass_0)); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, sourceEClass); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, sourceEClass); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, UMLXTables.SET_CLSSid_EClass, UMLXTables.ORD_CLSSid_EClass); @@ -697,12 +697,12 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<EClass> eSuperTypes = symbol_0.getESuperTypes(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); return BOXED_eSuperTypes; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0 = new ExecutorSingleIterationManager(executor, UMLXTables.SET_CLSSid_EClass, BODY_closure_0, oclAsSet, ACC_closure_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EStructuralFeature referredEStructuralFeature_1 = this.getReferredEStructuralFeature(); if (referredEStructuralFeature_1 == null) { throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/emf/2002/Ecore\'::ETypedElement::eType\'"); @@ -771,7 +771,7 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode source = this.getSource(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier = source.getReferredEClassifier(); final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass oclAsType = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier, TYP_ecore_c_c_EClass)); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, oclAsType); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, oclAsType); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, UMLXTables.SET_CLSSid_EClass, UMLXTables.ORD_CLSSid_EClass); @@ -790,12 +790,12 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<EClass> eSuperTypes = symbol_0.getESuperTypes(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); return BOXED_eSuperTypes; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0 = new ExecutorSingleIterationManager(executor, UMLXTables.SET_CLSSid_EClass, BODY_closure_0, oclAsSet, ACC_closure_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); if (referredEStructuralFeature == null) { throw new InvalidValueException("Null source for \'\'http://www.eclipse.org/emf/2002/Ecore\'::EStructuralFeature::eContainingClass\'"); } @@ -924,11 +924,11 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { try { /*@Caught*/ @NonNull Object CAUGHT_sourceEClass; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_0 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_3 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode source = this.getSource(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier = source.getReferredEClassifier(); - final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass sourceEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier, TYP_ecore_c_c_EClass_0)); + final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass sourceEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier, TYP_ecore_c_c_EClass_3)); CAUGHT_sourceEClass = sourceEClass; } catch (Exception e) { @@ -936,11 +936,11 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { } /*@Caught*/ @NonNull Object CAUGHT_targetEClass; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_1 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_4 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode target_0 = this.getTarget(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier_0 = target_0.getReferredEClassifier(); - final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass targetEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier_0, TYP_ecore_c_c_EClass_1)); + final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass targetEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier_0, TYP_ecore_c_c_EClass_4)); CAUGHT_targetEClass = targetEClass; } catch (Exception e) { @@ -1089,11 +1089,11 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { try { /*@Caught*/ @NonNull Object CAUGHT_sourceEClass; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_0 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_1 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode source = this.getSource(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier = source.getReferredEClassifier(); - final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass sourceEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier, TYP_ecore_c_c_EClass_0)); + final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass sourceEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier, TYP_ecore_c_c_EClass_1)); CAUGHT_sourceEClass = sourceEClass; } catch (Exception e) { @@ -1101,11 +1101,11 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { } /*@Caught*/ @NonNull Object CAUGHT_targetEClass; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_1 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_2 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull RelPatternNode target_0 = this.getTarget(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier_0 = target_0.getReferredEClassifier(); - final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass targetEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier_0, TYP_ecore_c_c_EClass_1)); + final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass targetEClass = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClassifier_0, TYP_ecore_c_c_EClass_2)); CAUGHT_targetEClass = targetEClass; } catch (Exception e) { @@ -1116,7 +1116,7 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { if (CAUGHT_sourceEClass instanceof InvalidValueException) { throw (InvalidValueException)CAUGHT_sourceEClass; } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, CAUGHT_sourceEClass); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, CAUGHT_sourceEClass); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_1 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_1 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_1.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_1 = IMPL_closure_1.createAccumulatorValue(executor, UMLXTables.SET_CLSSid_EClass, UMLXTables.ORD_CLSSid_EClass); @@ -1135,12 +1135,12 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<EClass> eSuperTypes = symbol_0.getESuperTypes(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); return BOXED_eSuperTypes; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_1 = new ExecutorSingleIterationManager(executor, UMLXTables.SET_CLSSid_EClass, BODY_closure_1, oclAsSet, ACC_closure_1); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_1.evaluateIteration(MGR_closure_1)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_1.evaluateIteration(MGR_closure_1)); if (CAUGHT_targetEClass instanceof InvalidValueException) { throw (InvalidValueException)CAUGHT_targetEClass; } @@ -1155,7 +1155,7 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { if (CAUGHT_targetEClass instanceof InvalidValueException) { throw (InvalidValueException)CAUGHT_targetEClass; } - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet_0 = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, CAUGHT_targetEClass); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet_0 = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, CAUGHT_targetEClass); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0_0 = executor.getStaticTypeOf(oclAsSet_0); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0_0 = IMPL_closure_0_0.createAccumulatorValue(executor, UMLXTables.SET_CLSSid_EClass, UMLXTables.ORD_CLSSid_EClass); @@ -1174,12 +1174,12 @@ public class RelPatternEdgeImpl extends RelEdgeImpl implements RelPatternEdge { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<EClass> eSuperTypes_0 = symbol_1.getESuperTypes(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_eSuperTypes_0 = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes_0); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_eSuperTypes_0 = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes_0); return BOXED_eSuperTypes_0; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0_0 = new ExecutorSingleIterationManager(executor, UMLXTables.SET_CLSSid_EClass, BODY_closure_0_0, oclAsSet_0, ACC_closure_0_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure_0 = ClassUtil.nonNullState((SetValue)IMPL_closure_0_0.evaluateIteration(MGR_closure_0_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure_0 = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0_0.evaluateIteration(MGR_closure_0_0)); if (CAUGHT_sourceEClass instanceof InvalidValueException) { throw (InvalidValueException)CAUGHT_sourceEClass; } diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternNodeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternNodeImpl.java index 46a0e5705..1082f4c48 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternNodeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/RelPatternNodeImpl.java @@ -587,7 +587,7 @@ public class RelPatternNodeImpl extends RelNodeImpl implements RelPatternNode { if (eq) { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<String> initExpressionLines = this.getInitExpressionLines(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_initExpressionLines = idResolver.createOrderedSetOfAll(UMLXTables.ORD_PRIMid_String, initExpressionLines); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_initExpressionLines = idResolver.createOrderedSetOfAll(UMLXTables.ORD_PRIMid_String, initExpressionLines); final /*@NonInvalid*/ boolean notEmpty = CollectionNotEmptyOperation.INSTANCE.evaluate(BOXED_initExpressionLines).booleanValue(); and = notEmpty; } @@ -743,10 +743,10 @@ public class RelPatternNodeImpl extends RelNodeImpl implements RelPatternNode { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<TxPackageNode> usedTxPackageNodes = txTypedModelNode.getUsedTxPackageNodes(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_usedTxPackageNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxPackageNode, usedTxPackageNodes); - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_EPackage); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_usedTxPackageNodes.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect_0; + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_usedTxPackageNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxPackageNode, usedTxPackageNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_EPackage); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_usedTxPackageNodes.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect_0; while (true) { if (!ITERATOR__1.hasNext()) { collect_0 = accumulator; @@ -760,11 +760,11 @@ public class RelPatternNodeImpl extends RelNodeImpl implements RelPatternNode { @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EPackage referredEPackage = _1.getReferredEPackage(); // - accumulator.add(referredEPackage); + accumulator.mutableIncluding(referredEPackage); } - /*@Thrown*/ SequenceValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator_0 = ValueUtil.createSequenceAccumulatorValue(UMLXTables.SEQ_CLSSid_EClassifier); - @NonNull Iterator<Object> ITERATOR__1_0 = collect_0.iterator(); - /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue collect; + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator_0 = ValueUtil.createCollectionAccumulatorValue(UMLXTables.SEQ_CLSSid_EClassifier); + @NonNull Iterator<Object> ITERATOR__1_0 = collect_0.eagerIterator(); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue collect; while (true) { if (!ITERATOR__1_0.hasNext()) { collect = accumulator_0; @@ -777,10 +777,10 @@ public class RelPatternNodeImpl extends RelNodeImpl implements RelPatternNode { */ @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<EClassifier> eClassifiers = _1_0.getEClassifiers(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_eClassifiers = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClassifier, eClassifiers); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_eClassifiers = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClassifier, eClassifiers); // for (Object value : BOXED_eClassifiers.flatten().getElements()) { - accumulator_0.add(value); + accumulator_0.mutableIncluding(value); } } final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClassifier referredEClassifier = this.getReferredEClassifier(); diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxDiagramImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxDiagramImpl.java index f7998df73..5173635e5 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxDiagramImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxDiagramImpl.java @@ -31,7 +31,6 @@ import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation; import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.RelDiagram; import org.eclipse.qvtd.umlx.TxDiagram; import org.eclipse.qvtd.umlx.TxKeyNode; @@ -270,9 +269,9 @@ public class TxDiagramImpl extends UMLXNamedElementImpl implements TxDiagram { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<TxQueryNode> ownedTxQueryNodes = this.getOwnedTxQueryNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedTxQueryNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxQueryNode, ownedTxQueryNodes); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxQueryNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxQueryNodes.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedTxQueryNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxQueryNode, ownedTxQueryNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxQueryNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxQueryNodes.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -291,7 +290,7 @@ public class TxDiagramImpl extends UMLXNamedElementImpl implements TxDiagram { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; @@ -339,9 +338,9 @@ public class TxDiagramImpl extends UMLXNamedElementImpl implements TxDiagram { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<RelDiagram> ownedRelDiagrams = this.getOwnedRelDiagrams(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedRelDiagrams = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelDiagram, ownedRelDiagrams); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_RelDiagram); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedRelDiagrams.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedRelDiagrams = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_RelDiagram, ownedRelDiagrams); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_RelDiagram); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedRelDiagrams.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -360,7 +359,7 @@ public class TxDiagramImpl extends UMLXNamedElementImpl implements TxDiagram { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; @@ -444,9 +443,9 @@ public class TxDiagramImpl extends UMLXNamedElementImpl implements TxDiagram { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<TxTypedModelNode> ownedTxTypedModelNodes = this.getOwnedTxTypedModelNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedTxTypedModelNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxTypedModelNode, ownedTxTypedModelNodes); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxTypedModelNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxTypedModelNodes.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedTxTypedModelNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxTypedModelNode, ownedTxTypedModelNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxTypedModelNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxTypedModelNodes.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -465,7 +464,7 @@ public class TxDiagramImpl extends UMLXNamedElementImpl implements TxDiagram { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxKeyNodeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxKeyNodeImpl.java index 40473f40f..5e454a547 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxKeyNodeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxKeyNodeImpl.java @@ -31,7 +31,6 @@ import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation; import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.TxDiagram; import org.eclipse.qvtd.umlx.TxKeyNode; import org.eclipse.qvtd.umlx.TxPartNode; @@ -220,41 +219,34 @@ public class TxKeyNodeImpl extends TxNodeImpl implements TxKeyNode { symbol_0 = ValueUtil.TRUE_VALUE; } else { - /*@Caught*/ @NonNull Object CAUGHT_result; - try { + @SuppressWarnings("null") + final /*@NonInvalid*/ java.util.@NonNull List<TxPartNode> ownedTxPartNodes = this.getOwnedTxPartNodes(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedTxPartNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxPartNode, ownedTxPartNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxPartNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxPartNodes.lazyIterator(); + /*@NonInvalid*/ boolean result; + while (true) { + if (!ITERATOR__1.hasNext()) { + result = ValueUtil.TRUE_VALUE; + break; + } + @SuppressWarnings("null") + /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull TxPartNode _1 = (TxPartNode)ITERATOR__1.next(); + /** + * referredEStructuralFeature + */ @SuppressWarnings("null") - final /*@NonInvalid*/ java.util.@NonNull List<TxPartNode> ownedTxPartNodes = this.getOwnedTxPartNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedTxPartNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxPartNode, ownedTxPartNodes); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxPartNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxPartNodes.iterator(); - /*@Thrown*/ boolean result; - while (true) { - if (!ITERATOR__1.hasNext()) { - result = ValueUtil.TRUE_VALUE; - break; - } - @SuppressWarnings("null") - /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull TxPartNode _1 = (TxPartNode)ITERATOR__1.next(); - /** - * referredEStructuralFeature - */ - @SuppressWarnings("null") - final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EStructuralFeature referredEStructuralFeature = _1.getReferredEStructuralFeature(); - // - if (accumulator.includes(referredEStructuralFeature) == ValueUtil.TRUE_VALUE) { - result = ValueUtil.FALSE_VALUE; // Abort after second find - break; - } - else { - accumulator.add(referredEStructuralFeature); - } + final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EStructuralFeature referredEStructuralFeature = _1.getReferredEStructuralFeature(); + // + if (accumulator.includes(referredEStructuralFeature) == ValueUtil.TRUE_VALUE) { + result = ValueUtil.FALSE_VALUE; // Abort after second find + break; + } + else { + accumulator.mutableIncluding(referredEStructuralFeature); } - CAUGHT_result = result; - } - catch (Exception e) { - CAUGHT_result = ValueUtil.createInvalidValue(e); } - final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, UMLXTables.STR_TxKeyNode_c_c_PartsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, UMLXTables.INT_0).booleanValue(); + final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, UMLXTables.STR_TxKeyNode_c_c_PartsAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, UMLXTables.INT_0).booleanValue(); symbol_0 = logDiagnostic; } return Boolean.TRUE == symbol_0; diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxPartNodeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxPartNodeImpl.java index db3a4732c..a8ddb172d 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxPartNodeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxPartNodeImpl.java @@ -36,8 +36,8 @@ import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables; import org.eclipse.ocl.pivot.utilities.ClassUtil; import org.eclipse.ocl.pivot.utilities.ValueUtil; +import org.eclipse.ocl.pivot.values.CollectionValue; import org.eclipse.ocl.pivot.values.InvalidValueException; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.TxKeyNode; import org.eclipse.qvtd.umlx.TxPartNode; import org.eclipse.qvtd.umlx.UMLXPackage; @@ -250,13 +250,13 @@ public class TxPartNodeImpl extends TxNodeImpl implements TxPartNode { else { /*@Caught*/ @NonNull Object CAUGHT_result; try { - final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_0 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_ecore_c_c_EClass_5 = idResolver.getClass(UMLXTables.CLSSid_EClass, null); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull TxKeyNode owningTxKeyNode = this.getOwningTxKeyNode(); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EClass referredEClass = owningTxKeyNode.getReferredEClass(); - final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass oclAsType = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClass, TYP_ecore_c_c_EClass_0)); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, oclAsType); + final /*@Thrown*/ org.eclipse.emf.ecore.@NonNull EClass oclAsType = ClassUtil.nonNullState((EClass)OclAnyOclAsTypeOperation.INSTANCE.evaluate(executor, referredEClass, TYP_ecore_c_c_EClass_5)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, UMLXTables.SET_CLSSid_EClass, oclAsType); final org.eclipse.ocl.pivot.@NonNull Class TYPE_closure_0 = executor.getStaticTypeOf(oclAsSet); final LibraryIteration.@org.eclipse.jdt.annotation.NonNull LibraryIterationExtension IMPL_closure_0 = (LibraryIteration.LibraryIterationExtension)TYPE_closure_0.lookupImplementation(standardLibrary, OCLstdlibTables.Operations._Set__closure); final @NonNull Object ACC_closure_0 = IMPL_closure_0.createAccumulatorValue(executor, UMLXTables.SET_CLSSid_EClass, UMLXTables.ORD_CLSSid_EClass); @@ -275,12 +275,12 @@ public class TxPartNodeImpl extends TxNodeImpl implements TxPartNode { } @SuppressWarnings("null") final /*@Thrown*/ java.util.@NonNull List<EClass> eSuperTypes = symbol_0.getESuperTypes(); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_eSuperTypes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_EClass, eSuperTypes); return BOXED_eSuperTypes; } }; final @NonNull ExecutorSingleIterationManager MGR_closure_0 = new ExecutorSingleIterationManager(executor, UMLXTables.SET_CLSSid_EClass, BODY_closure_0, oclAsSet, ACC_closure_0); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue closure = ClassUtil.nonNullState((SetValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); + final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue closure = ClassUtil.nonNullState((CollectionValue)IMPL_closure_0.evaluateIteration(MGR_closure_0)); @SuppressWarnings("null") final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EStructuralFeature referredEStructuralFeature = this.getReferredEStructuralFeature(); final /*@NonInvalid*/ org.eclipse.emf.ecore.@Nullable EClass eContainingClass = referredEStructuralFeature.getEContainingClass(); diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxQueryNodeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxQueryNodeImpl.java index 14ea3a298..5af1a81d6 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxQueryNodeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxQueryNodeImpl.java @@ -40,7 +40,6 @@ import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation; import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.TxDiagram; import org.eclipse.qvtd.umlx.TxParameterNode; import org.eclipse.qvtd.umlx.TxQueryNode; @@ -595,9 +594,9 @@ public class TxQueryNodeImpl extends TxNodeImpl implements TxQueryNode { try { @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<TxParameterNode> ownedTxParameterNodes = this.getOwnedTxParameterNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_ownedTxParameterNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxParameterNode, ownedTxParameterNodes); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxParameterNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxParameterNodes.iterator(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_ownedTxParameterNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxParameterNode, ownedTxParameterNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxParameterNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_ownedTxParameterNodes.lazyIterator(); /*@Thrown*/ boolean result; while (true) { if (!ITERATOR__1.hasNext()) { @@ -616,7 +615,7 @@ public class TxQueryNodeImpl extends TxNodeImpl implements TxQueryNode { break; } else { - accumulator.add(name); + accumulator.mutableIncluding(name); } } CAUGHT_result = result; diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxTypedModelNodeImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxTypedModelNodeImpl.java index b7ba02fcc..2e1ba78c6 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxTypedModelNodeImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/TxTypedModelNodeImpl.java @@ -31,7 +31,6 @@ import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation; import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation; import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation; import org.eclipse.ocl.pivot.utilities.ValueUtil; -import org.eclipse.ocl.pivot.values.SetValue; import org.eclipse.qvtd.umlx.TxDiagram; import org.eclipse.qvtd.umlx.TxPackageNode; import org.eclipse.qvtd.umlx.TxTypedModelNode; @@ -327,41 +326,34 @@ public class TxTypedModelNodeImpl extends TxNodeImpl implements TxTypedModelNode symbol_0 = ValueUtil.TRUE_VALUE; } else { - /*@Caught*/ @NonNull Object CAUGHT_result; - try { + @SuppressWarnings("null") + final /*@NonInvalid*/ java.util.@NonNull List<TxPackageNode> usedTxPackageNodes = this.getUsedTxPackageNodes(); + final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_usedTxPackageNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxPackageNode, usedTxPackageNodes); + /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull MutableIterable accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxPackageNode); + @NonNull Iterator<Object> ITERATOR__1 = BOXED_usedTxPackageNodes.lazyIterator(); + /*@NonInvalid*/ boolean result; + while (true) { + if (!ITERATOR__1.hasNext()) { + result = ValueUtil.TRUE_VALUE; + break; + } + @SuppressWarnings("null") + /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull TxPackageNode _1 = (TxPackageNode)ITERATOR__1.next(); + /** + * referredEPackage + */ @SuppressWarnings("null") - final /*@NonInvalid*/ java.util.@NonNull List<TxPackageNode> usedTxPackageNodes = this.getUsedTxPackageNodes(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_usedTxPackageNodes = idResolver.createOrderedSetOfAll(UMLXTables.ORD_CLSSid_TxPackageNode, usedTxPackageNodes); - /*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(UMLXTables.ORD_CLSSid_TxPackageNode); - @NonNull Iterator<Object> ITERATOR__1 = BOXED_usedTxPackageNodes.iterator(); - /*@Thrown*/ boolean result; - while (true) { - if (!ITERATOR__1.hasNext()) { - result = ValueUtil.TRUE_VALUE; - break; - } - @SuppressWarnings("null") - /*@NonInvalid*/ org.eclipse.qvtd.umlx.@NonNull TxPackageNode _1 = (TxPackageNode)ITERATOR__1.next(); - /** - * referredEPackage - */ - @SuppressWarnings("null") - final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EPackage referredEPackage = _1.getReferredEPackage(); - // - if (accumulator.includes(referredEPackage) == ValueUtil.TRUE_VALUE) { - result = ValueUtil.FALSE_VALUE; // Abort after second find - break; - } - else { - accumulator.add(referredEPackage); - } + final /*@NonInvalid*/ org.eclipse.emf.ecore.@NonNull EPackage referredEPackage = _1.getReferredEPackage(); + // + if (accumulator.includes(referredEPackage) == ValueUtil.TRUE_VALUE) { + result = ValueUtil.FALSE_VALUE; // Abort after second find + break; + } + else { + accumulator.mutableIncluding(referredEPackage); } - CAUGHT_result = result; - } - catch (Exception e) { - CAUGHT_result = ValueUtil.createInvalidValue(e); } - final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, UMLXTables.STR_TxTypedModelNode_c_c_TxPackageNodePackagesAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_result, UMLXTables.INT_0).booleanValue(); + final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, UMLXTables.STR_TxTypedModelNode_c_c_TxPackageNodePackagesAreUnique, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, UMLXTables.INT_0).booleanValue(); symbol_0 = logDiagnostic; } return Boolean.TRUE == symbol_0; diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/UMLXPackageImpl.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/UMLXPackageImpl.java index 624c166a1..80262dbc3 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/UMLXPackageImpl.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/impl/UMLXPackageImpl.java @@ -217,7 +217,7 @@ public class UMLXPackageImpl extends EPackageImpl implements UMLXPackage { /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. - * + * * <p>This method is used to initialize {@link UMLXPackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> @@ -244,18 +244,17 @@ public class UMLXPackageImpl extends EPackageImpl implements UMLXPackage { // Register package validator EValidator.Registry.INSTANCE.put - (theUMLXPackage, - new EValidator.Descriptor() { - @Override - public EValidator getEValidator() { - return UMLXValidator.INSTANCE; - } - }); + (theUMLXPackage, + new EValidator.Descriptor() { + public EValidator getEValidator() { + return UMLXValidator.INSTANCE; + } + }); // Mark meta-data to indicate it can't be changed theUMLXPackage.freeze(); - + // Update the registry and return the package EPackage.Registry.INSTANCE.put(UMLXPackage.eNS_URI, theUMLXPackage); return theUMLXPackage; @@ -1639,72 +1638,72 @@ public class UMLXPackageImpl extends EPackageImpl implements UMLXPackage { * @generated */ protected void createEcoreAnnotations() { - String source = "http://www.eclipse.org/emf/2002/Ecore"; + String source = "http://www.eclipse.org/emf/2002/Ecore"; addAnnotation - (this, - source, - new String[] { - }); + (this, + source, + new String[] { + }); addAnnotation - (relDiagramEClass, - source, - new String[] { - "constraints", "validateRelPatternNodeNamesAreUnique" - }); + (relDiagramEClass, + source, + new String[] { + "constraints", "validateRelPatternNodeNamesAreUnique" + }); addAnnotation - (relInvocationNodeEClass, - source, - new String[] { - "constraints", "validateCompatibleEdges" - }); + (relInvocationNodeEClass, + source, + new String[] { + "constraints", "validateCompatibleEdges" + }); addAnnotation - (relPatternEdgeEClass, - source, - new String[] { - "constraints", "validateCompatibleMemberPropertyTarget" - }); + (relPatternEdgeEClass, + source, + new String[] { + "constraints", "validateCompatibleMemberPropertyTarget" + }); addAnnotation - (relPatternNodeEClass, - source, - new String[] { - "constraints", "validateEClassifierIsInTypedModel" - }); + (relPatternNodeEClass, + source, + new String[] { + "constraints", "validateEClassifierIsInTypedModel" + }); addAnnotation - (txDiagramEClass, - source, - new String[] { - "constraints", "validateTxTypedModelNodeNamesAreUnique" - }); + (txDiagramEClass, + source, + new String[] { + "constraints", "validateTxTypedModelNodeNamesAreUnique" + }); addAnnotation - (txKeyNodeEClass, - source, - new String[] { - "constraints", "validatePartsAreUnique" - }); + (txKeyNodeEClass, + source, + new String[] { + "constraints", "validatePartsAreUnique" + }); addAnnotation - (txParameterNodeEClass, - source, - new String[] { - "constraints", "validateTypeIsRequired" - }); + (txParameterNodeEClass, + source, + new String[] { + "constraints", "validateTypeIsRequired" + }); addAnnotation - (txPartNodeEClass, - source, - new String[] { - "constraints", "validatePartIsPropertyOfKey" - }); + (txPartNodeEClass, + source, + new String[] { + "constraints", "validatePartIsPropertyOfKey" + }); addAnnotation - (txQueryNodeEClass, - source, - new String[] { - "constraints", "validateParametersAreUnique" - }); + (txQueryNodeEClass, + source, + new String[] { + "constraints", "validateParametersAreUnique" + }); addAnnotation - (txTypedModelNodeEClass, - source, - new String[] { - "constraints", "validateNameIsRequired" - }); + (txTypedModelNodeEClass, + source, + new String[] { + "constraints", "validateNameIsRequired" + }); } /** @@ -1714,175 +1713,175 @@ public class UMLXPackageImpl extends EPackageImpl implements UMLXPackage { * @generated */ protected void createUMLAnnotations() { - String source = "http://www.eclipse.org/uml2/2.0.0/UML"; + String source = "http://www.eclipse.org/uml2/2.0.0/UML"; addAnnotation - (relDiagramEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "NameIsRequired" - }); + (relDiagramEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "NameIsRequired" + }); addAnnotation - (relDiagramEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "RelPatternNodeNamesAreUnique" - }); + (relDiagramEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "RelPatternNodeNamesAreUnique" + }); addAnnotation - (relInvocationNodeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "CompatibleEdges" - }); + (relInvocationNodeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "CompatibleEdges" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "SourceIsEClass" - }); + (relPatternEdgeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "SourceIsEClass" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "SourceIsClassNode" - }); + (relPatternEdgeEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "SourceIsClassNode" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(2), - source, - new String[] { - "originalName", "CompatibleEAttributePropertyTarget" - }); + (relPatternEdgeEClass.getEOperations().get(2), + source, + new String[] { + "originalName", "CompatibleEAttributePropertyTarget" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(3), - source, - new String[] { - "originalName", "CompatibleSourceMultiplicity" - }); + (relPatternEdgeEClass.getEOperations().get(3), + source, + new String[] { + "originalName", "CompatibleSourceMultiplicity" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(4), - source, - new String[] { - "originalName", "CompatibleEReferencePropertyTarget" - }); + (relPatternEdgeEClass.getEOperations().get(4), + source, + new String[] { + "originalName", "CompatibleEReferencePropertyTarget" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(5), - source, - new String[] { - "originalName", "CompatiblePropertySource" - }); + (relPatternEdgeEClass.getEOperations().get(5), + source, + new String[] { + "originalName", "CompatiblePropertySource" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(6), - source, - new String[] { - "originalName", "CompatibleSourceIndex" - }); + (relPatternEdgeEClass.getEOperations().get(6), + source, + new String[] { + "originalName", "CompatibleSourceIndex" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(7), - source, - new String[] { - "originalName", "CompatibleRestPropertyTarget" - }); + (relPatternEdgeEClass.getEOperations().get(7), + source, + new String[] { + "originalName", "CompatibleRestPropertyTarget" + }); addAnnotation - (relPatternEdgeEClass.getEOperations().get(8), - source, - new String[] { - "originalName", "CompatibleMemberPropertyTarget" - }); + (relPatternEdgeEClass.getEOperations().get(8), + source, + new String[] { + "originalName", "CompatibleMemberPropertyTarget" + }); addAnnotation - (relPatternNodeEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "AnonIsUnnamed" - }); + (relPatternNodeEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "AnonIsUnnamed" + }); addAnnotation - (relPatternNodeEClass.getEOperations().get(2), - source, - new String[] { - "originalName", "TypeIsRequired" - }); + (relPatternNodeEClass.getEOperations().get(2), + source, + new String[] { + "originalName", "TypeIsRequired" + }); addAnnotation - (relPatternNodeEClass.getEOperations().get(3), - source, - new String[] { - "originalName", "EClassifierIsInTypedModel" - }); + (relPatternNodeEClass.getEOperations().get(3), + source, + new String[] { + "originalName", "EClassifierIsInTypedModel" + }); addAnnotation - (txDiagramEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "TxQueryNodeNamesAreUnique" - }); + (txDiagramEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "TxQueryNodeNamesAreUnique" + }); addAnnotation - (txDiagramEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "RelDiagramNamesAreUnique" - }); + (txDiagramEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "RelDiagramNamesAreUnique" + }); addAnnotation - (txDiagramEClass.getEOperations().get(2), - source, - new String[] { - "originalName", "NameIsRequired" - }); + (txDiagramEClass.getEOperations().get(2), + source, + new String[] { + "originalName", "NameIsRequired" + }); addAnnotation - (txDiagramEClass.getEOperations().get(3), - source, - new String[] { - "originalName", "TxTypedModelNodeNamesAreUnique" - }); + (txDiagramEClass.getEOperations().get(3), + source, + new String[] { + "originalName", "TxTypedModelNodeNamesAreUnique" + }); addAnnotation - (txKeyNodeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "PartsAreUnique" - }); + (txKeyNodeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "PartsAreUnique" + }); addAnnotation - (txParameterNodeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "NameIsRequired" - }); + (txParameterNodeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "NameIsRequired" + }); addAnnotation - (txParameterNodeEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "TypeIsRequired" - }); + (txParameterNodeEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "TypeIsRequired" + }); addAnnotation - (txPartNodeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "PartIsPropertyOfKey" - }); + (txPartNodeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "PartIsPropertyOfKey" + }); addAnnotation - (txQueryNodeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "NameIsRequired" - }); + (txQueryNodeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "NameIsRequired" + }); addAnnotation - (txQueryNodeEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "TypeIsRequired" - }); + (txQueryNodeEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "TypeIsRequired" + }); addAnnotation - (txQueryNodeEClass.getEOperations().get(2), - source, - new String[] { - "originalName", "ParametersAreUnique" - }); + (txQueryNodeEClass.getEOperations().get(2), + source, + new String[] { + "originalName", "ParametersAreUnique" + }); addAnnotation - (txTypedModelNodeEClass.getEOperations().get(0), - source, - new String[] { - "originalName", "TxPackageNodePackagesAreUnique" - }); + (txTypedModelNodeEClass.getEOperations().get(0), + source, + new String[] { + "originalName", "TxPackageNodePackagesAreUnique" + }); addAnnotation - (txTypedModelNodeEClass.getEOperations().get(1), - source, - new String[] { - "originalName", "NameIsRequired" - }); + (txTypedModelNodeEClass.getEOperations().get(1), + source, + new String[] { + "originalName", "NameIsRequired" + }); } } //UMLXPackageImpl diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractExtendingUMLXVisitor.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractExtendingUMLXVisitor.java index 7a7803861..5e7c7499e 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractExtendingUMLXVisitor.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractExtendingUMLXVisitor.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016, 2017 Willink Transformations and others. + * Copyright (c) 2016 Willink Transformations and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractUMLXVisitor.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractUMLXVisitor.java index 20fa1f8b5..662b9cb7b 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractUMLXVisitor.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/AbstractUMLXVisitor.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016, 2017 Willink Transformations and others. + * Copyright (c) 2016 Willink Transformations and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at diff --git a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/UMLXVisitor.java b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/UMLXVisitor.java index e90f5fadf..641f53586 100644 --- a/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/UMLXVisitor.java +++ b/plugins/org.eclipse.qvtd.umlx/emf-gen/org/eclipse/qvtd/umlx/util/UMLXVisitor.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016, 2017 Willink Transformations and others. + * Copyright (c) 2016 Willink Transformations and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example1/target/lookup/impl/LookupEnvironmentImpl.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example1/target/lookup/impl/LookupEnvironmentImpl.java index b10644f8d..b15a3bc46 100644 --- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example1/target/lookup/impl/LookupEnvironmentImpl.java +++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example1/target/lookup/impl/LookupEnvironmentImpl.java @@ -29,7 +29,7 @@ import org.eclipse.ocl.pivot.evaluation.Executor; import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal; import org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation; import org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation; -import org.eclipse.ocl.pivot.values.OrderedSetValue; +import org.eclipse.ocl.pivot.values.CollectionValue; import example1.target.NamedElement; import example1.target.lookup.EnvironmentPackage; import example1.target.lookup.EnvironmentTables; @@ -163,7 +163,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen final /*@Thrown*/ example1.target.lookup.@NonNull LookupEnvironment symbol_0 = (LookupEnvironment)TYP_lookup_c_c_LookupEnvironment_0.createInstance(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<NamedElement> namedElements = this.getNamedElements(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); + final /*@NonInvalid*/ @NonNull CollectionValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_elements = idResolver.createCollectionOfAll(EnvironmentTables.COL_TMPLid_, elements); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue includingAll = CollectionIncludingAllOperation.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements); final List<Object> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, Object.class); @@ -195,8 +195,8 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen final /*@Thrown*/ example1.target.lookup.@NonNull LookupEnvironment symbol_0 = (LookupEnvironment)TYP_lookup_c_c_LookupEnvironment_0.createInstance(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<NamedElement> namedElements = this.getNamedElements(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue including = (OrderedSetValue)CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, element); + final /*@NonInvalid*/ @NonNull CollectionValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); + final /*@Thrown*/ @NonNull CollectionValue including = CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, element); final List<NamedElement> UNBOXED_including = including.asEcoreObjects(idResolver, NamedElement.class); assert UNBOXED_including != null; CTORid_namedElements.initValue(symbol_0, UNBOXED_including); diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example2/classes/lookup/impl/LookupEnvironmentImpl.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example2/classes/lookup/impl/LookupEnvironmentImpl.java index 71feb6a9e..7f75e2f94 100644 --- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example2/classes/lookup/impl/LookupEnvironmentImpl.java +++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/emf-gen/example2/classes/lookup/impl/LookupEnvironmentImpl.java @@ -29,7 +29,8 @@ import org.eclipse.ocl.pivot.evaluation.Executor; import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal; import org.eclipse.ocl.pivot.library.collection.CollectionIncludingAllOperation; import org.eclipse.ocl.pivot.library.collection.CollectionIncludingOperation; -import org.eclipse.ocl.pivot.values.OrderedSetValue; +import org.eclipse.ocl.pivot.values.CollectionValue; + import example2.classes.NamedElement; import example2.classes.lookup.EnvironmentPackage; import example2.classes.lookup.EnvironmentTables; @@ -163,7 +164,7 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen final /*@Thrown*/ example2.classes.lookup.@NonNull LookupEnvironment symbol_0 = (LookupEnvironment)TYP_lookup_c_c_LookupEnvironment_0.createInstance(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<NamedElement> namedElements = this.getNamedElements(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); + final /*@NonInvalid*/ @NonNull CollectionValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue BOXED_elements = idResolver.createCollectionOfAll(EnvironmentTables.COL_TMPLid_, elements); final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull CollectionValue includingAll = CollectionIncludingAllOperation.INSTANCE.evaluate(BOXED_namedElements, BOXED_elements); final List<Object> UNBOXED_includingAll = includingAll.asEcoreObjects(idResolver, Object.class); @@ -195,8 +196,8 @@ public class LookupEnvironmentImpl extends MinimalEObjectImpl.Container implemen final /*@Thrown*/ example2.classes.lookup.@NonNull LookupEnvironment symbol_0 = (LookupEnvironment)TYP_lookup_c_c_LookupEnvironment_0.createInstance(); @SuppressWarnings("null") final /*@NonInvalid*/ java.util.@NonNull List<NamedElement> namedElements = this.getNamedElements(); - final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); - final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue including = (OrderedSetValue)CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, element); + final /*@NonInvalid*/ @NonNull CollectionValue BOXED_namedElements = idResolver.createOrderedSetOfAll(EnvironmentTables.ORD_CLSSid_NamedElement, namedElements); + final /*@Thrown*/ @NonNull CollectionValue including = CollectionIncludingOperation.INSTANCE.evaluate(BOXED_namedElements, element); final List<NamedElement> UNBOXED_including = including.asEcoreObjects(idResolver, NamedElement.class); assert UNBOXED_including != null; CTORid_namedElements.initValue(symbol_0, UNBOXED_including); |