diff options
author | Ed Willink | 2016-09-21 11:23:28 +0000 |
---|---|---|
committer | Ed Willink | 2016-09-21 11:23:28 +0000 |
commit | ad576f8085558b6b72a56b97d77e4e28e22eed2f (patch) | |
tree | bc074fb1fde508595eb9407d29d515f4f72ef49f | |
parent | 5325e6e2cd50a70ecff8a6b3fdef8b6c2a081e9a (diff) | |
download | org.eclipse.qvtd-ad576f8085558b6b72a56b97d77e4e28e22eed2f.tar.gz org.eclipse.qvtd-ad576f8085558b6b72a56b97d77e4e28e22eed2f.tar.xz org.eclipse.qvtd-ad576f8085558b6b72a56b97d77e4e28e22eed2f.zip |
[500369] Regenerate with ImperativeTransformation
43 files changed, 838 insertions, 91 deletions
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AddStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AddStatement.java index a2703b92b..80ac42d01 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AddStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AddStatement.java @@ -22,7 +22,9 @@ import org.eclipse.ocl.pivot.OCLExpression; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionStatement assigns results to a ConnectionVariable. + * An AddStatement appends the value of an expression to a connection. + * + * syntax: oclText[add connection := expression;] * <!-- end-model-doc --> * * <p> @@ -46,6 +48,9 @@ public interface AddStatement extends MappingStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The connection to be appended. + * <!-- end-model-doc --> * @return the value of the '<em>Target Variable</em>' reference. * @see #setTargetVariable(ConnectionVariable) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getAddStatement_TargetVariable() @@ -71,6 +76,9 @@ public interface AddStatement extends MappingStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * True if the append is suppressed after a check for uniqueness of the value. + * <!-- end-model-doc --> * @return the value of the '<em>Is Enforced Unique</em>' attribute. * @see #setIsEnforcedUnique(boolean) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getAddStatement_IsEnforcedUnique() @@ -96,6 +104,9 @@ public interface AddStatement extends MappingStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The expression whose evaluation yields the value to append. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Expression</em>' containment reference. * @see #setOwnedExpression(OCLExpression) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getAddStatement_OwnedExpression() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameter.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameter.java index 36f234e52..953bf3e21 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameter.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameter.java @@ -20,7 +20,9 @@ package org.eclipse.qvtd.pivot.qvtimperative; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionVariable accumulates one or more assignments. + * An AppendParameter of a Mapping defines an output connection to which values may be appended. + * + * syntax: oclText[append name : type;] * <!-- end-model-doc --> * * diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameterBinding.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameterBinding.java index 5b53eff07..e9b583786 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameterBinding.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/AppendParameterBinding.java @@ -21,10 +21,10 @@ package org.eclipse.qvtd.pivot.qvtimperative; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A MappingCallBinding specifies the binding of a single variable as part of - * a MappingCall. A value is bound to the variable. OPtionally isLoop may be true - * to indicate that the value is a collection of values, each of which is to - * be used as part of a distinct invocation. + * An AppendParameterBinding binds an AppendParameter of an invoked Mapping to a connection of the invoker. + * Execution of the mapping may append to the connection. + * + * syntax: oclText[formalName appendsTo connection;] * <!-- end-model-doc --> * * <p> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/BufferStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/BufferStatement.java index d22469e99..eed471bf6 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/BufferStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/BufferStatement.java @@ -22,7 +22,11 @@ import org.eclipse.ocl.pivot.OCLExpression; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionVariable accumulates one or more assignments. + * A BufferStatement declares a connection buffer and optionally assigns initial content. + * + * syntax: oclText[buffer name : type := expression;] + * + * oclText[type] or oclText[expression] but not both may be omitted. An omitted type is deduced from the initial expression values. * <!-- end-model-doc --> * * <p> @@ -44,6 +48,9 @@ public interface BufferStatement extends ConnectionVariable, VariableStatement, * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The optional expression computing initial content values. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Expression</em>' containment reference. * @see #setOwnedExpression(OCLExpression) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getBufferStatement_OwnedExpression() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/CheckStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/CheckStatement.java index d10f6a199..70f34c02c 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/CheckStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/CheckStatement.java @@ -21,6 +21,13 @@ import org.eclipse.ocl.pivot.OCLExpression; * A representation of the model object '<em><b>Check Statement</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A CheckStatement evaluates a predicate. If the evaluation is false, the mapping execution + * terminates fails and does nothing. + * + * syntax: oclText[check expression;] + * <!-- end-model-doc --> + * * <p> * The following features are supported: * </p> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ConnectionVariable.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ConnectionVariable.java index 693b97873..7caaf30e4 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ConnectionVariable.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ConnectionVariable.java @@ -22,7 +22,7 @@ import org.eclipse.ocl.pivot.VariableDeclaration; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionVariable accumulates one or more assignments. + * A ConnectionVariable identifes a variable used as a connection buffer. * <!-- end-model-doc --> * * diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/DeclareStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/DeclareStatement.java index 35df393c9..d83d67cd4 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/DeclareStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/DeclareStatement.java @@ -21,6 +21,16 @@ import org.eclipse.ocl.pivot.OCLExpression; * A representation of the model object '<em><b>Predicate Variable</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A DeclareStatement declares a variable and initial value. + * + * syntax: oclText[check var name : type := expression;] + * + * oclText[type] or oclText[expression] but not both may be omitted. An omitted type is deduced from the initial expression values. + * + * oclText[check] may be omitted when the expression type is necessarily conformant. + * <!-- end-model-doc --> + * * <p> * The following features are supported: * </p> @@ -39,7 +49,9 @@ public interface DeclareStatement extends VariableStatement, ObservableStatement * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * Whether the variable initialization needs to be checked as a predicate. This is a derivation of not ownedInit.type.conformsTo(self.type). + * True if the initial expression's type must be checked for conformance with the variable's type. + * A non-conforming vlaue is a predicate failure causing the mapping to fail without doing anything. + * This is a derivation of not ownedInit.type.conformsTo(self.type). * <!-- end-model-doc --> * @return the value of the '<em>Is Check</em>' attribute. * @see #setIsCheck(boolean) @@ -66,6 +78,9 @@ public interface DeclareStatement extends VariableStatement, ObservableStatement * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The expression computing the variable's value. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Expression</em>' containment reference. * @see #setOwnedExpression(OCLExpression) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getDeclareStatement_OwnedExpression() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameter.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameter.java index 7c6cf3b72..74e643e96 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameter.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameter.java @@ -21,7 +21,9 @@ package org.eclipse.qvtd.pivot.qvtimperative; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionVariable accumulates one or more assignments. + * A GuardParameter of a Mapping defines a input at which a value is consumed from a connection. + * + * syntax: oclText[guard:typedModel name : type;] * <!-- end-model-doc --> * * <p> @@ -43,6 +45,9 @@ public interface GuardParameter extends MappingParameter { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The TypedModel that contains the passed value. + * <!-- end-model-doc --> * @return the value of the '<em>Referred Typed Model</em>' reference. * @see #setReferredTypedModel(ImperativeTypedModel) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getGuardParameter_ReferredTypedModel() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameterBinding.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameterBinding.java index d8a64262f..db80481d1 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameterBinding.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/GuardParameterBinding.java @@ -20,10 +20,11 @@ package org.eclipse.qvtd.pivot.qvtimperative; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A MappingCallBinding specifies the binding of a single variable as part of - * a MappingCall. A value is bound to the variable. OPtionally isLoop may be true - * to indicate that the value is a collection of values, each of which is to - * be used as part of a distinct invocation. + * A GuardParameterBinding binds a guard parameter of an invoked Mapping to a value of a connection. + * Execution of the mapping may use the value. A distinct Mapping invocation occurs for each value + * in the connection. + * + * syntax: oclText[formalName consumes expression;] * <!-- end-model-doc --> * * <p> @@ -43,7 +44,7 @@ public interface GuardParameterBinding extends MappingParameterBinding { * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * The value or collection of values to bind to boundVariable + * The connection providing the invocation values. * <!-- end-model-doc --> * @return the value of the '<em>Value</em>' reference. * @see #setValue(ConnectionVariable) @@ -68,7 +69,9 @@ public interface GuardParameterBinding extends MappingParameterBinding { * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * Whether the variable initialization needs to be checked as a predicate. This is a derivation of not ownedInit.type.conformsTo(self.type). + * True if each consumed value must be checked for conformance with the variable's type. + * A non-conforming vlaue is a predicate failure causing the mapping invocation to fail without doing anything. + * This is a derivation of not ownedInit.type.conformsTo(self.type). * <!-- end-model-doc --> * @return the value of the '<em>Is Check</em>' attribute. * @see #setIsCheck(boolean) diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTransformation.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTransformation.java new file mode 100644 index 000000000..a853c4afa --- /dev/null +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTransformation.java @@ -0,0 +1,33 @@ +/** + * <copyright> + * + * Copyright (c) 2013, 2017 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 + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * E.D.Willink - Initial API and implementation + * + * </copyright> + */ +package org.eclipse.qvtd.pivot.qvtimperative; + +import org.eclipse.qvtd.pivot.qvtbase.Transformation; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Imperative Transformation</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * An ImperativeTransfornmation distinguishes a QVTi transformation from other transformations. + * <!-- end-model-doc --> + * + * + * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getImperativeTransformation() + * @generated + */ +public interface ImperativeTransformation extends Transformation { +} // ImperativeTransformation diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTypedModel.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTypedModel.java index 816f349ea..88ec3a5e8 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTypedModel.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ImperativeTypedModel.java @@ -22,7 +22,7 @@ import org.eclipse.qvtd.pivot.qvtbase.TypedModel; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * The Model of an Imperative QVT transformation. + * An ImperativeTypedModel defines an input,middle or output modek for the transformation. * <!-- end-model-doc --> * * <p> @@ -46,6 +46,9 @@ public interface ImperativeTypedModel extends TypedModel { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * True for an input model. + * <!-- end-model-doc --> * @return the value of the '<em>Is Checked</em>' attribute. * @see #setIsChecked(boolean) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getImperativeTypedModel_IsChecked() @@ -72,6 +75,9 @@ public interface ImperativeTypedModel extends TypedModel { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * True for an output model. + * <!-- end-model-doc --> * @return the value of the '<em>Is Enforced</em>' attribute. * @see #setIsEnforced(boolean) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getImperativeTypedModel_IsEnforced() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopParameterBinding.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopParameterBinding.java index 8121e686a..172f59403 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopParameterBinding.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopParameterBinding.java @@ -21,10 +21,12 @@ package org.eclipse.qvtd.pivot.qvtimperative; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A MappingCallBinding specifies the binding of a single variable as part of - * a MappingCall. A value is bound to the variable. OPtionally isLoop may be true - * to indicate that the value is a collection of values, each of which is to - * be used as part of a distinct invocation. + * A LoopParameterBinding binds a guard parameter of an invoked Mapping to the value of a loop variable + * in the invoker. Execution of the mapping may use the value. + * + * syntax: oclText[formalName iterates expression;] + * + * Deprecated - WIP for a consuming stream * <!-- end-model-doc --> * * <p> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopVariable.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopVariable.java index 814b47b30..1e50b4ec6 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopVariable.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/LoopVariable.java @@ -21,6 +21,10 @@ import org.eclipse.ocl.pivot.VariableDeclaration; * A representation of the model object '<em><b>Loop Variable</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A LoopVariable defines the iterator of a MappingLoop. + * <!-- end-model-doc --> + * * <p> * The following features are supported: * </p> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingCall.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingCall.java index 163c56607..384270a6d 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingCall.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingCall.java @@ -19,10 +19,9 @@ import org.eclipse.ocl.pivot.ReferringElement; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A MappingCall specifies the invocation of a referredMapping with a set of bindings - * of the bound variables of the referredMapping to values provided in the invocation. - * Where Collections of values are provided for isLoop bindings, a distinct invocation - * is performed for each distinct permutation of Collection elements. + * A MappingCall specifies the invocation of a referredMapping with a set of bindings. + * An installed mapping is invoked asynchronously whenever suitable values are available on consumed connections. + * An invoked mapping is invoked synchronously with values provided by the caller. * <!-- end-model-doc --> * * <p> @@ -79,7 +78,7 @@ public interface MappingCall extends MappingStatement, ReferringElement { * </p> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * The Set of value to bound variable bindings. + * The Set of bindings of variables or expressions to forma parameters. * <!-- end-model-doc --> * @return the value of the '<em>Binding</em>' containment reference list. * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getMappingCall_Binding() @@ -95,6 +94,8 @@ public interface MappingCall extends MappingStatement, ReferringElement { * <!-- end-user-doc --> * <!-- begin-model-doc --> * An infinite MappingCall requires re-invocation of the called mapping to be suppressed to avoid an infinite loop. + * + * Deprecated ?? not needed once install works. * <!-- end-model-doc --> * @return the value of the '<em>Is Infinite</em>' attribute. * @see #setIsInfinite(boolean) @@ -119,7 +120,8 @@ public interface MappingCall extends MappingStatement, ReferringElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * An infinite MappingCall requires re-invocation of the called mapping to be suppressed to avoid an infinite loop. + * An install MappingCall declares a MappingCall that consumes one or more connections and appends to zero or more connections. + * Invocations of the mapping are driven by the availability of values in the connection. * <!-- end-model-doc --> * @return the value of the '<em>Is Install</em>' attribute. * @see #setIsInstall(boolean) @@ -144,7 +146,8 @@ public interface MappingCall extends MappingStatement, ReferringElement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * An infinite MappingCall requires re-invocation of the called mapping to be suppressed to avoid an infinite loop. + * An invoke MappingCall invokes a Mapping that uses one or more values and appends to zero or more connections. + * Invocations of the mapping is requested by the caller. * <!-- end-model-doc --> * @return the value of the '<em>Is Invoke</em>' attribute. * @see #setIsInvoke(boolean) diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingLoop.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingLoop.java index d18a85615..148aee494 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingLoop.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingLoop.java @@ -19,7 +19,9 @@ import org.eclipse.ocl.pivot.OCLExpression; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * An Imperative MappingLoop support an iterated nested mapping call. + * A MappingLoop supports an iteration of mapping invocations. + * + * syntax: oclText[for name : type in expression {...}] * <!-- end-model-doc --> * * <p> @@ -46,6 +48,9 @@ public interface MappingLoop extends MappingStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The iterator loop variable. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Iterators</em>' containment reference list. * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getMappingLoop_OwnedIterators() * @see org.eclipse.qvtd.pivot.qvtimperative.LoopVariable#getOwningMappingLoop @@ -62,6 +67,9 @@ public interface MappingLoop extends MappingStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The statements to be iterated, typically a single MappingCall. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Mapping Statements</em>' containment reference list. * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getMappingLoop_OwnedMappingStatements() * @generated @@ -76,6 +84,9 @@ public interface MappingLoop extends MappingStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The expression whose values provide the iterator values. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Expression</em>' containment reference. * @see #setOwnedExpression(OCLExpression) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getMappingLoop_OwnedExpression() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameter.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameter.java index c2fd888cb..dc086a13b 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameter.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameter.java @@ -22,7 +22,8 @@ import org.eclipse.ocl.pivot.VariableDeclaration; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionVariable accumulates one or more assignments. + * A MappingParameter defines a formal parameter of a mapping. The parameter is bound by the + * mapping invocation to satisfy the requirements of the derived parameter class. * <!-- end-model-doc --> * * diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameterBinding.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameterBinding.java index 6a221a272..92604b77f 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameterBinding.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/MappingParameterBinding.java @@ -22,10 +22,8 @@ import org.eclipse.ocl.pivot.Element; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A MappingCallBinding specifies the binding of a single variable as part of - * a MappingCall. A value is bound to the variable. OPtionally isLoop may be true - * to indicate that the value is a collection of values, each of which is to - * be used as part of a distinct invocation. + * A MappingCallBinding specifies the binding of a single variable or value to + * the formal parameter of a mapping as part of its inviocatuon or installation. * <!-- end-model-doc --> * * <p> @@ -71,7 +69,7 @@ public interface MappingParameterBinding extends Element { * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * The variable with the mappingCall.referredMapping bound to the/a value + * The formal parameter bound by the call. * <!-- end-model-doc --> * @return the value of the '<em>Bound Variable</em>' reference. * @see #setBoundVariable(MappingParameter) diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/NewStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/NewStatement.java index 199f049bc..9dd5bfffc 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/NewStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/NewStatement.java @@ -21,6 +21,15 @@ import org.eclipse.ocl.pivot.OCLExpression; * A representation of the model object '<em><b>New Statement</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A NewStatement creates an instance of a class and binds a name to it. + * + * syntax: oclText[new:typedModel name : type := expression;] + * + * If expression is omitted, a new instance if the tyope is created. If expression is provided, it + * computes the 'new' object, typically a singlton supervisor fpr a QVTr key. + * <!-- end-model-doc --> + * * <p> * The following features are supported: * </p> @@ -42,6 +51,9 @@ public interface NewStatement extends VariableStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The TypedModel to which the new object is added. + * <!-- end-model-doc --> * @return the value of the '<em>Referred Typed Model</em>' reference. * @see #setReferredTypedModel(ImperativeTypedModel) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getNewStatement_ReferredTypedModel() @@ -67,6 +79,9 @@ public interface NewStatement extends VariableStatement, ObservableStatement { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional expression that constructs the new object. + * <!-- end-model-doc --> * @return the value of the '<em>Owned Expression</em>' containment reference. * @see #setOwnedExpression(OCLExpression) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getNewStatement_OwnedExpression() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ObservableStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ObservableStatement.java index da075746b..7b7dcf0b0 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ObservableStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/ObservableStatement.java @@ -23,6 +23,14 @@ import org.eclipse.ocl.pivot.Property; * A representation of the model object '<em><b>Observable Statement</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * An ObservableStatement may involve evaluation of an expression that accesses object properties whose + * values may not be available. If not ready,the mapping execution is suspended until the required value + * is made available by a notifying SetStatement. + * + * syntax: oclText[observe class::property ...] + * <!-- end-model-doc --> + * * <p> * The following features are supported: * </p> @@ -40,7 +48,7 @@ public interface ObservableStatement extends Statement { * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> - * The properties whose accesses must be polled for readiness prior to use here. + * The properties whose accesses must be checked for readiness. * <!-- end-model-doc --> * @return the value of the '<em>Observed Properties</em>' reference list. * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getObservableStatement_ObservedProperties() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativeFactory.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativeFactory.java index 58d624e17..53ab015ed 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativeFactory.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/QVTimperativeFactory.java @@ -112,6 +112,15 @@ public interface QVTimperativeFactory extends EFactory { @NonNull ImperativeModel createImperativeModel(); /** + * Returns a new object of class '<em>Imperative Transformation</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Imperative Transformation</em>'. + * @generated + */ + @NonNull ImperativeTransformation createImperativeTransformation(); + + /** * Returns a new object of class '<em>Imperative Typed Model</em>'. * <!-- begin-user-doc --> * <!-- end-user-doc --> 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 a87599ab8..67b00aa92 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 @@ -42,7 +42,7 @@ import org.eclipse.qvtd.pivot.qvtbase.QVTbasePackage; * * All reads by Functions/Queries must be guaranteed to succeed; i.e. the invoking mapping must check readiness before calling the query. * - * All writes to multi-valued properties must be guaranteed to occur before any read of the property. + * All writes to multi-valued properties must be guaranteed to occur before any read of the property. * <!-- end-model-doc --> * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativeFactory * @generated @@ -106,7 +106,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getMapping() * @generated */ - int MAPPING = 13; + int MAPPING = 14; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.MappingStatementImpl <em>Mapping Statement</em>}' class. @@ -116,7 +116,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getMappingStatement() * @generated */ - int MAPPING_STATEMENT = 18; + int MAPPING_STATEMENT = 19; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.ConnectionVariableImpl <em>Connection Variable</em>}' class. @@ -136,7 +136,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getMappingCall() * @generated */ - int MAPPING_CALL = 14; + int MAPPING_CALL = 15; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.MappingLoopImpl <em>Mapping Loop</em>}' class. @@ -146,7 +146,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getMappingLoop() * @generated */ - int MAPPING_LOOP = 15; + int MAPPING_LOOP = 16; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.StatementImpl <em>Statement</em>}' class. @@ -156,7 +156,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getStatement() * @generated */ - int STATEMENT = 24; + int STATEMENT = 25; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.AddStatementImpl <em>Add Statement</em>}' class. @@ -186,7 +186,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getImperativeTypedModel() * @generated */ - int IMPERATIVE_TYPED_MODEL = 10; + int IMPERATIVE_TYPED_MODEL = 11; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.LoopVariableImpl <em>Loop Variable</em>}' class. @@ -196,7 +196,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getLoopVariable() * @generated */ - int LOOP_VARIABLE = 12; + int LOOP_VARIABLE = 13; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.VariableStatementImpl <em>Variable Statement</em>}' class. @@ -206,7 +206,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getVariableStatement() * @generated */ - int VARIABLE_STATEMENT = 25; + int VARIABLE_STATEMENT = 26; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -424,7 +424,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getObservableStatement() * @generated */ - int OBSERVABLE_STATEMENT = 20; + int OBSERVABLE_STATEMENT = 21; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -614,7 +614,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getMappingParameterBinding() * @generated */ - int MAPPING_PARAMETER_BINDING = 17; + int MAPPING_PARAMETER_BINDING = 18; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -697,7 +697,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getMappingParameter() * @generated */ - int MAPPING_PARAMETER = 16; + int MAPPING_PARAMETER = 17; /** * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.GuardParameterImpl <em>Guard Parameter</em>}' class. @@ -1622,6 +1622,250 @@ public interface QVTimperativePackage extends EPackage { int IMPERATIVE_MODEL_FEATURE_COUNT = QVTbasePackage.BASE_MODEL_FEATURE_COUNT + 0; /** + * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.ImperativeTransformationImpl <em>Imperative Transformation</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.qvtd.pivot.qvtimperative.impl.ImperativeTransformationImpl + * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getImperativeTransformation() + * @generated + */ + int IMPERATIVE_TRANSFORMATION = 10; + + /** + * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__ANNOTATING_COMMENTS = QVTbasePackage.TRANSFORMATION__ANNOTATING_COMMENTS; + + /** + * The feature id for the '<em><b>Owned Annotations</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_ANNOTATIONS = QVTbasePackage.TRANSFORMATION__OWNED_ANNOTATIONS; + + /** + * The feature id for the '<em><b>Owned Comments</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_COMMENTS = QVTbasePackage.TRANSFORMATION__OWNED_COMMENTS; + + /** + * The feature id for the '<em><b>Owned Extensions</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_EXTENSIONS = QVTbasePackage.TRANSFORMATION__OWNED_EXTENSIONS; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__NAME = QVTbasePackage.TRANSFORMATION__NAME; + + /** + * The feature id for the '<em><b>Owned Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_CONSTRAINTS = QVTbasePackage.TRANSFORMATION__OWNED_CONSTRAINTS; + + /** + * The feature id for the '<em><b>Owned Bindings</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_BINDINGS = QVTbasePackage.TRANSFORMATION__OWNED_BINDINGS; + + /** + * The feature id for the '<em><b>Owned Signature</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_SIGNATURE = QVTbasePackage.TRANSFORMATION__OWNED_SIGNATURE; + + /** + * The feature id for the '<em><b>Unspecialized Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__UNSPECIALIZED_ELEMENT = QVTbasePackage.TRANSFORMATION__UNSPECIALIZED_ELEMENT; + + /** + * The feature id for the '<em><b>Extenders</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__EXTENDERS = QVTbasePackage.TRANSFORMATION__EXTENDERS; + + /** + * The feature id for the '<em><b>Instance Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__INSTANCE_CLASS_NAME = QVTbasePackage.TRANSFORMATION__INSTANCE_CLASS_NAME; + + /** + * The feature id for the '<em><b>Is Abstract</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__IS_ABSTRACT = QVTbasePackage.TRANSFORMATION__IS_ABSTRACT; + + /** + * The feature id for the '<em><b>Is Active</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__IS_ACTIVE = QVTbasePackage.TRANSFORMATION__IS_ACTIVE; + + /** + * The feature id for the '<em><b>Is Interface</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__IS_INTERFACE = QVTbasePackage.TRANSFORMATION__IS_INTERFACE; + + /** + * The feature id for the '<em><b>Owned Behaviors</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_BEHAVIORS = QVTbasePackage.TRANSFORMATION__OWNED_BEHAVIORS; + + /** + * The feature id for the '<em><b>Owned Invariants</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_INVARIANTS = QVTbasePackage.TRANSFORMATION__OWNED_INVARIANTS; + + /** + * The feature id for the '<em><b>Owned Operations</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_OPERATIONS = QVTbasePackage.TRANSFORMATION__OWNED_OPERATIONS; + + /** + * The feature id for the '<em><b>Owned Properties</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_PROPERTIES = QVTbasePackage.TRANSFORMATION__OWNED_PROPERTIES; + + /** + * The feature id for the '<em><b>Owning Package</b></em>' container reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNING_PACKAGE = QVTbasePackage.TRANSFORMATION__OWNING_PACKAGE; + + /** + * The feature id for the '<em><b>Super Classes</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__SUPER_CLASSES = QVTbasePackage.TRANSFORMATION__SUPER_CLASSES; + + /** + * The feature id for the '<em><b>Owned Tag</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_TAG = QVTbasePackage.TRANSFORMATION__OWNED_TAG; + + /** + * The feature id for the '<em><b>Model Parameter</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__MODEL_PARAMETER = QVTbasePackage.TRANSFORMATION__MODEL_PARAMETER; + + /** + * The feature id for the '<em><b>Rule</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__RULE = QVTbasePackage.TRANSFORMATION__RULE; + + /** + * The feature id for the '<em><b>Extends</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__EXTENDS = QVTbasePackage.TRANSFORMATION__EXTENDS; + + /** + * The feature id for the '<em><b>Owned Context</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION__OWNED_CONTEXT = QVTbasePackage.TRANSFORMATION__OWNED_CONTEXT; + + /** + * The number of structural features of the '<em>Imperative Transformation</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMPERATIVE_TRANSFORMATION_FEATURE_COUNT = QVTbasePackage.TRANSFORMATION_FEATURE_COUNT + 0; + + /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1737,7 +1981,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getLoopParameterBinding() * @generated */ - int LOOP_PARAMETER_BINDING = 11; + int LOOP_PARAMETER_BINDING = 12; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -2233,7 +2477,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getNewStatement() * @generated */ - int NEW_STATEMENT = 19; + int NEW_STATEMENT = 20; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -2360,7 +2604,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getSetStatement() * @generated */ - int SET_STATEMENT = 21; + int SET_STATEMENT = 22; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -2478,7 +2722,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getSimpleParameter() * @generated */ - int SIMPLE_PARAMETER = 22; + int SIMPLE_PARAMETER = 23; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -2587,7 +2831,7 @@ public interface QVTimperativePackage extends EPackage { * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getSimpleParameterBinding() * @generated */ - int SIMPLE_PARAMETER_BINDING = 23; + int SIMPLE_PARAMETER_BINDING = 24; /** * The feature id for the '<em><b>Annotating Comments</b></em>' reference list. @@ -2892,6 +3136,16 @@ public interface QVTimperativePackage extends EPackage { EClass getImperativeModel(); /** + * Returns the meta object for class '{@link org.eclipse.qvtd.pivot.qvtimperative.ImperativeTransformation <em>Imperative Transformation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Imperative Transformation</em>'. + * @see org.eclipse.qvtd.pivot.qvtimperative.ImperativeTransformation + * @generated + */ + EClass getImperativeTransformation(); + + /** * Returns the meta object for class '{@link org.eclipse.qvtd.pivot.qvtimperative.ImperativeTypedModel <em>Imperative Typed Model</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3570,6 +3824,16 @@ public interface QVTimperativePackage extends EPackage { EClass IMPERATIVE_MODEL = eINSTANCE.getImperativeModel(); /** + * The meta object literal for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.ImperativeTransformationImpl <em>Imperative Transformation</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.qvtd.pivot.qvtimperative.impl.ImperativeTransformationImpl + * @see org.eclipse.qvtd.pivot.qvtimperative.impl.QVTimperativePackageImpl#getImperativeTransformation() + * @generated + */ + EClass IMPERATIVE_TRANSFORMATION = eINSTANCE.getImperativeTransformation(); + + /** * The meta object literal for the '{@link org.eclipse.qvtd.pivot.qvtimperative.impl.ImperativeTypedModelImpl <em>Imperative Typed Model</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SetStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SetStatement.java index d311daaa8..e0ad475b9 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SetStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SetStatement.java @@ -23,6 +23,15 @@ import org.eclipse.ocl.pivot.VariableDeclaration; * A representation of the model object '<em><b>Set Statement</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A SetStatement sets an object property to a computed value. + * + * syntax: oclText[notify set name : type := expression;] + * + * If oclText[notify] is specified, execution defines the property as ready enabling + * mappings whose ObservableStatements are waiting for the value to resume. + * <!-- end-model-doc --> + * * <p> * The following features are supported: * </p> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameter.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameter.java index 069b45821..293d1257a 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameter.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameter.java @@ -21,7 +21,9 @@ package org.eclipse.qvtd.pivot.qvtimperative; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A ConnectionVariable accumulates one or more assignments. + * A SimpleParameter of a Mapping defines an input at which a value is passed to the mapping. + * + * syntax: oclText[in:typedModel name : type;] * <!-- end-model-doc --> * * <p> @@ -43,6 +45,9 @@ public interface SimpleParameter extends MappingParameter { * there really should be more of a description here... * </p> * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The TypedModel that contains the passed value. + * <!-- end-model-doc --> * @return the value of the '<em>Referred Typed Model</em>' reference. * @see #setReferredTypedModel(ImperativeTypedModel) * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getSimpleParameter_ReferredTypedModel() diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameterBinding.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameterBinding.java index 134180fcd..84f88932a 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameterBinding.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/SimpleParameterBinding.java @@ -22,10 +22,10 @@ import org.eclipse.ocl.pivot.OCLExpression; * <!-- end-user-doc --> * * <!-- begin-model-doc --> - * A MappingCallBinding specifies the binding of a single variable as part of - * a MappingCall. A value is bound to the variable. OPtionally isLoop may be true - * to indicate that the value is a collection of values, each of which is to - * be used as part of a distinct invocation. + * A SimpleParameterBinding binds a simple parameter of an invoked Mapping to the value of an expression + * computed by the invoker. Execution of the mapping may use the value. + * + * syntax: oclText[formalName uses expression;] * <!-- end-model-doc --> * * <p> diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/Statement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/Statement.java index 13420ad39..29b813b63 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/Statement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/Statement.java @@ -21,6 +21,10 @@ import org.eclipse.ocl.pivot.NamedElement; * A representation of the model object '<em><b>Statement</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A Statement is the basis for all execution by a Mapping. + * <!-- end-model-doc --> + * * * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getStatement() * @generated diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/VariableStatement.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/VariableStatement.java index 3c1727517..b3e499dab 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/VariableStatement.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/VariableStatement.java @@ -21,6 +21,10 @@ import org.eclipse.ocl.pivot.VariableDeclaration; * A representation of the model object '<em><b>Variable Statement</b></em>'. * <!-- end-user-doc --> * + * <!-- begin-model-doc --> + * A VariableStatement is the basis for a Mapping execution that makes a name available to subsequent starements. + * <!-- end-model-doc --> + * * * @see org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage#getVariableStatement() * @generated 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 new file mode 100644 index 000000000..9892dc4af --- /dev/null +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/ImperativeTransformationImpl.java @@ -0,0 +1,67 @@ +/** + * <copyright> + * + * Copyright (c) 2013, 2017 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 + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * E.D.Willink - Initial API and implementation + * + * </copyright> + */ +package org.eclipse.qvtd.pivot.qvtimperative.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.jdt.annotation.NonNull; + +import org.eclipse.ocl.pivot.util.Visitor; + +import org.eclipse.qvtd.pivot.qvtbase.impl.TransformationImpl; + +import org.eclipse.qvtd.pivot.qvtimperative.ImperativeTransformation; +import org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage; + +import org.eclipse.qvtd.pivot.qvtimperative.util.QVTimperativeVisitor; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Imperative Transformation</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class ImperativeTransformationImpl extends TransformationImpl implements ImperativeTransformation { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ImperativeTransformationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return QVTimperativePackage.Literals.IMPERATIVE_TRANSFORMATION; + } + + /** + * {@inheritDoc} + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public <R> R accept(@NonNull Visitor<R> visitor) { + return (R) ((QVTimperativeVisitor<?>)visitor).visitImperativeTransformation(this); + } + +} //ImperativeTransformationImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativeFactoryImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativeFactoryImpl.java index df9a6f560..6e0bebde9 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativeFactoryImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativeFactoryImpl.java @@ -91,6 +91,7 @@ public class QVTimperativeFactoryImpl extends EFactoryImpl implements QVTimperat case QVTimperativePackage.GUARD_PARAMETER: return createGuardParameter(); case QVTimperativePackage.GUARD_PARAMETER_BINDING: return createGuardParameterBinding(); case QVTimperativePackage.IMPERATIVE_MODEL: return createImperativeModel(); + case QVTimperativePackage.IMPERATIVE_TRANSFORMATION: return createImperativeTransformation(); case QVTimperativePackage.IMPERATIVE_TYPED_MODEL: return createImperativeTypedModel(); case QVTimperativePackage.LOOP_PARAMETER_BINDING: return createLoopParameterBinding(); case QVTimperativePackage.LOOP_VARIABLE: return createLoopVariable(); @@ -211,6 +212,17 @@ public class QVTimperativeFactoryImpl extends EFactoryImpl implements QVTimperat * @generated */ @Override + public @NonNull ImperativeTransformation createImperativeTransformation() { + ImperativeTransformationImpl imperativeTransformation = new ImperativeTransformationImpl(); + return imperativeTransformation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override public @NonNull ImperativeTypedModel createImperativeTypedModel() { ImperativeTypedModelImpl imperativeTypedModel = new ImperativeTypedModelImpl(); return imperativeTypedModel; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativePackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativePackageImpl.java index 7da584672..4cff597b3 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativePackageImpl.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/impl/QVTimperativePackageImpl.java @@ -27,6 +27,7 @@ import org.eclipse.qvtd.pivot.qvtimperative.DeclareStatement; import org.eclipse.qvtd.pivot.qvtimperative.GuardParameter; import org.eclipse.qvtd.pivot.qvtimperative.GuardParameterBinding; import org.eclipse.qvtd.pivot.qvtimperative.ImperativeModel; +import org.eclipse.qvtd.pivot.qvtimperative.ImperativeTransformation; import org.eclipse.qvtd.pivot.qvtimperative.ImperativeTypedModel; import org.eclipse.qvtd.pivot.qvtimperative.LoopParameterBinding; import org.eclipse.qvtd.pivot.qvtimperative.LoopVariable; @@ -128,6 +129,13 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat * <!-- end-user-doc --> * @generated */ + private EClass imperativeTransformationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ private EClass imperativeTypedModelEClass = null; /** @@ -516,6 +524,16 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat * @generated */ @Override + public EClass getImperativeTransformation() { + return imperativeTransformationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override public EClass getImperativeTypedModel() { return imperativeTypedModelEClass; } @@ -1010,6 +1028,8 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat imperativeModelEClass = createEClass(IMPERATIVE_MODEL); + imperativeTransformationEClass = createEClass(IMPERATIVE_TRANSFORMATION); + imperativeTypedModelEClass = createEClass(IMPERATIVE_TYPED_MODEL); createEAttribute(imperativeTypedModelEClass, IMPERATIVE_TYPED_MODEL__IS_CHECKED); createEAttribute(imperativeTypedModelEClass, IMPERATIVE_TYPED_MODEL__IS_ENFORCED); @@ -1118,6 +1138,7 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat guardParameterEClass.getESuperTypes().add(this.getMappingParameter()); guardParameterBindingEClass.getESuperTypes().add(this.getMappingParameterBinding()); imperativeModelEClass.getESuperTypes().add(theQVTbasePackage.getBaseModel()); + imperativeTransformationEClass.getESuperTypes().add(theQVTbasePackage.getTransformation()); imperativeTypedModelEClass.getESuperTypes().add(theQVTbasePackage.getTypedModel()); loopParameterBindingEClass.getESuperTypes().add(this.getMappingParameterBinding()); loopVariableEClass.getESuperTypes().add(thePivotPackage.getVariableDeclaration()); @@ -1171,6 +1192,8 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat initEClass(imperativeModelEClass, ImperativeModel.class, "ImperativeModel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEClass(imperativeTransformationEClass, ImperativeTransformation.class, "ImperativeTransformation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEClass(imperativeTypedModelEClass, ImperativeTypedModel.class, "ImperativeTypedModel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getImperativeTypedModel_IsChecked(), ecorePackage.getEBoolean(), "isChecked", "false", 0, 1, ImperativeTypedModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getImperativeTypedModel_IsEnforced(), ecorePackage.getEBoolean(), "isEnforced", "false", 0, 1, ImperativeTypedModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -1188,9 +1211,9 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat initEClass(mappingCallEClass, MappingCall.class, "MappingCall", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getMappingCall_Binding(), this.getMappingParameterBinding(), this.getMappingParameterBinding_MappingCall(), "binding", null, 0, -1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getMappingCall_IsInfinite(), thePivotPackage.getBoolean(), "isInfinite", "false", 0, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getMappingCall_IsInstall(), thePivotPackage.getBoolean(), "isInstall", "false", 0, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getMappingCall_IsInvoke(), thePivotPackage.getBoolean(), "isInvoke", "false", 0, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMappingCall_IsInfinite(), ecorePackage.getEBoolean(), "isInfinite", "false", 0, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMappingCall_IsInstall(), ecorePackage.getEBoolean(), "isInstall", "false", 0, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMappingCall_IsInvoke(), ecorePackage.getEBoolean(), "isInvoke", "false", 0, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getMappingCall_ReferredMapping(), this.getMapping(), null, "referredMapping", null, 1, 1, MappingCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(mappingLoopEClass, MappingLoop.class, "MappingLoop", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -1237,8 +1260,6 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat // Create annotations // http://www.eclipse.org/OCL/Import createImportAnnotations(); - // http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName - createEmofAnnotations(); } /** @@ -1257,32 +1278,4 @@ public class QVTimperativePackageImpl extends EPackageImpl implements QVTimperat }); } - /** - * Initializes the annotations for <b>http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName</b>. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected void createEmofAnnotations() { - String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; - addAnnotation - (getAddStatement_TargetVariable(), - source, - new String[] { - "body", "assignment" - }); - addAnnotation - (getSetStatement_TargetVariable(), - source, - new String[] { - "body", "assignment" - }); - addAnnotation - (getSetStatement_TargetProperty(), - source, - new String[] { - "body", "assignment" - }); - } - } //QVTimperativePackageImpl diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractDelegatingQVTimperativeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractDelegatingQVTimperativeVisitor.java index 7c3c818b4..3fffe14ef 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractDelegatingQVTimperativeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractDelegatingQVTimperativeVisitor.java @@ -86,6 +86,11 @@ public abstract class AbstractDelegatingQVTimperativeVisitor<R, C, @NonNull D ex } @Override + public R visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return delegate.visitImperativeTransformation(object); + } + + @Override public R visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return delegate.visitImperativeTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractExtendingQVTimperativeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractExtendingQVTimperativeVisitor.java index 26e1f2ca2..2074ed4f0 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractExtendingQVTimperativeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractExtendingQVTimperativeVisitor.java @@ -90,6 +90,11 @@ public abstract class AbstractExtendingQVTimperativeVisitor<R, C> } @Override + public R visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public R visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractMergedQVTimperativeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractMergedQVTimperativeVisitor.java index 7b604982a..5e51d8cec 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractMergedQVTimperativeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractMergedQVTimperativeVisitor.java @@ -84,6 +84,11 @@ public abstract class AbstractMergedQVTimperativeVisitor<R, C> } @Override + public R visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visiting(object); + } + + @Override public R visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visiting(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractNullQVTimperativeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractNullQVTimperativeVisitor.java index 4d9325688..38a03351d 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractNullQVTimperativeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractNullQVTimperativeVisitor.java @@ -90,6 +90,11 @@ public abstract class AbstractNullQVTimperativeVisitor<@Nullable R, C> } @Override + public R visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return null; + } + + @Override public R visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return null; } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2MonikerVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2MonikerVisitor.java index ce3d783c1..ee206e8c5 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2MonikerVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2MonikerVisitor.java @@ -94,6 +94,11 @@ public abstract class AbstractQVTimperativeAS2MonikerVisitor } @Override + public @Nullable Object visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public @Nullable Object visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2XMIidVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2XMIidVisitor.java index 7925a703a..9bb3408cf 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2XMIidVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeAS2XMIidVisitor.java @@ -94,6 +94,11 @@ public abstract class AbstractQVTimperativeAS2XMIidVisitor } @Override + public @Nullable Boolean visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public @Nullable Boolean visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverLocateVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverLocateVisitor.java index 04b09f3be..a0e7d0e38 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverLocateVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverLocateVisitor.java @@ -94,6 +94,11 @@ public abstract class AbstractQVTimperativeASSaverLocateVisitor } @Override + public @Nullable Object visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public @Nullable Object visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverNormalizeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverNormalizeVisitor.java index 949f49406..17127e79d 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverNormalizeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverNormalizeVisitor.java @@ -96,6 +96,11 @@ public abstract class AbstractQVTimperativeASSaverNormalizeVisitor } @Override + public @Nullable Object visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public @Nullable Object visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverResolveVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverResolveVisitor.java index 9b99ce8b1..fae5348b1 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverResolveVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeASSaverResolveVisitor.java @@ -94,6 +94,11 @@ public abstract class AbstractQVTimperativeASSaverResolveVisitor } @Override + public @Nullable Object visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public @Nullable Object visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeTemplateParameterSubstitutionVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeTemplateParameterSubstitutionVisitor.java index 3092ef9ea..0e8530970 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeTemplateParameterSubstitutionVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractQVTimperativeTemplateParameterSubstitutionVisitor.java @@ -97,6 +97,11 @@ public abstract class AbstractQVTimperativeTemplateParameterSubstitutionVisitor } @Override + public @Nullable Object visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + return visitTransformation(object); + } + + @Override public @Nullable Object visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { return visitTypedModel(object); } diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractWrappingQVTimperativeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractWrappingQVTimperativeVisitor.java index c14d9a0d6..7168a5182 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractWrappingQVTimperativeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/AbstractWrappingQVTimperativeVisitor.java @@ -152,6 +152,18 @@ public abstract class AbstractWrappingQVTimperativeVisitor<R, C, @NonNull D exte } @Override + public R visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object) { + @Nullable P prologue = preVisit(object); + try { + R result = delegate.visitImperativeTransformation(object); + return postVisit(object, prologue, result); + } + catch (Throwable e) { + return badVisit(object, prologue, e); + } + } + + @Override public R visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object) { @Nullable P prologue = preVisit(object); try { diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeAdapterFactory.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeAdapterFactory.java index 48f075c47..85225d2bc 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeAdapterFactory.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeAdapterFactory.java @@ -20,12 +20,15 @@ import org.eclipse.ocl.pivot.Model; import org.eclipse.ocl.pivot.NamedElement; import org.eclipse.ocl.pivot.Namespace; import org.eclipse.ocl.pivot.ReferringElement; +import org.eclipse.ocl.pivot.TemplateableElement; +import org.eclipse.ocl.pivot.Type; 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.BaseModel; import org.eclipse.qvtd.pivot.qvtbase.Rule; +import org.eclipse.qvtd.pivot.qvtbase.Transformation; import org.eclipse.qvtd.pivot.qvtbase.TypedModel; import org.eclipse.qvtd.pivot.qvtimperative.*; import org.eclipse.qvtd.pivot.qvtimperative.AddStatement; @@ -152,6 +155,10 @@ public class QVTimperativeAdapterFactory extends AdapterFactoryImpl { return createImperativeModelAdapter(); } @Override + public Adapter caseImperativeTransformation(ImperativeTransformation object) { + return createImperativeTransformationAdapter(); + } + @Override public Adapter caseImperativeTypedModel(ImperativeTypedModel object) { return createImperativeTypedModelAdapter(); } @@ -252,6 +259,22 @@ public class QVTimperativeAdapterFactory extends AdapterFactoryImpl { return createBaseModelAdapter(); } @Override + public Adapter caseType(Type object) { + return createTypeAdapter(); + } + @Override + public Adapter caseTemplateableElement(TemplateableElement object) { + return createTemplateableElementAdapter(); + } + @Override + public Adapter caseClass(org.eclipse.ocl.pivot.Class object) { + return createClassAdapter(); + } + @Override + public Adapter caseTransformation(Transformation object) { + return createTransformationAdapter(); + } + @Override public Adapter caseTypedModel(TypedModel object) { return createTypedModelAdapter(); } @@ -424,6 +447,20 @@ public class QVTimperativeAdapterFactory extends AdapterFactoryImpl { } /** + * Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtimperative.ImperativeTransformation <em>Imperative Transformation</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.qvtd.pivot.qvtimperative.ImperativeTransformation + * @generated + */ + public Adapter createImperativeTransformationAdapter() { + return null; + } + + /** * Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtimperative.ImperativeTypedModel <em>Imperative Typed Model</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; @@ -746,6 +783,62 @@ public class QVTimperativeAdapterFactory extends AdapterFactoryImpl { } /** + * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.Type <em>Type</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.ocl.pivot.Type + * @generated + */ + public Adapter createTypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.TemplateableElement <em>Templateable Element</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.ocl.pivot.TemplateableElement + * @generated + */ + public Adapter createTemplateableElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.ocl.pivot.Class <em>Class</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.ocl.pivot.Class + * @generated + */ + public Adapter createClassAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtbase.Transformation <em>Transformation</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.qvtd.pivot.qvtbase.Transformation + * @generated + */ + public Adapter createTransformationAdapter() { + return null; + } + + /** * Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtbase.TypedModel <em>Typed Model</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeSwitch.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeSwitch.java index 8ff6e54ea..2eef2c89e 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeSwitch.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeSwitch.java @@ -19,12 +19,15 @@ import org.eclipse.ocl.pivot.Model; import org.eclipse.ocl.pivot.NamedElement; import org.eclipse.ocl.pivot.Namespace; import org.eclipse.ocl.pivot.ReferringElement; +import org.eclipse.ocl.pivot.TemplateableElement; +import org.eclipse.ocl.pivot.Type; 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.BaseModel; import org.eclipse.qvtd.pivot.qvtbase.Rule; +import org.eclipse.qvtd.pivot.qvtbase.Transformation; import org.eclipse.qvtd.pivot.qvtbase.TypedModel; import org.eclipse.qvtd.pivot.qvtimperative.*; import org.eclipse.qvtd.pivot.qvtimperative.AddStatement; @@ -237,6 +240,21 @@ public class QVTimperativeSwitch<@Nullable T> extends Switch<T> { if (result == null) result = defaultCase(theEObject); return result; } + case QVTimperativePackage.IMPERATIVE_TRANSFORMATION: { + ImperativeTransformation imperativeTransformation = (ImperativeTransformation)theEObject; + T result = caseImperativeTransformation(imperativeTransformation); + if (result == null) result = caseTransformation(imperativeTransformation); + if (result == null) result = caseClass(imperativeTransformation); + if (result == null) result = caseType(imperativeTransformation); + if (result == null) result = caseNamespace(imperativeTransformation); + if (result == null) result = caseTemplateableElement(imperativeTransformation); + if (result == null) result = caseNamedElement(imperativeTransformation); + if (result == null) result = caseElement(imperativeTransformation); + if (result == null) result = caseNameable(imperativeTransformation); + if (result == null) result = caseVisitable(imperativeTransformation); + if (result == null) result = defaultCase(theEObject); + return result; + } case QVTimperativePackage.IMPERATIVE_TYPED_MODEL: { ImperativeTypedModel imperativeTypedModel = (ImperativeTypedModel)theEObject; T result = caseImperativeTypedModel(imperativeTypedModel); @@ -575,6 +593,21 @@ public class QVTimperativeSwitch<@Nullable T> extends Switch<T> { } /** + * Returns the result of interpreting the object as an instance of '<em>Imperative Transformation</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Imperative Transformation</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseImperativeTransformation(ImperativeTransformation object) { + return null; + } + + /** * Returns the result of interpreting the object as an instance of '<em>Imperative Typed Model</em>'. * <!-- begin-user-doc --> * This implementation returns null; @@ -920,6 +953,66 @@ public class QVTimperativeSwitch<@Nullable T> extends Switch<T> { } /** + * Returns the result of interpreting the object as an instance of '<em>Type</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Type</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseType(Type object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Templateable Element</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Templateable Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTemplateableElement(TemplateableElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Class</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Class</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseClass(org.eclipse.ocl.pivot.Class object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Transformation</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Transformation</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTransformation(Transformation object) { + return null; + } + + /** * Returns the result of interpreting the object as an instance of '<em>Typed Model</em>'. * <!-- begin-user-doc --> * This implementation returns null; diff --git a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeVisitor.java index 6a8879e37..5ca3b67ea 100644 --- a/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeVisitor.java +++ b/plugins/org.eclipse.qvtd.pivot.qvtimperative/emf-gen/org/eclipse/qvtd/pivot/qvtimperative/util/QVTimperativeVisitor.java @@ -33,6 +33,7 @@ public interface QVTimperativeVisitor<R> extends org.eclipse.qvtd.pivot.qvtbase. R visitGuardParameter(org.eclipse.qvtd.pivot.qvtimperative.@NonNull GuardParameter object); R visitGuardParameterBinding(org.eclipse.qvtd.pivot.qvtimperative.@NonNull GuardParameterBinding object); R visitImperativeModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeModel object); + R visitImperativeTransformation(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTransformation object); R visitImperativeTypedModel(org.eclipse.qvtd.pivot.qvtimperative.@NonNull ImperativeTypedModel object); R visitLoopParameterBinding(org.eclipse.qvtd.pivot.qvtimperative.@NonNull LoopParameterBinding object); R visitLoopVariable(org.eclipse.qvtd.pivot.qvtimperative.@NonNull LoopVariable object); |