aboutsummaryrefslogtreecommitdiffstats
path: root/rba.model.core/src/rba
diff options
context:
space:
mode:
Diffstat (limited to 'rba.model.core/src/rba')
-rw-r--r--rba.model.core/src/rba/core/AbstractAllocatable.java86
-rw-r--r--rba.model.core/src/rba/core/AbstractConstraint.java51
-rw-r--r--rba.model.core/src/rba/core/AbstractContent.java87
-rw-r--r--rba.model.core/src/rba/core/AbstractProperty.java65
-rw-r--r--rba.model.core/src/rba/core/AbstractScene.java20
-rw-r--r--rba.model.core/src/rba/core/ActionOperator.java21
-rw-r--r--rba.model.core/src/rba/core/ActiveContents.java44
-rw-r--r--rba.model.core/src/rba/core/ActiveState.java44
-rw-r--r--rba.model.core/src/rba/core/Allocatable.java91
-rw-r--r--rba.model.core/src/rba/core/AllocatableOperator.java29
-rw-r--r--rba.model.core/src/rba/core/AllocatableSet.java54
-rw-r--r--rba.model.core/src/rba/core/AllocatedContent.java41
-rw-r--r--rba.model.core/src/rba/core/AndOperator.java32
-rw-r--r--rba.model.core/src/rba/core/ArbitrationPolicy.java292
-rw-r--r--rba.model.core/src/rba/core/ArbitrationPolicyExpression.java80
-rw-r--r--rba.model.core/src/rba/core/ArithmeticOperator.java44
-rw-r--r--rba.model.core/src/rba/core/ComparisonAnd.java44
-rw-r--r--rba.model.core/src/rba/core/ComparisonOperator.java44
-rw-r--r--rba.model.core/src/rba/core/ComplexExpression.java87
-rw-r--r--rba.model.core/src/rba/core/Constraint.java79
-rw-r--r--rba.model.core/src/rba/core/Content.java85
-rw-r--r--rba.model.core/src/rba/core/ContentOperator.java32
-rw-r--r--rba.model.core/src/rba/core/ContentSet.java55
-rw-r--r--rba.model.core/src/rba/core/ContentState.java79
-rw-r--r--rba.model.core/src/rba/core/ContentStateOperator.java32
-rw-r--r--rba.model.core/src/rba/core/ContentValue.java44
-rw-r--r--rba.model.core/src/rba/core/EnumExpression.java57
-rw-r--r--rba.model.core/src/rba/core/EqualToOperator.java32
-rw-r--r--rba.model.core/src/rba/core/ExistsOperator.java56
-rw-r--r--rba.model.core/src/rba/core/Expression.java149
-rw-r--r--rba.model.core/src/rba/core/ExpressionType.java595
-rw-r--r--rba.model.core/src/rba/core/ForAllOperator.java56
-rw-r--r--rba.model.core/src/rba/core/GetAllocatables.java44
-rw-r--r--rba.model.core/src/rba/core/GetContentsList.java44
-rw-r--r--rba.model.core/src/rba/core/GetProperty.java44
-rw-r--r--rba.model.core/src/rba/core/GetState.java34
-rw-r--r--rba.model.core/src/rba/core/GreaterThanOperator.java32
-rw-r--r--rba.model.core/src/rba/core/HasBeenDisplayed.java44
-rw-r--r--rba.model.core/src/rba/core/HasComeEarlierThan.java50
-rw-r--r--rba.model.core/src/rba/core/HasComeLaterThan.java50
-rw-r--r--rba.model.core/src/rba/core/IfActionOperator.java44
-rw-r--r--rba.model.core/src/rba/core/IfStatement.java127
-rw-r--r--rba.model.core/src/rba/core/ImpliesOperator.java32
-rw-r--r--rba.model.core/src/rba/core/IntegerProperty.java52
-rw-r--r--rba.model.core/src/rba/core/IntegerValue.java75
-rw-r--r--rba.model.core/src/rba/core/IsActive.java44
-rw-r--r--rba.model.core/src/rba/core/IsAllocatedTo.java43
-rw-r--r--rba.model.core/src/rba/core/IsCanceled.java44
-rw-r--r--rba.model.core/src/rba/core/IsChanged.java34
-rw-r--r--rba.model.core/src/rba/core/IsDisappeared.java44
-rw-r--r--rba.model.core/src/rba/core/IsEqualToOperator.java32
-rw-r--r--rba.model.core/src/rba/core/IsGreaterThanEqualOperator.java32
-rw-r--r--rba.model.core/src/rba/core/IsGreaterThanOperator.java32
-rw-r--r--rba.model.core/src/rba/core/IsLowerThanEqualOperator.java32
-rw-r--r--rba.model.core/src/rba/core/IsLowerThanOperator.java32
-rw-r--r--rba.model.core/src/rba/core/IsOn.java44
-rw-r--r--rba.model.core/src/rba/core/IsTranslatedTo.java43
-rw-r--r--rba.model.core/src/rba/core/IsTypeOf.java88
-rw-r--r--rba.model.core/src/rba/core/LambdaContext.java65
-rw-r--r--rba.model.core/src/rba/core/LambdaExpression.java129
-rw-r--r--rba.model.core/src/rba/core/LetStatement.java84
-rw-r--r--rba.model.core/src/rba/core/LogicalOperator.java44
-rw-r--r--rba.model.core/src/rba/core/LoserType.java236
-rw-r--r--rba.model.core/src/rba/core/LoserTypeExpression.java80
-rw-r--r--rba.model.core/src/rba/core/LowerThanOperator.java32
-rw-r--r--rba.model.core/src/rba/core/MaxOperator.java56
-rw-r--r--rba.model.core/src/rba/core/MaxValue.java44
-rw-r--r--rba.model.core/src/rba/core/MinOperator.java56
-rw-r--r--rba.model.core/src/rba/core/MinValue.java44
-rw-r--r--rba.model.core/src/rba/core/ModelElement.java53
-rw-r--r--rba.model.core/src/rba/core/MuchGreaterThanOperator.java32
-rw-r--r--rba.model.core/src/rba/core/NamedElement.java51
-rw-r--r--rba.model.core/src/rba/core/NoneValue.java44
-rw-r--r--rba.model.core/src/rba/core/NotOperator.java44
-rw-r--r--rba.model.core/src/rba/core/NullExpression.java44
-rw-r--r--rba.model.core/src/rba/core/ObjectCompare.java56
-rw-r--r--rba.model.core/src/rba/core/ObjectCompareNot.java43
-rw-r--r--rba.model.core/src/rba/core/ObjectReference.java75
-rw-r--r--rba.model.core/src/rba/core/OffScene.java32
-rw-r--r--rba.model.core/src/rba/core/OnScene.java32
-rw-r--r--rba.model.core/src/rba/core/Operator.java54
-rw-r--r--rba.model.core/src/rba/core/OrOperator.java32
-rw-r--r--rba.model.core/src/rba/core/PackagableElement.java20
-rw-r--r--rba.model.core/src/rba/core/Package.java43
-rw-r--r--rba.model.core/src/rba/core/PlusOperator.java32
-rw-r--r--rba.model.core/src/rba/core/PreviousModifier.java88
-rw-r--r--rba.model.core/src/rba/core/Project.java91
-rw-r--r--rba.model.core/src/rba/core/PropertyOperator.java44
-rw-r--r--rba.model.core/src/rba/core/RBACoreFactory.java618
-rw-r--r--rba.model.core/src/rba/core/RBACorePackage.java14216
-rw-r--r--rba.model.core/src/rba/core/RuleObject.java54
-rw-r--r--rba.model.core/src/rba/core/Scene.java84
-rw-r--r--rba.model.core/src/rba/core/SceneOperator.java32
-rw-r--r--rba.model.core/src/rba/core/SelectOperator.java56
-rw-r--r--rba.model.core/src/rba/core/SetExpression.java20
-rw-r--r--rba.model.core/src/rba/core/SetOfOperator.java56
-rw-r--r--rba.model.core/src/rba/core/SetOperator.java20
-rw-r--r--rba.model.core/src/rba/core/SetProperty.java44
-rw-r--r--rba.model.core/src/rba/core/SizeOperator.java56
-rw-r--r--rba.model.core/src/rba/core/StandardValue.java44
-rw-r--r--rba.model.core/src/rba/core/State.java21
-rw-r--r--rba.model.core/src/rba/core/StateValue.java38
-rw-r--r--rba.model.core/src/rba/core/Stereotype.java95
-rw-r--r--rba.model.core/src/rba/core/SugarExpression.java40
-rw-r--r--rba.model.core/src/rba/core/SugarExpressionBase.java25
-rw-r--r--rba.model.core/src/rba/core/Tag.java43
-rw-r--r--rba.model.core/src/rba/core/ThatOfOperator.java56
-rw-r--r--rba.model.core/src/rba/core/ValueExpression.java55
-rw-r--r--rba.model.core/src/rba/core/Variable.java32
-rw-r--r--rba.model.core/src/rba/core/generator/util/EObjectDecorator.java118
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/ComparisonAndEvaluator.java49
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/ComparisonOperatorEvaluator.java48
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/EqualToOperatorEvaluator.java51
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/ExpressionEvaluator.java56
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/GreaterThanOperatorEvaluator.java62
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/MuchGreaterThanOperatorEvaluator.java65
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/ValueGroup.java35
-rw-r--r--rba.model.core/src/rba/core/generator/util/value/ValueSortedList.java155
-rw-r--r--rba.model.core/src/rba/core/impl/AbstractAllocatableImpl.java235
-rw-r--r--rba.model.core/src/rba/core/impl/AbstractConstraintImpl.java170
-rw-r--r--rba.model.core/src/rba/core/impl/AbstractContentImpl.java230
-rw-r--r--rba.model.core/src/rba/core/impl/AbstractPropertyImpl.java208
-rw-r--r--rba.model.core/src/rba/core/impl/AbstractSceneImpl.java33
-rw-r--r--rba.model.core/src/rba/core/impl/ActiveContentsImpl.java85
-rw-r--r--rba.model.core/src/rba/core/impl/ActiveStateImpl.java69
-rw-r--r--rba.model.core/src/rba/core/impl/AllocatableImpl.java261
-rw-r--r--rba.model.core/src/rba/core/impl/AllocatableOperatorImpl.java62
-rw-r--r--rba.model.core/src/rba/core/impl/AllocatableSetImpl.java181
-rw-r--r--rba.model.core/src/rba/core/impl/AllocatedContentImpl.java78
-rw-r--r--rba.model.core/src/rba/core/impl/AndOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/ArbitrationPolicyExpressionImpl.java193
-rw-r--r--rba.model.core/src/rba/core/impl/ArithmeticOperatorImpl.java83
-rw-r--r--rba.model.core/src/rba/core/impl/ComparisonAndImpl.java118
-rw-r--r--rba.model.core/src/rba/core/impl/ComparisonOperatorImpl.java73
-rw-r--r--rba.model.core/src/rba/core/impl/ComplexExpressionImpl.java279
-rw-r--r--rba.model.core/src/rba/core/impl/ConstraintImpl.java186
-rw-r--r--rba.model.core/src/rba/core/impl/ContentImpl.java248
-rw-r--r--rba.model.core/src/rba/core/impl/ContentOperatorImpl.java62
-rw-r--r--rba.model.core/src/rba/core/impl/ContentSetImpl.java177
-rw-r--r--rba.model.core/src/rba/core/impl/ContentStateImpl.java256
-rw-r--r--rba.model.core/src/rba/core/impl/ContentStateOperatorImpl.java62
-rw-r--r--rba.model.core/src/rba/core/impl/ContentValueImpl.java69
-rw-r--r--rba.model.core/src/rba/core/impl/EnumExpressionImpl.java82
-rw-r--r--rba.model.core/src/rba/core/impl/EqualToOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/ExistsOperatorImpl.java87
-rw-r--r--rba.model.core/src/rba/core/impl/ExpressionImpl.java264
-rw-r--r--rba.model.core/src/rba/core/impl/ForAllOperatorImpl.java91
-rw-r--r--rba.model.core/src/rba/core/impl/GetAllocatablesImpl.java77
-rw-r--r--rba.model.core/src/rba/core/impl/GetContentsListImpl.java77
-rw-r--r--rba.model.core/src/rba/core/impl/GetPropertyImpl.java105
-rw-r--r--rba.model.core/src/rba/core/impl/GetStateImpl.java59
-rw-r--r--rba.model.core/src/rba/core/impl/GreaterThanOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/HasBeenDisplayedImpl.java69
-rw-r--r--rba.model.core/src/rba/core/impl/HasComeEarlierThanImpl.java124
-rw-r--r--rba.model.core/src/rba/core/impl/HasComeLaterThanImpl.java124
-rw-r--r--rba.model.core/src/rba/core/impl/IfStatementImpl.java354
-rw-r--r--rba.model.core/src/rba/core/impl/ImpliesOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/IntegerPropertyImpl.java170
-rw-r--r--rba.model.core/src/rba/core/impl/IntegerValueImpl.java186
-rw-r--r--rba.model.core/src/rba/core/impl/IsActiveImpl.java69
-rw-r--r--rba.model.core/src/rba/core/impl/IsAllocatedToImpl.java171
-rw-r--r--rba.model.core/src/rba/core/impl/IsChangedImpl.java156
-rw-r--r--rba.model.core/src/rba/core/impl/IsEqualToOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/IsGreaterThanEqualOperatorImpl.java59
-rw-r--r--rba.model.core/src/rba/core/impl/IsGreaterThanOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/IsLowerThanEqualOperatorImpl.java59
-rw-r--r--rba.model.core/src/rba/core/impl/IsLowerThanOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/IsOnImpl.java69
-rw-r--r--rba.model.core/src/rba/core/impl/IsTranslatedToImpl.java191
-rw-r--r--rba.model.core/src/rba/core/impl/IsTypeOfImpl.java202
-rw-r--r--rba.model.core/src/rba/core/impl/LambdaContextImpl.java224
-rw-r--r--rba.model.core/src/rba/core/impl/LambdaExpressionImpl.java370
-rw-r--r--rba.model.core/src/rba/core/impl/LetStatementImpl.java268
-rw-r--r--rba.model.core/src/rba/core/impl/LogicalOperatorImpl.java83
-rw-r--r--rba.model.core/src/rba/core/impl/LoserTypeExpressionImpl.java192
-rw-r--r--rba.model.core/src/rba/core/impl/LowerThanOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/MaxOperatorImpl.java87
-rw-r--r--rba.model.core/src/rba/core/impl/MaxValueImpl.java68
-rw-r--r--rba.model.core/src/rba/core/impl/MinOperatorImpl.java87
-rw-r--r--rba.model.core/src/rba/core/impl/MinValueImpl.java68
-rw-r--r--rba.model.core/src/rba/core/impl/ModelElementImpl.java154
-rw-r--r--rba.model.core/src/rba/core/impl/MuchGreaterThanOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/NamedElementImpl.java150
-rw-r--r--rba.model.core/src/rba/core/impl/NoneValueImpl.java68
-rw-r--r--rba.model.core/src/rba/core/impl/NotOperatorImpl.java110
-rw-r--r--rba.model.core/src/rba/core/impl/NullExpressionImpl.java76
-rw-r--r--rba.model.core/src/rba/core/impl/ObjectCompareImpl.java86
-rw-r--r--rba.model.core/src/rba/core/impl/ObjectCompareNotImpl.java160
-rw-r--r--rba.model.core/src/rba/core/impl/ObjectReferenceImpl.java202
-rw-r--r--rba.model.core/src/rba/core/impl/OperatorImpl.java165
-rw-r--r--rba.model.core/src/rba/core/impl/OrOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/PackagableElementImpl.java33
-rw-r--r--rba.model.core/src/rba/core/impl/PackageImpl.java139
-rw-r--r--rba.model.core/src/rba/core/impl/PlusOperatorImpl.java58
-rw-r--r--rba.model.core/src/rba/core/impl/PreviousModifierImpl.java229
-rw-r--r--rba.model.core/src/rba/core/impl/ProjectImpl.java233
-rw-r--r--rba.model.core/src/rba/core/impl/PropertyOperatorImpl.java73
-rw-r--r--rba.model.core/src/rba/core/impl/RBACoreFactoryImpl.java958
-rw-r--r--rba.model.core/src/rba/core/impl/RBACorePackageImpl.java4565
-rw-r--r--rba.model.core/src/rba/core/impl/RuleObjectImpl.java167
-rw-r--r--rba.model.core/src/rba/core/impl/SceneImpl.java245
-rw-r--r--rba.model.core/src/rba/core/impl/SceneOperatorImpl.java62
-rw-r--r--rba.model.core/src/rba/core/impl/SelectOperatorImpl.java92
-rw-r--r--rba.model.core/src/rba/core/impl/SetExpressionImpl.java33
-rw-r--r--rba.model.core/src/rba/core/impl/SetOfOperatorImpl.java106
-rw-r--r--rba.model.core/src/rba/core/impl/SetOperatorImpl.java33
-rw-r--r--rba.model.core/src/rba/core/impl/SizeOperatorImpl.java83
-rw-r--r--rba.model.core/src/rba/core/impl/StandardValueImpl.java68
-rw-r--r--rba.model.core/src/rba/core/impl/StateValueImpl.java69
-rw-r--r--rba.model.core/src/rba/core/impl/StereotypeImpl.java263
-rw-r--r--rba.model.core/src/rba/core/impl/TagImpl.java148
-rw-r--r--rba.model.core/src/rba/core/impl/ThatOfOperatorImpl.java83
-rw-r--r--rba.model.core/src/rba/core/impl/ValueExpressionImpl.java81
-rw-r--r--rba.model.core/src/rba/core/impl/VariableImpl.java103
-rw-r--r--rba.model.core/src/rba/core/util/RBACoreAdapterFactory.java1861
-rw-r--r--rba.model.core/src/rba/core/util/RBACoreSwitch.java2622
216 files changed, 43815 insertions, 0 deletions
diff --git a/rba.model.core/src/rba/core/AbstractAllocatable.java b/rba.model.core/src/rba/core/AbstractAllocatable.java
new file mode 100644
index 0000000..e3d9eac
--- /dev/null
+++ b/rba.model.core/src/rba/core/AbstractAllocatable.java
@@ -0,0 +1,86 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Allocatable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.AbstractAllocatable#getContents <em>Contents</em>}</li>
+ * <li>{@link rba.core.AbstractAllocatable#getAllocatableGroup <em>Allocatable Group</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getAbstractAllocatable()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractAllocatable extends RuleObject {
+ /**
+ * Returns the value of the '<em><b>Contents</b></em>' reference list.
+ * The list contents are of type {@link rba.core.AbstractContent}.
+ * It is bidirectional and its opposite is '{@link rba.core.AbstractContent#getAllocatable <em>Allocatable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Contents</em>' reference list.
+ * @see rba.core.RBACorePackage#getAbstractAllocatable_Contents()
+ * @see rba.core.AbstractContent#getAllocatable
+ * @model opposite="allocatable"
+ * @generated
+ */
+ EList<AbstractContent> getContents();
+
+ /**
+ * Returns the value of the '<em><b>Allocatable Group</b></em>' reference list.
+ * The list contents are of type {@link rba.core.AllocatableSet}.
+ * It is bidirectional and its opposite is '{@link rba.core.AllocatableSet#getTarget <em>Target</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Allocatable Group</em>' reference list.
+ * @see rba.core.RBACorePackage#getAbstractAllocatable_AllocatableGroup()
+ * @see rba.core.AllocatableSet#getTarget
+ * @model opposite="target"
+ * @generated
+ */
+ EList<AllocatableSet> getAllocatableGroup();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation" ordered="false"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='java.util.Set&lt;Content&gt; contents = new java.util.LinkedHashSet&lt;Content&gt;();\r\ngetContents().forEach(content -&gt; contents.addAll(content.collectLeafContents()));\r\ngetAllocatableGroup().forEach(allocatableSet -&gt; contents.addAll(allocatableSet.getContentsList()));\r\nreturn new org.eclipse.emf.common.util.BasicEList&lt;Content&gt;(contents);'"
+ * @generated
+ */
+ EList<Content> getContentsList();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model ordered="false"
+ * @generated
+ */
+ EList<Allocatable> collectLeafAllocatable();
+
+} // AbstractAllocatable
diff --git a/rba.model.core/src/rba/core/AbstractConstraint.java b/rba.model.core/src/rba/core/AbstractConstraint.java
new file mode 100644
index 0000000..e28c1c8
--- /dev/null
+++ b/rba.model.core/src/rba/core/AbstractConstraint.java
@@ -0,0 +1,51 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.AbstractConstraint#getExpression <em>Expression</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getAbstractConstraint()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractConstraint extends PackagableElement {
+ /**
+ * Returns the value of the '<em><b>Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Expression</em>' containment reference.
+ * @see #setExpression(Expression)
+ * @see rba.core.RBACorePackage#getAbstractConstraint_Expression()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getExpression();
+
+ /**
+ * Sets the value of the '{@link rba.core.AbstractConstraint#getExpression <em>Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Expression</em>' containment reference.
+ * @see #getExpression()
+ * @generated
+ */
+ void setExpression(Expression value);
+
+} // AbstractConstraint
diff --git a/rba.model.core/src/rba/core/AbstractContent.java b/rba.model.core/src/rba/core/AbstractContent.java
new file mode 100644
index 0000000..96b6043
--- /dev/null
+++ b/rba.model.core/src/rba/core/AbstractContent.java
@@ -0,0 +1,87 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Content</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.AbstractContent#getContentGroup <em>Content Group</em>}</li>
+ * <li>{@link rba.core.AbstractContent#getAllocatable <em>Allocatable</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getAbstractContent()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractContent extends RuleObject {
+ /**
+ * Returns the value of the '<em><b>Content Group</b></em>' reference list.
+ * The list contents are of type {@link rba.core.ContentSet}.
+ * It is bidirectional and its opposite is '{@link rba.core.ContentSet#getTarget <em>Target</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Content Group</em>' reference list.
+ * @see rba.core.RBACorePackage#getAbstractContent_ContentGroup()
+ * @see rba.core.ContentSet#getTarget
+ * @model opposite="target"
+ * @generated
+ */
+ EList<ContentSet> getContentGroup();
+
+ /**
+ * Returns the value of the '<em><b>Allocatable</b></em>' reference list.
+ * The list contents are of type {@link rba.core.AbstractAllocatable}.
+ * It is bidirectional and its opposite is '{@link rba.core.AbstractAllocatable#getContents <em>Contents</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Allocatable</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Allocatable</em>' reference list.
+ * @see rba.core.RBACorePackage#getAbstractContent_Allocatable()
+ * @see rba.core.AbstractAllocatable#getContents
+ * @model opposite="contents"
+ * @generated
+ */
+ EList<AbstractAllocatable> getAllocatable();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation" ordered="false"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='java.util.Set&lt;Allocatable&gt; allocatables = new java.util.LinkedHashSet&lt;Allocatable&gt;();\r\ngetAllocatable().forEach(allocatable -&gt; allocatables.addAll(allocatable.collectLeafAllocatable()));\r\ngetContentGroup().forEach(contentSet -&gt; allocatables.addAll(contentSet.getAllocatableList()));\r\nreturn new org.eclipse.emf.common.util.BasicEList&lt;Allocatable&gt;(allocatables);'"
+ * @generated
+ */
+ EList<Allocatable> getAllocatableList();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model ordered="false"
+ * @generated
+ */
+ EList<Content> collectLeafContents();
+
+} // AbstractContent
diff --git a/rba.model.core/src/rba/core/AbstractProperty.java b/rba.model.core/src/rba/core/AbstractProperty.java
new file mode 100644
index 0000000..c63282a
--- /dev/null
+++ b/rba.model.core/src/rba/core/AbstractProperty.java
@@ -0,0 +1,65 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.AbstractProperty#getOwner <em>Owner</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getAbstractProperty()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractProperty extends RuleObject {
+ /**
+ * Returns the value of the '<em><b>Owner</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link rba.core.Scene#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Owner</em>' container reference.
+ * @see #setOwner(Scene)
+ * @see rba.core.RBACorePackage#getAbstractProperty_Owner()
+ * @see rba.core.Scene#getProperties
+ * @model opposite="properties" transient="false"
+ * @generated
+ */
+ Scene getOwner();
+
+ /**
+ * Sets the value of the '{@link rba.core.AbstractProperty#getOwner <em>Owner</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Owner</em>' container reference.
+ * @see #getOwner()
+ * @generated
+ */
+ void setOwner(Scene value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.PROPERTY;'"
+ * @generated
+ */
+ ExpressionType getExpressionType();
+
+} // AbstractProperty
diff --git a/rba.model.core/src/rba/core/AbstractScene.java b/rba.model.core/src/rba/core/AbstractScene.java
new file mode 100644
index 0000000..cb8b898
--- /dev/null
+++ b/rba.model.core/src/rba/core/AbstractScene.java
@@ -0,0 +1,20 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Scene</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getAbstractScene()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractScene extends RuleObject {
+} // AbstractScene
diff --git a/rba.model.core/src/rba/core/ActionOperator.java b/rba.model.core/src/rba/core/ActionOperator.java
new file mode 100644
index 0000000..471ed78
--- /dev/null
+++ b/rba.model.core/src/rba/core/ActionOperator.java
@@ -0,0 +1,21 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Action Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getActionOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ActionOperator extends Operator {
+
+} // ActionOperator
diff --git a/rba.model.core/src/rba/core/ActiveContents.java b/rba.model.core/src/rba/core/ActiveContents.java
new file mode 100644
index 0000000..ca532fc
--- /dev/null
+++ b/rba.model.core/src/rba/core/ActiveContents.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Active Contents</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getActiveContents()
+ * @model
+ * @generated
+ */
+public interface ActiveContents extends AllocatableOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".activeContents()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='EList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nif (!expressions.isEmpty() &amp;&amp; expressions.get(0) != null) {\r\n rba.core.Expression first = expressions.get(0);\r\n if (first.getType() == ExpressionType.AREA) {\r\n return ExpressionType.SET_OF_CONTENT;\r\n } else if (first.getType() == ExpressionType.ZONE) {\r\n return ExpressionType.SET_OF_SOUND;\r\n }\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // ActiveContents
diff --git a/rba.model.core/src/rba/core/ActiveState.java b/rba.model.core/src/rba/core/ActiveState.java
new file mode 100644
index 0000000..1b81d93
--- /dev/null
+++ b/rba.model.core/src/rba/core/ActiveState.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Active State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getActiveState()
+ * @model
+ * @generated
+ */
+public interface ActiveState extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".activeState()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.CONTENT_STATE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // ActiveState
diff --git a/rba.model.core/src/rba/core/Allocatable.java b/rba.model.core/src/rba/core/Allocatable.java
new file mode 100644
index 0000000..a7b585b
--- /dev/null
+++ b/rba.model.core/src/rba/core/Allocatable.java
@@ -0,0 +1,91 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocatable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Allocatable#getArbitrationPolicy <em>Arbitration Policy</em>}</li>
+ * <li>{@link rba.core.Allocatable#getVisibility <em>Visibility</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getAllocatable()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Allocatable extends AbstractAllocatable {
+ /**
+ * Returns the value of the '<em><b>Arbitration Policy</b></em>' attribute.
+ * The literals are from the enumeration {@link rba.core.ArbitrationPolicy}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Arbitration Policy</em>' attribute.
+ * @see rba.core.ArbitrationPolicy
+ * @see #setArbitrationPolicy(ArbitrationPolicy)
+ * @see rba.core.RBACorePackage#getAllocatable_ArbitrationPolicy()
+ * @model
+ * @generated
+ */
+ ArbitrationPolicy getArbitrationPolicy();
+
+ /**
+ * Sets the value of the '{@link rba.core.Allocatable#getArbitrationPolicy <em>Arbitration Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Arbitration Policy</em>' attribute.
+ * @see rba.core.ArbitrationPolicy
+ * @see #getArbitrationPolicy()
+ * @generated
+ */
+ void setArbitrationPolicy(ArbitrationPolicy value);
+
+ /**
+ * Returns the value of the '<em><b>Visibility</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Visibility</em>' containment reference.
+ * @see #setVisibility(Expression)
+ * @see rba.core.RBACorePackage#getAllocatable_Visibility()
+ * @model containment="true"
+ * @generated
+ */
+ Expression getVisibility();
+
+ /**
+ * Sets the value of the '{@link rba.core.Allocatable#getVisibility <em>Visibility</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Visibility</em>' containment reference.
+ * @see #getVisibility()
+ * @generated
+ */
+ void setVisibility(Expression value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model ordered="false"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='java.util.Set&lt;Allocatable&gt; allocatables = new java.util.HashSet&lt;Allocatable&gt;();\r\nallocatables.add(this);\r\nreturn new org.eclipse.emf.common.util.BasicEList&lt;Allocatable&gt;(allocatables);'"
+ * @generated
+ */
+ EList<Allocatable> collectLeafAllocatable();
+
+} // Allocatable
diff --git a/rba.model.core/src/rba/core/AllocatableOperator.java b/rba.model.core/src/rba/core/AllocatableOperator.java
new file mode 100644
index 0000000..7a23076
--- /dev/null
+++ b/rba.model.core/src/rba/core/AllocatableOperator.java
@@ -0,0 +1,29 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocatable Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getAllocatableOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AllocatableOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // AllocatableOperator
diff --git a/rba.model.core/src/rba/core/AllocatableSet.java b/rba.model.core/src/rba/core/AllocatableSet.java
new file mode 100644
index 0000000..2ccd65f
--- /dev/null
+++ b/rba.model.core/src/rba/core/AllocatableSet.java
@@ -0,0 +1,54 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocatable Set</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.AllocatableSet#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getAllocatableSet()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AllocatableSet extends AbstractAllocatable {
+ /**
+ * Returns the value of the '<em><b>Target</b></em>' reference list.
+ * The list contents are of type {@link rba.core.AbstractAllocatable}.
+ * It is bidirectional and its opposite is '{@link rba.core.AbstractAllocatable#getAllocatableGroup <em>Allocatable Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Target</em>' reference list.
+ * @see rba.core.RBACorePackage#getAllocatableSet_Target()
+ * @see rba.core.AbstractAllocatable#getAllocatableGroup
+ * @model opposite="allocatableGroup"
+ * @generated
+ */
+ EList<AbstractAllocatable> getTarget();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model ordered="false"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='java.util.Set&lt;Allocatable&gt; allocatables = new java.util.LinkedHashSet&lt;Allocatable&gt;();\r\ngetTarget().forEach(allocatable -&gt; allocatables.addAll(allocatable.collectLeafAllocatable()));\r\nreturn new org.eclipse.emf.common.util.BasicEList&lt;Allocatable&gt;(allocatables);'"
+ * @generated
+ */
+ EList<Allocatable> collectLeafAllocatable();
+
+} // AllocatableSet
diff --git a/rba.model.core/src/rba/core/AllocatedContent.java b/rba.model.core/src/rba/core/AllocatedContent.java
new file mode 100644
index 0000000..6ed1413
--- /dev/null
+++ b/rba.model.core/src/rba/core/AllocatedContent.java
@@ -0,0 +1,41 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocated Content</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getAllocatedContent()
+ * @model
+ * @generated
+ */
+public interface AllocatedContent extends AllocatableOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".allocatedContent()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='EList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nif (!expressions.isEmpty() &amp;&amp; expressions.get(0) != null) {\r\n rba.core.Expression first = expressions.get(0);\r\n if ((first.getType() == ExpressionType.AREA) || (first.getType() == ExpressionType.SET_OF_AREA)) {\r\n return ExpressionType.CONTENT;\r\n } else if ((first.getType() == ExpressionType.ZONE) || (first.getType() == ExpressionType.SET_OF_ZONE)) {\r\n return ExpressionType.SOUND;\r\n }\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // AllocatedContent
diff --git a/rba.model.core/src/rba/core/AndOperator.java b/rba.model.core/src/rba/core/AndOperator.java
new file mode 100644
index 0000000..26d4eb3
--- /dev/null
+++ b/rba.model.core/src/rba/core/AndOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>And Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getAndOperator()
+ * @model
+ * @generated
+ */
+public interface AndOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"AND\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // AndOperator
diff --git a/rba.model.core/src/rba/core/ArbitrationPolicy.java b/rba.model.core/src/rba/core/ArbitrationPolicy.java
new file mode 100644
index 0000000..1add594
--- /dev/null
+++ b/rba.model.core/src/rba/core/ArbitrationPolicy.java
@@ -0,0 +1,292 @@
+/**
+ */
+package rba.core;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Arbitration Policy</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see rba.core.RBACorePackage#getArbitrationPolicy()
+ * @model
+ * @generated
+ */
+public enum ArbitrationPolicy implements Enumerator {
+ /**
+ * The '<em><b>DEFAULT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #DEFAULT_VALUE
+ * @generated
+ * @ordered
+ */
+ DEFAULT(0, "DEFAULT", "DEFAULT"),
+
+ /**
+ * The '<em><b>FIRST COME FIRST</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #FIRST_COME_FIRST_VALUE
+ * @generated
+ * @ordered
+ */
+ FIRST_COME_FIRST(4, "FIRST_COME_FIRST", "FIRST_COME_FIRST"),
+
+ /**
+ * The '<em><b>LAST COME FIRST</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #LAST_COME_FIRST_VALUE
+ * @generated
+ * @ordered
+ */
+ LAST_COME_FIRST(1, "LAST_COME_FIRST", "LAST_COME_FIRST"),
+
+ /**
+ * The '<em><b>PRIORITY FIRST COME FIRST</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #PRIORITY_FIRST_COME_FIRST_VALUE
+ * @generated
+ * @ordered
+ */
+ PRIORITY_FIRST_COME_FIRST(5, "PRIORITY_FIRST_COME_FIRST", "PRIORITY_FIRST_COME_FIRST"),
+
+ /**
+ * The '<em><b>PRIORITY LAST COME FIRST</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #PRIORITY_LAST_COME_FIRST_VALUE
+ * @generated
+ * @ordered
+ */
+ PRIORITY_LAST_COME_FIRST(6, "PRIORITY_LAST_COME_FIRST", "PRIORITY_LAST_COME_FIRST");
+
+ /**
+ * The '<em><b>DEFAULT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #DEFAULT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int DEFAULT_VALUE = 0;
+
+ /**
+ * The '<em><b>FIRST COME FIRST</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #FIRST_COME_FIRST
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int FIRST_COME_FIRST_VALUE = 4;
+
+ /**
+ * The '<em><b>LAST COME FIRST</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #LAST_COME_FIRST
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int LAST_COME_FIRST_VALUE = 1;
+
+ /**
+ * The '<em><b>PRIORITY FIRST COME FIRST</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #PRIORITY_FIRST_COME_FIRST
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int PRIORITY_FIRST_COME_FIRST_VALUE = 5;
+
+ /**
+ * The '<em><b>PRIORITY LAST COME FIRST</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #PRIORITY_LAST_COME_FIRST
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int PRIORITY_LAST_COME_FIRST_VALUE = 6;
+
+ /**
+ * An array of all the '<em><b>Arbitration Policy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final ArbitrationPolicy[] VALUES_ARRAY = new ArbitrationPolicy[] { DEFAULT, FIRST_COME_FIRST,
+ LAST_COME_FIRST, PRIORITY_FIRST_COME_FIRST, PRIORITY_LAST_COME_FIRST, };
+
+ /**
+ * A public read-only list of all the '<em><b>Arbitration Policy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<ArbitrationPolicy> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Arbitration Policy</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param literal the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static ArbitrationPolicy get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ArbitrationPolicy result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Arbitration Policy</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static ArbitrationPolicy getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ArbitrationPolicy result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Arbitration Policy</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static ArbitrationPolicy get(int value) {
+ switch (value) {
+ case DEFAULT_VALUE:
+ return DEFAULT;
+ case FIRST_COME_FIRST_VALUE:
+ return FIRST_COME_FIRST;
+ case LAST_COME_FIRST_VALUE:
+ return LAST_COME_FIRST;
+ case PRIORITY_FIRST_COME_FIRST_VALUE:
+ return PRIORITY_FIRST_COME_FIRST;
+ case PRIORITY_LAST_COME_FIRST_VALUE:
+ return PRIORITY_LAST_COME_FIRST;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private ArbitrationPolicy(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //ArbitrationPolicy
diff --git a/rba.model.core/src/rba/core/ArbitrationPolicyExpression.java b/rba.model.core/src/rba/core/ArbitrationPolicyExpression.java
new file mode 100644
index 0000000..db3405b
--- /dev/null
+++ b/rba.model.core/src/rba/core/ArbitrationPolicyExpression.java
@@ -0,0 +1,80 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Arbitration Policy Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.ArbitrationPolicyExpression#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getArbitrationPolicyExpression()
+ * @model
+ * @generated
+ */
+public interface ArbitrationPolicyExpression extends EnumExpression {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * The literals are from the enumeration {@link rba.core.ArbitrationPolicy}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see rba.core.ArbitrationPolicy
+ * @see #setValue(ArbitrationPolicy)
+ * @see rba.core.RBACorePackage#getArbitrationPolicyExpression_Value()
+ * @model required="true"
+ * @generated
+ */
+ ArbitrationPolicy getValue();
+
+ /**
+ * Sets the value of the '{@link rba.core.ArbitrationPolicyExpression#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see rba.core.ArbitrationPolicy
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(ArbitrationPolicy value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if(value instanceof ArbitrationPolicy) {\r\n return value.getName();\r\n} else {\r\n return \"[Invalid_Expression]\";\r\n}'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return value;'"
+ * @generated
+ */
+ Enumerator getExpressionValue();
+
+} // ArbitrationPolicyExpression
diff --git a/rba.model.core/src/rba/core/ArithmeticOperator.java b/rba.model.core/src/rba/core/ArithmeticOperator.java
new file mode 100644
index 0000000..07fcfd3
--- /dev/null
+++ b/rba.model.core/src/rba/core/ArithmeticOperator.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Arithmetic Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getArithmeticOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ArithmeticOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(\"(\");\r\nfor (int i = 0; i &lt; expressions.size(); i++) {\r\n rba.core.Expression expression = expressions.get(i);\r\n expressionText.append(expression.getExpressionText());\r\n if (i == expressions.size() - 1) {\r\n expressionText.append(\")\");\r\n } else {\r\n expressionText.append(\" \");\r\n expressionText.append(getSymbol());\r\n expressionText.append(\" \");\r\n }\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ArithmeticOperator
diff --git a/rba.model.core/src/rba/core/ComparisonAnd.java b/rba.model.core/src/rba/core/ComparisonAnd.java
new file mode 100644
index 0000000..5719757
--- /dev/null
+++ b/rba.model.core/src/rba/core/ComparisonAnd.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Comparison And</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getComparisonAnd()
+ * @model
+ * @generated
+ */
+public interface ComparisonAnd extends ComparisonOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"and\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(\"(\");\r\nfor (int i = 0; i &lt; expressions.size(); i++) {\r\n rba.core.Expression expression = expressions.get(i);\r\n expressionText.append(expression.getExpressionText());\r\n if (i == expressions.size() - 1) {\r\n expressionText.append(\")\");\r\n } else {\r\n expressionText.append(\" \");\r\n expressionText.append(getSymbol());\r\n expressionText.append(\" \");\r\n }\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ComparisonAnd
diff --git a/rba.model.core/src/rba/core/ComparisonOperator.java b/rba.model.core/src/rba/core/ComparisonOperator.java
new file mode 100644
index 0000000..5c89597
--- /dev/null
+++ b/rba.model.core/src/rba/core/ComparisonOperator.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Comparison Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getComparisonOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ComparisonOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ComparisonOperator
diff --git a/rba.model.core/src/rba/core/ComplexExpression.java b/rba.model.core/src/rba/core/ComplexExpression.java
new file mode 100644
index 0000000..77478ba
--- /dev/null
+++ b/rba.model.core/src/rba/core/ComplexExpression.java
@@ -0,0 +1,87 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Complex Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.ComplexExpression#getOtherExpression <em>Other Expression</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getComplexExpression()
+ * @model
+ * @generated
+ */
+public interface ComplexExpression extends Expression, SugarExpressionBase {
+ /**
+ * Returns the value of the '<em><b>Other Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Other Expression</em>' containment reference.
+ * @see #setOtherExpression(Expression)
+ * @see rba.core.RBACorePackage#getComplexExpression_OtherExpression()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getOtherExpression();
+
+ /**
+ * Sets the value of the '{@link rba.core.ComplexExpression#getOtherExpression <em>Other Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Other Expression</em>' containment reference.
+ * @see #getOtherExpression()
+ * @generated
+ */
+ void setOtherExpression(Expression value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return otherExpression != null ? otherExpression.getExpressionText() : \"[Invalid_Expression]\";'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if (otherExpression != null) {\r\n return otherExpression.getType();\r\n} else {\r\n return ExpressionType.VALUE;\r\n}'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return getUnderlyingType();'"
+ * @generated
+ */
+ ExpressionType getType();
+
+} // ComplexExpression
diff --git a/rba.model.core/src/rba/core/Constraint.java b/rba.model.core/src/rba/core/Constraint.java
new file mode 100644
index 0000000..b58dc40
--- /dev/null
+++ b/rba.model.core/src/rba/core/Constraint.java
@@ -0,0 +1,79 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Constraint#isRuntime <em>Runtime</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getConstraint()
+ * @model
+ * @generated
+ */
+public interface Constraint extends AbstractConstraint {
+ /**
+ * Returns the value of the '<em><b>Runtime</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Runtime</em>' attribute.
+ * @see #isSetRuntime()
+ * @see #unsetRuntime()
+ * @see #setRuntime(boolean)
+ * @see rba.core.RBACorePackage#getConstraint_Runtime()
+ * @model default="true" unsettable="true" required="true"
+ * @generated
+ */
+ boolean isRuntime();
+
+ /**
+ * Sets the value of the '{@link rba.core.Constraint#isRuntime <em>Runtime</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Runtime</em>' attribute.
+ * @see #isSetRuntime()
+ * @see #unsetRuntime()
+ * @see #isRuntime()
+ * @generated
+ */
+ void setRuntime(boolean value);
+
+ /**
+ * Unsets the value of the '{@link rba.core.Constraint#isRuntime <em>Runtime</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetRuntime()
+ * @see #isRuntime()
+ * @see #setRuntime(boolean)
+ * @generated
+ */
+ void unsetRuntime();
+
+ /**
+ * Returns whether the value of the '{@link rba.core.Constraint#isRuntime <em>Runtime</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Runtime</em>' attribute is set.
+ * @see #unsetRuntime()
+ * @see #isRuntime()
+ * @see #setRuntime(boolean)
+ * @generated
+ */
+ boolean isSetRuntime();
+
+} // Constraint
diff --git a/rba.model.core/src/rba/core/Content.java b/rba.model.core/src/rba/core/Content.java
new file mode 100644
index 0000000..e9591cb
--- /dev/null
+++ b/rba.model.core/src/rba/core/Content.java
@@ -0,0 +1,85 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Content#getLoserType <em>Loser Type</em>}</li>
+ * <li>{@link rba.core.Content#getStates <em>States</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getContent()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Content extends AbstractContent {
+ /**
+ * Returns the value of the '<em><b>Loser Type</b></em>' attribute.
+ * The default value is <code>"NEVER_GIVEUP"</code>.
+ * The literals are from the enumeration {@link rba.core.LoserType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Loser Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Loser Type</em>' attribute.
+ * @see rba.core.LoserType
+ * @see #setLoserType(LoserType)
+ * @see rba.core.RBACorePackage#getContent_LoserType()
+ * @model default="NEVER_GIVEUP"
+ * @generated
+ */
+ LoserType getLoserType();
+
+ /**
+ * Sets the value of the '{@link rba.core.Content#getLoserType <em>Loser Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Loser Type</em>' attribute.
+ * @see rba.core.LoserType
+ * @see #getLoserType()
+ * @generated
+ */
+ void setLoserType(LoserType value);
+
+ /**
+ * Returns the value of the '<em><b>States</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.ContentState}.
+ * It is bidirectional and its opposite is '{@link rba.core.ContentState#getOwner <em>Owner</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>States</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getContent_States()
+ * @see rba.core.ContentState#getOwner
+ * @model opposite="owner" containment="true"
+ * @generated
+ */
+ EList<ContentState> getStates();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model ordered="false"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='java.util.Set&lt;Content&gt; contents = new java.util.HashSet&lt;Content&gt;();\r\ncontents.add(this);\r\nreturn new org.eclipse.emf.common.util.BasicEList&lt;Content&gt;(contents);'"
+ * @generated
+ */
+ EList<Content> collectLeafContents();
+
+} // Content
diff --git a/rba.model.core/src/rba/core/ContentOperator.java b/rba.model.core/src/rba/core/ContentOperator.java
new file mode 100644
index 0000000..d731ee6
--- /dev/null
+++ b/rba.model.core/src/rba/core/ContentOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getContentOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ContentOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ContentOperator
diff --git a/rba.model.core/src/rba/core/ContentSet.java b/rba.model.core/src/rba/core/ContentSet.java
new file mode 100644
index 0000000..ed23aa5
--- /dev/null
+++ b/rba.model.core/src/rba/core/ContentSet.java
@@ -0,0 +1,55 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content Set</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.ContentSet#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getContentSet()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ContentSet extends AbstractContent {
+ /**
+ * Returns the value of the '<em><b>Target</b></em>' reference list.
+ * The list contents are of type {@link rba.core.AbstractContent}.
+ * It is bidirectional and its opposite is '{@link rba.core.AbstractContent#getContentGroup <em>Content Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target</em>' reference list.
+ * @see rba.core.RBACorePackage#getContentSet_Target()
+ * @see rba.core.AbstractContent#getContentGroup
+ * @model opposite="contentGroup"
+ * @generated
+ */
+ EList<AbstractContent> getTarget();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model ordered="false"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='java.util.Set&lt;Content&gt; contents = new java.util.LinkedHashSet&lt;Content&gt;();\r\ngetTarget().forEach(content -&gt; contents.addAll(content.collectLeafContents()));\r\nreturn new org.eclipse.emf.common.util.BasicEList&lt;Content&gt;(contents);'"
+ * @generated
+ */
+ EList<Content> collectLeafContents();
+
+} // ContentSet
diff --git a/rba.model.core/src/rba/core/ContentState.java b/rba.model.core/src/rba/core/ContentState.java
new file mode 100644
index 0000000..2cea042
--- /dev/null
+++ b/rba.model.core/src/rba/core/ContentState.java
@@ -0,0 +1,79 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.ContentState#getValue <em>Value</em>}</li>
+ * <li>{@link rba.core.ContentState#getOwner <em>Owner</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getContentState()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ContentState extends RuleObject {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Value</em>' containment reference.
+ * @see #setValue(Expression)
+ * @see rba.core.RBACorePackage#getContentState_Value()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getValue();
+
+ /**
+ * Sets the value of the '{@link rba.core.ContentState#getValue <em>Value</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' containment reference.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Expression value);
+
+ /**
+ * Returns the value of the '<em><b>Owner</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link rba.core.Content#getStates <em>States</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Owner</em>' container reference.
+ * @see #setOwner(Content)
+ * @see rba.core.RBACorePackage#getContentState_Owner()
+ * @see rba.core.Content#getStates
+ * @model opposite="states" transient="false"
+ * @generated
+ */
+ Content getOwner();
+
+ /**
+ * Sets the value of the '{@link rba.core.ContentState#getOwner <em>Owner</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Owner</em>' container reference.
+ * @see #getOwner()
+ * @generated
+ */
+ void setOwner(Content value);
+
+} // ContentState
diff --git a/rba.model.core/src/rba/core/ContentStateOperator.java b/rba.model.core/src/rba/core/ContentStateOperator.java
new file mode 100644
index 0000000..cbc84a5
--- /dev/null
+++ b/rba.model.core/src/rba/core/ContentStateOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content State Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getContentStateOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ContentStateOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ContentStateOperator
diff --git a/rba.model.core/src/rba/core/ContentValue.java b/rba.model.core/src/rba/core/ContentValue.java
new file mode 100644
index 0000000..9faaaa9
--- /dev/null
+++ b/rba.model.core/src/rba/core/ContentValue.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getContentValue()
+ * @model
+ * @generated
+ */
+public interface ContentValue extends AllocatableOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".contentValue()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // ContentValue
diff --git a/rba.model.core/src/rba/core/EnumExpression.java b/rba.model.core/src/rba/core/EnumExpression.java
new file mode 100644
index 0000000..0b5a0c3
--- /dev/null
+++ b/rba.model.core/src/rba/core/EnumExpression.java
@@ -0,0 +1,57 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Enum Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getEnumExpression()
+ * @model abstract="true"
+ * @generated
+ */
+public interface EnumExpression extends Expression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.ENUM;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * @generated
+ */
+ Enumerator getExpressionValue();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return getUnderlyingType();'"
+ * @generated
+ */
+ ExpressionType getType();
+
+} // EnumExpression
diff --git a/rba.model.core/src/rba/core/EqualToOperator.java b/rba.model.core/src/rba/core/EqualToOperator.java
new file mode 100644
index 0000000..1aaf3c8
--- /dev/null
+++ b/rba.model.core/src/rba/core/EqualToOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Equal To Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getEqualToOperator()
+ * @model
+ * @generated
+ */
+public interface EqualToOperator extends ComparisonOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"=\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // EqualToOperator
diff --git a/rba.model.core/src/rba/core/ExistsOperator.java b/rba.model.core/src/rba/core/ExistsOperator.java
new file mode 100644
index 0000000..96bfe21
--- /dev/null
+++ b/rba.model.core/src/rba/core/ExistsOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Exists Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getExistsOperator()
+ * @model
+ * @generated
+ */
+public interface ExistsOperator extends LambdaContext {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nrba.core.LambdaExpression lambda = getLambda();\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\" \");\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" \");\r\nexpressionText.append(lambda != null ? lambda.getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"Exists\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // ExistsOperator
diff --git a/rba.model.core/src/rba/core/Expression.java b/rba.model.core/src/rba/core/Expression.java
new file mode 100644
index 0000000..ab0731f
--- /dev/null
+++ b/rba.model.core/src/rba/core/Expression.java
@@ -0,0 +1,149 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Expression#getType <em>Type</em>}</li>
+ * <li>{@link rba.core.Expression#getExpression <em>Expression</em>}</li>
+ * <li>{@link rba.core.Expression#getLetStatements <em>Let Statements</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getExpression()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Expression extends EObject {
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * The literals are from the enumeration {@link rba.core.ExpressionType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see rba.core.ExpressionType
+ * @see #isSetType()
+ * @see rba.core.RBACorePackage#getExpression_Type()
+ * @model unsettable="true" changeable="false" volatile="true" derived="true"
+ * @generated
+ */
+ ExpressionType getType();
+
+ /**
+ * Returns whether the value of the '{@link rba.core.Expression#getType <em>Type</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Type</em>' attribute is set.
+ * @see #getType()
+ * @generated
+ */
+ boolean isSetType();
+
+ /**
+ * Returns the value of the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Expression</em>' attribute.
+ * @see #isSetExpression()
+ * @see #unsetExpression()
+ * @see #setExpression(String)
+ * @see rba.core.RBACorePackage#getExpression_Expression()
+ * @model unsettable="true" volatile="true" derived="true"
+ * @generated
+ */
+ String getExpression();
+
+ /**
+ * Sets the value of the '{@link rba.core.Expression#getExpression <em>Expression</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Expression</em>' attribute.
+ * @see #isSetExpression()
+ * @see #unsetExpression()
+ * @see #getExpression()
+ * @generated
+ */
+ void setExpression(String value);
+
+ /**
+ * Unsets the value of the '{@link rba.core.Expression#getExpression <em>Expression</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetExpression()
+ * @see #getExpression()
+ * @see #setExpression(String)
+ * @generated
+ */
+ void unsetExpression();
+
+ /**
+ * Returns whether the value of the '{@link rba.core.Expression#getExpression <em>Expression</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Expression</em>' attribute is set.
+ * @see #unsetExpression()
+ * @see #getExpression()
+ * @see #setExpression(String)
+ * @generated
+ */
+ boolean isSetExpression();
+
+ /**
+ * Returns the value of the '<em><b>Let Statements</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.LetStatement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Let Statements</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Let Statements</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getExpression_LetStatements()
+ * @model containment="true"
+ * @generated
+ */
+ EList<LetStatement> getLetStatements();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ String getExpressionText();
+
+} // Expression
diff --git a/rba.model.core/src/rba/core/ExpressionType.java b/rba.model.core/src/rba/core/ExpressionType.java
new file mode 100644
index 0000000..bfdbf9c
--- /dev/null
+++ b/rba.model.core/src/rba/core/ExpressionType.java
@@ -0,0 +1,595 @@
+/**
+ */
+package rba.core;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Expression Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see rba.core.RBACorePackage#getExpressionType()
+ * @model
+ * @generated
+ */
+public enum ExpressionType implements Enumerator {
+ /**
+ * The '<em><b>VALUE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #VALUE_VALUE
+ * @generated
+ * @ordered
+ */
+ VALUE(0, "VALUE", "VALUE"),
+
+ /**
+ * The '<em><b>BOOLEAN</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #BOOLEAN_VALUE
+ * @generated
+ * @ordered
+ */
+ BOOLEAN(1, "BOOLEAN", "BOOLEAN"),
+
+ /**
+ * The '<em><b>AREA</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #AREA_VALUE
+ * @generated
+ * @ordered
+ */
+ AREA(2, "AREA", "AREA"),
+
+ /**
+ * The '<em><b>CONTENT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #CONTENT_VALUE
+ * @generated
+ * @ordered
+ */
+ CONTENT(3, "CONTENT", "CONTENT"),
+
+ /**
+ * The '<em><b>SET OF AREA</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SET_OF_AREA_VALUE
+ * @generated
+ * @ordered
+ */
+ SET_OF_AREA(4, "SET_OF_AREA", "SET_OF_AREA"),
+
+ /**
+ * The '<em><b>SET OF CONTENT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SET_OF_CONTENT_VALUE
+ * @generated
+ * @ordered
+ */
+ SET_OF_CONTENT(5, "SET_OF_CONTENT", "SET_OF_CONTENT"),
+
+ /**
+ * The '<em><b>LAMBDA</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #LAMBDA_VALUE
+ * @generated
+ * @ordered
+ */
+ LAMBDA(6, "LAMBDA", "LAMBDA"),
+
+ /**
+ * The '<em><b>SCENE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SCENE_VALUE
+ * @generated
+ * @ordered
+ */
+ SCENE(7, "SCENE", "SCENE"),
+
+ /**
+ * The '<em><b>ZONE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #ZONE_VALUE
+ * @generated
+ * @ordered
+ */
+ ZONE(8, "ZONE", "ZONE"),
+
+ /**
+ * The '<em><b>SET OF ZONE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SET_OF_ZONE_VALUE
+ * @generated
+ * @ordered
+ */
+ SET_OF_ZONE(9, "SET_OF_ZONE", "SET_OF_ZONE"),
+
+ /**
+ * The '<em><b>SOUND</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SOUND_VALUE
+ * @generated
+ * @ordered
+ */
+ SOUND(10, "SOUND", "SOUND"),
+
+ /**
+ * The '<em><b>SET OF SOUND</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SET_OF_SOUND_VALUE
+ * @generated
+ * @ordered
+ */
+ SET_OF_SOUND(11, "SET_OF_SOUND", "SET_OF_SOUND"),
+
+ /**
+ * The '<em><b>PROPERTY</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #PROPERTY_VALUE
+ * @generated
+ * @ordered
+ */
+ PROPERTY(14, "PROPERTY", "PROPERTY"),
+
+ /**
+ * The '<em><b>CONTENT STATE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #CONTENT_STATE_VALUE
+ * @generated
+ * @ordered
+ */
+ CONTENT_STATE(17, "CONTENT_STATE", "CONTENT_STATE"),
+
+ /**
+ * The '<em><b>ENUM</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #ENUM_VALUE
+ * @generated
+ * @ordered
+ */
+ ENUM(21, "ENUM", "ENUM"),
+
+ /**
+ * The '<em><b>NULL</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #NULL_VALUE
+ * @generated
+ * @ordered
+ */
+ NULL(23, "NULL", "NULL");
+
+ /**
+ * The '<em><b>VALUE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>VALUE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #VALUE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int VALUE_VALUE = 0;
+
+ /**
+ * The '<em><b>BOOLEAN</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>BOOLEAN</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #BOOLEAN
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int BOOLEAN_VALUE = 1;
+
+ /**
+ * The '<em><b>AREA</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>AREA</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #AREA
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int AREA_VALUE = 2;
+
+ /**
+ * The '<em><b>CONTENT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>CONTENT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #CONTENT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int CONTENT_VALUE = 3;
+
+ /**
+ * The '<em><b>SET OF AREA</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SET OF AREA</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SET_OF_AREA
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SET_OF_AREA_VALUE = 4;
+
+ /**
+ * The '<em><b>SET OF CONTENT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SET OF CONTENT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SET_OF_CONTENT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SET_OF_CONTENT_VALUE = 5;
+
+ /**
+ * The '<em><b>LAMBDA</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>LAMBDA</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #LAMBDA
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int LAMBDA_VALUE = 6;
+
+ /**
+ * The '<em><b>SCENE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SCENE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SCENE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SCENE_VALUE = 7;
+
+ /**
+ * The '<em><b>ZONE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>ZONE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #ZONE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int ZONE_VALUE = 8;
+
+ /**
+ * The '<em><b>SET OF ZONE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SET OF ZONE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SET_OF_ZONE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SET_OF_ZONE_VALUE = 9;
+
+ /**
+ * The '<em><b>SOUND</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SOUND</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SOUND
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SOUND_VALUE = 10;
+
+ /**
+ * The '<em><b>SET OF SOUND</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SET OF SOUND</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SET_OF_SOUND
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SET_OF_SOUND_VALUE = 11;
+
+ /**
+ * The '<em><b>PROPERTY</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>PROPERTY</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #PROPERTY
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int PROPERTY_VALUE = 14;
+
+ /**
+ * The '<em><b>CONTENT STATE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>CONTENT STATE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #CONTENT_STATE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int CONTENT_STATE_VALUE = 17;
+
+ /**
+ * The '<em><b>ENUM</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>ENUM</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #ENUM
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int ENUM_VALUE = 21;
+
+ /**
+ * The '<em><b>NULL</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>NULL</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #NULL
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int NULL_VALUE = 23;
+
+ /**
+ * An array of all the '<em><b>Expression Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final ExpressionType[] VALUES_ARRAY = new ExpressionType[] { VALUE, BOOLEAN, AREA, CONTENT,
+ SET_OF_AREA, SET_OF_CONTENT, LAMBDA, SCENE, ZONE, SET_OF_ZONE, SOUND, SET_OF_SOUND, PROPERTY, CONTENT_STATE,
+ ENUM, NULL, };
+
+ /**
+ * A public read-only list of all the '<em><b>Expression Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<ExpressionType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Expression Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param literal the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static ExpressionType get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ExpressionType result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Expression Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static ExpressionType getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ExpressionType result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Expression Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static ExpressionType get(int value) {
+ switch (value) {
+ case VALUE_VALUE:
+ return VALUE;
+ case BOOLEAN_VALUE:
+ return BOOLEAN;
+ case AREA_VALUE:
+ return AREA;
+ case CONTENT_VALUE:
+ return CONTENT;
+ case SET_OF_AREA_VALUE:
+ return SET_OF_AREA;
+ case SET_OF_CONTENT_VALUE:
+ return SET_OF_CONTENT;
+ case LAMBDA_VALUE:
+ return LAMBDA;
+ case SCENE_VALUE:
+ return SCENE;
+ case ZONE_VALUE:
+ return ZONE;
+ case SET_OF_ZONE_VALUE:
+ return SET_OF_ZONE;
+ case SOUND_VALUE:
+ return SOUND;
+ case SET_OF_SOUND_VALUE:
+ return SET_OF_SOUND;
+ case PROPERTY_VALUE:
+ return PROPERTY;
+ case CONTENT_STATE_VALUE:
+ return CONTENT_STATE;
+ case ENUM_VALUE:
+ return ENUM;
+ case NULL_VALUE:
+ return NULL;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private ExpressionType(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //ExpressionType
diff --git a/rba.model.core/src/rba/core/ForAllOperator.java b/rba.model.core/src/rba/core/ForAllOperator.java
new file mode 100644
index 0000000..e20e74b
--- /dev/null
+++ b/rba.model.core/src/rba/core/ForAllOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>For All Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getForAllOperator()
+ * @model
+ * @generated
+ */
+public interface ForAllOperator extends LambdaContext {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nrba.core.LambdaExpression lambda = getLambda();\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\" \");\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" \");\r\nexpressionText.append(lambda != null ? lambda.getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"For All\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='rba.core.LambdaExpression lambda = getLambda();\r\nif (lambda != null &amp;&amp; lambda.getBodyText() != null) {\r\nreturn lambda.getBodyText().getUnderlyingType();\r\n}\r\nreturn ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // ForAllOperator
diff --git a/rba.model.core/src/rba/core/GetAllocatables.java b/rba.model.core/src/rba/core/GetAllocatables.java
new file mode 100644
index 0000000..d34d7ff
--- /dev/null
+++ b/rba.model.core/src/rba/core/GetAllocatables.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Get Allocatables</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getGetAllocatables()
+ * @model
+ * @generated
+ */
+public interface GetAllocatables extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".allocatables()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='EList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nif (!expressions.isEmpty() &amp;&amp; expressions.get(0) != null) {\r\n rba.core.Expression first = expressions.get(0);\r\n if (first.getType() == ExpressionType.CONTENT) {\r\n return ExpressionType.SET_OF_AREA;\r\n } else if (first.getType() == ExpressionType.SOUND) {\r\n return ExpressionType.SET_OF_ZONE;\r\n }\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // GetAllocatables
diff --git a/rba.model.core/src/rba/core/GetContentsList.java b/rba.model.core/src/rba/core/GetContentsList.java
new file mode 100644
index 0000000..fe51b2c
--- /dev/null
+++ b/rba.model.core/src/rba/core/GetContentsList.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Get Contents List</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getGetContentsList()
+ * @model
+ * @generated
+ */
+public interface GetContentsList extends AllocatableOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".contentsList()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='EList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nif (!expressions.isEmpty() &amp;&amp; expressions.get(0) != null) {\r\n rba.core.Expression first = expressions.get(0);\r\n if (first.getType() == ExpressionType.AREA) {\r\n return ExpressionType.SET_OF_CONTENT;\r\n } else if (first.getType() == ExpressionType.ZONE) {\r\n return ExpressionType.SET_OF_SOUND;\r\n }\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // GetContentsList
diff --git a/rba.model.core/src/rba/core/GetProperty.java b/rba.model.core/src/rba/core/GetProperty.java
new file mode 100644
index 0000000..7ca52d0
--- /dev/null
+++ b/rba.model.core/src/rba/core/GetProperty.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Get Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getGetProperty()
+ * @model
+ * @generated
+ */
+public interface GetProperty extends PropertyOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".get()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // GetProperty
diff --git a/rba.model.core/src/rba/core/GetState.java b/rba.model.core/src/rba/core/GetState.java
new file mode 100644
index 0000000..78899f4
--- /dev/null
+++ b/rba.model.core/src/rba/core/GetState.java
@@ -0,0 +1,34 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Get State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getGetState()
+ * @model
+ * @generated
+ */
+public interface GetState extends EObject {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".state()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // GetState
diff --git a/rba.model.core/src/rba/core/GreaterThanOperator.java b/rba.model.core/src/rba/core/GreaterThanOperator.java
new file mode 100644
index 0000000..eb265f9
--- /dev/null
+++ b/rba.model.core/src/rba/core/GreaterThanOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Greater Than Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getGreaterThanOperator()
+ * @model
+ * @generated
+ */
+public interface GreaterThanOperator extends ComparisonOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&gt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // GreaterThanOperator
diff --git a/rba.model.core/src/rba/core/HasBeenDisplayed.java b/rba.model.core/src/rba/core/HasBeenDisplayed.java
new file mode 100644
index 0000000..8c4f036
--- /dev/null
+++ b/rba.model.core/src/rba/core/HasBeenDisplayed.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Has Been Displayed</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getHasBeenDisplayed()
+ * @model
+ * @generated
+ */
+public interface HasBeenDisplayed extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".hasBeenDisplayed()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // HasBeenDisplayed
diff --git a/rba.model.core/src/rba/core/HasComeEarlierThan.java b/rba.model.core/src/rba/core/HasComeEarlierThan.java
new file mode 100644
index 0000000..5a3546d
--- /dev/null
+++ b/rba.model.core/src/rba/core/HasComeEarlierThan.java
@@ -0,0 +1,50 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Has Come Earlier Than</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getHasComeEarlierThan()
+ * @model
+ * @generated
+ */
+public interface HasComeEarlierThan extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".hasComeEarlierThan\"; //$NON-NLS-1$'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // HasComeEarlierThan
diff --git a/rba.model.core/src/rba/core/HasComeLaterThan.java b/rba.model.core/src/rba/core/HasComeLaterThan.java
new file mode 100644
index 0000000..4f5c19a
--- /dev/null
+++ b/rba.model.core/src/rba/core/HasComeLaterThan.java
@@ -0,0 +1,50 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Has Come Later Than</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getHasComeLaterThan()
+ * @model
+ * @generated
+ */
+public interface HasComeLaterThan extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".hasComeLaterThan\"; //$NON-NLS-1$'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // HasComeLaterThan
diff --git a/rba.model.core/src/rba/core/IfActionOperator.java b/rba.model.core/src/rba/core/IfActionOperator.java
new file mode 100644
index 0000000..346fd65
--- /dev/null
+++ b/rba.model.core/src/rba/core/IfActionOperator.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>If Action Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIfActionOperator()
+ * @model
+ * @generated
+ */
+public interface IfActionOperator extends ActionOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"=&gt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(\"(\");\r\nfor (int i = 0; i &lt; expressions.size(); i++) {\r\n rba.core.Expression expression = expressions.get(i);\r\n expressionText.append(expression.getExpressionText());\r\n if (i == expressions.size() - 1) {\r\n expressionText.append(\")\");\r\n } else {\r\n expressionText.append(\" \");\r\n expressionText.append(getSymbol());\r\n expressionText.append(\" \");\r\n }\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // IfActionOperator
diff --git a/rba.model.core/src/rba/core/IfStatement.java b/rba.model.core/src/rba/core/IfStatement.java
new file mode 100644
index 0000000..932f1e3
--- /dev/null
+++ b/rba.model.core/src/rba/core/IfStatement.java
@@ -0,0 +1,127 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>If Statement</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.IfStatement#getCondition <em>Condition</em>}</li>
+ * <li>{@link rba.core.IfStatement#getThenExpression <em>Then Expression</em>}</li>
+ * <li>{@link rba.core.IfStatement#getElseExpression <em>Else Expression</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getIfStatement()
+ * @model
+ * @generated
+ */
+public interface IfStatement extends Expression {
+ /**
+ * Returns the value of the '<em><b>Condition</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Condition</em>' containment reference.
+ * @see #setCondition(Expression)
+ * @see rba.core.RBACorePackage#getIfStatement_Condition()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getCondition();
+
+ /**
+ * Sets the value of the '{@link rba.core.IfStatement#getCondition <em>Condition</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Condition</em>' containment reference.
+ * @see #getCondition()
+ * @generated
+ */
+ void setCondition(Expression value);
+
+ /**
+ * Returns the value of the '<em><b>Then Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Then Expression</em>' containment reference.
+ * @see #setThenExpression(Expression)
+ * @see rba.core.RBACorePackage#getIfStatement_ThenExpression()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getThenExpression();
+
+ /**
+ * Sets the value of the '{@link rba.core.IfStatement#getThenExpression <em>Then Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Then Expression</em>' containment reference.
+ * @see #getThenExpression()
+ * @generated
+ */
+ void setThenExpression(Expression value);
+
+ /**
+ * Returns the value of the '<em><b>Else Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Else Expression</em>' containment reference.
+ * @see #setElseExpression(Expression)
+ * @see rba.core.RBACorePackage#getIfStatement_ElseExpression()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getElseExpression();
+
+ /**
+ * Sets the value of the '{@link rba.core.IfStatement#getElseExpression <em>Else Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Else Expression</em>' containment reference.
+ * @see #getElseExpression()
+ * @generated
+ */
+ void setElseExpression(Expression value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if (thenExpression != null) {\r\n return thenExpression.getUnderlyingType();\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nexpressionText.append(\"IF(\");\r\nexpressionText.append(condition != null ? condition.getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\") THEN \");\r\nexpressionText.append(thenExpression != null ? thenExpression.getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" ELSE \");\r\nexpressionText.append(elseExpression != null ? elseExpression.getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // IfStatement
diff --git a/rba.model.core/src/rba/core/ImpliesOperator.java b/rba.model.core/src/rba/core/ImpliesOperator.java
new file mode 100644
index 0000000..2fba720
--- /dev/null
+++ b/rba.model.core/src/rba/core/ImpliesOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Implies Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getImpliesOperator()
+ * @model
+ * @generated
+ */
+public interface ImpliesOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"-&gt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // ImpliesOperator
diff --git a/rba.model.core/src/rba/core/IntegerProperty.java b/rba.model.core/src/rba/core/IntegerProperty.java
new file mode 100644
index 0000000..b809411
--- /dev/null
+++ b/rba.model.core/src/rba/core/IntegerProperty.java
@@ -0,0 +1,52 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Integer Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.IntegerProperty#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getIntegerProperty()
+ * @model
+ * @generated
+ */
+public interface IntegerProperty extends AbstractProperty {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' containment reference.
+ * @see #setValue(Expression)
+ * @see rba.core.RBACorePackage#getIntegerProperty_Value()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getValue();
+
+ /**
+ * Sets the value of the '{@link rba.core.IntegerProperty#getValue <em>Value</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' containment reference.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Expression value);
+
+} // IntegerProperty
diff --git a/rba.model.core/src/rba/core/IntegerValue.java b/rba.model.core/src/rba/core/IntegerValue.java
new file mode 100644
index 0000000..c68e264
--- /dev/null
+++ b/rba.model.core/src/rba/core/IntegerValue.java
@@ -0,0 +1,75 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Integer Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.IntegerValue#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getIntegerValue()
+ * @model
+ * @generated
+ */
+public interface IntegerValue extends ValueExpression {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(int)
+ * @see rba.core.RBACorePackage#getIntegerValue_Value()
+ * @model required="true"
+ * @generated
+ */
+ int getValue();
+
+ /**
+ * Sets the value of the '{@link rba.core.IntegerValue#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(int value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return String.valueOf(value);'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return value;'"
+ * @generated
+ */
+ int getExpressionValue();
+
+} // IntegerValue
diff --git a/rba.model.core/src/rba/core/IsActive.java b/rba.model.core/src/rba/core/IsActive.java
new file mode 100644
index 0000000..ae804cf
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsActive.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Active</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsActive()
+ * @model
+ * @generated
+ */
+public interface IsActive extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isActive()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // IsActive
diff --git a/rba.model.core/src/rba/core/IsAllocatedTo.java b/rba.model.core/src/rba/core/IsAllocatedTo.java
new file mode 100644
index 0000000..85f5bbc
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsAllocatedTo.java
@@ -0,0 +1,43 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Allocated To</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsAllocatedTo()
+ * @model
+ * @generated
+ */
+public interface IsAllocatedTo extends ContentOperator, SugarExpressionBase {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isAllocatedTo\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder expressionText = new StringBuilder();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // IsAllocatedTo
diff --git a/rba.model.core/src/rba/core/IsCanceled.java b/rba.model.core/src/rba/core/IsCanceled.java
new file mode 100644
index 0000000..e0cf680
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsCanceled.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Canceled</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsCanceled()
+ * @model
+ * @generated
+ */
+public interface IsCanceled extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isCanceled()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // IsCanceled
diff --git a/rba.model.core/src/rba/core/IsChanged.java b/rba.model.core/src/rba/core/IsChanged.java
new file mode 100644
index 0000000..36082cf
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsChanged.java
@@ -0,0 +1,34 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Changed</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsChanged()
+ * @model
+ * @generated
+ */
+public interface IsChanged extends AllocatableOperator, SugarExpressionBase {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isChanged()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // IsChanged
diff --git a/rba.model.core/src/rba/core/IsDisappeared.java b/rba.model.core/src/rba/core/IsDisappeared.java
new file mode 100644
index 0000000..0088c17
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsDisappeared.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Disappeared</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsDisappeared()
+ * @model
+ * @generated
+ */
+public interface IsDisappeared extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isDisappeared()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // IsDisappeared
diff --git a/rba.model.core/src/rba/core/IsEqualToOperator.java b/rba.model.core/src/rba/core/IsEqualToOperator.java
new file mode 100644
index 0000000..8806351
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsEqualToOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Equal To Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsEqualToOperator()
+ * @model
+ * @generated
+ */
+public interface IsEqualToOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"=\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // IsEqualToOperator
diff --git a/rba.model.core/src/rba/core/IsGreaterThanEqualOperator.java b/rba.model.core/src/rba/core/IsGreaterThanEqualOperator.java
new file mode 100644
index 0000000..674d364
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsGreaterThanEqualOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Greater Than Equal Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsGreaterThanEqualOperator()
+ * @model
+ * @generated
+ */
+public interface IsGreaterThanEqualOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&gt;=\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // IsGreaterThanEqualOperator
diff --git a/rba.model.core/src/rba/core/IsGreaterThanOperator.java b/rba.model.core/src/rba/core/IsGreaterThanOperator.java
new file mode 100644
index 0000000..c391e9c
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsGreaterThanOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Greater Than Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsGreaterThanOperator()
+ * @model
+ * @generated
+ */
+public interface IsGreaterThanOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&gt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // IsGreaterThanOperator
diff --git a/rba.model.core/src/rba/core/IsLowerThanEqualOperator.java b/rba.model.core/src/rba/core/IsLowerThanEqualOperator.java
new file mode 100644
index 0000000..ab27d20
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsLowerThanEqualOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Lower Than Equal Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsLowerThanEqualOperator()
+ * @model
+ * @generated
+ */
+public interface IsLowerThanEqualOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&lt;=\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // IsLowerThanEqualOperator
diff --git a/rba.model.core/src/rba/core/IsLowerThanOperator.java b/rba.model.core/src/rba/core/IsLowerThanOperator.java
new file mode 100644
index 0000000..587aeb9
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsLowerThanOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Lower Than Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsLowerThanOperator()
+ * @model
+ * @generated
+ */
+public interface IsLowerThanOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&lt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // IsLowerThanOperator
diff --git a/rba.model.core/src/rba/core/IsOn.java b/rba.model.core/src/rba/core/IsOn.java
new file mode 100644
index 0000000..5f80a92
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsOn.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is On</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsOn()
+ * @model
+ * @generated
+ */
+public interface IsOn extends SceneOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isOn()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // IsOn
diff --git a/rba.model.core/src/rba/core/IsTranslatedTo.java b/rba.model.core/src/rba/core/IsTranslatedTo.java
new file mode 100644
index 0000000..401a0f8
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsTranslatedTo.java
@@ -0,0 +1,43 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Translated To</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getIsTranslatedTo()
+ * @model
+ * @generated
+ */
+public interface IsTranslatedTo extends AllocatableOperator, SugarExpressionBase {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isTranslatedTo\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder expressionText = new StringBuilder();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // IsTranslatedTo
diff --git a/rba.model.core/src/rba/core/IsTypeOf.java b/rba.model.core/src/rba/core/IsTypeOf.java
new file mode 100644
index 0000000..4435f6f
--- /dev/null
+++ b/rba.model.core/src/rba/core/IsTypeOf.java
@@ -0,0 +1,88 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is Type Of</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.IsTypeOf#getTagName <em>Tag Name</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getIsTypeOf()
+ * @model
+ * @generated
+ */
+public interface IsTypeOf extends Operator {
+ /**
+ * Returns the value of the '<em><b>Tag Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Tag Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Tag Name</em>' attribute.
+ * @see #setTagName(String)
+ * @see rba.core.RBACorePackage#getIsTypeOf_TagName()
+ * @model required="true"
+ * @generated
+ */
+ String getTagName();
+
+ /**
+ * Sets the value of the '{@link rba.core.IsTypeOf#getTagName <em>Tag Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Tag Name</em>' attribute.
+ * @see #getTagName()
+ * @generated
+ */
+ void setTagName(String value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(tagName != null ? tagName : \"\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".isTypeOf\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // IsTypeOf
diff --git a/rba.model.core/src/rba/core/LambdaContext.java b/rba.model.core/src/rba/core/LambdaContext.java
new file mode 100644
index 0000000..ccfe6ad
--- /dev/null
+++ b/rba.model.core/src/rba/core/LambdaContext.java
@@ -0,0 +1,65 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lambda Context</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.LambdaContext#getLambda <em>Lambda</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getLambdaContext()
+ * @model abstract="true"
+ * @generated
+ */
+public interface LambdaContext extends SetOperator {
+ /**
+ * Returns the value of the '<em><b>Lambda</b></em>' containment reference.
+ * It is bidirectional and its opposite is '{@link rba.core.LambdaExpression#getContext <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Lambda</em>' containment reference.
+ * @see #setLambda(LambdaExpression)
+ * @see rba.core.RBACorePackage#getLambdaContext_Lambda()
+ * @see rba.core.LambdaExpression#getContext
+ * @model opposite="context" containment="true"
+ * @generated
+ */
+ LambdaExpression getLambda();
+
+ /**
+ * Sets the value of the '{@link rba.core.LambdaContext#getLambda <em>Lambda</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Lambda</em>' containment reference.
+ * @see #getLambda()
+ * @generated
+ */
+ void setLambda(LambdaExpression value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if (!getOperand().isEmpty()) {\r\n rba.core.Expression first = getOperand().get(0);\r\n if (first.getType() == ExpressionType.SET_OF_CONTENT) {\r\n return ExpressionType.CONTENT;\r\n } else if (first.getType() == ExpressionType.SET_OF_AREA) {\r\n return ExpressionType.AREA;\r\n } else if (first.getType() == ExpressionType.SET_OF_ZONE) {\r\n return ExpressionType.ZONE;\r\n } else if (first.getType() == ExpressionType.SET_OF_SOUND) {\r\n return ExpressionType.SOUND;\r\n } else {\r\n return first.getType();\r\n }\r\n}\r\n\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getContextType();
+
+} // LambdaContext
diff --git a/rba.model.core/src/rba/core/LambdaExpression.java b/rba.model.core/src/rba/core/LambdaExpression.java
new file mode 100644
index 0000000..f8c3df3
--- /dev/null
+++ b/rba.model.core/src/rba/core/LambdaExpression.java
@@ -0,0 +1,129 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lambda Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.LambdaExpression#getContext <em>Context</em>}</li>
+ * <li>{@link rba.core.LambdaExpression#getX <em>X</em>}</li>
+ * <li>{@link rba.core.LambdaExpression#getBodyText <em>Body Text</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getLambdaExpression()
+ * @model
+ * @generated
+ */
+public interface LambdaExpression extends Expression {
+ /**
+ * Returns the value of the '<em><b>Context</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link rba.core.LambdaContext#getLambda <em>Lambda</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Context</em>' container reference.
+ * @see #setContext(LambdaContext)
+ * @see rba.core.RBACorePackage#getLambdaExpression_Context()
+ * @see rba.core.LambdaContext#getLambda
+ * @model opposite="lambda" transient="false"
+ * @generated
+ */
+ LambdaContext getContext();
+
+ /**
+ * Sets the value of the '{@link rba.core.LambdaExpression#getContext <em>Context</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Context</em>' container reference.
+ * @see #getContext()
+ * @generated
+ */
+ void setContext(LambdaContext value);
+
+ /**
+ * Returns the value of the '<em><b>X</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>X</em>' containment reference.
+ * @see #setX(Variable)
+ * @see rba.core.RBACorePackage#getLambdaExpression_X()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Variable getX();
+
+ /**
+ * Sets the value of the '{@link rba.core.LambdaExpression#getX <em>X</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>X</em>' containment reference.
+ * @see #getX()
+ * @generated
+ */
+ void setX(Variable value);
+
+ /**
+ * Returns the value of the '<em><b>Body Text</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Body Text</em>' containment reference.
+ * @see #setBodyText(Expression)
+ * @see rba.core.RBACorePackage#getLambdaExpression_BodyText()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getBodyText();
+
+ /**
+ * Sets the value of the '{@link rba.core.LambdaExpression#getBodyText <em>Body Text</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Body Text</em>' containment reference.
+ * @see #getBodyText()
+ * @generated
+ */
+ void setBodyText(Expression value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder expressionText = new StringBuilder();\r\nexpressionText.append(\"{ \");\r\nexpressionText.append(x != null ? x.getName() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" | \");\r\ngetLetStatements().forEach(let -&gt; expressionText.append(let));\r\nexpressionText.append(bodyText != null ? bodyText.getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" }\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.LAMBDA;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // LambdaExpression
diff --git a/rba.model.core/src/rba/core/LetStatement.java b/rba.model.core/src/rba/core/LetStatement.java
new file mode 100644
index 0000000..56d26ab
--- /dev/null
+++ b/rba.model.core/src/rba/core/LetStatement.java
@@ -0,0 +1,84 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Let Statement</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.LetStatement#getVariable <em>Variable</em>}</li>
+ * <li>{@link rba.core.LetStatement#getBody <em>Body</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getLetStatement()
+ * @model
+ * @generated
+ */
+public interface LetStatement extends ModelElement {
+ /**
+ * Returns the value of the '<em><b>Variable</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Variable</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Variable</em>' containment reference.
+ * @see #setVariable(Variable)
+ * @see rba.core.RBACorePackage#getLetStatement_Variable()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Variable getVariable();
+
+ /**
+ * Sets the value of the '{@link rba.core.LetStatement#getVariable <em>Variable</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Variable</em>' containment reference.
+ * @see #getVariable()
+ * @generated
+ */
+ void setVariable(Variable value);
+
+ /**
+ * Returns the value of the '<em><b>Body</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Body</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Body</em>' containment reference.
+ * @see #setBody(Expression)
+ * @see rba.core.RBACorePackage#getLetStatement_Body()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Expression getBody();
+
+ /**
+ * Sets the value of the '{@link rba.core.LetStatement#getBody <em>Body</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Body</em>' containment reference.
+ * @see #getBody()
+ * @generated
+ */
+ void setBody(Expression value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder ret = new StringBuilder();\r\nret.append(\"let \"); //$NON-NLS-1$\r\nret.append(getVariable().getName());\r\nret.append(\"= \"); //$NON-NLS-1$\r\nret.append(getBody().getExpressionText());\r\nreturn ret.toString();'"
+ * @generated
+ */
+ String toString();
+
+} // LetStatement
diff --git a/rba.model.core/src/rba/core/LogicalOperator.java b/rba.model.core/src/rba/core/LogicalOperator.java
new file mode 100644
index 0000000..de7bd79
--- /dev/null
+++ b/rba.model.core/src/rba/core/LogicalOperator.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Logical Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getLogicalOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface LogicalOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(\"(\");\r\nfor (int i = 0; i &lt; expressions.size(); i++) {\r\n rba.core.Expression expression = expressions.get(i);\r\n expressionText.append(expression.getExpressionText());\r\n if (i == expressions.size() - 1) {\r\n expressionText.append(\")\");\r\n } else {\r\n expressionText.append(\" \");\r\n expressionText.append(getSymbol());\r\n expressionText.append(\" \");\r\n }\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // LogicalOperator
diff --git a/rba.model.core/src/rba/core/LoserType.java b/rba.model.core/src/rba/core/LoserType.java
new file mode 100644
index 0000000..997eea2
--- /dev/null
+++ b/rba.model.core/src/rba/core/LoserType.java
@@ -0,0 +1,236 @@
+/**
+ */
+package rba.core;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Loser Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see rba.core.RBACorePackage#getLoserType()
+ * @model
+ * @generated
+ */
+public enum LoserType implements Enumerator {
+ /**
+ * The '<em><b>NEVER GIVEUP</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #NEVER_GIVEUP_VALUE
+ * @generated
+ * @ordered
+ */
+ NEVER_GIVEUP(0, "NEVER_GIVEUP", "NEVER_GIVEUP"),
+
+ /**
+ * The '<em><b>GOOD LOSER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #GOOD_LOSER_VALUE
+ * @generated
+ * @ordered
+ */
+ GOOD_LOSER(0, "GOOD_LOSER", "GOOD_LOSER"),
+
+ /**
+ * The '<em><b>DO NOT GIVEUP UNTIL WIN</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #DO_NOT_GIVEUP_UNTIL_WIN_VALUE
+ * @generated
+ * @ordered
+ */
+ DO_NOT_GIVEUP_UNTIL_WIN(0, "DO_NOT_GIVEUP_UNTIL_WIN", "DO_NOT_GIVEUP_UNTIL_WIN");
+
+ /**
+ * The '<em><b>NEVER GIVEUP</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #NEVER_GIVEUP
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int NEVER_GIVEUP_VALUE = 0;
+
+ /**
+ * The '<em><b>GOOD LOSER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #GOOD_LOSER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int GOOD_LOSER_VALUE = 0;
+
+ /**
+ * The '<em><b>DO NOT GIVEUP UNTIL WIN</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @see #DO_NOT_GIVEUP_UNTIL_WIN
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int DO_NOT_GIVEUP_UNTIL_WIN_VALUE = 0;
+
+ /**
+ * An array of all the '<em><b>Loser Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final LoserType[] VALUES_ARRAY = new LoserType[] { NEVER_GIVEUP, GOOD_LOSER,
+ DO_NOT_GIVEUP_UNTIL_WIN, };
+
+ /**
+ * A public read-only list of all the '<em><b>Loser Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<LoserType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Loser Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param literal the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static LoserType get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ LoserType result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Loser Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static LoserType getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ LoserType result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Loser Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static LoserType get(int value) {
+ switch (value) {
+ case NEVER_GIVEUP_VALUE:
+ return NEVER_GIVEUP;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private LoserType(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //LoserType
diff --git a/rba.model.core/src/rba/core/LoserTypeExpression.java b/rba.model.core/src/rba/core/LoserTypeExpression.java
new file mode 100644
index 0000000..9ef3350
--- /dev/null
+++ b/rba.model.core/src/rba/core/LoserTypeExpression.java
@@ -0,0 +1,80 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Loser Type Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.LoserTypeExpression#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getLoserTypeExpression()
+ * @model
+ * @generated
+ */
+public interface LoserTypeExpression extends EnumExpression {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * The literals are from the enumeration {@link rba.core.LoserType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see rba.core.LoserType
+ * @see #setValue(LoserType)
+ * @see rba.core.RBACorePackage#getLoserTypeExpression_Value()
+ * @model required="true"
+ * @generated
+ */
+ LoserType getValue();
+
+ /**
+ * Sets the value of the '{@link rba.core.LoserTypeExpression#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see rba.core.LoserType
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(LoserType value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if(value instanceof LoserType) {\r\n return value.getName();\r\n} else {\r\n return \"[Invalid_Expression]\";\r\n}'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return value;'"
+ * @generated
+ */
+ Enumerator getExpressionValue();
+
+} // LoserTypeExpression
diff --git a/rba.model.core/src/rba/core/LowerThanOperator.java b/rba.model.core/src/rba/core/LowerThanOperator.java
new file mode 100644
index 0000000..7423727
--- /dev/null
+++ b/rba.model.core/src/rba/core/LowerThanOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lower Than Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getLowerThanOperator()
+ * @model
+ * @generated
+ */
+public interface LowerThanOperator extends ComparisonOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&lt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // LowerThanOperator
diff --git a/rba.model.core/src/rba/core/MaxOperator.java b/rba.model.core/src/rba/core/MaxOperator.java
new file mode 100644
index 0000000..9cae0c1
--- /dev/null
+++ b/rba.model.core/src/rba/core/MaxOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Max Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getMaxOperator()
+ * @model
+ * @generated
+ */
+public interface MaxOperator extends LambdaContext {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nrba.core.LambdaExpression lambda = getLambda();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"{ \");\r\nexpressionText.append(lambda != null ? lambda.getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" }\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".max\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return getContextType();'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // MaxOperator
diff --git a/rba.model.core/src/rba/core/MaxValue.java b/rba.model.core/src/rba/core/MaxValue.java
new file mode 100644
index 0000000..67244c1
--- /dev/null
+++ b/rba.model.core/src/rba/core/MaxValue.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Max Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getMaxValue()
+ * @model
+ * @generated
+ */
+public interface MaxValue extends ValueExpression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"MAX\";'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return 9999;'"
+ * @generated
+ */
+ int getExpressionValue();
+
+} // MaxValue
diff --git a/rba.model.core/src/rba/core/MinOperator.java b/rba.model.core/src/rba/core/MinOperator.java
new file mode 100644
index 0000000..6c4f7f3
--- /dev/null
+++ b/rba.model.core/src/rba/core/MinOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Min Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getMinOperator()
+ * @model
+ * @generated
+ */
+public interface MinOperator extends LambdaContext {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nrba.core.LambdaExpression lambda = getLambda();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"{ \");\r\nexpressionText.append(lambda != null ? lambda.getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" }\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".min\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return getContextType();'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // MinOperator
diff --git a/rba.model.core/src/rba/core/MinValue.java b/rba.model.core/src/rba/core/MinValue.java
new file mode 100644
index 0000000..75d1974
--- /dev/null
+++ b/rba.model.core/src/rba/core/MinValue.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Min Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getMinValue()
+ * @model
+ * @generated
+ */
+public interface MinValue extends ValueExpression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"MIN\";'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return 0;'"
+ * @generated
+ */
+ int getExpressionValue();
+
+} // MinValue
diff --git a/rba.model.core/src/rba/core/ModelElement.java b/rba.model.core/src/rba/core/ModelElement.java
new file mode 100644
index 0000000..701b749
--- /dev/null
+++ b/rba.model.core/src/rba/core/ModelElement.java
@@ -0,0 +1,53 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Model Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.ModelElement#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getModelElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ModelElement extends EObject {
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see rba.core.RBACorePackage#getModelElement_Description()
+ * @model
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link rba.core.ModelElement#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
+} // ModelElement
diff --git a/rba.model.core/src/rba/core/MuchGreaterThanOperator.java b/rba.model.core/src/rba/core/MuchGreaterThanOperator.java
new file mode 100644
index 0000000..5756f66
--- /dev/null
+++ b/rba.model.core/src/rba/core/MuchGreaterThanOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Much Greater Than Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getMuchGreaterThanOperator()
+ * @model
+ * @generated
+ */
+public interface MuchGreaterThanOperator extends ComparisonOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"&gt;&gt;\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // MuchGreaterThanOperator
diff --git a/rba.model.core/src/rba/core/NamedElement.java b/rba.model.core/src/rba/core/NamedElement.java
new file mode 100644
index 0000000..dadd005
--- /dev/null
+++ b/rba.model.core/src/rba/core/NamedElement.java
@@ -0,0 +1,51 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Named Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.NamedElement#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getNamedElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface NamedElement extends ModelElement {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see rba.core.RBACorePackage#getNamedElement_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link rba.core.NamedElement#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // NamedElement
diff --git a/rba.model.core/src/rba/core/NoneValue.java b/rba.model.core/src/rba/core/NoneValue.java
new file mode 100644
index 0000000..375b468
--- /dev/null
+++ b/rba.model.core/src/rba/core/NoneValue.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>None Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getNoneValue()
+ * @model
+ * @generated
+ */
+public interface NoneValue extends ValueExpression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"NONE\";'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return -1;'"
+ * @generated
+ */
+ int getExpressionValue();
+
+} // NoneValue
diff --git a/rba.model.core/src/rba/core/NotOperator.java b/rba.model.core/src/rba/core/NotOperator.java
new file mode 100644
index 0000000..929a8f1
--- /dev/null
+++ b/rba.model.core/src/rba/core/NotOperator.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Not Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getNotOperator()
+ * @model
+ * @generated
+ */
+public interface NotOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"!\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder expressionText = new StringBuilder();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // NotOperator
diff --git a/rba.model.core/src/rba/core/NullExpression.java b/rba.model.core/src/rba/core/NullExpression.java
new file mode 100644
index 0000000..9fc39e3
--- /dev/null
+++ b/rba.model.core/src/rba/core/NullExpression.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Null Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * NULL keyword
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getNullExpression()
+ * @model
+ * @generated
+ */
+public interface NullExpression extends Expression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.NULL;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"NULL\";'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // NullExpression
diff --git a/rba.model.core/src/rba/core/ObjectCompare.java b/rba.model.core/src/rba/core/ObjectCompare.java
new file mode 100644
index 0000000..7bab6f1
--- /dev/null
+++ b/rba.model.core/src/rba/core/ObjectCompare.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Object Compare</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getObjectCompare()
+ * @model
+ * @generated
+ */
+public interface ObjectCompare extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"==\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder expressionText = new StringBuilder();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" \");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\" \");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ObjectCompare
diff --git a/rba.model.core/src/rba/core/ObjectCompareNot.java b/rba.model.core/src/rba/core/ObjectCompareNot.java
new file mode 100644
index 0000000..85817b6
--- /dev/null
+++ b/rba.model.core/src/rba/core/ObjectCompareNot.java
@@ -0,0 +1,43 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Object Compare Not</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getObjectCompareNot()
+ * @model
+ * @generated
+ */
+public interface ObjectCompareNot extends Operator, SugarExpressionBase {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"!=\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.BOOLEAN;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuilder expressionText = new StringBuilder();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" \");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\" \");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ObjectCompareNot
diff --git a/rba.model.core/src/rba/core/ObjectReference.java b/rba.model.core/src/rba/core/ObjectReference.java
new file mode 100644
index 0000000..d695a5c
--- /dev/null
+++ b/rba.model.core/src/rba/core/ObjectReference.java
@@ -0,0 +1,75 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Object Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.ObjectReference#getRefObject <em>Ref Object</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getObjectReference()
+ * @model
+ * @generated
+ */
+public interface ObjectReference extends Expression {
+ /**
+ * Returns the value of the '<em><b>Ref Object</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Ref Object</em>' reference.
+ * @see #setRefObject(RuleObject)
+ * @see rba.core.RBACorePackage#getObjectReference_RefObject()
+ * @model
+ * @generated
+ */
+ RuleObject getRefObject();
+
+ /**
+ * Sets the value of the '{@link rba.core.ObjectReference#getRefObject <em>Ref Object</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Ref Object</em>' reference.
+ * @see #getRefObject()
+ * @generated
+ */
+ void setRefObject(RuleObject value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='RuleObject obj = getRefObject();\r\nif (obj != null) {\r\n return obj.getExpressionType();\r\n} else {\r\n return ExpressionType.VALUE;\r\n}'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nRuleObject obj = getRefObject();\r\nif (obj instanceof &lt;%rba.core.ContentState%&gt;) {\r\n ContentState state = (ContentState) obj;\r\n expressionText.append(state.getOwner().getName() + \".\" + state.getName());\r\n} else if (obj instanceof &lt;%rba.core.AbstractProperty%&gt;) {\r\n AbstractProperty property = (AbstractProperty) obj;\r\n expressionText.append(property.getOwner().getName() + \".\" + property.getName());\r\n} else {\r\n expressionText.append(obj != null ? obj.getName() : \"[Invalid_Expression]\");\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // ObjectReference
diff --git a/rba.model.core/src/rba/core/OffScene.java b/rba.model.core/src/rba/core/OffScene.java
new file mode 100644
index 0000000..0403471
--- /dev/null
+++ b/rba.model.core/src/rba/core/OffScene.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Off Scene</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getOffScene()
+ * @model
+ * @generated
+ */
+public interface OffScene extends SceneOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".off()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // OffScene
diff --git a/rba.model.core/src/rba/core/OnScene.java b/rba.model.core/src/rba/core/OnScene.java
new file mode 100644
index 0000000..40ad6eb
--- /dev/null
+++ b/rba.model.core/src/rba/core/OnScene.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>On Scene</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getOnScene()
+ * @model
+ * @generated
+ */
+public interface OnScene extends SceneOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".on()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // OnScene
diff --git a/rba.model.core/src/rba/core/Operator.java b/rba.model.core/src/rba/core/Operator.java
new file mode 100644
index 0000000..e57c9fc
--- /dev/null
+++ b/rba.model.core/src/rba/core/Operator.java
@@ -0,0 +1,54 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Operator#getOperand <em>Operand</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Operator extends Expression {
+ /**
+ * Returns the value of the '<em><b>Operand</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.Expression}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Operand</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getOperator_Operand()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ EList<Expression> getOperand();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ String getSymbol();
+
+} // Operator
diff --git a/rba.model.core/src/rba/core/OrOperator.java b/rba.model.core/src/rba/core/OrOperator.java
new file mode 100644
index 0000000..b6586a2
--- /dev/null
+++ b/rba.model.core/src/rba/core/OrOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Or Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getOrOperator()
+ * @model
+ * @generated
+ */
+public interface OrOperator extends LogicalOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"OR\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // OrOperator
diff --git a/rba.model.core/src/rba/core/PackagableElement.java b/rba.model.core/src/rba/core/PackagableElement.java
new file mode 100644
index 0000000..4fdbc97
--- /dev/null
+++ b/rba.model.core/src/rba/core/PackagableElement.java
@@ -0,0 +1,20 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Packagable Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getPackagableElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface PackagableElement extends NamedElement {
+} // PackagableElement
diff --git a/rba.model.core/src/rba/core/Package.java b/rba.model.core/src/rba/core/Package.java
new file mode 100644
index 0000000..2e24b65
--- /dev/null
+++ b/rba.model.core/src/rba/core/Package.java
@@ -0,0 +1,43 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Package</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Package#getPackagableelement <em>Packagableelement</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getPackage()
+ * @model
+ * @generated
+ */
+public interface Package extends PackagableElement {
+ /**
+ * Returns the value of the '<em><b>Packagableelement</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.PackagableElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Packagableelement</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getPackage_Packagableelement()
+ * @model containment="true"
+ * @generated
+ */
+ EList<PackagableElement> getPackagableelement();
+
+} // Package
diff --git a/rba.model.core/src/rba/core/PlusOperator.java b/rba.model.core/src/rba/core/PlusOperator.java
new file mode 100644
index 0000000..fbaed51
--- /dev/null
+++ b/rba.model.core/src/rba/core/PlusOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Plus Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getPlusOperator()
+ * @model
+ * @generated
+ */
+public interface PlusOperator extends ArithmeticOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"+\";'"
+ * @generated
+ */
+ String getSymbol();
+
+} // PlusOperator
diff --git a/rba.model.core/src/rba/core/PreviousModifier.java b/rba.model.core/src/rba/core/PreviousModifier.java
new file mode 100644
index 0000000..d84d2c6
--- /dev/null
+++ b/rba.model.core/src/rba/core/PreviousModifier.java
@@ -0,0 +1,88 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Previous Modifier</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.PreviousModifier#getObjReference <em>Obj Reference</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getPreviousModifier()
+ * @model
+ * @generated
+ */
+public interface PreviousModifier extends Expression {
+ /**
+ * Returns the value of the '<em><b>Obj Reference</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Obj Reference</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Obj Reference</em>' containment reference.
+ * @see #setObjReference(ObjectReference)
+ * @see rba.core.RBACorePackage#getPreviousModifier_ObjReference()
+ * @model containment="true"
+ * @generated
+ */
+ ObjectReference getObjReference();
+
+ /**
+ * Sets the value of the '{@link rba.core.PreviousModifier#getObjReference <em>Obj Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Obj Reference</em>' containment reference.
+ * @see #getObjReference()
+ * @generated
+ */
+ void setObjReference(ObjectReference value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"(pre)\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='ObjectReference objReference = getObjReference();\r\nif (objReference != null) {\r\n return objReference.getUnderlyingType();\r\n} else {\r\n return ExpressionType.VALUE;\r\n}'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nif (getObjReference() != null &amp;&amp; getObjReference().getRefObject() != null) {\r\n ObjectReference reference = getObjReference();\r\n expressionText.append(getSymbol());\r\n expressionText.append(reference.getExpressionText());\r\n} else {\r\n expressionText.append(\"[Invalid_Expression]\");\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // PreviousModifier
diff --git a/rba.model.core/src/rba/core/Project.java b/rba.model.core/src/rba/core/Project.java
new file mode 100644
index 0000000..1ece717
--- /dev/null
+++ b/rba.model.core/src/rba/core/Project.java
@@ -0,0 +1,91 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Project</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Project#getVersion <em>Version</em>}</li>
+ * <li>{@link rba.core.Project#getDummyName <em>Dummy Name</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getProject()
+ * @model
+ * @generated
+ */
+public interface Project extends rba.core.Package {
+ /**
+ * Returns the value of the '<em><b>Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Version</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Version</em>' attribute.
+ * @see #setVersion(String)
+ * @see rba.core.RBACorePackage#getProject_Version()
+ * @model
+ * @generated
+ */
+ String getVersion();
+
+ /**
+ * Sets the value of the '{@link rba.core.Project#getVersion <em>Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Version</em>' attribute.
+ * @see #getVersion()
+ * @generated
+ */
+ void setVersion(String value);
+
+ /**
+ * Returns the value of the '<em><b>Dummy Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dummy Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dummy Name</em>' attribute.
+ * @see #setDummyName(String)
+ * @see rba.core.RBACorePackage#getProject_DummyName()
+ * @model
+ * @generated
+ */
+ String getDummyName();
+
+ /**
+ * Sets the value of the '{@link rba.core.Project#getDummyName <em>Dummy Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Dummy Name</em>' attribute.
+ * @see #getDummyName()
+ * @generated
+ */
+ void setDummyName(String value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if (this.eResource() != null) {\r\n String segments[] = this.eResource().getURI().toString().split(\"/\");\r\n return segments[2];\r\n} else {\r\n return this.name;\r\n} '"
+ * @generated
+ */
+ String getName();
+
+} // Project
diff --git a/rba.model.core/src/rba/core/PropertyOperator.java b/rba.model.core/src/rba/core/PropertyOperator.java
new file mode 100644
index 0000000..adf1521
--- /dev/null
+++ b/rba.model.core/src/rba/core/PropertyOperator.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getPropertyOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface PropertyOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.PROPERTY;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // PropertyOperator
diff --git a/rba.model.core/src/rba/core/RBACoreFactory.java b/rba.model.core/src/rba/core/RBACoreFactory.java
new file mode 100644
index 0000000..112361c
--- /dev/null
+++ b/rba.model.core/src/rba/core/RBACoreFactory.java
@@ -0,0 +1,618 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see rba.core.RBACorePackage
+ * @generated
+ */
+public interface RBACoreFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ RBACoreFactory eINSTANCE = rba.core.impl.RBACoreFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Project</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Project</em>'.
+ * @generated
+ */
+ Project createProject();
+
+ /**
+ * Returns a new object of class '<em>Package</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Package</em>'.
+ * @generated
+ */
+ Package createPackage();
+
+ /**
+ * Returns a new object of class '<em>Stereotype</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stereotype</em>'.
+ * @generated
+ */
+ Stereotype createStereotype();
+
+ /**
+ * Returns a new object of class '<em>Tag</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Tag</em>'.
+ * @generated
+ */
+ Tag createTag();
+
+ /**
+ * Returns a new object of class '<em>Scene</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Scene</em>'.
+ * @generated
+ */
+ Scene createScene();
+
+ /**
+ * Returns a new object of class '<em>Integer Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Integer Property</em>'.
+ * @generated
+ */
+ IntegerProperty createIntegerProperty();
+
+ /**
+ * Returns a new object of class '<em>Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Constraint</em>'.
+ * @generated
+ */
+ Constraint createConstraint();
+
+ /**
+ * Returns a new object of class '<em>Let Statement</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Let Statement</em>'.
+ * @generated
+ */
+ LetStatement createLetStatement();
+
+ /**
+ * Returns a new object of class '<em>Complex Expression</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Complex Expression</em>'.
+ * @generated
+ */
+ ComplexExpression createComplexExpression();
+
+ /**
+ * Returns a new object of class '<em>Is Type Of</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Type Of</em>'.
+ * @generated
+ */
+ IsTypeOf createIsTypeOf();
+
+ /**
+ * Returns a new object of class '<em>Object Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Object Reference</em>'.
+ * @generated
+ */
+ ObjectReference createObjectReference();
+
+ /**
+ * Returns a new object of class '<em>Previous Modifier</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Previous Modifier</em>'.
+ * @generated
+ */
+ PreviousModifier createPreviousModifier();
+
+ /**
+ * Returns a new object of class '<em>Greater Than Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Greater Than Operator</em>'.
+ * @generated
+ */
+ GreaterThanOperator createGreaterThanOperator();
+
+ /**
+ * Returns a new object of class '<em>Much Greater Than Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Much Greater Than Operator</em>'.
+ * @generated
+ */
+ MuchGreaterThanOperator createMuchGreaterThanOperator();
+
+ /**
+ * Returns a new object of class '<em>Lower Than Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Lower Than Operator</em>'.
+ * @generated
+ */
+ LowerThanOperator createLowerThanOperator();
+
+ /**
+ * Returns a new object of class '<em>Equal To Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Equal To Operator</em>'.
+ * @generated
+ */
+ EqualToOperator createEqualToOperator();
+
+ /**
+ * Returns a new object of class '<em>Comparison And</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Comparison And</em>'.
+ * @generated
+ */
+ ComparisonAnd createComparisonAnd();
+
+ /**
+ * Returns a new object of class '<em>And Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>And Operator</em>'.
+ * @generated
+ */
+ AndOperator createAndOperator();
+
+ /**
+ * Returns a new object of class '<em>Or Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Or Operator</em>'.
+ * @generated
+ */
+ OrOperator createOrOperator();
+
+ /**
+ * Returns a new object of class '<em>Not Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Not Operator</em>'.
+ * @generated
+ */
+ NotOperator createNotOperator();
+
+ /**
+ * Returns a new object of class '<em>Is Equal To Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Equal To Operator</em>'.
+ * @generated
+ */
+ IsEqualToOperator createIsEqualToOperator();
+
+ /**
+ * Returns a new object of class '<em>Is Greater Than Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Greater Than Operator</em>'.
+ * @generated
+ */
+ IsGreaterThanOperator createIsGreaterThanOperator();
+
+ /**
+ * Returns a new object of class '<em>Is Lower Than Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Lower Than Operator</em>'.
+ * @generated
+ */
+ IsLowerThanOperator createIsLowerThanOperator();
+
+ /**
+ * Returns a new object of class '<em>Is Greater Than Equal Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Greater Than Equal Operator</em>'.
+ * @generated
+ */
+ IsGreaterThanEqualOperator createIsGreaterThanEqualOperator();
+
+ /**
+ * Returns a new object of class '<em>Is Lower Than Equal Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Lower Than Equal Operator</em>'.
+ * @generated
+ */
+ IsLowerThanEqualOperator createIsLowerThanEqualOperator();
+
+ /**
+ * Returns a new object of class '<em>Plus Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Plus Operator</em>'.
+ * @generated
+ */
+ PlusOperator createPlusOperator();
+
+ /**
+ * Returns a new object of class '<em>Implies Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Implies Operator</em>'.
+ * @generated
+ */
+ ImpliesOperator createImpliesOperator();
+
+ /**
+ * Returns a new object of class '<em>Is Active</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Active</em>'.
+ * @generated
+ */
+ IsActive createIsActive();
+
+ /**
+ * Returns a new object of class '<em>Get Allocatables</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Get Allocatables</em>'.
+ * @generated
+ */
+ GetAllocatables createGetAllocatables();
+
+ /**
+ * Returns a new object of class '<em>Has Been Displayed</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Has Been Displayed</em>'.
+ * @generated
+ */
+ HasBeenDisplayed createHasBeenDisplayed();
+
+ /**
+ * Returns a new object of class '<em>Active State</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Active State</em>'.
+ * @generated
+ */
+ ActiveState createActiveState();
+
+ /**
+ * Returns a new object of class '<em>Object Compare</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Object Compare</em>'.
+ * @generated
+ */
+ ObjectCompare createObjectCompare();
+
+ /**
+ * Returns a new object of class '<em>That Of Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>That Of Operator</em>'.
+ * @generated
+ */
+ ThatOfOperator createThatOfOperator();
+
+ /**
+ * Returns a new object of class '<em>Max Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Max Value</em>'.
+ * @generated
+ */
+ MaxValue createMaxValue();
+
+ /**
+ * Returns a new object of class '<em>Min Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Min Value</em>'.
+ * @generated
+ */
+ MinValue createMinValue();
+
+ /**
+ * Returns a new object of class '<em>None Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>None Value</em>'.
+ * @generated
+ */
+ NoneValue createNoneValue();
+
+ /**
+ * Returns a new object of class '<em>Standard Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Standard Value</em>'.
+ * @generated
+ */
+ StandardValue createStandardValue();
+
+ /**
+ * Returns a new object of class '<em>Integer Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Integer Value</em>'.
+ * @generated
+ */
+ IntegerValue createIntegerValue();
+
+ /**
+ * Returns a new object of class '<em>Loser Type Expression</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Loser Type Expression</em>'.
+ * @generated
+ */
+ LoserTypeExpression createLoserTypeExpression();
+
+ /**
+ * Returns a new object of class '<em>Arbitration Policy Expression</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Arbitration Policy Expression</em>'.
+ * @generated
+ */
+ ArbitrationPolicyExpression createArbitrationPolicyExpression();
+
+ /**
+ * Returns a new object of class '<em>Size Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Size Operator</em>'.
+ * @generated
+ */
+ SizeOperator createSizeOperator();
+
+ /**
+ * Returns a new object of class '<em>Exists Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Exists Operator</em>'.
+ * @generated
+ */
+ ExistsOperator createExistsOperator();
+
+ /**
+ * Returns a new object of class '<em>For All Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>For All Operator</em>'.
+ * @generated
+ */
+ ForAllOperator createForAllOperator();
+
+ /**
+ * Returns a new object of class '<em>Max Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Max Operator</em>'.
+ * @generated
+ */
+ MaxOperator createMaxOperator();
+
+ /**
+ * Returns a new object of class '<em>Min Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Min Operator</em>'.
+ * @generated
+ */
+ MinOperator createMinOperator();
+
+ /**
+ * Returns a new object of class '<em>Select Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Select Operator</em>'.
+ * @generated
+ */
+ SelectOperator createSelectOperator();
+
+ /**
+ * Returns a new object of class '<em>Set Of Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Set Of Operator</em>'.
+ * @generated
+ */
+ SetOfOperator createSetOfOperator();
+
+ /**
+ * Returns a new object of class '<em>Lambda Expression</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Lambda Expression</em>'.
+ * @generated
+ */
+ LambdaExpression createLambdaExpression();
+
+ /**
+ * Returns a new object of class '<em>Variable</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Variable</em>'.
+ * @generated
+ */
+ Variable createVariable();
+
+ /**
+ * Returns a new object of class '<em>If Statement</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>If Statement</em>'.
+ * @generated
+ */
+ IfStatement createIfStatement();
+
+ /**
+ * Returns a new object of class '<em>Is On</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is On</em>'.
+ * @generated
+ */
+ IsOn createIsOn();
+
+ /**
+ * Returns a new object of class '<em>Allocated Content</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Allocated Content</em>'.
+ * @generated
+ */
+ AllocatedContent createAllocatedContent();
+
+ /**
+ * Returns a new object of class '<em>Content Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Content Value</em>'.
+ * @generated
+ */
+ ContentValue createContentValue();
+
+ /**
+ * Returns a new object of class '<em>Get Contents List</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Get Contents List</em>'.
+ * @generated
+ */
+ GetContentsList createGetContentsList();
+
+ /**
+ * Returns a new object of class '<em>Active Contents</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Active Contents</em>'.
+ * @generated
+ */
+ ActiveContents createActiveContents();
+
+ /**
+ * Returns a new object of class '<em>Get Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Get Property</em>'.
+ * @generated
+ */
+ GetProperty createGetProperty();
+
+ /**
+ * Returns a new object of class '<em>State Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>State Value</em>'.
+ * @generated
+ */
+ StateValue createStateValue();
+
+ /**
+ * Returns a new object of class '<em>Has Come Later Than</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Has Come Later Than</em>'.
+ * @generated
+ */
+ HasComeLaterThan createHasComeLaterThan();
+
+ /**
+ * Returns a new object of class '<em>Has Come Earlier Than</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Has Come Earlier Than</em>'.
+ * @generated
+ */
+ HasComeEarlierThan createHasComeEarlierThan();
+
+ /**
+ * Returns a new object of class '<em>Object Compare Not</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Object Compare Not</em>'.
+ * @generated
+ */
+ ObjectCompareNot createObjectCompareNot();
+
+ /**
+ * Returns a new object of class '<em>Is Allocated To</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Allocated To</em>'.
+ * @generated
+ */
+ IsAllocatedTo createIsAllocatedTo();
+
+ /**
+ * Returns a new object of class '<em>Is Changed</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Changed</em>'.
+ * @generated
+ */
+ IsChanged createIsChanged();
+
+ /**
+ * Returns a new object of class '<em>Is Translated To</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is Translated To</em>'.
+ * @generated
+ */
+ IsTranslatedTo createIsTranslatedTo();
+
+ /**
+ * Returns a new object of class '<em>Get State</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Get State</em>'.
+ * @generated
+ */
+ GetState createGetState();
+
+ /**
+ * Returns a new object of class '<em>Null Expression</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Null Expression</em>'.
+ * @generated
+ */
+ NullExpression createNullExpression();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ RBACorePackage getRBACorePackage();
+
+} //RBACoreFactory
diff --git a/rba.model.core/src/rba/core/RBACorePackage.java b/rba.model.core/src/rba/core/RBACorePackage.java
new file mode 100644
index 0000000..478f129
--- /dev/null
+++ b/rba.model.core/src/rba/core/RBACorePackage.java
@@ -0,0 +1,14216 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see rba.core.RBACoreFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/OCL/Import ecore='http://www.eclipse.org/emf/2002/Ecore'"
+ * @generated
+ */
+public interface RBACorePackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "core";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.denso.com/ict/rba/core";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "RbaCore";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ RBACorePackage eINSTANCE = rba.core.impl.RBACorePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ModelElementImpl <em>Model Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ModelElementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getModelElement()
+ * @generated
+ */
+ int MODEL_ELEMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_ELEMENT__DESCRIPTION = 0;
+
+ /**
+ * The number of structural features of the '<em>Model Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_ELEMENT_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Model Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_ELEMENT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.NamedElementImpl <em>Named Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NamedElementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNamedElement()
+ * @generated
+ */
+ int NAMED_ELEMENT = 1;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMED_ELEMENT__DESCRIPTION = MODEL_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMED_ELEMENT__NAME = MODEL_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Named Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMED_ELEMENT_FEATURE_COUNT = MODEL_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Named Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMED_ELEMENT_OPERATION_COUNT = MODEL_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.PackagableElementImpl <em>Packagable Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PackagableElementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPackagableElement()
+ * @generated
+ */
+ int PACKAGABLE_ELEMENT = 6;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGABLE_ELEMENT__DESCRIPTION = NAMED_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGABLE_ELEMENT__NAME = NAMED_ELEMENT__NAME;
+
+ /**
+ * The number of structural features of the '<em>Packagable Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGABLE_ELEMENT_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Packagable Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGABLE_ELEMENT_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.RuleObjectImpl <em>Rule Object</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.RuleObjectImpl
+ * @see rba.core.impl.RBACorePackageImpl#getRuleObject()
+ * @generated
+ */
+ int RULE_OBJECT = 10;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RULE_OBJECT__DESCRIPTION = PACKAGABLE_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RULE_OBJECT__NAME = PACKAGABLE_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RULE_OBJECT__TAGS = PACKAGABLE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Rule Object</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RULE_OBJECT_FEATURE_COUNT = PACKAGABLE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RULE_OBJECT___GET_EXPRESSION_TYPE = PACKAGABLE_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Rule Object</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RULE_OBJECT_OPERATION_COUNT = PACKAGABLE_ELEMENT_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AbstractAllocatableImpl <em>Abstract Allocatable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractAllocatableImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractAllocatable()
+ * @generated
+ */
+ int ABSTRACT_ALLOCATABLE = 2;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE__DESCRIPTION = RULE_OBJECT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE__NAME = RULE_OBJECT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE__TAGS = RULE_OBJECT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Contents</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE__CONTENTS = RULE_OBJECT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Allocatable Group</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP = RULE_OBJECT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Abstract Allocatable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE_FEATURE_COUNT = RULE_OBJECT_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE___GET_EXPRESSION_TYPE = RULE_OBJECT___GET_EXPRESSION_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Contents List</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE___GET_CONTENTS_LIST = RULE_OBJECT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Collect Leaf Allocatable</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE = RULE_OBJECT_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Abstract Allocatable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ALLOCATABLE_OPERATION_COUNT = RULE_OBJECT_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AllocatableImpl <em>Allocatable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatableImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatable()
+ * @generated
+ */
+ int ALLOCATABLE = 3;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__DESCRIPTION = ABSTRACT_ALLOCATABLE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__NAME = ABSTRACT_ALLOCATABLE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__TAGS = ABSTRACT_ALLOCATABLE__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Contents</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__CONTENTS = ABSTRACT_ALLOCATABLE__CONTENTS;
+
+ /**
+ * The feature id for the '<em><b>Allocatable Group</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__ALLOCATABLE_GROUP = ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Arbitration Policy</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__ARBITRATION_POLICY = ABSTRACT_ALLOCATABLE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Visibility</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE__VISIBILITY = ABSTRACT_ALLOCATABLE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Allocatable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_FEATURE_COUNT = ABSTRACT_ALLOCATABLE_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE___GET_EXPRESSION_TYPE = ABSTRACT_ALLOCATABLE___GET_EXPRESSION_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Contents List</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE___GET_CONTENTS_LIST = ABSTRACT_ALLOCATABLE___GET_CONTENTS_LIST;
+
+ /**
+ * The operation id for the '<em>Collect Leaf Allocatable</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE = ABSTRACT_ALLOCATABLE_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Allocatable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATION_COUNT = ABSTRACT_ALLOCATABLE_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AllocatableSetImpl <em>Allocatable Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatableSetImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatableSet()
+ * @generated
+ */
+ int ALLOCATABLE_SET = 4;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET__DESCRIPTION = ABSTRACT_ALLOCATABLE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET__NAME = ABSTRACT_ALLOCATABLE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET__TAGS = ABSTRACT_ALLOCATABLE__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Contents</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET__CONTENTS = ABSTRACT_ALLOCATABLE__CONTENTS;
+
+ /**
+ * The feature id for the '<em><b>Allocatable Group</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET__ALLOCATABLE_GROUP = ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Target</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET__TARGET = ABSTRACT_ALLOCATABLE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Allocatable Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET_FEATURE_COUNT = ABSTRACT_ALLOCATABLE_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET___GET_EXPRESSION_TYPE = ABSTRACT_ALLOCATABLE___GET_EXPRESSION_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Contents List</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET___GET_CONTENTS_LIST = ABSTRACT_ALLOCATABLE___GET_CONTENTS_LIST;
+
+ /**
+ * The operation id for the '<em>Collect Leaf Allocatable</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET___COLLECT_LEAF_ALLOCATABLE = ABSTRACT_ALLOCATABLE_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Allocatable Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_SET_OPERATION_COUNT = ABSTRACT_ALLOCATABLE_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.PackageImpl <em>Package</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PackageImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPackage()
+ * @generated
+ */
+ int PACKAGE = 7;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGE__DESCRIPTION = PACKAGABLE_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGE__NAME = PACKAGABLE_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Packagableelement</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGE__PACKAGABLEELEMENT = PACKAGABLE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Package</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGE_FEATURE_COUNT = PACKAGABLE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Package</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PACKAGE_OPERATION_COUNT = PACKAGABLE_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ProjectImpl <em>Project</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ProjectImpl
+ * @see rba.core.impl.RBACorePackageImpl#getProject()
+ * @generated
+ */
+ int PROJECT = 5;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT__DESCRIPTION = PACKAGE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT__NAME = PACKAGE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Packagableelement</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT__PACKAGABLEELEMENT = PACKAGE__PACKAGABLEELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT__VERSION = PACKAGE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Dummy Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT__DUMMY_NAME = PACKAGE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Project</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT_FEATURE_COUNT = PACKAGE_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Name</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT___GET_NAME = PACKAGE_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Project</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROJECT_OPERATION_COUNT = PACKAGE_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.StereotypeImpl <em>Stereotype</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.StereotypeImpl
+ * @see rba.core.impl.RBACorePackageImpl#getStereotype()
+ * @generated
+ */
+ int STEREOTYPE = 8;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE__DESCRIPTION = PACKAGABLE_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE__NAME = PACKAGABLE_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Target Model Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE__TARGET_MODEL_NAME = PACKAGABLE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Variables</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE__VARIABLES = PACKAGABLE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Body Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE__BODY_TEXT = PACKAGABLE_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Stereotype</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE_FEATURE_COUNT = PACKAGABLE_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the '<em>Stereotype</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPE_OPERATION_COUNT = PACKAGABLE_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.TagImpl <em>Tag</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.TagImpl
+ * @see rba.core.impl.RBACorePackageImpl#getTag()
+ * @generated
+ */
+ int TAG = 9;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAG__DESCRIPTION = NAMED_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAG__NAME = NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Values</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAG__VALUES = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Tag</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAG_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Tag</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAG_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AbstractContentImpl <em>Abstract Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractContentImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractContent()
+ * @generated
+ */
+ int ABSTRACT_CONTENT = 11;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT__DESCRIPTION = RULE_OBJECT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT__NAME = RULE_OBJECT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT__TAGS = RULE_OBJECT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Content Group</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT__CONTENT_GROUP = RULE_OBJECT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Allocatable</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT__ALLOCATABLE = RULE_OBJECT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Abstract Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT_FEATURE_COUNT = RULE_OBJECT_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT___GET_EXPRESSION_TYPE = RULE_OBJECT___GET_EXPRESSION_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Allocatable List</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT___GET_ALLOCATABLE_LIST = RULE_OBJECT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Collect Leaf Contents</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT___COLLECT_LEAF_CONTENTS = RULE_OBJECT_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Abstract Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONTENT_OPERATION_COUNT = RULE_OBJECT_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AbstractSceneImpl <em>Abstract Scene</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractSceneImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractScene()
+ * @generated
+ */
+ int ABSTRACT_SCENE = 12;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_SCENE__DESCRIPTION = RULE_OBJECT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_SCENE__NAME = RULE_OBJECT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_SCENE__TAGS = RULE_OBJECT__TAGS;
+
+ /**
+ * The number of structural features of the '<em>Abstract Scene</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_SCENE_FEATURE_COUNT = RULE_OBJECT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_SCENE___GET_EXPRESSION_TYPE = RULE_OBJECT___GET_EXPRESSION_TYPE;
+
+ /**
+ * The number of operations of the '<em>Abstract Scene</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_SCENE_OPERATION_COUNT = RULE_OBJECT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SceneImpl <em>Scene</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SceneImpl
+ * @see rba.core.impl.RBACorePackageImpl#getScene()
+ * @generated
+ */
+ int SCENE = 13;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE__DESCRIPTION = ABSTRACT_SCENE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE__NAME = ABSTRACT_SCENE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE__TAGS = ABSTRACT_SCENE__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Global</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE__GLOBAL = ABSTRACT_SCENE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE__PROPERTIES = ABSTRACT_SCENE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Scene</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_FEATURE_COUNT = ABSTRACT_SCENE_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE___GET_EXPRESSION_TYPE = ABSTRACT_SCENE_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Scene</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATION_COUNT = ABSTRACT_SCENE_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ContentImpl <em>Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContent()
+ * @generated
+ */
+ int CONTENT = 14;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__DESCRIPTION = ABSTRACT_CONTENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__NAME = ABSTRACT_CONTENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__TAGS = ABSTRACT_CONTENT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Content Group</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__CONTENT_GROUP = ABSTRACT_CONTENT__CONTENT_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Allocatable</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__ALLOCATABLE = ABSTRACT_CONTENT__ALLOCATABLE;
+
+ /**
+ * The feature id for the '<em><b>Loser Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__LOSER_TYPE = ABSTRACT_CONTENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>States</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__STATES = ABSTRACT_CONTENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_FEATURE_COUNT = ABSTRACT_CONTENT_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT___GET_EXPRESSION_TYPE = ABSTRACT_CONTENT___GET_EXPRESSION_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Allocatable List</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT___GET_ALLOCATABLE_LIST = ABSTRACT_CONTENT___GET_ALLOCATABLE_LIST;
+
+ /**
+ * The operation id for the '<em>Collect Leaf Contents</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT___COLLECT_LEAF_CONTENTS = ABSTRACT_CONTENT_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATION_COUNT = ABSTRACT_CONTENT_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ContentSetImpl <em>Content Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentSetImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentSet()
+ * @generated
+ */
+ int CONTENT_SET = 15;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET__DESCRIPTION = ABSTRACT_CONTENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET__NAME = ABSTRACT_CONTENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET__TAGS = ABSTRACT_CONTENT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Content Group</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET__CONTENT_GROUP = ABSTRACT_CONTENT__CONTENT_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Allocatable</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET__ALLOCATABLE = ABSTRACT_CONTENT__ALLOCATABLE;
+
+ /**
+ * The feature id for the '<em><b>Target</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET__TARGET = ABSTRACT_CONTENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Content Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET_FEATURE_COUNT = ABSTRACT_CONTENT_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET___GET_EXPRESSION_TYPE = ABSTRACT_CONTENT___GET_EXPRESSION_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Allocatable List</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET___GET_ALLOCATABLE_LIST = ABSTRACT_CONTENT___GET_ALLOCATABLE_LIST;
+
+ /**
+ * The operation id for the '<em>Collect Leaf Contents</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET___COLLECT_LEAF_CONTENTS = ABSTRACT_CONTENT_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Content Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_SET_OPERATION_COUNT = ABSTRACT_CONTENT_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ContentStateImpl <em>Content State</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentStateImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentState()
+ * @generated
+ */
+ int CONTENT_STATE = 16;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE__DESCRIPTION = RULE_OBJECT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE__NAME = RULE_OBJECT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE__TAGS = RULE_OBJECT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE__VALUE = RULE_OBJECT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE__OWNER = RULE_OBJECT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Content State</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_FEATURE_COUNT = RULE_OBJECT_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE___GET_EXPRESSION_TYPE = RULE_OBJECT___GET_EXPRESSION_TYPE;
+
+ /**
+ * The number of operations of the '<em>Content State</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATION_COUNT = RULE_OBJECT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AbstractPropertyImpl <em>Abstract Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractPropertyImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractProperty()
+ * @generated
+ */
+ int ABSTRACT_PROPERTY = 17;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY__DESCRIPTION = RULE_OBJECT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY__NAME = RULE_OBJECT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY__TAGS = RULE_OBJECT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY__OWNER = RULE_OBJECT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Abstract Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY_FEATURE_COUNT = RULE_OBJECT_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY___GET_EXPRESSION_TYPE = RULE_OBJECT_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Abstract Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_PROPERTY_OPERATION_COUNT = RULE_OBJECT_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IntegerPropertyImpl <em>Integer Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IntegerPropertyImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIntegerProperty()
+ * @generated
+ */
+ int INTEGER_PROPERTY = 18;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY__DESCRIPTION = ABSTRACT_PROPERTY__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY__NAME = ABSTRACT_PROPERTY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY__TAGS = ABSTRACT_PROPERTY__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY__OWNER = ABSTRACT_PROPERTY__OWNER;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY__VALUE = ABSTRACT_PROPERTY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Integer Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY_FEATURE_COUNT = ABSTRACT_PROPERTY_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY___GET_EXPRESSION_TYPE = ABSTRACT_PROPERTY___GET_EXPRESSION_TYPE;
+
+ /**
+ * The number of operations of the '<em>Integer Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_PROPERTY_OPERATION_COUNT = ABSTRACT_PROPERTY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AbstractConstraintImpl <em>Abstract Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractConstraintImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractConstraint()
+ * @generated
+ */
+ int ABSTRACT_CONSTRAINT = 19;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT__DESCRIPTION = PACKAGABLE_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT__NAME = PACKAGABLE_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT__EXPRESSION = PACKAGABLE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Abstract Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT_FEATURE_COUNT = PACKAGABLE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Abstract Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT_OPERATION_COUNT = PACKAGABLE_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ConstraintImpl <em>Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ConstraintImpl
+ * @see rba.core.impl.RBACorePackageImpl#getConstraint()
+ * @generated
+ */
+ int CONSTRAINT = 20;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT__DESCRIPTION = ABSTRACT_CONSTRAINT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT__NAME = ABSTRACT_CONSTRAINT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT__EXPRESSION = ABSTRACT_CONSTRAINT__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Runtime</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT__RUNTIME = ABSTRACT_CONSTRAINT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_FEATURE_COUNT = ABSTRACT_CONSTRAINT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_OPERATION_COUNT = ABSTRACT_CONSTRAINT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ExpressionImpl <em>Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getExpression()
+ * @generated
+ */
+ int EXPRESSION = 21;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION__TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION__EXPRESSION = 1;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION__LET_STATEMENTS = 2;
+
+ /**
+ * The number of structural features of the '<em>Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION_FEATURE_COUNT = 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION___GET_UNDERLYING_TYPE = 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION___GET_EXPRESSION_TEXT = 1;
+
+ /**
+ * The number of operations of the '<em>Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPRESSION_OPERATION_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.LetStatementImpl <em>Let Statement</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LetStatementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLetStatement()
+ * @generated
+ */
+ int LET_STATEMENT = 22;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LET_STATEMENT__DESCRIPTION = MODEL_ELEMENT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Variable</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LET_STATEMENT__VARIABLE = MODEL_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Body</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LET_STATEMENT__BODY = MODEL_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Let Statement</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LET_STATEMENT_FEATURE_COUNT = MODEL_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>To String</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LET_STATEMENT___TO_STRING = MODEL_ELEMENT_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Let Statement</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LET_STATEMENT_OPERATION_COUNT = MODEL_ELEMENT_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ComplexExpressionImpl <em>Complex Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ComplexExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getComplexExpression()
+ * @generated
+ */
+ int COMPLEX_EXPRESSION = 23;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Other Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION__OTHER_EXPRESSION = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Complex Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION___GET_EXPANDED = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION___CAN_EXPAND = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION___GET_EXPRESSION_TEXT = EXPRESSION_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 4;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION___GET_TYPE = EXPRESSION_OPERATION_COUNT + 5;
+
+ /**
+ * The number of operations of the '<em>Complex Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPLEX_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.OperatorImpl <em>Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.OperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getOperator()
+ * @generated
+ */
+ int OPERATOR = 24;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR__OPERAND = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR___GET_UNDERLYING_TYPE = EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR___GET_EXPRESSION_TEXT = EXPRESSION___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR___GET_SYMBOL = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPERATOR_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsTypeOfImpl <em>Is Type Of</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsTypeOfImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsTypeOf()
+ * @generated
+ */
+ int IS_TYPE_OF = 25;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Tag Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF__TAG_NAME = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Is Type Of</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF___GET_SYMBOL = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Is Type Of</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TYPE_OF_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ObjectReferenceImpl <em>Object Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ObjectReferenceImpl
+ * @see rba.core.impl.RBACorePackageImpl#getObjectReference()
+ * @generated
+ */
+ int OBJECT_REFERENCE = 26;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Ref Object</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE__REF_OBJECT = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Object Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE___GET_EXPRESSION_TEXT = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Object Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_REFERENCE_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.PreviousModifierImpl <em>Previous Modifier</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PreviousModifierImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPreviousModifier()
+ * @generated
+ */
+ int PREVIOUS_MODIFIER = 27;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Obj Reference</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER__OBJ_REFERENCE = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Previous Modifier</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER___GET_SYMBOL = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER___GET_EXPRESSION_TEXT = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Previous Modifier</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREVIOUS_MODIFIER_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ComparisonOperatorImpl <em>Comparison Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ComparisonOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getComparisonOperator()
+ * @generated
+ */
+ int COMPARISON_OPERATOR = 31;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Comparison Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Comparison Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.GreaterThanOperatorImpl <em>Greater Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GreaterThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGreaterThanOperator()
+ * @generated
+ */
+ int GREATER_THAN_OPERATOR = 28;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR__TYPE = COMPARISON_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR__EXPRESSION = COMPARISON_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR__LET_STATEMENTS = COMPARISON_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR__OPERAND = COMPARISON_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Greater Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR_FEATURE_COUNT = COMPARISON_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR___GET_UNDERLYING_TYPE = COMPARISON_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR___GET_EXPRESSION_TEXT = COMPARISON_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR___GET_SYMBOL = COMPARISON_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Greater Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GREATER_THAN_OPERATOR_OPERATION_COUNT = COMPARISON_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.MuchGreaterThanOperatorImpl <em>Much Greater Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MuchGreaterThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMuchGreaterThanOperator()
+ * @generated
+ */
+ int MUCH_GREATER_THAN_OPERATOR = 29;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR__TYPE = COMPARISON_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR__EXPRESSION = COMPARISON_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR__LET_STATEMENTS = COMPARISON_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR__OPERAND = COMPARISON_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Much Greater Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR_FEATURE_COUNT = COMPARISON_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR___GET_UNDERLYING_TYPE = COMPARISON_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR___GET_EXPRESSION_TEXT = COMPARISON_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR___GET_SYMBOL = COMPARISON_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Much Greater Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MUCH_GREATER_THAN_OPERATOR_OPERATION_COUNT = COMPARISON_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.LowerThanOperatorImpl <em>Lower Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LowerThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLowerThanOperator()
+ * @generated
+ */
+ int LOWER_THAN_OPERATOR = 30;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR__TYPE = COMPARISON_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR__EXPRESSION = COMPARISON_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR__LET_STATEMENTS = COMPARISON_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR__OPERAND = COMPARISON_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Lower Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR_FEATURE_COUNT = COMPARISON_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR___GET_UNDERLYING_TYPE = COMPARISON_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR___GET_EXPRESSION_TEXT = COMPARISON_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR___GET_SYMBOL = COMPARISON_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Lower Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOWER_THAN_OPERATOR_OPERATION_COUNT = COMPARISON_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.EqualToOperatorImpl <em>Equal To Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.EqualToOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getEqualToOperator()
+ * @generated
+ */
+ int EQUAL_TO_OPERATOR = 32;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR__TYPE = COMPARISON_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR__EXPRESSION = COMPARISON_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR__LET_STATEMENTS = COMPARISON_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR__OPERAND = COMPARISON_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Equal To Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR_FEATURE_COUNT = COMPARISON_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR___GET_UNDERLYING_TYPE = COMPARISON_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR___GET_EXPRESSION_TEXT = COMPARISON_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR___GET_SYMBOL = COMPARISON_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Equal To Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EQUAL_TO_OPERATOR_OPERATION_COUNT = COMPARISON_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ComparisonAndImpl <em>Comparison And</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ComparisonAndImpl
+ * @see rba.core.impl.RBACorePackageImpl#getComparisonAnd()
+ * @generated
+ */
+ int COMPARISON_AND = 33;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND__TYPE = COMPARISON_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND__EXPRESSION = COMPARISON_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND__LET_STATEMENTS = COMPARISON_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND__OPERAND = COMPARISON_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Comparison And</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND_FEATURE_COUNT = COMPARISON_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND___GET_UNDERLYING_TYPE = COMPARISON_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND___GET_SYMBOL = COMPARISON_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND___GET_EXPRESSION_TEXT = COMPARISON_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Comparison And</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPARISON_AND_OPERATION_COUNT = COMPARISON_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.LogicalOperatorImpl <em>Logical Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LogicalOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLogicalOperator()
+ * @generated
+ */
+ int LOGICAL_OPERATOR = 34;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Logical Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Logical Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOGICAL_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AndOperatorImpl <em>And Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AndOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAndOperator()
+ * @generated
+ */
+ int AND_OPERATOR = 35;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>And Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>And Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int AND_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.OrOperatorImpl <em>Or Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.OrOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getOrOperator()
+ * @generated
+ */
+ int OR_OPERATOR = 36;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Or Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Or Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OR_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.NotOperatorImpl <em>Not Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NotOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNotOperator()
+ * @generated
+ */
+ int NOT_OPERATOR = 37;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Not Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Not Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NOT_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsEqualToOperatorImpl <em>Is Equal To Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsEqualToOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsEqualToOperator()
+ * @generated
+ */
+ int IS_EQUAL_TO_OPERATOR = 38;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Equal To Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Is Equal To Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_EQUAL_TO_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsGreaterThanOperatorImpl <em>Is Greater Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsGreaterThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsGreaterThanOperator()
+ * @generated
+ */
+ int IS_GREATER_THAN_OPERATOR = 39;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Greater Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Is Greater Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsLowerThanOperatorImpl <em>Is Lower Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsLowerThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsLowerThanOperator()
+ * @generated
+ */
+ int IS_LOWER_THAN_OPERATOR = 40;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Lower Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Is Lower Than Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsGreaterThanEqualOperatorImpl <em>Is Greater Than Equal Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsGreaterThanEqualOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsGreaterThanEqualOperator()
+ * @generated
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR = 41;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Greater Than Equal Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Is Greater Than Equal Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_GREATER_THAN_EQUAL_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsLowerThanEqualOperatorImpl <em>Is Lower Than Equal Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsLowerThanEqualOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsLowerThanEqualOperator()
+ * @generated
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR = 42;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Lower Than Equal Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Is Lower Than Equal Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_LOWER_THAN_EQUAL_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ArithmeticOperatorImpl <em>Arithmetic Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ArithmeticOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getArithmeticOperator()
+ * @generated
+ */
+ int ARITHMETIC_OPERATOR = 43;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Arithmetic Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Arithmetic Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARITHMETIC_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.PlusOperatorImpl <em>Plus Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PlusOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPlusOperator()
+ * @generated
+ */
+ int PLUS_OPERATOR = 44;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR__TYPE = ARITHMETIC_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR__EXPRESSION = ARITHMETIC_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR__LET_STATEMENTS = ARITHMETIC_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR__OPERAND = ARITHMETIC_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Plus Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR_FEATURE_COUNT = ARITHMETIC_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR___GET_UNDERLYING_TYPE = ARITHMETIC_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR___GET_EXPRESSION_TEXT = ARITHMETIC_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR___GET_SYMBOL = ARITHMETIC_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Plus Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PLUS_OPERATOR_OPERATION_COUNT = ARITHMETIC_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ImpliesOperatorImpl <em>Implies Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ImpliesOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getImpliesOperator()
+ * @generated
+ */
+ int IMPLIES_OPERATOR = 45;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR__TYPE = LOGICAL_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR__EXPRESSION = LOGICAL_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR__LET_STATEMENTS = LOGICAL_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR__OPERAND = LOGICAL_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Implies Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR_FEATURE_COUNT = LOGICAL_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR___GET_UNDERLYING_TYPE = LOGICAL_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR___GET_EXPRESSION_TEXT = LOGICAL_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR___GET_SYMBOL = LOGICAL_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Implies Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IMPLIES_OPERATOR_OPERATION_COUNT = LOGICAL_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ContentOperatorImpl <em>Content Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentOperator()
+ * @generated
+ */
+ int CONTENT_OPERATOR = 46;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Content Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Content Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsActiveImpl <em>Is Active</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsActiveImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsActive()
+ * @generated
+ */
+ int IS_ACTIVE = 47;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Active</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE___GET_EXPRESSION_TEXT = CONTENT_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Is Active</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ACTIVE_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.GetAllocatablesImpl <em>Get Allocatables</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetAllocatablesImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetAllocatables()
+ * @generated
+ */
+ int GET_ALLOCATABLES = 48;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Get Allocatables</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES___GET_EXPRESSION_TEXT = CONTENT_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Get Allocatables</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_ALLOCATABLES_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.HasBeenDisplayedImpl <em>Has Been Displayed</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.HasBeenDisplayedImpl
+ * @see rba.core.impl.RBACorePackageImpl#getHasBeenDisplayed()
+ * @generated
+ */
+ int HAS_BEEN_DISPLAYED = 49;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Has Been Displayed</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED___GET_EXPRESSION_TEXT = CONTENT_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Has Been Displayed</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_BEEN_DISPLAYED_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ActiveStateImpl <em>Active State</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ActiveStateImpl
+ * @see rba.core.impl.RBACorePackageImpl#getActiveState()
+ * @generated
+ */
+ int ACTIVE_STATE = 50;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Active State</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE___GET_EXPRESSION_TEXT = CONTENT_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Active State</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_STATE_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ObjectCompareImpl <em>Object Compare</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ObjectCompareImpl
+ * @see rba.core.impl.RBACorePackageImpl#getObjectCompare()
+ * @generated
+ */
+ int OBJECT_COMPARE = 51;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Object Compare</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE___GET_SYMBOL = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Object Compare</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ThatOfOperatorImpl <em>That Of Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ThatOfOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getThatOfOperator()
+ * @generated
+ */
+ int THAT_OF_OPERATOR = 52;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>That Of Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR___GET_SYMBOL = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>That Of Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THAT_OF_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ValueExpressionImpl <em>Value Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ValueExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getValueExpression()
+ * @generated
+ */
+ int VALUE_EXPRESSION = 53;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Value Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION___GET_EXPRESSION_TEXT = EXPRESSION___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION___GET_EXPRESSION_VALUE = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION___GET_TYPE = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Value Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.MaxValueImpl <em>Max Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MaxValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMaxValue()
+ * @generated
+ */
+ int MAX_VALUE = 54;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE__TYPE = VALUE_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE__EXPRESSION = VALUE_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE__LET_STATEMENTS = VALUE_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Max Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE_FEATURE_COUNT = VALUE_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE___GET_UNDERLYING_TYPE = VALUE_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE___GET_TYPE = VALUE_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE___GET_EXPRESSION_TEXT = VALUE_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE___GET_EXPRESSION_VALUE = VALUE_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Max Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_VALUE_OPERATION_COUNT = VALUE_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.MinValueImpl <em>Min Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MinValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMinValue()
+ * @generated
+ */
+ int MIN_VALUE = 55;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE__TYPE = VALUE_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE__EXPRESSION = VALUE_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE__LET_STATEMENTS = VALUE_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Min Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE_FEATURE_COUNT = VALUE_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE___GET_UNDERLYING_TYPE = VALUE_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE___GET_TYPE = VALUE_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE___GET_EXPRESSION_TEXT = VALUE_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE___GET_EXPRESSION_VALUE = VALUE_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Min Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_VALUE_OPERATION_COUNT = VALUE_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.NoneValueImpl <em>None Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NoneValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNoneValue()
+ * @generated
+ */
+ int NONE_VALUE = 56;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE__TYPE = VALUE_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE__EXPRESSION = VALUE_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE__LET_STATEMENTS = VALUE_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>None Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE_FEATURE_COUNT = VALUE_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE___GET_UNDERLYING_TYPE = VALUE_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE___GET_TYPE = VALUE_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE___GET_EXPRESSION_TEXT = VALUE_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE___GET_EXPRESSION_VALUE = VALUE_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>None Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NONE_VALUE_OPERATION_COUNT = VALUE_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.StandardValueImpl <em>Standard Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.StandardValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getStandardValue()
+ * @generated
+ */
+ int STANDARD_VALUE = 57;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE__TYPE = VALUE_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE__EXPRESSION = VALUE_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE__LET_STATEMENTS = VALUE_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Standard Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE_FEATURE_COUNT = VALUE_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE___GET_UNDERLYING_TYPE = VALUE_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE___GET_TYPE = VALUE_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE___GET_EXPRESSION_TEXT = VALUE_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE___GET_EXPRESSION_VALUE = VALUE_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Standard Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_VALUE_OPERATION_COUNT = VALUE_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IntegerValueImpl <em>Integer Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IntegerValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIntegerValue()
+ * @generated
+ */
+ int INTEGER_VALUE = 58;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE__TYPE = VALUE_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE__EXPRESSION = VALUE_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE__LET_STATEMENTS = VALUE_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE__VALUE = VALUE_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Integer Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE_FEATURE_COUNT = VALUE_EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE___GET_UNDERLYING_TYPE = VALUE_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE___GET_TYPE = VALUE_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE___GET_EXPRESSION_TEXT = VALUE_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE___GET_EXPRESSION_VALUE = VALUE_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Integer Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTEGER_VALUE_OPERATION_COUNT = VALUE_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.EnumExpressionImpl <em>Enum Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.EnumExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getEnumExpression()
+ * @generated
+ */
+ int ENUM_EXPRESSION = 59;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Enum Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION___GET_EXPRESSION_TEXT = EXPRESSION___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION___GET_EXPRESSION_VALUE = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION___GET_TYPE = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Enum Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENUM_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.LoserTypeExpressionImpl <em>Loser Type Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LoserTypeExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLoserTypeExpression()
+ * @generated
+ */
+ int LOSER_TYPE_EXPRESSION = 60;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION__TYPE = ENUM_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION__EXPRESSION = ENUM_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION__LET_STATEMENTS = ENUM_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION__VALUE = ENUM_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Loser Type Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION_FEATURE_COUNT = ENUM_EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION___GET_UNDERLYING_TYPE = ENUM_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION___GET_TYPE = ENUM_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION___GET_EXPRESSION_TEXT = ENUM_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION___GET_EXPRESSION_VALUE = ENUM_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Loser Type Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LOSER_TYPE_EXPRESSION_OPERATION_COUNT = ENUM_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ArbitrationPolicyExpressionImpl <em>Arbitration Policy Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ArbitrationPolicyExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getArbitrationPolicyExpression()
+ * @generated
+ */
+ int ARBITRATION_POLICY_EXPRESSION = 61;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION__TYPE = ENUM_EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION__EXPRESSION = ENUM_EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION__LET_STATEMENTS = ENUM_EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION__VALUE = ENUM_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Arbitration Policy Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION_FEATURE_COUNT = ENUM_EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION___GET_UNDERLYING_TYPE = ENUM_EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION___GET_TYPE = ENUM_EXPRESSION___GET_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_TEXT = ENUM_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Value</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_VALUE = ENUM_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Arbitration Policy Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ARBITRATION_POLICY_EXPRESSION_OPERATION_COUNT = ENUM_EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SetExpressionImpl <em>Set Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SetExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSetExpression()
+ * @generated
+ */
+ int SET_EXPRESSION = 62;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Set Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION___GET_UNDERLYING_TYPE = EXPRESSION___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION___GET_EXPRESSION_TEXT = EXPRESSION___GET_EXPRESSION_TEXT;
+
+ /**
+ * The number of operations of the '<em>Set Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SetOperatorImpl <em>Set Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SetOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSetOperator()
+ * @generated
+ */
+ int SET_OPERATOR = 63;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Set Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The number of operations of the '<em>Set Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SizeOperatorImpl <em>Size Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SizeOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSizeOperator()
+ * @generated
+ */
+ int SIZE_OPERATOR = 64;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR__TYPE = SET_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR__EXPRESSION = SET_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR__LET_STATEMENTS = SET_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR__OPERAND = SET_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Size Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR_FEATURE_COUNT = SET_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR___GET_EXPRESSION_TEXT = SET_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR___GET_SYMBOL = SET_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR___GET_UNDERLYING_TYPE = SET_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Size Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIZE_OPERATOR_OPERATION_COUNT = SET_OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.LambdaContextImpl <em>Lambda Context</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LambdaContextImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLambdaContext()
+ * @generated
+ */
+ int LAMBDA_CONTEXT = 73;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT__TYPE = SET_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT__EXPRESSION = SET_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT__LET_STATEMENTS = SET_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT__OPERAND = SET_OPERATOR__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Lambda</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT__LAMBDA = SET_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Lambda Context</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT_FEATURE_COUNT = SET_OPERATOR_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT___GET_UNDERLYING_TYPE = SET_OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT___GET_EXPRESSION_TEXT = SET_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT___GET_SYMBOL = SET_OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Context Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT___GET_CONTEXT_TYPE = SET_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Lambda Context</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_CONTEXT_OPERATION_COUNT = SET_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ExistsOperatorImpl <em>Exists Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ExistsOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getExistsOperator()
+ * @generated
+ */
+ int EXISTS_OPERATOR = 65;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR__TYPE = LAMBDA_CONTEXT__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR__EXPRESSION = LAMBDA_CONTEXT__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR__LET_STATEMENTS = LAMBDA_CONTEXT__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR__OPERAND = LAMBDA_CONTEXT__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Lambda</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR__LAMBDA = LAMBDA_CONTEXT__LAMBDA;
+
+ /**
+ * The number of structural features of the '<em>Exists Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR_FEATURE_COUNT = LAMBDA_CONTEXT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Context Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR___GET_CONTEXT_TYPE = LAMBDA_CONTEXT___GET_CONTEXT_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR___GET_EXPRESSION_TEXT = LAMBDA_CONTEXT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR___GET_SYMBOL = LAMBDA_CONTEXT_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR___GET_UNDERLYING_TYPE = LAMBDA_CONTEXT_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Exists Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXISTS_OPERATOR_OPERATION_COUNT = LAMBDA_CONTEXT_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ForAllOperatorImpl <em>For All Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ForAllOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getForAllOperator()
+ * @generated
+ */
+ int FOR_ALL_OPERATOR = 66;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR__TYPE = LAMBDA_CONTEXT__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR__EXPRESSION = LAMBDA_CONTEXT__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR__LET_STATEMENTS = LAMBDA_CONTEXT__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR__OPERAND = LAMBDA_CONTEXT__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Lambda</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR__LAMBDA = LAMBDA_CONTEXT__LAMBDA;
+
+ /**
+ * The number of structural features of the '<em>For All Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR_FEATURE_COUNT = LAMBDA_CONTEXT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Context Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR___GET_CONTEXT_TYPE = LAMBDA_CONTEXT___GET_CONTEXT_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR___GET_EXPRESSION_TEXT = LAMBDA_CONTEXT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR___GET_SYMBOL = LAMBDA_CONTEXT_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR___GET_UNDERLYING_TYPE = LAMBDA_CONTEXT_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>For All Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOR_ALL_OPERATOR_OPERATION_COUNT = LAMBDA_CONTEXT_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.MaxOperatorImpl <em>Max Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MaxOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMaxOperator()
+ * @generated
+ */
+ int MAX_OPERATOR = 67;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR__TYPE = LAMBDA_CONTEXT__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR__EXPRESSION = LAMBDA_CONTEXT__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR__LET_STATEMENTS = LAMBDA_CONTEXT__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR__OPERAND = LAMBDA_CONTEXT__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Lambda</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR__LAMBDA = LAMBDA_CONTEXT__LAMBDA;
+
+ /**
+ * The number of structural features of the '<em>Max Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR_FEATURE_COUNT = LAMBDA_CONTEXT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Context Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR___GET_CONTEXT_TYPE = LAMBDA_CONTEXT___GET_CONTEXT_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR___GET_EXPRESSION_TEXT = LAMBDA_CONTEXT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR___GET_SYMBOL = LAMBDA_CONTEXT_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR___GET_UNDERLYING_TYPE = LAMBDA_CONTEXT_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Max Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_OPERATOR_OPERATION_COUNT = LAMBDA_CONTEXT_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.MinOperatorImpl <em>Min Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MinOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMinOperator()
+ * @generated
+ */
+ int MIN_OPERATOR = 68;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR__TYPE = LAMBDA_CONTEXT__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR__EXPRESSION = LAMBDA_CONTEXT__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR__LET_STATEMENTS = LAMBDA_CONTEXT__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR__OPERAND = LAMBDA_CONTEXT__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Lambda</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR__LAMBDA = LAMBDA_CONTEXT__LAMBDA;
+
+ /**
+ * The number of structural features of the '<em>Min Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR_FEATURE_COUNT = LAMBDA_CONTEXT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Context Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR___GET_CONTEXT_TYPE = LAMBDA_CONTEXT___GET_CONTEXT_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR___GET_EXPRESSION_TEXT = LAMBDA_CONTEXT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR___GET_SYMBOL = LAMBDA_CONTEXT_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR___GET_UNDERLYING_TYPE = LAMBDA_CONTEXT_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Min Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_OPERATOR_OPERATION_COUNT = LAMBDA_CONTEXT_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SelectOperatorImpl <em>Select Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SelectOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSelectOperator()
+ * @generated
+ */
+ int SELECT_OPERATOR = 69;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR__TYPE = LAMBDA_CONTEXT__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR__EXPRESSION = LAMBDA_CONTEXT__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR__LET_STATEMENTS = LAMBDA_CONTEXT__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR__OPERAND = LAMBDA_CONTEXT__OPERAND;
+
+ /**
+ * The feature id for the '<em><b>Lambda</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR__LAMBDA = LAMBDA_CONTEXT__LAMBDA;
+
+ /**
+ * The number of structural features of the '<em>Select Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR_FEATURE_COUNT = LAMBDA_CONTEXT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Context Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR___GET_CONTEXT_TYPE = LAMBDA_CONTEXT___GET_CONTEXT_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR___GET_EXPRESSION_TEXT = LAMBDA_CONTEXT_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR___GET_SYMBOL = LAMBDA_CONTEXT_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR___GET_UNDERLYING_TYPE = LAMBDA_CONTEXT_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Select Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SELECT_OPERATOR_OPERATION_COUNT = LAMBDA_CONTEXT_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SetOfOperatorImpl <em>Set Of Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SetOfOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSetOfOperator()
+ * @generated
+ */
+ int SET_OF_OPERATOR = 70;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Set Of Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR___GET_SYMBOL = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Set Of Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SET_OF_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.LambdaExpressionImpl <em>Lambda Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LambdaExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLambdaExpression()
+ * @generated
+ */
+ int LAMBDA_EXPRESSION = 71;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Context</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION__CONTEXT = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>X</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION__X = EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Body Text</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION__BODY_TEXT = EXPRESSION_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Lambda Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION___GET_EXPRESSION_TEXT = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Lambda Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAMBDA_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.VariableImpl <em>Variable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.VariableImpl
+ * @see rba.core.impl.RBACorePackageImpl#getVariable()
+ * @generated
+ */
+ int VARIABLE = 72;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIABLE__DESCRIPTION = RULE_OBJECT__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIABLE__NAME = RULE_OBJECT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIABLE__TAGS = RULE_OBJECT__TAGS;
+
+ /**
+ * The number of structural features of the '<em>Variable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIABLE_FEATURE_COUNT = RULE_OBJECT_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIABLE___GET_EXPRESSION_TYPE = RULE_OBJECT_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Variable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIABLE_OPERATION_COUNT = RULE_OBJECT_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IfStatementImpl <em>If Statement</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IfStatementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIfStatement()
+ * @generated
+ */
+ int IF_STATEMENT = 74;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Condition</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT__CONDITION = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Then Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT__THEN_EXPRESSION = EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Else Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT__ELSE_EXPRESSION = EXPRESSION_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>If Statement</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT___GET_EXPRESSION_TEXT = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>If Statement</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IF_STATEMENT_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.SceneOperatorImpl <em>Scene Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SceneOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSceneOperator()
+ * @generated
+ */
+ int SCENE_OPERATOR = 75;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Scene Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Scene Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SCENE_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsOnImpl <em>Is On</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsOnImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsOn()
+ * @generated
+ */
+ int IS_ON = 76;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON__TYPE = SCENE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON__EXPRESSION = SCENE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON__LET_STATEMENTS = SCENE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON__OPERAND = SCENE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is On</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON_FEATURE_COUNT = SCENE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON___GET_EXPRESSION_TEXT = SCENE_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON___GET_SYMBOL = SCENE_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON___GET_UNDERLYING_TYPE = SCENE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Is On</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ON_OPERATION_COUNT = SCENE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AllocatableOperatorImpl <em>Allocatable Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatableOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatableOperator()
+ * @generated
+ */
+ int ALLOCATABLE_OPERATOR = 77;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Allocatable Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Allocatable Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATABLE_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.AllocatedContentImpl <em>Allocated Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatedContentImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatedContent()
+ * @generated
+ */
+ int ALLOCATED_CONTENT = 78;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT__TYPE = ALLOCATABLE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT__EXPRESSION = ALLOCATABLE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT__LET_STATEMENTS = ALLOCATABLE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT__OPERAND = ALLOCATABLE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Allocated Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT_FEATURE_COUNT = ALLOCATABLE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT___GET_EXPRESSION_TEXT = ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT___GET_SYMBOL = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT___GET_UNDERLYING_TYPE = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Allocated Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_CONTENT_OPERATION_COUNT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ContentValueImpl <em>Content Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentValue()
+ * @generated
+ */
+ int CONTENT_VALUE = 79;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE__TYPE = ALLOCATABLE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE__EXPRESSION = ALLOCATABLE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE__LET_STATEMENTS = ALLOCATABLE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE__OPERAND = ALLOCATABLE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Content Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE_FEATURE_COUNT = ALLOCATABLE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE___GET_EXPRESSION_TEXT = ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE___GET_SYMBOL = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE___GET_UNDERLYING_TYPE = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Content Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_VALUE_OPERATION_COUNT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.GetContentsListImpl <em>Get Contents List</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetContentsListImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetContentsList()
+ * @generated
+ */
+ int GET_CONTENTS_LIST = 80;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST__TYPE = ALLOCATABLE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST__EXPRESSION = ALLOCATABLE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST__LET_STATEMENTS = ALLOCATABLE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST__OPERAND = ALLOCATABLE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Get Contents List</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST_FEATURE_COUNT = ALLOCATABLE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST___GET_EXPRESSION_TEXT = ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST___GET_SYMBOL = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST___GET_UNDERLYING_TYPE = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Get Contents List</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_CONTENTS_LIST_OPERATION_COUNT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ActiveContentsImpl <em>Active Contents</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ActiveContentsImpl
+ * @see rba.core.impl.RBACorePackageImpl#getActiveContents()
+ * @generated
+ */
+ int ACTIVE_CONTENTS = 81;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS__TYPE = ALLOCATABLE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS__EXPRESSION = ALLOCATABLE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS__LET_STATEMENTS = ALLOCATABLE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS__OPERAND = ALLOCATABLE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Active Contents</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS_FEATURE_COUNT = ALLOCATABLE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS___GET_EXPRESSION_TEXT = ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS___GET_SYMBOL = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS___GET_UNDERLYING_TYPE = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Active Contents</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTIVE_CONTENTS_OPERATION_COUNT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.PropertyOperatorImpl <em>Property Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PropertyOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPropertyOperator()
+ * @generated
+ */
+ int PROPERTY_OPERATOR = 82;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Property Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Property Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.GetPropertyImpl <em>Get Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetPropertyImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetProperty()
+ * @generated
+ */
+ int GET_PROPERTY = 83;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY__TYPE = PROPERTY_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY__EXPRESSION = PROPERTY_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY__LET_STATEMENTS = PROPERTY_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY__OPERAND = PROPERTY_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Get Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY_FEATURE_COUNT = PROPERTY_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY___GET_EXPRESSION_TEXT = PROPERTY_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY___GET_SYMBOL = PROPERTY_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY___GET_UNDERLYING_TYPE = PROPERTY_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Get Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_PROPERTY_OPERATION_COUNT = PROPERTY_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.StateValueImpl <em>State Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.StateValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getStateValue()
+ * @generated
+ */
+ int STATE_VALUE = 84;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>State Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE___GET_EXPRESSION_TEXT = CONTENT_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>State Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VALUE_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.HasComeLaterThanImpl <em>Has Come Later Than</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.HasComeLaterThanImpl
+ * @see rba.core.impl.RBACorePackageImpl#getHasComeLaterThan()
+ * @generated
+ */
+ int HAS_COME_LATER_THAN = 85;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Has Come Later Than</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN___GET_EXPRESSION_TEXT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Has Come Later Than</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_LATER_THAN_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.HasComeEarlierThanImpl <em>Has Come Earlier Than</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.HasComeEarlierThanImpl
+ * @see rba.core.impl.RBACorePackageImpl#getHasComeEarlierThan()
+ * @generated
+ */
+ int HAS_COME_EARLIER_THAN = 86;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Has Come Earlier Than</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN___GET_EXPRESSION_TEXT = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Has Come Earlier Than</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HAS_COME_EARLIER_THAN_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link rba.core.SugarExpression <em>Sugar Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.SugarExpression
+ * @see rba.core.impl.RBACorePackageImpl#getSugarExpression()
+ * @generated
+ */
+ int SUGAR_EXPRESSION = 87;
+
+ /**
+ * The number of structural features of the '<em>Sugar Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION_FEATURE_COUNT = 0;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION___CAN_EXPAND = 0;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION___GET_EXPANDED = 1;
+
+ /**
+ * The number of operations of the '<em>Sugar Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION_OPERATION_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.SugarExpressionBase <em>Sugar Expression Base</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.SugarExpressionBase
+ * @see rba.core.impl.RBACorePackageImpl#getSugarExpressionBase()
+ * @generated
+ */
+ int SUGAR_EXPRESSION_BASE = 88;
+
+ /**
+ * The number of structural features of the '<em>Sugar Expression Base</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION_BASE_FEATURE_COUNT = SUGAR_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION_BASE___GET_EXPANDED = SUGAR_EXPRESSION___GET_EXPANDED;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION_BASE___CAN_EXPAND = SUGAR_EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Sugar Expression Base</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUGAR_EXPRESSION_BASE_OPERATION_COUNT = SUGAR_EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ObjectCompareNotImpl <em>Object Compare Not</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ObjectCompareNotImpl
+ * @see rba.core.impl.RBACorePackageImpl#getObjectCompareNot()
+ * @generated
+ */
+ int OBJECT_COMPARE_NOT = 89;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Object Compare Not</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT___GET_EXPANDED = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT___CAN_EXPAND = OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT___GET_SYMBOL = OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT___GET_UNDERLYING_TYPE = OPERATOR_OPERATION_COUNT + 4;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 5;
+
+ /**
+ * The number of operations of the '<em>Object Compare Not</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OBJECT_COMPARE_NOT_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsAllocatedToImpl <em>Is Allocated To</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsAllocatedToImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsAllocatedTo()
+ * @generated
+ */
+ int IS_ALLOCATED_TO = 90;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO__TYPE = CONTENT_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO__EXPRESSION = CONTENT_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO__LET_STATEMENTS = CONTENT_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO__OPERAND = CONTENT_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Allocated To</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO_FEATURE_COUNT = CONTENT_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO___GET_EXPANDED = CONTENT_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO___CAN_EXPAND = CONTENT_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO___GET_SYMBOL = CONTENT_OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO___GET_UNDERLYING_TYPE = CONTENT_OPERATOR_OPERATION_COUNT + 4;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO___GET_EXPRESSION_TEXT = CONTENT_OPERATOR_OPERATION_COUNT + 5;
+
+ /**
+ * The number of operations of the '<em>Is Allocated To</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ALLOCATED_TO_OPERATION_COUNT = CONTENT_OPERATOR_OPERATION_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsChangedImpl <em>Is Changed</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsChangedImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsChanged()
+ * @generated
+ */
+ int IS_CHANGED = 91;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED__TYPE = ALLOCATABLE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED__EXPRESSION = ALLOCATABLE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED__LET_STATEMENTS = ALLOCATABLE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED__OPERAND = ALLOCATABLE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Changed</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED_FEATURE_COUNT = ALLOCATABLE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED___GET_EXPRESSION_TEXT = ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED___GET_EXPANDED = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED___CAN_EXPAND = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED___GET_SYMBOL = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED___GET_UNDERLYING_TYPE = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 4;
+
+ /**
+ * The number of operations of the '<em>Is Changed</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_CHANGED_OPERATION_COUNT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 5;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.IsTranslatedToImpl <em>Is Translated To</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsTranslatedToImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsTranslatedTo()
+ * @generated
+ */
+ int IS_TRANSLATED_TO = 92;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO__TYPE = ALLOCATABLE_OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO__EXPRESSION = ALLOCATABLE_OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO__LET_STATEMENTS = ALLOCATABLE_OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO__OPERAND = ALLOCATABLE_OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Is Translated To</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO_FEATURE_COUNT = ALLOCATABLE_OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expanded</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO___GET_EXPANDED = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Can Expand</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO___CAN_EXPAND = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO___GET_SYMBOL = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO___GET_UNDERLYING_TYPE = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 4;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO___GET_EXPRESSION_TEXT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 5;
+
+ /**
+ * The number of operations of the '<em>Is Translated To</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_TRANSLATED_TO_OPERATION_COUNT = ALLOCATABLE_OPERATOR_OPERATION_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.GetStateImpl <em>Get State</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetStateImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetState()
+ * @generated
+ */
+ int GET_STATE = 93;
+
+ /**
+ * The number of structural features of the '<em>Get State</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_STATE_FEATURE_COUNT = 0;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_STATE___GET_SYMBOL = 0;
+
+ /**
+ * The number of operations of the '<em>Get State</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GET_STATE_OPERATION_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.ContentStateOperatorImpl <em>Content State Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentStateOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentStateOperator()
+ * @generated
+ */
+ int CONTENT_STATE_OPERATOR = 94;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR__TYPE = OPERATOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR__EXPRESSION = OPERATOR__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR__LET_STATEMENTS = OPERATOR__LET_STATEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Operand</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR__OPERAND = OPERATOR__OPERAND;
+
+ /**
+ * The number of structural features of the '<em>Content State Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR_FEATURE_COUNT = OPERATOR_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR___GET_UNDERLYING_TYPE = OPERATOR___GET_UNDERLYING_TYPE;
+
+ /**
+ * The operation id for the '<em>Get Symbol</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR___GET_SYMBOL = OPERATOR___GET_SYMBOL;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR___GET_EXPRESSION_TEXT = OPERATOR_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Content State Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_STATE_OPERATOR_OPERATION_COUNT = OPERATOR_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link rba.core.impl.NullExpressionImpl <em>Null Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NullExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNullExpression()
+ * @generated
+ */
+ int NULL_EXPRESSION = 95;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION__TYPE = EXPRESSION__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION__EXPRESSION = EXPRESSION__EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Let Statements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION__LET_STATEMENTS = EXPRESSION__LET_STATEMENTS;
+
+ /**
+ * The number of structural features of the '<em>Null Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Underlying Type</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION___GET_UNDERLYING_TYPE = EXPRESSION_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Expression Text</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION___GET_EXPRESSION_TEXT = EXPRESSION_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Null Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link rba.core.ArbitrationPolicy <em>Arbitration Policy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.ArbitrationPolicy
+ * @see rba.core.impl.RBACorePackageImpl#getArbitrationPolicy()
+ * @generated
+ */
+ int ARBITRATION_POLICY = 96;
+
+ /**
+ * The meta object id for the '{@link rba.core.ExpressionType <em>Expression Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.ExpressionType
+ * @see rba.core.impl.RBACorePackageImpl#getExpressionType()
+ * @generated
+ */
+ int EXPRESSION_TYPE = 97;
+
+ /**
+ * The meta object id for the '{@link rba.core.LoserType <em>Loser Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.LoserType
+ * @see rba.core.impl.RBACorePackageImpl#getLoserType()
+ * @generated
+ */
+ int LOSER_TYPE = 98;
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ModelElement <em>Model Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Model Element</em>'.
+ * @see rba.core.ModelElement
+ * @generated
+ */
+ EClass getModelElement();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.ModelElement#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see rba.core.ModelElement#getDescription()
+ * @see #getModelElement()
+ * @generated
+ */
+ EAttribute getModelElement_Description();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.NamedElement <em>Named Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Named Element</em>'.
+ * @see rba.core.NamedElement
+ * @generated
+ */
+ EClass getNamedElement();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.NamedElement#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see rba.core.NamedElement#getName()
+ * @see #getNamedElement()
+ * @generated
+ */
+ EAttribute getNamedElement_Name();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AbstractAllocatable <em>Abstract Allocatable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Allocatable</em>'.
+ * @see rba.core.AbstractAllocatable
+ * @generated
+ */
+ EClass getAbstractAllocatable();
+
+ /**
+ * Returns the meta object for the reference list '{@link rba.core.AbstractAllocatable#getContents <em>Contents</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Contents</em>'.
+ * @see rba.core.AbstractAllocatable#getContents()
+ * @see #getAbstractAllocatable()
+ * @generated
+ */
+ EReference getAbstractAllocatable_Contents();
+
+ /**
+ * Returns the meta object for the reference list '{@link rba.core.AbstractAllocatable#getAllocatableGroup <em>Allocatable Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Allocatable Group</em>'.
+ * @see rba.core.AbstractAllocatable#getAllocatableGroup()
+ * @see #getAbstractAllocatable()
+ * @generated
+ */
+ EReference getAbstractAllocatable_AllocatableGroup();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AbstractAllocatable#getContentsList() <em>Get Contents List</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Contents List</em>' operation.
+ * @see rba.core.AbstractAllocatable#getContentsList()
+ * @generated
+ */
+ EOperation getAbstractAllocatable__GetContentsList();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AbstractAllocatable#collectLeafAllocatable() <em>Collect Leaf Allocatable</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Collect Leaf Allocatable</em>' operation.
+ * @see rba.core.AbstractAllocatable#collectLeafAllocatable()
+ * @generated
+ */
+ EOperation getAbstractAllocatable__CollectLeafAllocatable();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Allocatable <em>Allocatable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocatable</em>'.
+ * @see rba.core.Allocatable
+ * @generated
+ */
+ EClass getAllocatable();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Allocatable#getArbitrationPolicy <em>Arbitration Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Arbitration Policy</em>'.
+ * @see rba.core.Allocatable#getArbitrationPolicy()
+ * @see #getAllocatable()
+ * @generated
+ */
+ EAttribute getAllocatable_ArbitrationPolicy();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.Allocatable#getVisibility <em>Visibility</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Visibility</em>'.
+ * @see rba.core.Allocatable#getVisibility()
+ * @see #getAllocatable()
+ * @generated
+ */
+ EReference getAllocatable_Visibility();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Allocatable#collectLeafAllocatable() <em>Collect Leaf Allocatable</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Collect Leaf Allocatable</em>' operation.
+ * @see rba.core.Allocatable#collectLeafAllocatable()
+ * @generated
+ */
+ EOperation getAllocatable__CollectLeafAllocatable();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AllocatableSet <em>Allocatable Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocatable Set</em>'.
+ * @see rba.core.AllocatableSet
+ * @generated
+ */
+ EClass getAllocatableSet();
+
+ /**
+ * Returns the meta object for the reference list '{@link rba.core.AllocatableSet#getTarget <em>Target</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Target</em>'.
+ * @see rba.core.AllocatableSet#getTarget()
+ * @see #getAllocatableSet()
+ * @generated
+ */
+ EReference getAllocatableSet_Target();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AllocatableSet#collectLeafAllocatable() <em>Collect Leaf Allocatable</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Collect Leaf Allocatable</em>' operation.
+ * @see rba.core.AllocatableSet#collectLeafAllocatable()
+ * @generated
+ */
+ EOperation getAllocatableSet__CollectLeafAllocatable();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Project <em>Project</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Project</em>'.
+ * @see rba.core.Project
+ * @generated
+ */
+ EClass getProject();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Project#getVersion <em>Version</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Version</em>'.
+ * @see rba.core.Project#getVersion()
+ * @see #getProject()
+ * @generated
+ */
+ EAttribute getProject_Version();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Project#getDummyName <em>Dummy Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Dummy Name</em>'.
+ * @see rba.core.Project#getDummyName()
+ * @see #getProject()
+ * @generated
+ */
+ EAttribute getProject_DummyName();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Project#getName() <em>Get Name</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Name</em>' operation.
+ * @see rba.core.Project#getName()
+ * @generated
+ */
+ EOperation getProject__GetName();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.PackagableElement <em>Packagable Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Packagable Element</em>'.
+ * @see rba.core.PackagableElement
+ * @generated
+ */
+ EClass getPackagableElement();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Package <em>Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Package</em>'.
+ * @see rba.core.Package
+ * @generated
+ */
+ EClass getPackage();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.Package#getPackagableelement <em>Packagableelement</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Packagableelement</em>'.
+ * @see rba.core.Package#getPackagableelement()
+ * @see #getPackage()
+ * @generated
+ */
+ EReference getPackage_Packagableelement();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Stereotype <em>Stereotype</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stereotype</em>'.
+ * @see rba.core.Stereotype
+ * @generated
+ */
+ EClass getStereotype();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Stereotype#getTargetModelName <em>Target Model Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Target Model Name</em>'.
+ * @see rba.core.Stereotype#getTargetModelName()
+ * @see #getStereotype()
+ * @generated
+ */
+ EAttribute getStereotype_TargetModelName();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.Stereotype#getVariables <em>Variables</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Variables</em>'.
+ * @see rba.core.Stereotype#getVariables()
+ * @see #getStereotype()
+ * @generated
+ */
+ EReference getStereotype_Variables();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Stereotype#getBodyText <em>Body Text</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Body Text</em>'.
+ * @see rba.core.Stereotype#getBodyText()
+ * @see #getStereotype()
+ * @generated
+ */
+ EAttribute getStereotype_BodyText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Tag <em>Tag</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Tag</em>'.
+ * @see rba.core.Tag
+ * @generated
+ */
+ EClass getTag();
+
+ /**
+ * Returns the meta object for the attribute list '{@link rba.core.Tag#getValues <em>Values</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Values</em>'.
+ * @see rba.core.Tag#getValues()
+ * @see #getTag()
+ * @generated
+ */
+ EAttribute getTag_Values();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.RuleObject <em>Rule Object</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Rule Object</em>'.
+ * @see rba.core.RuleObject
+ * @generated
+ */
+ EClass getRuleObject();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.RuleObject#getTags <em>Tags</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Tags</em>'.
+ * @see rba.core.RuleObject#getTags()
+ * @see #getRuleObject()
+ * @generated
+ */
+ EReference getRuleObject_Tags();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.RuleObject#getExpressionType() <em>Get Expression Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Type</em>' operation.
+ * @see rba.core.RuleObject#getExpressionType()
+ * @generated
+ */
+ EOperation getRuleObject__GetExpressionType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AbstractContent <em>Abstract Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Content</em>'.
+ * @see rba.core.AbstractContent
+ * @generated
+ */
+ EClass getAbstractContent();
+
+ /**
+ * Returns the meta object for the reference list '{@link rba.core.AbstractContent#getContentGroup <em>Content Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Content Group</em>'.
+ * @see rba.core.AbstractContent#getContentGroup()
+ * @see #getAbstractContent()
+ * @generated
+ */
+ EReference getAbstractContent_ContentGroup();
+
+ /**
+ * Returns the meta object for the reference list '{@link rba.core.AbstractContent#getAllocatable <em>Allocatable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Allocatable</em>'.
+ * @see rba.core.AbstractContent#getAllocatable()
+ * @see #getAbstractContent()
+ * @generated
+ */
+ EReference getAbstractContent_Allocatable();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AbstractContent#getAllocatableList() <em>Get Allocatable List</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Allocatable List</em>' operation.
+ * @see rba.core.AbstractContent#getAllocatableList()
+ * @generated
+ */
+ EOperation getAbstractContent__GetAllocatableList();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AbstractContent#collectLeafContents() <em>Collect Leaf Contents</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Collect Leaf Contents</em>' operation.
+ * @see rba.core.AbstractContent#collectLeafContents()
+ * @generated
+ */
+ EOperation getAbstractContent__CollectLeafContents();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AbstractScene <em>Abstract Scene</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Scene</em>'.
+ * @see rba.core.AbstractScene
+ * @generated
+ */
+ EClass getAbstractScene();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Scene <em>Scene</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Scene</em>'.
+ * @see rba.core.Scene
+ * @generated
+ */
+ EClass getScene();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Scene#isGlobal <em>Global</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Global</em>'.
+ * @see rba.core.Scene#isGlobal()
+ * @see #getScene()
+ * @generated
+ */
+ EAttribute getScene_Global();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.Scene#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Properties</em>'.
+ * @see rba.core.Scene#getProperties()
+ * @see #getScene()
+ * @generated
+ */
+ EReference getScene_Properties();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Scene#getExpressionType() <em>Get Expression Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Type</em>' operation.
+ * @see rba.core.Scene#getExpressionType()
+ * @generated
+ */
+ EOperation getScene__GetExpressionType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Content <em>Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content</em>'.
+ * @see rba.core.Content
+ * @generated
+ */
+ EClass getContent();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Content#getLoserType <em>Loser Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Loser Type</em>'.
+ * @see rba.core.Content#getLoserType()
+ * @see #getContent()
+ * @generated
+ */
+ EAttribute getContent_LoserType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.Content#getStates <em>States</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>States</em>'.
+ * @see rba.core.Content#getStates()
+ * @see #getContent()
+ * @generated
+ */
+ EReference getContent_States();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Content#collectLeafContents() <em>Collect Leaf Contents</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Collect Leaf Contents</em>' operation.
+ * @see rba.core.Content#collectLeafContents()
+ * @generated
+ */
+ EOperation getContent__CollectLeafContents();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ContentSet <em>Content Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content Set</em>'.
+ * @see rba.core.ContentSet
+ * @generated
+ */
+ EClass getContentSet();
+
+ /**
+ * Returns the meta object for the reference list '{@link rba.core.ContentSet#getTarget <em>Target</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Target</em>'.
+ * @see rba.core.ContentSet#getTarget()
+ * @see #getContentSet()
+ * @generated
+ */
+ EReference getContentSet_Target();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ContentSet#collectLeafContents() <em>Collect Leaf Contents</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Collect Leaf Contents</em>' operation.
+ * @see rba.core.ContentSet#collectLeafContents()
+ * @generated
+ */
+ EOperation getContentSet__CollectLeafContents();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ContentState <em>Content State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content State</em>'.
+ * @see rba.core.ContentState
+ * @generated
+ */
+ EClass getContentState();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.ContentState#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Value</em>'.
+ * @see rba.core.ContentState#getValue()
+ * @see #getContentState()
+ * @generated
+ */
+ EReference getContentState_Value();
+
+ /**
+ * Returns the meta object for the container reference '{@link rba.core.ContentState#getOwner <em>Owner</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Owner</em>'.
+ * @see rba.core.ContentState#getOwner()
+ * @see #getContentState()
+ * @generated
+ */
+ EReference getContentState_Owner();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AbstractProperty <em>Abstract Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Property</em>'.
+ * @see rba.core.AbstractProperty
+ * @generated
+ */
+ EClass getAbstractProperty();
+
+ /**
+ * Returns the meta object for the container reference '{@link rba.core.AbstractProperty#getOwner <em>Owner</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Owner</em>'.
+ * @see rba.core.AbstractProperty#getOwner()
+ * @see #getAbstractProperty()
+ * @generated
+ */
+ EReference getAbstractProperty_Owner();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AbstractProperty#getExpressionType() <em>Get Expression Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Type</em>' operation.
+ * @see rba.core.AbstractProperty#getExpressionType()
+ * @generated
+ */
+ EOperation getAbstractProperty__GetExpressionType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IntegerProperty <em>Integer Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Integer Property</em>'.
+ * @see rba.core.IntegerProperty
+ * @generated
+ */
+ EClass getIntegerProperty();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.IntegerProperty#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Value</em>'.
+ * @see rba.core.IntegerProperty#getValue()
+ * @see #getIntegerProperty()
+ * @generated
+ */
+ EReference getIntegerProperty_Value();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AbstractConstraint <em>Abstract Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Constraint</em>'.
+ * @see rba.core.AbstractConstraint
+ * @generated
+ */
+ EClass getAbstractConstraint();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.AbstractConstraint#getExpression <em>Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Expression</em>'.
+ * @see rba.core.AbstractConstraint#getExpression()
+ * @see #getAbstractConstraint()
+ * @generated
+ */
+ EReference getAbstractConstraint_Expression();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Constraint <em>Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Constraint</em>'.
+ * @see rba.core.Constraint
+ * @generated
+ */
+ EClass getConstraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Constraint#isRuntime <em>Runtime</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Runtime</em>'.
+ * @see rba.core.Constraint#isRuntime()
+ * @see #getConstraint()
+ * @generated
+ */
+ EAttribute getConstraint_Runtime();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Expression <em>Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Expression</em>'.
+ * @see rba.core.Expression
+ * @generated
+ */
+ EClass getExpression();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Expression#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see rba.core.Expression#getType()
+ * @see #getExpression()
+ * @generated
+ */
+ EAttribute getExpression_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.Expression#getExpression <em>Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Expression</em>'.
+ * @see rba.core.Expression#getExpression()
+ * @see #getExpression()
+ * @generated
+ */
+ EAttribute getExpression_Expression();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.Expression#getLetStatements <em>Let Statements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Let Statements</em>'.
+ * @see rba.core.Expression#getLetStatements()
+ * @see #getExpression()
+ * @generated
+ */
+ EReference getExpression_LetStatements();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Expression#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.Expression#getUnderlyingType()
+ * @generated
+ */
+ EOperation getExpression__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Expression#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.Expression#getExpressionText()
+ * @generated
+ */
+ EOperation getExpression__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.LetStatement <em>Let Statement</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Let Statement</em>'.
+ * @see rba.core.LetStatement
+ * @generated
+ */
+ EClass getLetStatement();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.LetStatement#getVariable <em>Variable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Variable</em>'.
+ * @see rba.core.LetStatement#getVariable()
+ * @see #getLetStatement()
+ * @generated
+ */
+ EReference getLetStatement_Variable();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.LetStatement#getBody <em>Body</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Body</em>'.
+ * @see rba.core.LetStatement#getBody()
+ * @see #getLetStatement()
+ * @generated
+ */
+ EReference getLetStatement_Body();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LetStatement#toString() <em>To String</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>To String</em>' operation.
+ * @see rba.core.LetStatement#toString()
+ * @generated
+ */
+ EOperation getLetStatement__ToString();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ComplexExpression <em>Complex Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Complex Expression</em>'.
+ * @see rba.core.ComplexExpression
+ * @generated
+ */
+ EClass getComplexExpression();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.ComplexExpression#getOtherExpression <em>Other Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Other Expression</em>'.
+ * @see rba.core.ComplexExpression#getOtherExpression()
+ * @see #getComplexExpression()
+ * @generated
+ */
+ EReference getComplexExpression_OtherExpression();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComplexExpression#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ComplexExpression#getExpressionText()
+ * @generated
+ */
+ EOperation getComplexExpression__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComplexExpression#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ComplexExpression#getUnderlyingType()
+ * @generated
+ */
+ EOperation getComplexExpression__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComplexExpression#getType() <em>Get Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Type</em>' operation.
+ * @see rba.core.ComplexExpression#getType()
+ * @generated
+ */
+ EOperation getComplexExpression__GetType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Operator <em>Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Operator</em>'.
+ * @see rba.core.Operator
+ * @generated
+ */
+ EClass getOperator();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link rba.core.Operator#getOperand <em>Operand</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Operand</em>'.
+ * @see rba.core.Operator#getOperand()
+ * @see #getOperator()
+ * @generated
+ */
+ EReference getOperator_Operand();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Operator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.Operator#getSymbol()
+ * @generated
+ */
+ EOperation getOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsTypeOf <em>Is Type Of</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Type Of</em>'.
+ * @see rba.core.IsTypeOf
+ * @generated
+ */
+ EClass getIsTypeOf();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.IsTypeOf#getTagName <em>Tag Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Tag Name</em>'.
+ * @see rba.core.IsTypeOf#getTagName()
+ * @see #getIsTypeOf()
+ * @generated
+ */
+ EAttribute getIsTypeOf_TagName();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsTypeOf#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.IsTypeOf#getExpressionText()
+ * @generated
+ */
+ EOperation getIsTypeOf__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsTypeOf#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsTypeOf#getSymbol()
+ * @generated
+ */
+ EOperation getIsTypeOf__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsTypeOf#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IsTypeOf#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIsTypeOf__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ObjectReference <em>Object Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Object Reference</em>'.
+ * @see rba.core.ObjectReference
+ * @generated
+ */
+ EClass getObjectReference();
+
+ /**
+ * Returns the meta object for the reference '{@link rba.core.ObjectReference#getRefObject <em>Ref Object</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Ref Object</em>'.
+ * @see rba.core.ObjectReference#getRefObject()
+ * @see #getObjectReference()
+ * @generated
+ */
+ EReference getObjectReference_RefObject();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectReference#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ObjectReference#getUnderlyingType()
+ * @generated
+ */
+ EOperation getObjectReference__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectReference#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ObjectReference#getExpressionText()
+ * @generated
+ */
+ EOperation getObjectReference__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.PreviousModifier <em>Previous Modifier</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Previous Modifier</em>'.
+ * @see rba.core.PreviousModifier
+ * @generated
+ */
+ EClass getPreviousModifier();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.PreviousModifier#getObjReference <em>Obj Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Obj Reference</em>'.
+ * @see rba.core.PreviousModifier#getObjReference()
+ * @see #getPreviousModifier()
+ * @generated
+ */
+ EReference getPreviousModifier_ObjReference();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.PreviousModifier#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.PreviousModifier#getSymbol()
+ * @generated
+ */
+ EOperation getPreviousModifier__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.PreviousModifier#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.PreviousModifier#getUnderlyingType()
+ * @generated
+ */
+ EOperation getPreviousModifier__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.PreviousModifier#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.PreviousModifier#getExpressionText()
+ * @generated
+ */
+ EOperation getPreviousModifier__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.GreaterThanOperator <em>Greater Than Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Greater Than Operator</em>'.
+ * @see rba.core.GreaterThanOperator
+ * @generated
+ */
+ EClass getGreaterThanOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GreaterThanOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.GreaterThanOperator#getSymbol()
+ * @generated
+ */
+ EOperation getGreaterThanOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.MuchGreaterThanOperator <em>Much Greater Than Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Much Greater Than Operator</em>'.
+ * @see rba.core.MuchGreaterThanOperator
+ * @generated
+ */
+ EClass getMuchGreaterThanOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MuchGreaterThanOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.MuchGreaterThanOperator#getSymbol()
+ * @generated
+ */
+ EOperation getMuchGreaterThanOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.LowerThanOperator <em>Lower Than Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Lower Than Operator</em>'.
+ * @see rba.core.LowerThanOperator
+ * @generated
+ */
+ EClass getLowerThanOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LowerThanOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.LowerThanOperator#getSymbol()
+ * @generated
+ */
+ EOperation getLowerThanOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ComparisonOperator <em>Comparison Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Comparison Operator</em>'.
+ * @see rba.core.ComparisonOperator
+ * @generated
+ */
+ EClass getComparisonOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComparisonOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ComparisonOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getComparisonOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComparisonOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ComparisonOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getComparisonOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.EqualToOperator <em>Equal To Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Equal To Operator</em>'.
+ * @see rba.core.EqualToOperator
+ * @generated
+ */
+ EClass getEqualToOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.EqualToOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.EqualToOperator#getSymbol()
+ * @generated
+ */
+ EOperation getEqualToOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ComparisonAnd <em>Comparison And</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Comparison And</em>'.
+ * @see rba.core.ComparisonAnd
+ * @generated
+ */
+ EClass getComparisonAnd();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComparisonAnd#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ComparisonAnd#getSymbol()
+ * @generated
+ */
+ EOperation getComparisonAnd__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ComparisonAnd#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ComparisonAnd#getExpressionText()
+ * @generated
+ */
+ EOperation getComparisonAnd__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.LogicalOperator <em>Logical Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Logical Operator</em>'.
+ * @see rba.core.LogicalOperator
+ * @generated
+ */
+ EClass getLogicalOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LogicalOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.LogicalOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getLogicalOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LogicalOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.LogicalOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getLogicalOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AndOperator <em>And Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>And Operator</em>'.
+ * @see rba.core.AndOperator
+ * @generated
+ */
+ EClass getAndOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AndOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.AndOperator#getSymbol()
+ * @generated
+ */
+ EOperation getAndOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.OrOperator <em>Or Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Or Operator</em>'.
+ * @see rba.core.OrOperator
+ * @generated
+ */
+ EClass getOrOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.OrOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.OrOperator#getSymbol()
+ * @generated
+ */
+ EOperation getOrOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.NotOperator <em>Not Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Not Operator</em>'.
+ * @see rba.core.NotOperator
+ * @generated
+ */
+ EClass getNotOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.NotOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.NotOperator#getSymbol()
+ * @generated
+ */
+ EOperation getNotOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.NotOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.NotOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getNotOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsEqualToOperator <em>Is Equal To Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Equal To Operator</em>'.
+ * @see rba.core.IsEqualToOperator
+ * @generated
+ */
+ EClass getIsEqualToOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsEqualToOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsEqualToOperator#getSymbol()
+ * @generated
+ */
+ EOperation getIsEqualToOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsGreaterThanOperator <em>Is Greater Than Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Greater Than Operator</em>'.
+ * @see rba.core.IsGreaterThanOperator
+ * @generated
+ */
+ EClass getIsGreaterThanOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsGreaterThanOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsGreaterThanOperator#getSymbol()
+ * @generated
+ */
+ EOperation getIsGreaterThanOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsLowerThanOperator <em>Is Lower Than Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Lower Than Operator</em>'.
+ * @see rba.core.IsLowerThanOperator
+ * @generated
+ */
+ EClass getIsLowerThanOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsLowerThanOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsLowerThanOperator#getSymbol()
+ * @generated
+ */
+ EOperation getIsLowerThanOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsGreaterThanEqualOperator <em>Is Greater Than Equal Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Greater Than Equal Operator</em>'.
+ * @see rba.core.IsGreaterThanEqualOperator
+ * @generated
+ */
+ EClass getIsGreaterThanEqualOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsGreaterThanEqualOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsGreaterThanEqualOperator#getSymbol()
+ * @generated
+ */
+ EOperation getIsGreaterThanEqualOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsLowerThanEqualOperator <em>Is Lower Than Equal Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Lower Than Equal Operator</em>'.
+ * @see rba.core.IsLowerThanEqualOperator
+ * @generated
+ */
+ EClass getIsLowerThanEqualOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsLowerThanEqualOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsLowerThanEqualOperator#getSymbol()
+ * @generated
+ */
+ EOperation getIsLowerThanEqualOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ArithmeticOperator <em>Arithmetic Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Arithmetic Operator</em>'.
+ * @see rba.core.ArithmeticOperator
+ * @generated
+ */
+ EClass getArithmeticOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ArithmeticOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ArithmeticOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getArithmeticOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ArithmeticOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ArithmeticOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getArithmeticOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.PlusOperator <em>Plus Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Plus Operator</em>'.
+ * @see rba.core.PlusOperator
+ * @generated
+ */
+ EClass getPlusOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.PlusOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.PlusOperator#getSymbol()
+ * @generated
+ */
+ EOperation getPlusOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ImpliesOperator <em>Implies Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Implies Operator</em>'.
+ * @see rba.core.ImpliesOperator
+ * @generated
+ */
+ EClass getImpliesOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ImpliesOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ImpliesOperator#getSymbol()
+ * @generated
+ */
+ EOperation getImpliesOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ContentOperator <em>Content Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content Operator</em>'.
+ * @see rba.core.ContentOperator
+ * @generated
+ */
+ EClass getContentOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ContentOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ContentOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getContentOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsActive <em>Is Active</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Active</em>'.
+ * @see rba.core.IsActive
+ * @generated
+ */
+ EClass getIsActive();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsActive#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsActive#getSymbol()
+ * @generated
+ */
+ EOperation getIsActive__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsActive#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IsActive#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIsActive__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.GetAllocatables <em>Get Allocatables</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Get Allocatables</em>'.
+ * @see rba.core.GetAllocatables
+ * @generated
+ */
+ EClass getGetAllocatables();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetAllocatables#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.GetAllocatables#getSymbol()
+ * @generated
+ */
+ EOperation getGetAllocatables__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetAllocatables#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.GetAllocatables#getUnderlyingType()
+ * @generated
+ */
+ EOperation getGetAllocatables__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.HasBeenDisplayed <em>Has Been Displayed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Has Been Displayed</em>'.
+ * @see rba.core.HasBeenDisplayed
+ * @generated
+ */
+ EClass getHasBeenDisplayed();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasBeenDisplayed#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.HasBeenDisplayed#getSymbol()
+ * @generated
+ */
+ EOperation getHasBeenDisplayed__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasBeenDisplayed#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.HasBeenDisplayed#getUnderlyingType()
+ * @generated
+ */
+ EOperation getHasBeenDisplayed__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ActiveState <em>Active State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Active State</em>'.
+ * @see rba.core.ActiveState
+ * @generated
+ */
+ EClass getActiveState();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ActiveState#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ActiveState#getSymbol()
+ * @generated
+ */
+ EOperation getActiveState__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ActiveState#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ActiveState#getUnderlyingType()
+ * @generated
+ */
+ EOperation getActiveState__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ObjectCompare <em>Object Compare</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Object Compare</em>'.
+ * @see rba.core.ObjectCompare
+ * @generated
+ */
+ EClass getObjectCompare();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectCompare#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ObjectCompare#getSymbol()
+ * @generated
+ */
+ EOperation getObjectCompare__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectCompare#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ObjectCompare#getUnderlyingType()
+ * @generated
+ */
+ EOperation getObjectCompare__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectCompare#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ObjectCompare#getExpressionText()
+ * @generated
+ */
+ EOperation getObjectCompare__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ThatOfOperator <em>That Of Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>That Of Operator</em>'.
+ * @see rba.core.ThatOfOperator
+ * @generated
+ */
+ EClass getThatOfOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ThatOfOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ThatOfOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getThatOfOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ThatOfOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ThatOfOperator#getSymbol()
+ * @generated
+ */
+ EOperation getThatOfOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ThatOfOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ThatOfOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getThatOfOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ValueExpression <em>Value Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Value Expression</em>'.
+ * @see rba.core.ValueExpression
+ * @generated
+ */
+ EClass getValueExpression();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ValueExpression#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ValueExpression#getUnderlyingType()
+ * @generated
+ */
+ EOperation getValueExpression__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ValueExpression#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.ValueExpression#getExpressionValue()
+ * @generated
+ */
+ EOperation getValueExpression__GetExpressionValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ValueExpression#getType() <em>Get Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Type</em>' operation.
+ * @see rba.core.ValueExpression#getType()
+ * @generated
+ */
+ EOperation getValueExpression__GetType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.MaxValue <em>Max Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Max Value</em>'.
+ * @see rba.core.MaxValue
+ * @generated
+ */
+ EClass getMaxValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MaxValue#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.MaxValue#getExpressionText()
+ * @generated
+ */
+ EOperation getMaxValue__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MaxValue#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.MaxValue#getExpressionValue()
+ * @generated
+ */
+ EOperation getMaxValue__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.MinValue <em>Min Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Min Value</em>'.
+ * @see rba.core.MinValue
+ * @generated
+ */
+ EClass getMinValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MinValue#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.MinValue#getExpressionText()
+ * @generated
+ */
+ EOperation getMinValue__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MinValue#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.MinValue#getExpressionValue()
+ * @generated
+ */
+ EOperation getMinValue__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.NoneValue <em>None Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>None Value</em>'.
+ * @see rba.core.NoneValue
+ * @generated
+ */
+ EClass getNoneValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.NoneValue#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.NoneValue#getExpressionText()
+ * @generated
+ */
+ EOperation getNoneValue__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.NoneValue#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.NoneValue#getExpressionValue()
+ * @generated
+ */
+ EOperation getNoneValue__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.StandardValue <em>Standard Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Standard Value</em>'.
+ * @see rba.core.StandardValue
+ * @generated
+ */
+ EClass getStandardValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.StandardValue#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.StandardValue#getExpressionText()
+ * @generated
+ */
+ EOperation getStandardValue__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.StandardValue#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.StandardValue#getExpressionValue()
+ * @generated
+ */
+ EOperation getStandardValue__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IntegerValue <em>Integer Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Integer Value</em>'.
+ * @see rba.core.IntegerValue
+ * @generated
+ */
+ EClass getIntegerValue();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.IntegerValue#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see rba.core.IntegerValue#getValue()
+ * @see #getIntegerValue()
+ * @generated
+ */
+ EAttribute getIntegerValue_Value();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IntegerValue#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.IntegerValue#getExpressionText()
+ * @generated
+ */
+ EOperation getIntegerValue__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IntegerValue#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.IntegerValue#getExpressionValue()
+ * @generated
+ */
+ EOperation getIntegerValue__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.EnumExpression <em>Enum Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Enum Expression</em>'.
+ * @see rba.core.EnumExpression
+ * @generated
+ */
+ EClass getEnumExpression();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.EnumExpression#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.EnumExpression#getUnderlyingType()
+ * @generated
+ */
+ EOperation getEnumExpression__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.EnumExpression#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.EnumExpression#getExpressionValue()
+ * @generated
+ */
+ EOperation getEnumExpression__GetExpressionValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.EnumExpression#getType() <em>Get Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Type</em>' operation.
+ * @see rba.core.EnumExpression#getType()
+ * @generated
+ */
+ EOperation getEnumExpression__GetType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.LoserTypeExpression <em>Loser Type Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Loser Type Expression</em>'.
+ * @see rba.core.LoserTypeExpression
+ * @generated
+ */
+ EClass getLoserTypeExpression();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.LoserTypeExpression#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see rba.core.LoserTypeExpression#getValue()
+ * @see #getLoserTypeExpression()
+ * @generated
+ */
+ EAttribute getLoserTypeExpression_Value();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LoserTypeExpression#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.LoserTypeExpression#getExpressionText()
+ * @generated
+ */
+ EOperation getLoserTypeExpression__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LoserTypeExpression#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.LoserTypeExpression#getExpressionValue()
+ * @generated
+ */
+ EOperation getLoserTypeExpression__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ArbitrationPolicyExpression <em>Arbitration Policy Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Arbitration Policy Expression</em>'.
+ * @see rba.core.ArbitrationPolicyExpression
+ * @generated
+ */
+ EClass getArbitrationPolicyExpression();
+
+ /**
+ * Returns the meta object for the attribute '{@link rba.core.ArbitrationPolicyExpression#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see rba.core.ArbitrationPolicyExpression#getValue()
+ * @see #getArbitrationPolicyExpression()
+ * @generated
+ */
+ EAttribute getArbitrationPolicyExpression_Value();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ArbitrationPolicyExpression#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ArbitrationPolicyExpression#getExpressionText()
+ * @generated
+ */
+ EOperation getArbitrationPolicyExpression__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ArbitrationPolicyExpression#getExpressionValue() <em>Get Expression Value</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Value</em>' operation.
+ * @see rba.core.ArbitrationPolicyExpression#getExpressionValue()
+ * @generated
+ */
+ EOperation getArbitrationPolicyExpression__GetExpressionValue();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SetExpression <em>Set Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Set Expression</em>'.
+ * @see rba.core.SetExpression
+ * @generated
+ */
+ EClass getSetExpression();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SetOperator <em>Set Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Set Operator</em>'.
+ * @see rba.core.SetOperator
+ * @generated
+ */
+ EClass getSetOperator();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SizeOperator <em>Size Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Size Operator</em>'.
+ * @see rba.core.SizeOperator
+ * @generated
+ */
+ EClass getSizeOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SizeOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.SizeOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getSizeOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SizeOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.SizeOperator#getSymbol()
+ * @generated
+ */
+ EOperation getSizeOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SizeOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.SizeOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getSizeOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ExistsOperator <em>Exists Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Exists Operator</em>'.
+ * @see rba.core.ExistsOperator
+ * @generated
+ */
+ EClass getExistsOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ExistsOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ExistsOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getExistsOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ExistsOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ExistsOperator#getSymbol()
+ * @generated
+ */
+ EOperation getExistsOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ExistsOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ExistsOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getExistsOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ForAllOperator <em>For All Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>For All Operator</em>'.
+ * @see rba.core.ForAllOperator
+ * @generated
+ */
+ EClass getForAllOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ForAllOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ForAllOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getForAllOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ForAllOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ForAllOperator#getSymbol()
+ * @generated
+ */
+ EOperation getForAllOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ForAllOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ForAllOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getForAllOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.MaxOperator <em>Max Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Max Operator</em>'.
+ * @see rba.core.MaxOperator
+ * @generated
+ */
+ EClass getMaxOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MaxOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.MaxOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getMaxOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MaxOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.MaxOperator#getSymbol()
+ * @generated
+ */
+ EOperation getMaxOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MaxOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.MaxOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getMaxOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.MinOperator <em>Min Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Min Operator</em>'.
+ * @see rba.core.MinOperator
+ * @generated
+ */
+ EClass getMinOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MinOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.MinOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getMinOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MinOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.MinOperator#getSymbol()
+ * @generated
+ */
+ EOperation getMinOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.MinOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.MinOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getMinOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SelectOperator <em>Select Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Select Operator</em>'.
+ * @see rba.core.SelectOperator
+ * @generated
+ */
+ EClass getSelectOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SelectOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.SelectOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getSelectOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SelectOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.SelectOperator#getSymbol()
+ * @generated
+ */
+ EOperation getSelectOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SelectOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.SelectOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getSelectOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SetOfOperator <em>Set Of Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Set Of Operator</em>'.
+ * @see rba.core.SetOfOperator
+ * @generated
+ */
+ EClass getSetOfOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SetOfOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.SetOfOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getSetOfOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SetOfOperator#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.SetOfOperator#getSymbol()
+ * @generated
+ */
+ EOperation getSetOfOperator__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SetOfOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.SetOfOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getSetOfOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.LambdaExpression <em>Lambda Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Lambda Expression</em>'.
+ * @see rba.core.LambdaExpression
+ * @generated
+ */
+ EClass getLambdaExpression();
+
+ /**
+ * Returns the meta object for the container reference '{@link rba.core.LambdaExpression#getContext <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Context</em>'.
+ * @see rba.core.LambdaExpression#getContext()
+ * @see #getLambdaExpression()
+ * @generated
+ */
+ EReference getLambdaExpression_Context();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.LambdaExpression#getX <em>X</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>X</em>'.
+ * @see rba.core.LambdaExpression#getX()
+ * @see #getLambdaExpression()
+ * @generated
+ */
+ EReference getLambdaExpression_X();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.LambdaExpression#getBodyText <em>Body Text</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Body Text</em>'.
+ * @see rba.core.LambdaExpression#getBodyText()
+ * @see #getLambdaExpression()
+ * @generated
+ */
+ EReference getLambdaExpression_BodyText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LambdaExpression#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.LambdaExpression#getExpressionText()
+ * @generated
+ */
+ EOperation getLambdaExpression__GetExpressionText();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LambdaExpression#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.LambdaExpression#getUnderlyingType()
+ * @generated
+ */
+ EOperation getLambdaExpression__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.Variable <em>Variable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Variable</em>'.
+ * @see rba.core.Variable
+ * @generated
+ */
+ EClass getVariable();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.Variable#getExpressionType() <em>Get Expression Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Type</em>' operation.
+ * @see rba.core.Variable#getExpressionType()
+ * @generated
+ */
+ EOperation getVariable__GetExpressionType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.LambdaContext <em>Lambda Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Lambda Context</em>'.
+ * @see rba.core.LambdaContext
+ * @generated
+ */
+ EClass getLambdaContext();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.LambdaContext#getLambda <em>Lambda</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Lambda</em>'.
+ * @see rba.core.LambdaContext#getLambda()
+ * @see #getLambdaContext()
+ * @generated
+ */
+ EReference getLambdaContext_Lambda();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.LambdaContext#getContextType() <em>Get Context Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Context Type</em>' operation.
+ * @see rba.core.LambdaContext#getContextType()
+ * @generated
+ */
+ EOperation getLambdaContext__GetContextType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IfStatement <em>If Statement</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>If Statement</em>'.
+ * @see rba.core.IfStatement
+ * @generated
+ */
+ EClass getIfStatement();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.IfStatement#getCondition <em>Condition</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Condition</em>'.
+ * @see rba.core.IfStatement#getCondition()
+ * @see #getIfStatement()
+ * @generated
+ */
+ EReference getIfStatement_Condition();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.IfStatement#getThenExpression <em>Then Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Then Expression</em>'.
+ * @see rba.core.IfStatement#getThenExpression()
+ * @see #getIfStatement()
+ * @generated
+ */
+ EReference getIfStatement_ThenExpression();
+
+ /**
+ * Returns the meta object for the containment reference '{@link rba.core.IfStatement#getElseExpression <em>Else Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Else Expression</em>'.
+ * @see rba.core.IfStatement#getElseExpression()
+ * @see #getIfStatement()
+ * @generated
+ */
+ EReference getIfStatement_ElseExpression();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IfStatement#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IfStatement#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIfStatement__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IfStatement#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.IfStatement#getExpressionText()
+ * @generated
+ */
+ EOperation getIfStatement__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SceneOperator <em>Scene Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Scene Operator</em>'.
+ * @see rba.core.SceneOperator
+ * @generated
+ */
+ EClass getSceneOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SceneOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.SceneOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getSceneOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsOn <em>Is On</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is On</em>'.
+ * @see rba.core.IsOn
+ * @generated
+ */
+ EClass getIsOn();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsOn#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsOn#getSymbol()
+ * @generated
+ */
+ EOperation getIsOn__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsOn#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IsOn#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIsOn__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AllocatableOperator <em>Allocatable Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocatable Operator</em>'.
+ * @see rba.core.AllocatableOperator
+ * @generated
+ */
+ EClass getAllocatableOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AllocatableOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.AllocatableOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getAllocatableOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.AllocatedContent <em>Allocated Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocated Content</em>'.
+ * @see rba.core.AllocatedContent
+ * @generated
+ */
+ EClass getAllocatedContent();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AllocatedContent#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.AllocatedContent#getSymbol()
+ * @generated
+ */
+ EOperation getAllocatedContent__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.AllocatedContent#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.AllocatedContent#getUnderlyingType()
+ * @generated
+ */
+ EOperation getAllocatedContent__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ContentValue <em>Content Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content Value</em>'.
+ * @see rba.core.ContentValue
+ * @generated
+ */
+ EClass getContentValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ContentValue#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ContentValue#getSymbol()
+ * @generated
+ */
+ EOperation getContentValue__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ContentValue#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ContentValue#getUnderlyingType()
+ * @generated
+ */
+ EOperation getContentValue__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.GetContentsList <em>Get Contents List</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Get Contents List</em>'.
+ * @see rba.core.GetContentsList
+ * @generated
+ */
+ EClass getGetContentsList();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetContentsList#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.GetContentsList#getSymbol()
+ * @generated
+ */
+ EOperation getGetContentsList__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetContentsList#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.GetContentsList#getUnderlyingType()
+ * @generated
+ */
+ EOperation getGetContentsList__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ActiveContents <em>Active Contents</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Active Contents</em>'.
+ * @see rba.core.ActiveContents
+ * @generated
+ */
+ EClass getActiveContents();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ActiveContents#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ActiveContents#getSymbol()
+ * @generated
+ */
+ EOperation getActiveContents__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ActiveContents#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ActiveContents#getUnderlyingType()
+ * @generated
+ */
+ EOperation getActiveContents__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.PropertyOperator <em>Property Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Property Operator</em>'.
+ * @see rba.core.PropertyOperator
+ * @generated
+ */
+ EClass getPropertyOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.PropertyOperator#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.PropertyOperator#getUnderlyingType()
+ * @generated
+ */
+ EOperation getPropertyOperator__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.PropertyOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.PropertyOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getPropertyOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.GetProperty <em>Get Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Get Property</em>'.
+ * @see rba.core.GetProperty
+ * @generated
+ */
+ EClass getGetProperty();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetProperty#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.GetProperty#getSymbol()
+ * @generated
+ */
+ EOperation getGetProperty__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetProperty#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.GetProperty#getUnderlyingType()
+ * @generated
+ */
+ EOperation getGetProperty__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.StateValue <em>State Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>State Value</em>'.
+ * @see rba.core.StateValue
+ * @generated
+ */
+ EClass getStateValue();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.StateValue#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.StateValue#getSymbol()
+ * @generated
+ */
+ EOperation getStateValue__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.StateValue#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.StateValue#getUnderlyingType()
+ * @generated
+ */
+ EOperation getStateValue__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.HasComeLaterThan <em>Has Come Later Than</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Has Come Later Than</em>'.
+ * @see rba.core.HasComeLaterThan
+ * @generated
+ */
+ EClass getHasComeLaterThan();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasComeLaterThan#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.HasComeLaterThan#getSymbol()
+ * @generated
+ */
+ EOperation getHasComeLaterThan__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasComeLaterThan#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.HasComeLaterThan#getUnderlyingType()
+ * @generated
+ */
+ EOperation getHasComeLaterThan__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasComeLaterThan#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.HasComeLaterThan#getExpressionText()
+ * @generated
+ */
+ EOperation getHasComeLaterThan__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.HasComeEarlierThan <em>Has Come Earlier Than</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Has Come Earlier Than</em>'.
+ * @see rba.core.HasComeEarlierThan
+ * @generated
+ */
+ EClass getHasComeEarlierThan();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasComeEarlierThan#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.HasComeEarlierThan#getSymbol()
+ * @generated
+ */
+ EOperation getHasComeEarlierThan__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasComeEarlierThan#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.HasComeEarlierThan#getUnderlyingType()
+ * @generated
+ */
+ EOperation getHasComeEarlierThan__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.HasComeEarlierThan#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.HasComeEarlierThan#getExpressionText()
+ * @generated
+ */
+ EOperation getHasComeEarlierThan__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SugarExpression <em>Sugar Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Sugar Expression</em>'.
+ * @see rba.core.SugarExpression
+ * @generated
+ */
+ EClass getSugarExpression();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SugarExpression#canExpand() <em>Can Expand</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Can Expand</em>' operation.
+ * @see rba.core.SugarExpression#canExpand()
+ * @generated
+ */
+ EOperation getSugarExpression__CanExpand();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SugarExpression#getExpanded() <em>Get Expanded</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expanded</em>' operation.
+ * @see rba.core.SugarExpression#getExpanded()
+ * @generated
+ */
+ EOperation getSugarExpression__GetExpanded();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.SugarExpressionBase <em>Sugar Expression Base</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Sugar Expression Base</em>'.
+ * @see rba.core.SugarExpressionBase
+ * @generated
+ */
+ EClass getSugarExpressionBase();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.SugarExpressionBase#canExpand() <em>Can Expand</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Can Expand</em>' operation.
+ * @see rba.core.SugarExpressionBase#canExpand()
+ * @generated
+ */
+ EOperation getSugarExpressionBase__CanExpand();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ObjectCompareNot <em>Object Compare Not</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Object Compare Not</em>'.
+ * @see rba.core.ObjectCompareNot
+ * @generated
+ */
+ EClass getObjectCompareNot();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectCompareNot#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.ObjectCompareNot#getSymbol()
+ * @generated
+ */
+ EOperation getObjectCompareNot__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectCompareNot#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.ObjectCompareNot#getUnderlyingType()
+ * @generated
+ */
+ EOperation getObjectCompareNot__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ObjectCompareNot#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ObjectCompareNot#getExpressionText()
+ * @generated
+ */
+ EOperation getObjectCompareNot__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsAllocatedTo <em>Is Allocated To</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Allocated To</em>'.
+ * @see rba.core.IsAllocatedTo
+ * @generated
+ */
+ EClass getIsAllocatedTo();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsAllocatedTo#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsAllocatedTo#getSymbol()
+ * @generated
+ */
+ EOperation getIsAllocatedTo__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsAllocatedTo#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IsAllocatedTo#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIsAllocatedTo__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsAllocatedTo#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.IsAllocatedTo#getExpressionText()
+ * @generated
+ */
+ EOperation getIsAllocatedTo__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsChanged <em>Is Changed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Changed</em>'.
+ * @see rba.core.IsChanged
+ * @generated
+ */
+ EClass getIsChanged();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsChanged#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsChanged#getSymbol()
+ * @generated
+ */
+ EOperation getIsChanged__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsChanged#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IsChanged#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIsChanged__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.IsTranslatedTo <em>Is Translated To</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is Translated To</em>'.
+ * @see rba.core.IsTranslatedTo
+ * @generated
+ */
+ EClass getIsTranslatedTo();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsTranslatedTo#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.IsTranslatedTo#getSymbol()
+ * @generated
+ */
+ EOperation getIsTranslatedTo__GetSymbol();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsTranslatedTo#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.IsTranslatedTo#getUnderlyingType()
+ * @generated
+ */
+ EOperation getIsTranslatedTo__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.IsTranslatedTo#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.IsTranslatedTo#getExpressionText()
+ * @generated
+ */
+ EOperation getIsTranslatedTo__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.GetState <em>Get State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Get State</em>'.
+ * @see rba.core.GetState
+ * @generated
+ */
+ EClass getGetState();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.GetState#getSymbol() <em>Get Symbol</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Symbol</em>' operation.
+ * @see rba.core.GetState#getSymbol()
+ * @generated
+ */
+ EOperation getGetState__GetSymbol();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.ContentStateOperator <em>Content State Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content State Operator</em>'.
+ * @see rba.core.ContentStateOperator
+ * @generated
+ */
+ EClass getContentStateOperator();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.ContentStateOperator#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.ContentStateOperator#getExpressionText()
+ * @generated
+ */
+ EOperation getContentStateOperator__GetExpressionText();
+
+ /**
+ * Returns the meta object for class '{@link rba.core.NullExpression <em>Null Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Null Expression</em>'.
+ * @see rba.core.NullExpression
+ * @generated
+ */
+ EClass getNullExpression();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.NullExpression#getUnderlyingType() <em>Get Underlying Type</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Underlying Type</em>' operation.
+ * @see rba.core.NullExpression#getUnderlyingType()
+ * @generated
+ */
+ EOperation getNullExpression__GetUnderlyingType();
+
+ /**
+ * Returns the meta object for the '{@link rba.core.NullExpression#getExpressionText() <em>Get Expression Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Expression Text</em>' operation.
+ * @see rba.core.NullExpression#getExpressionText()
+ * @generated
+ */
+ EOperation getNullExpression__GetExpressionText();
+
+ /**
+ * Returns the meta object for enum '{@link rba.core.ArbitrationPolicy <em>Arbitration Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Arbitration Policy</em>'.
+ * @see rba.core.ArbitrationPolicy
+ * @generated
+ */
+ EEnum getArbitrationPolicy();
+
+ /**
+ * Returns the meta object for enum '{@link rba.core.ExpressionType <em>Expression Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Expression Type</em>'.
+ * @see rba.core.ExpressionType
+ * @generated
+ */
+ EEnum getExpressionType();
+
+ /**
+ * Returns the meta object for enum '{@link rba.core.LoserType <em>Loser Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Loser Type</em>'.
+ * @see rba.core.LoserType
+ * @generated
+ */
+ EEnum getLoserType();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ RBACoreFactory getRBACoreFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ModelElementImpl <em>Model Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ModelElementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getModelElement()
+ * @generated
+ */
+ EClass MODEL_ELEMENT = eINSTANCE.getModelElement();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MODEL_ELEMENT__DESCRIPTION = eINSTANCE.getModelElement_Description();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.NamedElementImpl <em>Named Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NamedElementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNamedElement()
+ * @generated
+ */
+ EClass NAMED_ELEMENT = eINSTANCE.getNamedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NAMED_ELEMENT__NAME = eINSTANCE.getNamedElement_Name();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AbstractAllocatableImpl <em>Abstract Allocatable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractAllocatableImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractAllocatable()
+ * @generated
+ */
+ EClass ABSTRACT_ALLOCATABLE = eINSTANCE.getAbstractAllocatable();
+
+ /**
+ * The meta object literal for the '<em><b>Contents</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_ALLOCATABLE__CONTENTS = eINSTANCE.getAbstractAllocatable_Contents();
+
+ /**
+ * The meta object literal for the '<em><b>Allocatable Group</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP = eINSTANCE.getAbstractAllocatable_AllocatableGroup();
+
+ /**
+ * The meta object literal for the '<em><b>Get Contents List</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ABSTRACT_ALLOCATABLE___GET_CONTENTS_LIST = eINSTANCE.getAbstractAllocatable__GetContentsList();
+
+ /**
+ * The meta object literal for the '<em><b>Collect Leaf Allocatable</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ABSTRACT_ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE = eINSTANCE
+ .getAbstractAllocatable__CollectLeafAllocatable();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AllocatableImpl <em>Allocatable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatableImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatable()
+ * @generated
+ */
+ EClass ALLOCATABLE = eINSTANCE.getAllocatable();
+
+ /**
+ * The meta object literal for the '<em><b>Arbitration Policy</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ALLOCATABLE__ARBITRATION_POLICY = eINSTANCE.getAllocatable_ArbitrationPolicy();
+
+ /**
+ * The meta object literal for the '<em><b>Visibility</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATABLE__VISIBILITY = eINSTANCE.getAllocatable_Visibility();
+
+ /**
+ * The meta object literal for the '<em><b>Collect Leaf Allocatable</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE = eINSTANCE.getAllocatable__CollectLeafAllocatable();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AllocatableSetImpl <em>Allocatable Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatableSetImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatableSet()
+ * @generated
+ */
+ EClass ALLOCATABLE_SET = eINSTANCE.getAllocatableSet();
+
+ /**
+ * The meta object literal for the '<em><b>Target</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATABLE_SET__TARGET = eINSTANCE.getAllocatableSet_Target();
+
+ /**
+ * The meta object literal for the '<em><b>Collect Leaf Allocatable</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATABLE_SET___COLLECT_LEAF_ALLOCATABLE = eINSTANCE.getAllocatableSet__CollectLeafAllocatable();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ProjectImpl <em>Project</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ProjectImpl
+ * @see rba.core.impl.RBACorePackageImpl#getProject()
+ * @generated
+ */
+ EClass PROJECT = eINSTANCE.getProject();
+
+ /**
+ * The meta object literal for the '<em><b>Version</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROJECT__VERSION = eINSTANCE.getProject_Version();
+
+ /**
+ * The meta object literal for the '<em><b>Dummy Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROJECT__DUMMY_NAME = eINSTANCE.getProject_DummyName();
+
+ /**
+ * The meta object literal for the '<em><b>Get Name</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PROJECT___GET_NAME = eINSTANCE.getProject__GetName();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.PackagableElementImpl <em>Packagable Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PackagableElementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPackagableElement()
+ * @generated
+ */
+ EClass PACKAGABLE_ELEMENT = eINSTANCE.getPackagableElement();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.PackageImpl <em>Package</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PackageImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPackage()
+ * @generated
+ */
+ EClass PACKAGE = eINSTANCE.getPackage();
+
+ /**
+ * The meta object literal for the '<em><b>Packagableelement</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PACKAGE__PACKAGABLEELEMENT = eINSTANCE.getPackage_Packagableelement();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.StereotypeImpl <em>Stereotype</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.StereotypeImpl
+ * @see rba.core.impl.RBACorePackageImpl#getStereotype()
+ * @generated
+ */
+ EClass STEREOTYPE = eINSTANCE.getStereotype();
+
+ /**
+ * The meta object literal for the '<em><b>Target Model Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STEREOTYPE__TARGET_MODEL_NAME = eINSTANCE.getStereotype_TargetModelName();
+
+ /**
+ * The meta object literal for the '<em><b>Variables</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STEREOTYPE__VARIABLES = eINSTANCE.getStereotype_Variables();
+
+ /**
+ * The meta object literal for the '<em><b>Body Text</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STEREOTYPE__BODY_TEXT = eINSTANCE.getStereotype_BodyText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.TagImpl <em>Tag</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.TagImpl
+ * @see rba.core.impl.RBACorePackageImpl#getTag()
+ * @generated
+ */
+ EClass TAG = eINSTANCE.getTag();
+
+ /**
+ * The meta object literal for the '<em><b>Values</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAG__VALUES = eINSTANCE.getTag_Values();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.RuleObjectImpl <em>Rule Object</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.RuleObjectImpl
+ * @see rba.core.impl.RBACorePackageImpl#getRuleObject()
+ * @generated
+ */
+ EClass RULE_OBJECT = eINSTANCE.getRuleObject();
+
+ /**
+ * The meta object literal for the '<em><b>Tags</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RULE_OBJECT__TAGS = eINSTANCE.getRuleObject_Tags();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation RULE_OBJECT___GET_EXPRESSION_TYPE = eINSTANCE.getRuleObject__GetExpressionType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AbstractContentImpl <em>Abstract Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractContentImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractContent()
+ * @generated
+ */
+ EClass ABSTRACT_CONTENT = eINSTANCE.getAbstractContent();
+
+ /**
+ * The meta object literal for the '<em><b>Content Group</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_CONTENT__CONTENT_GROUP = eINSTANCE.getAbstractContent_ContentGroup();
+
+ /**
+ * The meta object literal for the '<em><b>Allocatable</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_CONTENT__ALLOCATABLE = eINSTANCE.getAbstractContent_Allocatable();
+
+ /**
+ * The meta object literal for the '<em><b>Get Allocatable List</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ABSTRACT_CONTENT___GET_ALLOCATABLE_LIST = eINSTANCE.getAbstractContent__GetAllocatableList();
+
+ /**
+ * The meta object literal for the '<em><b>Collect Leaf Contents</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ABSTRACT_CONTENT___COLLECT_LEAF_CONTENTS = eINSTANCE.getAbstractContent__CollectLeafContents();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AbstractSceneImpl <em>Abstract Scene</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractSceneImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractScene()
+ * @generated
+ */
+ EClass ABSTRACT_SCENE = eINSTANCE.getAbstractScene();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SceneImpl <em>Scene</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SceneImpl
+ * @see rba.core.impl.RBACorePackageImpl#getScene()
+ * @generated
+ */
+ EClass SCENE = eINSTANCE.getScene();
+
+ /**
+ * The meta object literal for the '<em><b>Global</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SCENE__GLOBAL = eINSTANCE.getScene_Global();
+
+ /**
+ * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SCENE__PROPERTIES = eINSTANCE.getScene_Properties();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SCENE___GET_EXPRESSION_TYPE = eINSTANCE.getScene__GetExpressionType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ContentImpl <em>Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContent()
+ * @generated
+ */
+ EClass CONTENT = eINSTANCE.getContent();
+
+ /**
+ * The meta object literal for the '<em><b>Loser Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONTENT__LOSER_TYPE = eINSTANCE.getContent_LoserType();
+
+ /**
+ * The meta object literal for the '<em><b>States</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTENT__STATES = eINSTANCE.getContent_States();
+
+ /**
+ * The meta object literal for the '<em><b>Collect Leaf Contents</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation CONTENT___COLLECT_LEAF_CONTENTS = eINSTANCE.getContent__CollectLeafContents();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ContentSetImpl <em>Content Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentSetImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentSet()
+ * @generated
+ */
+ EClass CONTENT_SET = eINSTANCE.getContentSet();
+
+ /**
+ * The meta object literal for the '<em><b>Target</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTENT_SET__TARGET = eINSTANCE.getContentSet_Target();
+
+ /**
+ * The meta object literal for the '<em><b>Collect Leaf Contents</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation CONTENT_SET___COLLECT_LEAF_CONTENTS = eINSTANCE.getContentSet__CollectLeafContents();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ContentStateImpl <em>Content State</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentStateImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentState()
+ * @generated
+ */
+ EClass CONTENT_STATE = eINSTANCE.getContentState();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTENT_STATE__VALUE = eINSTANCE.getContentState_Value();
+
+ /**
+ * The meta object literal for the '<em><b>Owner</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTENT_STATE__OWNER = eINSTANCE.getContentState_Owner();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AbstractPropertyImpl <em>Abstract Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractPropertyImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractProperty()
+ * @generated
+ */
+ EClass ABSTRACT_PROPERTY = eINSTANCE.getAbstractProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Owner</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_PROPERTY__OWNER = eINSTANCE.getAbstractProperty_Owner();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ABSTRACT_PROPERTY___GET_EXPRESSION_TYPE = eINSTANCE.getAbstractProperty__GetExpressionType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IntegerPropertyImpl <em>Integer Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IntegerPropertyImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIntegerProperty()
+ * @generated
+ */
+ EClass INTEGER_PROPERTY = eINSTANCE.getIntegerProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference INTEGER_PROPERTY__VALUE = eINSTANCE.getIntegerProperty_Value();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AbstractConstraintImpl <em>Abstract Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AbstractConstraintImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAbstractConstraint()
+ * @generated
+ */
+ EClass ABSTRACT_CONSTRAINT = eINSTANCE.getAbstractConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Expression</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_CONSTRAINT__EXPRESSION = eINSTANCE.getAbstractConstraint_Expression();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ConstraintImpl <em>Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ConstraintImpl
+ * @see rba.core.impl.RBACorePackageImpl#getConstraint()
+ * @generated
+ */
+ EClass CONSTRAINT = eINSTANCE.getConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Runtime</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONSTRAINT__RUNTIME = eINSTANCE.getConstraint_Runtime();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ExpressionImpl <em>Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getExpression()
+ * @generated
+ */
+ EClass EXPRESSION = eINSTANCE.getExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute EXPRESSION__TYPE = eINSTANCE.getExpression_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Expression</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute EXPRESSION__EXPRESSION = eINSTANCE.getExpression_Expression();
+
+ /**
+ * The meta object literal for the '<em><b>Let Statements</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EXPRESSION__LET_STATEMENTS = eINSTANCE.getExpression_LetStatements();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation EXPRESSION___GET_UNDERLYING_TYPE = eINSTANCE.getExpression__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation EXPRESSION___GET_EXPRESSION_TEXT = eINSTANCE.getExpression__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.LetStatementImpl <em>Let Statement</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LetStatementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLetStatement()
+ * @generated
+ */
+ EClass LET_STATEMENT = eINSTANCE.getLetStatement();
+
+ /**
+ * The meta object literal for the '<em><b>Variable</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference LET_STATEMENT__VARIABLE = eINSTANCE.getLetStatement_Variable();
+
+ /**
+ * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference LET_STATEMENT__BODY = eINSTANCE.getLetStatement_Body();
+
+ /**
+ * The meta object literal for the '<em><b>To String</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LET_STATEMENT___TO_STRING = eINSTANCE.getLetStatement__ToString();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ComplexExpressionImpl <em>Complex Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ComplexExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getComplexExpression()
+ * @generated
+ */
+ EClass COMPLEX_EXPRESSION = eINSTANCE.getComplexExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Other Expression</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference COMPLEX_EXPRESSION__OTHER_EXPRESSION = eINSTANCE.getComplexExpression_OtherExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPLEX_EXPRESSION___GET_EXPRESSION_TEXT = eINSTANCE.getComplexExpression__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPLEX_EXPRESSION___GET_UNDERLYING_TYPE = eINSTANCE.getComplexExpression__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPLEX_EXPRESSION___GET_TYPE = eINSTANCE.getComplexExpression__GetType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.OperatorImpl <em>Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.OperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getOperator()
+ * @generated
+ */
+ EClass OPERATOR = eINSTANCE.getOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Operand</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference OPERATOR__OPERAND = eINSTANCE.getOperator_Operand();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OPERATOR___GET_SYMBOL = eINSTANCE.getOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsTypeOfImpl <em>Is Type Of</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsTypeOfImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsTypeOf()
+ * @generated
+ */
+ EClass IS_TYPE_OF = eINSTANCE.getIsTypeOf();
+
+ /**
+ * The meta object literal for the '<em><b>Tag Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute IS_TYPE_OF__TAG_NAME = eINSTANCE.getIsTypeOf_TagName();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_TYPE_OF___GET_EXPRESSION_TEXT = eINSTANCE.getIsTypeOf__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_TYPE_OF___GET_SYMBOL = eINSTANCE.getIsTypeOf__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_TYPE_OF___GET_UNDERLYING_TYPE = eINSTANCE.getIsTypeOf__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ObjectReferenceImpl <em>Object Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ObjectReferenceImpl
+ * @see rba.core.impl.RBACorePackageImpl#getObjectReference()
+ * @generated
+ */
+ EClass OBJECT_REFERENCE = eINSTANCE.getObjectReference();
+
+ /**
+ * The meta object literal for the '<em><b>Ref Object</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference OBJECT_REFERENCE__REF_OBJECT = eINSTANCE.getObjectReference_RefObject();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_REFERENCE___GET_UNDERLYING_TYPE = eINSTANCE.getObjectReference__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_REFERENCE___GET_EXPRESSION_TEXT = eINSTANCE.getObjectReference__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.PreviousModifierImpl <em>Previous Modifier</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PreviousModifierImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPreviousModifier()
+ * @generated
+ */
+ EClass PREVIOUS_MODIFIER = eINSTANCE.getPreviousModifier();
+
+ /**
+ * The meta object literal for the '<em><b>Obj Reference</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PREVIOUS_MODIFIER__OBJ_REFERENCE = eINSTANCE.getPreviousModifier_ObjReference();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PREVIOUS_MODIFIER___GET_SYMBOL = eINSTANCE.getPreviousModifier__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PREVIOUS_MODIFIER___GET_UNDERLYING_TYPE = eINSTANCE.getPreviousModifier__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PREVIOUS_MODIFIER___GET_EXPRESSION_TEXT = eINSTANCE.getPreviousModifier__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.GreaterThanOperatorImpl <em>Greater Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GreaterThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGreaterThanOperator()
+ * @generated
+ */
+ EClass GREATER_THAN_OPERATOR = eINSTANCE.getGreaterThanOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GREATER_THAN_OPERATOR___GET_SYMBOL = eINSTANCE.getGreaterThanOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.MuchGreaterThanOperatorImpl <em>Much Greater Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MuchGreaterThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMuchGreaterThanOperator()
+ * @generated
+ */
+ EClass MUCH_GREATER_THAN_OPERATOR = eINSTANCE.getMuchGreaterThanOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MUCH_GREATER_THAN_OPERATOR___GET_SYMBOL = eINSTANCE.getMuchGreaterThanOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.LowerThanOperatorImpl <em>Lower Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LowerThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLowerThanOperator()
+ * @generated
+ */
+ EClass LOWER_THAN_OPERATOR = eINSTANCE.getLowerThanOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LOWER_THAN_OPERATOR___GET_SYMBOL = eINSTANCE.getLowerThanOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ComparisonOperatorImpl <em>Comparison Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ComparisonOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getComparisonOperator()
+ * @generated
+ */
+ EClass COMPARISON_OPERATOR = eINSTANCE.getComparisonOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPARISON_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getComparisonOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPARISON_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getComparisonOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.EqualToOperatorImpl <em>Equal To Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.EqualToOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getEqualToOperator()
+ * @generated
+ */
+ EClass EQUAL_TO_OPERATOR = eINSTANCE.getEqualToOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation EQUAL_TO_OPERATOR___GET_SYMBOL = eINSTANCE.getEqualToOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ComparisonAndImpl <em>Comparison And</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ComparisonAndImpl
+ * @see rba.core.impl.RBACorePackageImpl#getComparisonAnd()
+ * @generated
+ */
+ EClass COMPARISON_AND = eINSTANCE.getComparisonAnd();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPARISON_AND___GET_SYMBOL = eINSTANCE.getComparisonAnd__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation COMPARISON_AND___GET_EXPRESSION_TEXT = eINSTANCE.getComparisonAnd__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.LogicalOperatorImpl <em>Logical Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LogicalOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLogicalOperator()
+ * @generated
+ */
+ EClass LOGICAL_OPERATOR = eINSTANCE.getLogicalOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LOGICAL_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getLogicalOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LOGICAL_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getLogicalOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AndOperatorImpl <em>And Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AndOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAndOperator()
+ * @generated
+ */
+ EClass AND_OPERATOR = eINSTANCE.getAndOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation AND_OPERATOR___GET_SYMBOL = eINSTANCE.getAndOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.OrOperatorImpl <em>Or Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.OrOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getOrOperator()
+ * @generated
+ */
+ EClass OR_OPERATOR = eINSTANCE.getOrOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OR_OPERATOR___GET_SYMBOL = eINSTANCE.getOrOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.NotOperatorImpl <em>Not Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NotOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNotOperator()
+ * @generated
+ */
+ EClass NOT_OPERATOR = eINSTANCE.getNotOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation NOT_OPERATOR___GET_SYMBOL = eINSTANCE.getNotOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation NOT_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getNotOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsEqualToOperatorImpl <em>Is Equal To Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsEqualToOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsEqualToOperator()
+ * @generated
+ */
+ EClass IS_EQUAL_TO_OPERATOR = eINSTANCE.getIsEqualToOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_EQUAL_TO_OPERATOR___GET_SYMBOL = eINSTANCE.getIsEqualToOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsGreaterThanOperatorImpl <em>Is Greater Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsGreaterThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsGreaterThanOperator()
+ * @generated
+ */
+ EClass IS_GREATER_THAN_OPERATOR = eINSTANCE.getIsGreaterThanOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_GREATER_THAN_OPERATOR___GET_SYMBOL = eINSTANCE.getIsGreaterThanOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsLowerThanOperatorImpl <em>Is Lower Than Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsLowerThanOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsLowerThanOperator()
+ * @generated
+ */
+ EClass IS_LOWER_THAN_OPERATOR = eINSTANCE.getIsLowerThanOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_LOWER_THAN_OPERATOR___GET_SYMBOL = eINSTANCE.getIsLowerThanOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsGreaterThanEqualOperatorImpl <em>Is Greater Than Equal Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsGreaterThanEqualOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsGreaterThanEqualOperator()
+ * @generated
+ */
+ EClass IS_GREATER_THAN_EQUAL_OPERATOR = eINSTANCE.getIsGreaterThanEqualOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_GREATER_THAN_EQUAL_OPERATOR___GET_SYMBOL = eINSTANCE.getIsGreaterThanEqualOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsLowerThanEqualOperatorImpl <em>Is Lower Than Equal Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsLowerThanEqualOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsLowerThanEqualOperator()
+ * @generated
+ */
+ EClass IS_LOWER_THAN_EQUAL_OPERATOR = eINSTANCE.getIsLowerThanEqualOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_LOWER_THAN_EQUAL_OPERATOR___GET_SYMBOL = eINSTANCE.getIsLowerThanEqualOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ArithmeticOperatorImpl <em>Arithmetic Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ArithmeticOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getArithmeticOperator()
+ * @generated
+ */
+ EClass ARITHMETIC_OPERATOR = eINSTANCE.getArithmeticOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ARITHMETIC_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getArithmeticOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ARITHMETIC_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getArithmeticOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.PlusOperatorImpl <em>Plus Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PlusOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPlusOperator()
+ * @generated
+ */
+ EClass PLUS_OPERATOR = eINSTANCE.getPlusOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PLUS_OPERATOR___GET_SYMBOL = eINSTANCE.getPlusOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ImpliesOperatorImpl <em>Implies Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ImpliesOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getImpliesOperator()
+ * @generated
+ */
+ EClass IMPLIES_OPERATOR = eINSTANCE.getImpliesOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IMPLIES_OPERATOR___GET_SYMBOL = eINSTANCE.getImpliesOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ContentOperatorImpl <em>Content Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentOperator()
+ * @generated
+ */
+ EClass CONTENT_OPERATOR = eINSTANCE.getContentOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation CONTENT_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getContentOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsActiveImpl <em>Is Active</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsActiveImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsActive()
+ * @generated
+ */
+ EClass IS_ACTIVE = eINSTANCE.getIsActive();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ACTIVE___GET_SYMBOL = eINSTANCE.getIsActive__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ACTIVE___GET_UNDERLYING_TYPE = eINSTANCE.getIsActive__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.GetAllocatablesImpl <em>Get Allocatables</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetAllocatablesImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetAllocatables()
+ * @generated
+ */
+ EClass GET_ALLOCATABLES = eINSTANCE.getGetAllocatables();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_ALLOCATABLES___GET_SYMBOL = eINSTANCE.getGetAllocatables__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_ALLOCATABLES___GET_UNDERLYING_TYPE = eINSTANCE.getGetAllocatables__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.HasBeenDisplayedImpl <em>Has Been Displayed</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.HasBeenDisplayedImpl
+ * @see rba.core.impl.RBACorePackageImpl#getHasBeenDisplayed()
+ * @generated
+ */
+ EClass HAS_BEEN_DISPLAYED = eINSTANCE.getHasBeenDisplayed();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_BEEN_DISPLAYED___GET_SYMBOL = eINSTANCE.getHasBeenDisplayed__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_BEEN_DISPLAYED___GET_UNDERLYING_TYPE = eINSTANCE.getHasBeenDisplayed__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ActiveStateImpl <em>Active State</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ActiveStateImpl
+ * @see rba.core.impl.RBACorePackageImpl#getActiveState()
+ * @generated
+ */
+ EClass ACTIVE_STATE = eINSTANCE.getActiveState();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ACTIVE_STATE___GET_SYMBOL = eINSTANCE.getActiveState__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ACTIVE_STATE___GET_UNDERLYING_TYPE = eINSTANCE.getActiveState__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ObjectCompareImpl <em>Object Compare</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ObjectCompareImpl
+ * @see rba.core.impl.RBACorePackageImpl#getObjectCompare()
+ * @generated
+ */
+ EClass OBJECT_COMPARE = eINSTANCE.getObjectCompare();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_COMPARE___GET_SYMBOL = eINSTANCE.getObjectCompare__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_COMPARE___GET_UNDERLYING_TYPE = eINSTANCE.getObjectCompare__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_COMPARE___GET_EXPRESSION_TEXT = eINSTANCE.getObjectCompare__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ThatOfOperatorImpl <em>That Of Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ThatOfOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getThatOfOperator()
+ * @generated
+ */
+ EClass THAT_OF_OPERATOR = eINSTANCE.getThatOfOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation THAT_OF_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getThatOfOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation THAT_OF_OPERATOR___GET_SYMBOL = eINSTANCE.getThatOfOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation THAT_OF_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getThatOfOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ValueExpressionImpl <em>Value Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ValueExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getValueExpression()
+ * @generated
+ */
+ EClass VALUE_EXPRESSION = eINSTANCE.getValueExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation VALUE_EXPRESSION___GET_UNDERLYING_TYPE = eINSTANCE.getValueExpression__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation VALUE_EXPRESSION___GET_EXPRESSION_VALUE = eINSTANCE.getValueExpression__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation VALUE_EXPRESSION___GET_TYPE = eINSTANCE.getValueExpression__GetType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.MaxValueImpl <em>Max Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MaxValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMaxValue()
+ * @generated
+ */
+ EClass MAX_VALUE = eINSTANCE.getMaxValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MAX_VALUE___GET_EXPRESSION_TEXT = eINSTANCE.getMaxValue__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MAX_VALUE___GET_EXPRESSION_VALUE = eINSTANCE.getMaxValue__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.MinValueImpl <em>Min Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MinValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMinValue()
+ * @generated
+ */
+ EClass MIN_VALUE = eINSTANCE.getMinValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MIN_VALUE___GET_EXPRESSION_TEXT = eINSTANCE.getMinValue__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MIN_VALUE___GET_EXPRESSION_VALUE = eINSTANCE.getMinValue__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.NoneValueImpl <em>None Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NoneValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNoneValue()
+ * @generated
+ */
+ EClass NONE_VALUE = eINSTANCE.getNoneValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation NONE_VALUE___GET_EXPRESSION_TEXT = eINSTANCE.getNoneValue__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation NONE_VALUE___GET_EXPRESSION_VALUE = eINSTANCE.getNoneValue__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.StandardValueImpl <em>Standard Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.StandardValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getStandardValue()
+ * @generated
+ */
+ EClass STANDARD_VALUE = eINSTANCE.getStandardValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation STANDARD_VALUE___GET_EXPRESSION_TEXT = eINSTANCE.getStandardValue__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation STANDARD_VALUE___GET_EXPRESSION_VALUE = eINSTANCE.getStandardValue__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IntegerValueImpl <em>Integer Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IntegerValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIntegerValue()
+ * @generated
+ */
+ EClass INTEGER_VALUE = eINSTANCE.getIntegerValue();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INTEGER_VALUE__VALUE = eINSTANCE.getIntegerValue_Value();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation INTEGER_VALUE___GET_EXPRESSION_TEXT = eINSTANCE.getIntegerValue__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation INTEGER_VALUE___GET_EXPRESSION_VALUE = eINSTANCE.getIntegerValue__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.EnumExpressionImpl <em>Enum Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.EnumExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getEnumExpression()
+ * @generated
+ */
+ EClass ENUM_EXPRESSION = eINSTANCE.getEnumExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ENUM_EXPRESSION___GET_UNDERLYING_TYPE = eINSTANCE.getEnumExpression__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ENUM_EXPRESSION___GET_EXPRESSION_VALUE = eINSTANCE.getEnumExpression__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ENUM_EXPRESSION___GET_TYPE = eINSTANCE.getEnumExpression__GetType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.LoserTypeExpressionImpl <em>Loser Type Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LoserTypeExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLoserTypeExpression()
+ * @generated
+ */
+ EClass LOSER_TYPE_EXPRESSION = eINSTANCE.getLoserTypeExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LOSER_TYPE_EXPRESSION__VALUE = eINSTANCE.getLoserTypeExpression_Value();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LOSER_TYPE_EXPRESSION___GET_EXPRESSION_TEXT = eINSTANCE.getLoserTypeExpression__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LOSER_TYPE_EXPRESSION___GET_EXPRESSION_VALUE = eINSTANCE
+ .getLoserTypeExpression__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ArbitrationPolicyExpressionImpl <em>Arbitration Policy Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ArbitrationPolicyExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getArbitrationPolicyExpression()
+ * @generated
+ */
+ EClass ARBITRATION_POLICY_EXPRESSION = eINSTANCE.getArbitrationPolicyExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ARBITRATION_POLICY_EXPRESSION__VALUE = eINSTANCE.getArbitrationPolicyExpression_Value();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_TEXT = eINSTANCE
+ .getArbitrationPolicyExpression__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Value</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_VALUE = eINSTANCE
+ .getArbitrationPolicyExpression__GetExpressionValue();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SetExpressionImpl <em>Set Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SetExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSetExpression()
+ * @generated
+ */
+ EClass SET_EXPRESSION = eINSTANCE.getSetExpression();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SetOperatorImpl <em>Set Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SetOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSetOperator()
+ * @generated
+ */
+ EClass SET_OPERATOR = eINSTANCE.getSetOperator();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SizeOperatorImpl <em>Size Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SizeOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSizeOperator()
+ * @generated
+ */
+ EClass SIZE_OPERATOR = eINSTANCE.getSizeOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SIZE_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getSizeOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SIZE_OPERATOR___GET_SYMBOL = eINSTANCE.getSizeOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SIZE_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getSizeOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ExistsOperatorImpl <em>Exists Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ExistsOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getExistsOperator()
+ * @generated
+ */
+ EClass EXISTS_OPERATOR = eINSTANCE.getExistsOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation EXISTS_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getExistsOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation EXISTS_OPERATOR___GET_SYMBOL = eINSTANCE.getExistsOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation EXISTS_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getExistsOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ForAllOperatorImpl <em>For All Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ForAllOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getForAllOperator()
+ * @generated
+ */
+ EClass FOR_ALL_OPERATOR = eINSTANCE.getForAllOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation FOR_ALL_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getForAllOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation FOR_ALL_OPERATOR___GET_SYMBOL = eINSTANCE.getForAllOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation FOR_ALL_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getForAllOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.MaxOperatorImpl <em>Max Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MaxOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMaxOperator()
+ * @generated
+ */
+ EClass MAX_OPERATOR = eINSTANCE.getMaxOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MAX_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getMaxOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MAX_OPERATOR___GET_SYMBOL = eINSTANCE.getMaxOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MAX_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getMaxOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.MinOperatorImpl <em>Min Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.MinOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getMinOperator()
+ * @generated
+ */
+ EClass MIN_OPERATOR = eINSTANCE.getMinOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MIN_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getMinOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MIN_OPERATOR___GET_SYMBOL = eINSTANCE.getMinOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation MIN_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getMinOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SelectOperatorImpl <em>Select Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SelectOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSelectOperator()
+ * @generated
+ */
+ EClass SELECT_OPERATOR = eINSTANCE.getSelectOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SELECT_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getSelectOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SELECT_OPERATOR___GET_SYMBOL = eINSTANCE.getSelectOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SELECT_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getSelectOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SetOfOperatorImpl <em>Set Of Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SetOfOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSetOfOperator()
+ * @generated
+ */
+ EClass SET_OF_OPERATOR = eINSTANCE.getSetOfOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SET_OF_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getSetOfOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SET_OF_OPERATOR___GET_SYMBOL = eINSTANCE.getSetOfOperator__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SET_OF_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getSetOfOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.LambdaExpressionImpl <em>Lambda Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LambdaExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLambdaExpression()
+ * @generated
+ */
+ EClass LAMBDA_EXPRESSION = eINSTANCE.getLambdaExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Context</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference LAMBDA_EXPRESSION__CONTEXT = eINSTANCE.getLambdaExpression_Context();
+
+ /**
+ * The meta object literal for the '<em><b>X</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference LAMBDA_EXPRESSION__X = eINSTANCE.getLambdaExpression_X();
+
+ /**
+ * The meta object literal for the '<em><b>Body Text</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference LAMBDA_EXPRESSION__BODY_TEXT = eINSTANCE.getLambdaExpression_BodyText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAMBDA_EXPRESSION___GET_EXPRESSION_TEXT = eINSTANCE.getLambdaExpression__GetExpressionText();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAMBDA_EXPRESSION___GET_UNDERLYING_TYPE = eINSTANCE.getLambdaExpression__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.VariableImpl <em>Variable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.VariableImpl
+ * @see rba.core.impl.RBACorePackageImpl#getVariable()
+ * @generated
+ */
+ EClass VARIABLE = eINSTANCE.getVariable();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation VARIABLE___GET_EXPRESSION_TYPE = eINSTANCE.getVariable__GetExpressionType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.LambdaContextImpl <em>Lambda Context</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.LambdaContextImpl
+ * @see rba.core.impl.RBACorePackageImpl#getLambdaContext()
+ * @generated
+ */
+ EClass LAMBDA_CONTEXT = eINSTANCE.getLambdaContext();
+
+ /**
+ * The meta object literal for the '<em><b>Lambda</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference LAMBDA_CONTEXT__LAMBDA = eINSTANCE.getLambdaContext_Lambda();
+
+ /**
+ * The meta object literal for the '<em><b>Get Context Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAMBDA_CONTEXT___GET_CONTEXT_TYPE = eINSTANCE.getLambdaContext__GetContextType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IfStatementImpl <em>If Statement</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IfStatementImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIfStatement()
+ * @generated
+ */
+ EClass IF_STATEMENT = eINSTANCE.getIfStatement();
+
+ /**
+ * The meta object literal for the '<em><b>Condition</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference IF_STATEMENT__CONDITION = eINSTANCE.getIfStatement_Condition();
+
+ /**
+ * The meta object literal for the '<em><b>Then Expression</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference IF_STATEMENT__THEN_EXPRESSION = eINSTANCE.getIfStatement_ThenExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Else Expression</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference IF_STATEMENT__ELSE_EXPRESSION = eINSTANCE.getIfStatement_ElseExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IF_STATEMENT___GET_UNDERLYING_TYPE = eINSTANCE.getIfStatement__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IF_STATEMENT___GET_EXPRESSION_TEXT = eINSTANCE.getIfStatement__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.SceneOperatorImpl <em>Scene Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.SceneOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getSceneOperator()
+ * @generated
+ */
+ EClass SCENE_OPERATOR = eINSTANCE.getSceneOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SCENE_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getSceneOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsOnImpl <em>Is On</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsOnImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsOn()
+ * @generated
+ */
+ EClass IS_ON = eINSTANCE.getIsOn();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ON___GET_SYMBOL = eINSTANCE.getIsOn__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ON___GET_UNDERLYING_TYPE = eINSTANCE.getIsOn__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AllocatableOperatorImpl <em>Allocatable Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatableOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatableOperator()
+ * @generated
+ */
+ EClass ALLOCATABLE_OPERATOR = eINSTANCE.getAllocatableOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getAllocatableOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.AllocatedContentImpl <em>Allocated Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.AllocatedContentImpl
+ * @see rba.core.impl.RBACorePackageImpl#getAllocatedContent()
+ * @generated
+ */
+ EClass ALLOCATED_CONTENT = eINSTANCE.getAllocatedContent();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATED_CONTENT___GET_SYMBOL = eINSTANCE.getAllocatedContent__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATED_CONTENT___GET_UNDERLYING_TYPE = eINSTANCE.getAllocatedContent__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ContentValueImpl <em>Content Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentValue()
+ * @generated
+ */
+ EClass CONTENT_VALUE = eINSTANCE.getContentValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation CONTENT_VALUE___GET_SYMBOL = eINSTANCE.getContentValue__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation CONTENT_VALUE___GET_UNDERLYING_TYPE = eINSTANCE.getContentValue__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.GetContentsListImpl <em>Get Contents List</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetContentsListImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetContentsList()
+ * @generated
+ */
+ EClass GET_CONTENTS_LIST = eINSTANCE.getGetContentsList();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_CONTENTS_LIST___GET_SYMBOL = eINSTANCE.getGetContentsList__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_CONTENTS_LIST___GET_UNDERLYING_TYPE = eINSTANCE.getGetContentsList__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ActiveContentsImpl <em>Active Contents</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ActiveContentsImpl
+ * @see rba.core.impl.RBACorePackageImpl#getActiveContents()
+ * @generated
+ */
+ EClass ACTIVE_CONTENTS = eINSTANCE.getActiveContents();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ACTIVE_CONTENTS___GET_SYMBOL = eINSTANCE.getActiveContents__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ACTIVE_CONTENTS___GET_UNDERLYING_TYPE = eINSTANCE.getActiveContents__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.PropertyOperatorImpl <em>Property Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.PropertyOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getPropertyOperator()
+ * @generated
+ */
+ EClass PROPERTY_OPERATOR = eINSTANCE.getPropertyOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PROPERTY_OPERATOR___GET_UNDERLYING_TYPE = eINSTANCE.getPropertyOperator__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation PROPERTY_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE.getPropertyOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.GetPropertyImpl <em>Get Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetPropertyImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetProperty()
+ * @generated
+ */
+ EClass GET_PROPERTY = eINSTANCE.getGetProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_PROPERTY___GET_SYMBOL = eINSTANCE.getGetProperty__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_PROPERTY___GET_UNDERLYING_TYPE = eINSTANCE.getGetProperty__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.StateValueImpl <em>State Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.StateValueImpl
+ * @see rba.core.impl.RBACorePackageImpl#getStateValue()
+ * @generated
+ */
+ EClass STATE_VALUE = eINSTANCE.getStateValue();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation STATE_VALUE___GET_SYMBOL = eINSTANCE.getStateValue__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation STATE_VALUE___GET_UNDERLYING_TYPE = eINSTANCE.getStateValue__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.HasComeLaterThanImpl <em>Has Come Later Than</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.HasComeLaterThanImpl
+ * @see rba.core.impl.RBACorePackageImpl#getHasComeLaterThan()
+ * @generated
+ */
+ EClass HAS_COME_LATER_THAN = eINSTANCE.getHasComeLaterThan();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_COME_LATER_THAN___GET_SYMBOL = eINSTANCE.getHasComeLaterThan__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_COME_LATER_THAN___GET_UNDERLYING_TYPE = eINSTANCE.getHasComeLaterThan__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_COME_LATER_THAN___GET_EXPRESSION_TEXT = eINSTANCE.getHasComeLaterThan__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.HasComeEarlierThanImpl <em>Has Come Earlier Than</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.HasComeEarlierThanImpl
+ * @see rba.core.impl.RBACorePackageImpl#getHasComeEarlierThan()
+ * @generated
+ */
+ EClass HAS_COME_EARLIER_THAN = eINSTANCE.getHasComeEarlierThan();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_COME_EARLIER_THAN___GET_SYMBOL = eINSTANCE.getHasComeEarlierThan__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_COME_EARLIER_THAN___GET_UNDERLYING_TYPE = eINSTANCE.getHasComeEarlierThan__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation HAS_COME_EARLIER_THAN___GET_EXPRESSION_TEXT = eINSTANCE.getHasComeEarlierThan__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.SugarExpression <em>Sugar Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.SugarExpression
+ * @see rba.core.impl.RBACorePackageImpl#getSugarExpression()
+ * @generated
+ */
+ EClass SUGAR_EXPRESSION = eINSTANCE.getSugarExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Can Expand</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SUGAR_EXPRESSION___CAN_EXPAND = eINSTANCE.getSugarExpression__CanExpand();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expanded</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SUGAR_EXPRESSION___GET_EXPANDED = eINSTANCE.getSugarExpression__GetExpanded();
+
+ /**
+ * The meta object literal for the '{@link rba.core.SugarExpressionBase <em>Sugar Expression Base</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.SugarExpressionBase
+ * @see rba.core.impl.RBACorePackageImpl#getSugarExpressionBase()
+ * @generated
+ */
+ EClass SUGAR_EXPRESSION_BASE = eINSTANCE.getSugarExpressionBase();
+
+ /**
+ * The meta object literal for the '<em><b>Can Expand</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SUGAR_EXPRESSION_BASE___CAN_EXPAND = eINSTANCE.getSugarExpressionBase__CanExpand();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ObjectCompareNotImpl <em>Object Compare Not</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ObjectCompareNotImpl
+ * @see rba.core.impl.RBACorePackageImpl#getObjectCompareNot()
+ * @generated
+ */
+ EClass OBJECT_COMPARE_NOT = eINSTANCE.getObjectCompareNot();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_COMPARE_NOT___GET_SYMBOL = eINSTANCE.getObjectCompareNot__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_COMPARE_NOT___GET_UNDERLYING_TYPE = eINSTANCE.getObjectCompareNot__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation OBJECT_COMPARE_NOT___GET_EXPRESSION_TEXT = eINSTANCE.getObjectCompareNot__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsAllocatedToImpl <em>Is Allocated To</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsAllocatedToImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsAllocatedTo()
+ * @generated
+ */
+ EClass IS_ALLOCATED_TO = eINSTANCE.getIsAllocatedTo();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ALLOCATED_TO___GET_SYMBOL = eINSTANCE.getIsAllocatedTo__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ALLOCATED_TO___GET_UNDERLYING_TYPE = eINSTANCE.getIsAllocatedTo__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_ALLOCATED_TO___GET_EXPRESSION_TEXT = eINSTANCE.getIsAllocatedTo__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsChangedImpl <em>Is Changed</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsChangedImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsChanged()
+ * @generated
+ */
+ EClass IS_CHANGED = eINSTANCE.getIsChanged();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_CHANGED___GET_SYMBOL = eINSTANCE.getIsChanged__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_CHANGED___GET_UNDERLYING_TYPE = eINSTANCE.getIsChanged__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.IsTranslatedToImpl <em>Is Translated To</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.IsTranslatedToImpl
+ * @see rba.core.impl.RBACorePackageImpl#getIsTranslatedTo()
+ * @generated
+ */
+ EClass IS_TRANSLATED_TO = eINSTANCE.getIsTranslatedTo();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_TRANSLATED_TO___GET_SYMBOL = eINSTANCE.getIsTranslatedTo__GetSymbol();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_TRANSLATED_TO___GET_UNDERLYING_TYPE = eINSTANCE.getIsTranslatedTo__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation IS_TRANSLATED_TO___GET_EXPRESSION_TEXT = eINSTANCE.getIsTranslatedTo__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.GetStateImpl <em>Get State</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.GetStateImpl
+ * @see rba.core.impl.RBACorePackageImpl#getGetState()
+ * @generated
+ */
+ EClass GET_STATE = eINSTANCE.getGetState();
+
+ /**
+ * The meta object literal for the '<em><b>Get Symbol</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation GET_STATE___GET_SYMBOL = eINSTANCE.getGetState__GetSymbol();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.ContentStateOperatorImpl <em>Content State Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.ContentStateOperatorImpl
+ * @see rba.core.impl.RBACorePackageImpl#getContentStateOperator()
+ * @generated
+ */
+ EClass CONTENT_STATE_OPERATOR = eINSTANCE.getContentStateOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation CONTENT_STATE_OPERATOR___GET_EXPRESSION_TEXT = eINSTANCE
+ .getContentStateOperator__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.impl.NullExpressionImpl <em>Null Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.impl.NullExpressionImpl
+ * @see rba.core.impl.RBACorePackageImpl#getNullExpression()
+ * @generated
+ */
+ EClass NULL_EXPRESSION = eINSTANCE.getNullExpression();
+
+ /**
+ * The meta object literal for the '<em><b>Get Underlying Type</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation NULL_EXPRESSION___GET_UNDERLYING_TYPE = eINSTANCE.getNullExpression__GetUnderlyingType();
+
+ /**
+ * The meta object literal for the '<em><b>Get Expression Text</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation NULL_EXPRESSION___GET_EXPRESSION_TEXT = eINSTANCE.getNullExpression__GetExpressionText();
+
+ /**
+ * The meta object literal for the '{@link rba.core.ArbitrationPolicy <em>Arbitration Policy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.ArbitrationPolicy
+ * @see rba.core.impl.RBACorePackageImpl#getArbitrationPolicy()
+ * @generated
+ */
+ EEnum ARBITRATION_POLICY = eINSTANCE.getArbitrationPolicy();
+
+ /**
+ * The meta object literal for the '{@link rba.core.ExpressionType <em>Expression Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.ExpressionType
+ * @see rba.core.impl.RBACorePackageImpl#getExpressionType()
+ * @generated
+ */
+ EEnum EXPRESSION_TYPE = eINSTANCE.getExpressionType();
+
+ /**
+ * The meta object literal for the '{@link rba.core.LoserType <em>Loser Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see rba.core.LoserType
+ * @see rba.core.impl.RBACorePackageImpl#getLoserType()
+ * @generated
+ */
+ EEnum LOSER_TYPE = eINSTANCE.getLoserType();
+
+ }
+
+} //RBACorePackage
diff --git a/rba.model.core/src/rba/core/RuleObject.java b/rba.model.core/src/rba/core/RuleObject.java
new file mode 100644
index 0000000..ba1d0dc
--- /dev/null
+++ b/rba.model.core/src/rba/core/RuleObject.java
@@ -0,0 +1,54 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Rule Object</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.RuleObject#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getRuleObject()
+ * @model abstract="true"
+ * @generated
+ */
+public interface RuleObject extends PackagableElement {
+ /**
+ * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.Tag}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Tags</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getRuleObject_Tags()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Tag> getTags();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ ExpressionType getExpressionType();
+
+} // RuleObject
diff --git a/rba.model.core/src/rba/core/Scene.java b/rba.model.core/src/rba/core/Scene.java
new file mode 100644
index 0000000..de08a5e
--- /dev/null
+++ b/rba.model.core/src/rba/core/Scene.java
@@ -0,0 +1,84 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Scene</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Scene#isGlobal <em>Global</em>}</li>
+ * <li>{@link rba.core.Scene#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getScene()
+ * @model
+ * @generated
+ */
+public interface Scene extends AbstractScene {
+ /**
+ * Returns the value of the '<em><b>Global</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Global</em>' attribute.
+ * @see #setGlobal(boolean)
+ * @see rba.core.RBACorePackage#getScene_Global()
+ * @model default="false" required="true"
+ * @generated
+ */
+ boolean isGlobal();
+
+ /**
+ * Sets the value of the '{@link rba.core.Scene#isGlobal <em>Global</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Global</em>' attribute.
+ * @see #isGlobal()
+ * @generated
+ */
+ void setGlobal(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.AbstractProperty}.
+ * It is bidirectional and its opposite is '{@link rba.core.AbstractProperty#getOwner <em>Owner</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Properties</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getScene_Properties()
+ * @see rba.core.AbstractProperty#getOwner
+ * @model opposite="owner" containment="true"
+ * @generated
+ */
+ EList<AbstractProperty> getProperties();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.SCENE;'"
+ * @generated
+ */
+ ExpressionType getExpressionType();
+
+} // Scene
diff --git a/rba.model.core/src/rba/core/SceneOperator.java b/rba.model.core/src/rba/core/SceneOperator.java
new file mode 100644
index 0000000..0531ea3
--- /dev/null
+++ b/rba.model.core/src/rba/core/SceneOperator.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Scene Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSceneOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface SceneOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // SceneOperator
diff --git a/rba.model.core/src/rba/core/SelectOperator.java b/rba.model.core/src/rba/core/SelectOperator.java
new file mode 100644
index 0000000..59a6c40
--- /dev/null
+++ b/rba.model.core/src/rba/core/SelectOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Select Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSelectOperator()
+ * @model
+ * @generated
+ */
+public interface SelectOperator extends LambdaContext {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nrba.core.LambdaExpression lambda = getLambda();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"{ \");\r\nexpressionText.append(lambda != null ? lambda.getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\" }\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".select\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='if (!getOperand().isEmpty()) {\r\n &lt;%rba.core.Expression%&gt; first = getOperand().get(0);\r\n return first.getType();\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // SelectOperator
diff --git a/rba.model.core/src/rba/core/SetExpression.java b/rba.model.core/src/rba/core/SetExpression.java
new file mode 100644
index 0000000..f68dada
--- /dev/null
+++ b/rba.model.core/src/rba/core/SetExpression.java
@@ -0,0 +1,20 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Set Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSetExpression()
+ * @model abstract="true"
+ * @generated
+ */
+public interface SetExpression extends Expression {
+} // SetExpression
diff --git a/rba.model.core/src/rba/core/SetOfOperator.java b/rba.model.core/src/rba/core/SetOfOperator.java
new file mode 100644
index 0000000..70dcfff
--- /dev/null
+++ b/rba.model.core/src/rba/core/SetOfOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Set Of Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSetOfOperator()
+ * @model
+ * @generated
+ */
+public interface SetOfOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(\"{\");\r\nfor (int i = 0; i &lt; expressions.size(); i++) {\r\n rba.core.Expression expression = expressions.get(i);\r\n expressionText.append(expression.getExpressionText());\r\n if (i == expressions.size() - 1) {\r\n expressionText.append(\"}\");\r\n } else {\r\n expressionText.append(\", \");\r\n }\r\n}\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='EList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nif (!expressions.isEmpty() &amp;&amp; expressions.get(0) != null) {\r\n rba.core.Expression first = expressions.get(0);\r\n if ((first.getType() == ExpressionType.CONTENT) || (first.getType() == ExpressionType.SET_OF_CONTENT)) {\r\n return ExpressionType.SET_OF_CONTENT;\r\n } else if ((first.getType() == ExpressionType.AREA) || (first.getType() == ExpressionType.SET_OF_AREA)) {\r\n return ExpressionType.SET_OF_AREA;\r\n } else if ((first.getType() == ExpressionType.SOUND) || (first.getType() == ExpressionType.SET_OF_SOUND)) {\r\n return ExpressionType.SET_OF_SOUND;\r\n } else if ((first.getType() == ExpressionType.ZONE) || (first.getType() == ExpressionType.SET_OF_ZONE)) {\r\n return ExpressionType.SET_OF_ZONE;\r\n } else {\r\n return first.getType();\r\n }\r\n}\r\nreturn null;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // SetOfOperator
diff --git a/rba.model.core/src/rba/core/SetOperator.java b/rba.model.core/src/rba/core/SetOperator.java
new file mode 100644
index 0000000..2e787be
--- /dev/null
+++ b/rba.model.core/src/rba/core/SetOperator.java
@@ -0,0 +1,20 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Set Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSetOperator()
+ * @model abstract="true"
+ * @generated
+ */
+public interface SetOperator extends Operator {
+} // SetOperator
diff --git a/rba.model.core/src/rba/core/SetProperty.java b/rba.model.core/src/rba/core/SetProperty.java
new file mode 100644
index 0000000..595ae3c
--- /dev/null
+++ b/rba.model.core/src/rba/core/SetProperty.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Set Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSetProperty()
+ * @model
+ * @generated
+ */
+public interface SetProperty extends PropertyOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".set\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(\"(\");\r\nexpressionText.append(expressions.size() &gt; 1 ? expressions.get(1).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(\")\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+} // SetProperty
diff --git a/rba.model.core/src/rba/core/SizeOperator.java b/rba.model.core/src/rba/core/SizeOperator.java
new file mode 100644
index 0000000..9d9c6f1
--- /dev/null
+++ b/rba.model.core/src/rba/core/SizeOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Size Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSizeOperator()
+ * @model
+ * @generated
+ */
+public interface SizeOperator extends SetOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nexpressionText.append(getSymbol());\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".size()\";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // SizeOperator
diff --git a/rba.model.core/src/rba/core/StandardValue.java b/rba.model.core/src/rba/core/StandardValue.java
new file mode 100644
index 0000000..bbc6c48
--- /dev/null
+++ b/rba.model.core/src/rba/core/StandardValue.java
@@ -0,0 +1,44 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Standard Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getStandardValue()
+ * @model
+ * @generated
+ */
+public interface StandardValue extends ValueExpression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"STANDARD\";'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return 10;'"
+ * @generated
+ */
+ int getExpressionValue();
+
+} // StandardValue
diff --git a/rba.model.core/src/rba/core/State.java b/rba.model.core/src/rba/core/State.java
new file mode 100644
index 0000000..bfbf9ef
--- /dev/null
+++ b/rba.model.core/src/rba/core/State.java
@@ -0,0 +1,21 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getState()
+ * @model
+ * @generated
+ */
+public interface State extends RuleObject {
+
+} // State
diff --git a/rba.model.core/src/rba/core/StateValue.java b/rba.model.core/src/rba/core/StateValue.java
new file mode 100644
index 0000000..bb085f9
--- /dev/null
+++ b/rba.model.core/src/rba/core/StateValue.java
@@ -0,0 +1,38 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>State Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getStateValue()
+ * @model
+ * @generated
+ */
+public interface StateValue extends ContentOperator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \".stateValue()\"; //$NON-NLS-1$'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // StateValue
diff --git a/rba.model.core/src/rba/core/Stereotype.java b/rba.model.core/src/rba/core/Stereotype.java
new file mode 100644
index 0000000..8e53a91
--- /dev/null
+++ b/rba.model.core/src/rba/core/Stereotype.java
@@ -0,0 +1,95 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stereotype</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Stereotype#getTargetModelName <em>Target Model Name</em>}</li>
+ * <li>{@link rba.core.Stereotype#getVariables <em>Variables</em>}</li>
+ * <li>{@link rba.core.Stereotype#getBodyText <em>Body Text</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getStereotype()
+ * @model
+ * @generated
+ */
+public interface Stereotype extends PackagableElement {
+ /**
+ * Returns the value of the '<em><b>Target Model Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Target Model Name</em>' attribute.
+ * @see #setTargetModelName(String)
+ * @see rba.core.RBACorePackage#getStereotype_TargetModelName()
+ * @model required="true"
+ * @generated
+ */
+ String getTargetModelName();
+
+ /**
+ * Sets the value of the '{@link rba.core.Stereotype#getTargetModelName <em>Target Model Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Target Model Name</em>' attribute.
+ * @see #getTargetModelName()
+ * @generated
+ */
+ void setTargetModelName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Variables</b></em>' containment reference list.
+ * The list contents are of type {@link rba.core.Variable}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Variables</em>' containment reference list.
+ * @see rba.core.RBACorePackage#getStereotype_Variables()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Variable> getVariables();
+
+ /**
+ * Returns the value of the '<em><b>Body Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Body Text</em>' attribute.
+ * @see #setBodyText(String)
+ * @see rba.core.RBACorePackage#getStereotype_BodyText()
+ * @model required="true"
+ * @generated
+ */
+ String getBodyText();
+
+ /**
+ * Sets the value of the '{@link rba.core.Stereotype#getBodyText <em>Body Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Body Text</em>' attribute.
+ * @see #getBodyText()
+ * @generated
+ */
+ void setBodyText(String value);
+
+} // Stereotype
diff --git a/rba.model.core/src/rba/core/SugarExpression.java b/rba.model.core/src/rba/core/SugarExpression.java
new file mode 100644
index 0000000..d676f02
--- /dev/null
+++ b/rba.model.core/src/rba/core/SugarExpression.java
@@ -0,0 +1,40 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sugar Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSugarExpression()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface SugarExpression extends EObject {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model required="true"
+ * @generated
+ */
+ boolean canExpand();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @return Expression that expanded the syntax sugar expression.
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ Expression getExpanded();
+
+} // SugarExpression
diff --git a/rba.model.core/src/rba/core/SugarExpressionBase.java b/rba.model.core/src/rba/core/SugarExpressionBase.java
new file mode 100644
index 0000000..a885ea5
--- /dev/null
+++ b/rba.model.core/src/rba/core/SugarExpressionBase.java
@@ -0,0 +1,25 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sugar Expression Base</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getSugarExpressionBase()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface SugarExpressionBase extends SugarExpression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return true;'"
+ * @generated
+ */
+ boolean canExpand();
+
+} // SugarExpressionBase
diff --git a/rba.model.core/src/rba/core/Tag.java b/rba.model.core/src/rba/core/Tag.java
new file mode 100644
index 0000000..77de371
--- /dev/null
+++ b/rba.model.core/src/rba/core/Tag.java
@@ -0,0 +1,43 @@
+/**
+ */
+package rba.core;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Tag</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.Tag#getValues <em>Values</em>}</li>
+ * </ul>
+ *
+ * @see rba.core.RBACorePackage#getTag()
+ * @model
+ * @generated
+ */
+public interface Tag extends NamedElement {
+ /**
+ * Returns the value of the '<em><b>Values</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Values</em>' attribute list.
+ * @see rba.core.RBACorePackage#getTag_Values()
+ * @model unique="false"
+ * @generated
+ */
+ EList<String> getValues();
+
+} // Tag
diff --git a/rba.model.core/src/rba/core/ThatOfOperator.java b/rba.model.core/src/rba/core/ThatOfOperator.java
new file mode 100644
index 0000000..315a7d6
--- /dev/null
+++ b/rba.model.core/src/rba/core/ThatOfOperator.java
@@ -0,0 +1,56 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>That Of Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getThatOfOperator()
+ * @model
+ * @generated
+ */
+public interface ThatOfOperator extends Operator {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='StringBuffer expressionText = new StringBuffer();\r\nEList&lt;rba.core.Expression&gt; expressions = getOperand();\r\nexpressionText.append(getSymbol());\r\nexpressionText.append(expressions.size() &gt; 0 ? expressions.get(0).getExpressionText() : \"[Invalid_Expression]\");\r\nreturn expressionText.toString();'"
+ * @generated
+ */
+ String getExpressionText();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"That of \";'"
+ * @generated
+ */
+ String getSymbol();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+} // ThatOfOperator
diff --git a/rba.model.core/src/rba/core/ValueExpression.java b/rba.model.core/src/rba/core/ValueExpression.java
new file mode 100644
index 0000000..ebd9690
--- /dev/null
+++ b/rba.model.core/src/rba/core/ValueExpression.java
@@ -0,0 +1,55 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Value Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getValueExpression()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ValueExpression extends Expression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getUnderlyingType();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation" required="true"
+ * @generated
+ */
+ int getExpressionValue();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='return getUnderlyingType();'"
+ * @generated
+ */
+ ExpressionType getType();
+
+} // ValueExpression
diff --git a/rba.model.core/src/rba/core/Variable.java b/rba.model.core/src/rba/core/Variable.java
new file mode 100644
index 0000000..1dbd3a0
--- /dev/null
+++ b/rba.model.core/src/rba/core/Variable.java
@@ -0,0 +1,32 @@
+/**
+ */
+package rba.core;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Variable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ *
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see rba.core.RBACorePackage#getVariable()
+ * @model
+ * @generated
+ */
+public interface Variable extends RuleObject {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * @Override
+ * <!-- end-model-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='&lt;%org.eclipse.emf.ecore.EObject%&gt; container = eContainer();\r\nif(container instanceof &lt;%rba.core.LambdaExpression%&gt;) {\r\n container = container.eContainer();\r\n if(container instanceof &lt;%rba.core.LambdaContext%&gt;) {\r\n &lt;%java.util.List%&gt;&lt;Expression&gt; operands = ((LambdaContext) container).getOperand();\r\n if (operands.size() &gt; 0) {\r\n switch (operands.get(0).getUnderlyingType()) {\r\n case AREA:\r\n case SET_OF_AREA:\r\n return ExpressionType.AREA;\r\n case CONTENT:\r\n case SET_OF_CONTENT:\r\n return ExpressionType.CONTENT;\r\n case SOUND:\r\n case SET_OF_SOUND:\r\n return ExpressionType.SOUND;\r\n case ZONE:\r\n case SET_OF_ZONE:\r\n return ExpressionType.ZONE;\r\n case SCENE:\r\n return ExpressionType.SCENE;\r\n case PROPERTY:\r\n return ExpressionType.PROPERTY;\r\n case BOOLEAN:\r\n return ExpressionType.BOOLEAN;\r\n case LAMBDA:\r\n return ExpressionType.LAMBDA;\r\n case VALUE:\r\n default:\r\n return ExpressionType.VALUE;\r\n }\r\n }\r\n }\r\n} else if (container instanceof &lt;%rba.core.LetStatement%&gt;) {\r\n &lt;%rba.core.Expression%&gt; body = ((LetStatement) container).getBody();\r\n if (body != null) {\r\n return body.getUnderlyingType();\r\n }\r\n}\r\nreturn ExpressionType.VALUE;'"
+ * @generated
+ */
+ ExpressionType getExpressionType();
+
+} // Variable
diff --git a/rba.model.core/src/rba/core/generator/util/EObjectDecorator.java b/rba.model.core/src/rba/core/generator/util/EObjectDecorator.java
new file mode 100644
index 0000000..86a20d7
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/EObjectDecorator.java
@@ -0,0 +1,118 @@
+package rba.core.generator.util;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+
+abstract public class EObjectDecorator implements EObject {
+ private EObject object;
+
+ protected EObjectDecorator(EObject o) {
+ object = o;
+ }
+
+ @Override
+ public EList<Adapter> eAdapters() {
+ return object.eAdapters();
+ }
+
+ @Override
+ public boolean eDeliver() {
+ return object.eDeliver();
+ }
+
+ @Override
+ public void eSetDeliver(boolean deliver) {
+ object.eSetDeliver(deliver);
+ }
+
+ @Override
+ public void eNotify(Notification notification) {
+ object.eNotify(notification);
+ }
+
+ @Override
+ public EClass eClass() {
+ return object.eClass();
+ }
+
+ @Override
+ public Resource eResource() {
+ return object.eResource();
+ }
+
+ @Override
+ public EObject eContainer() {
+ return object.eContainer();
+ }
+
+ @Override
+ public EStructuralFeature eContainingFeature() {
+ return object.eContainingFeature();
+ }
+
+ @Override
+ public EReference eContainmentFeature() {
+ return object.eContainmentFeature();
+ }
+
+ @Override
+ public EList<EObject> eContents() {
+ return object.eContents();
+ }
+
+ @Override
+ public TreeIterator<EObject> eAllContents() {
+ return object.eAllContents();
+ }
+
+ @Override
+ public boolean eIsProxy() {
+ return object.eIsProxy();
+ }
+
+ @Override
+ public EList<EObject> eCrossReferences() {
+ return object.eCrossReferences();
+ }
+
+ @Override
+ public Object eGet(EStructuralFeature feature) {
+ return object.eGet(feature);
+ }
+
+ @Override
+ public Object eGet(EStructuralFeature feature, boolean resolve) {
+ return object.eGet(feature, resolve);
+ }
+
+ @Override
+ public void eSet(EStructuralFeature feature, Object newValue) {
+ object.eSet(feature, newValue);
+ }
+
+ @Override
+ public boolean eIsSet(EStructuralFeature feature) {
+ return object.eIsSet(feature);
+ }
+
+ @Override
+ public void eUnset(EStructuralFeature feature) {
+ object.eUnset(feature);
+ }
+
+ @Override
+ public Object eInvoke(EOperation operation, EList<?> arguments) throws InvocationTargetException {
+ return object.eInvoke(operation, arguments);
+ }
+
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/ComparisonAndEvaluator.java b/rba.model.core/src/rba/core/generator/util/value/ComparisonAndEvaluator.java
new file mode 100644
index 0000000..0973ab9
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/ComparisonAndEvaluator.java
@@ -0,0 +1,49 @@
+package rba.core.generator.util.value;
+
+import org.eclipse.emf.common.util.EList;
+
+import rba.core.ComparisonAnd;
+import rba.core.ComparisonOperator;
+import rba.core.Expression;
+import rba.core.GreaterThanOperator;
+import rba.core.LetStatement;
+import rba.core.MuchGreaterThanOperator;
+import rba.core.RuleObject;
+
+public class ComparisonAndEvaluator<T extends RuleObject> extends ComparisonOperatorEvaluator<T> implements ComparisonAnd {
+
+ public ComparisonAndEvaluator(ComparisonAnd o) {
+ super(o);
+ }
+
+ @Override
+ public boolean evaluate(ValueSortedList<T> list) {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ @Override
+ public int suggestIndex(ValueSortedList<T> list) {
+ int max = 9999;
+ int min = -1;
+
+ for (Expression operand : operator.getOperand()) {
+ if (operand instanceof GreaterThanOperator || operand instanceof MuchGreaterThanOperator) {
+ int i = list.createEvaluator((ComparisonOperator) operand).suggestIndex(list);
+ if (i > min && i >= 0) {
+ min = i;
+ }
+ } else {
+ throw new RuntimeException("Unsupported expression [" + operator.getExpression() + "]");
+ }
+ }
+ return Math.min(min, max);
+ }
+
+ @Override
+ public EList<LetStatement> getLetStatements() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/ComparisonOperatorEvaluator.java b/rba.model.core/src/rba/core/generator/util/value/ComparisonOperatorEvaluator.java
new file mode 100644
index 0000000..548183f
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/ComparisonOperatorEvaluator.java
@@ -0,0 +1,48 @@
+package rba.core.generator.util.value;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+import rba.core.ComparisonOperator;
+import rba.core.Expression;
+import rba.core.RuleObject;
+
+public abstract class ComparisonOperatorEvaluator<T extends RuleObject> extends ExpressionEvaluator<T> implements ComparisonOperator {
+
+ protected ComparisonOperator operator;
+
+ protected T subject;
+
+ protected ComparisonOperatorEvaluator(ComparisonOperator o) {
+ super(o);
+ operator = o;
+ EObject container = o.eContainer();
+ while (!(container instanceof RuleObject)) {
+ container = container.eContainer();
+ if (container == null)
+ break;
+ }
+ if (container != null) {
+ subject = (T) container;
+ }
+ }
+
+ abstract public boolean evaluate(ValueSortedList<T> list);
+
+ /**
+ * @param list
+ * @return -1 if it has no suggestion 9999 implies MAX group (last index)
+ */
+ abstract public int suggestIndex(ValueSortedList<T> list);
+
+ @Override
+ public EList<Expression> getOperand() {
+ return operator.getOperand();
+ }
+
+ @Override
+ public String getSymbol() {
+ return operator.getSymbol();
+ }
+
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/EqualToOperatorEvaluator.java b/rba.model.core/src/rba/core/generator/util/value/EqualToOperatorEvaluator.java
new file mode 100644
index 0000000..bb20773
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/EqualToOperatorEvaluator.java
@@ -0,0 +1,51 @@
+package rba.core.generator.util.value;
+
+import org.eclipse.emf.common.util.EList;
+
+import rba.core.ComparisonOperator;
+import rba.core.EqualToOperator;
+import rba.core.Expression;
+import rba.core.LetStatement;
+import rba.core.ObjectReference;
+import rba.core.RuleObject;
+import rba.core.ThatOfOperator;
+import rba.core.ValueExpression;
+
+public class EqualToOperatorEvaluator<T extends RuleObject> extends ComparisonOperatorEvaluator<T> implements EqualToOperator {
+
+ protected EqualToOperatorEvaluator(ComparisonOperator o) {
+ super(o);
+ }
+
+ @Override
+ public boolean evaluate(ValueSortedList<T> list) {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ @Override
+ public int suggestIndex(ValueSortedList<T> list) {
+ Expression operand = operator.getOperand().get(0);
+ if (operand instanceof ThatOfOperator) {
+ Expression target = ((ThatOfOperator) operand).getOperand().get(0);
+
+ if (target instanceof ObjectReference) {
+ T object = (T) ((ObjectReference) target).getRefObject();
+ return list.getGroupIndexOf(object);
+ }
+
+ } else if (operand instanceof ValueExpression) {
+ int i = list.getGroupIndexOf(((ValueExpression) operand).getExpression());
+ return i;
+ }
+
+ throw new RuntimeException("Unsupported expression [" + operator.getExpression() + "]");
+ }
+
+ @Override
+ public EList<LetStatement> getLetStatements() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/ExpressionEvaluator.java b/rba.model.core/src/rba/core/generator/util/value/ExpressionEvaluator.java
new file mode 100644
index 0000000..75bf881
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/ExpressionEvaluator.java
@@ -0,0 +1,56 @@
+package rba.core.generator.util.value;
+
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.generator.util.EObjectDecorator;
+
+abstract public class ExpressionEvaluator<T> extends EObjectDecorator implements Expression {
+
+ private Expression expression;
+
+ protected ExpressionEvaluator(Expression o) {
+ super(o);
+ expression = o;
+ }
+
+ @Override
+ public ExpressionType getType() {
+ return expression.getType();
+ }
+
+ @Override
+ public boolean isSetType() {
+ return expression.isSetType();
+ }
+
+ @Override
+ public String getExpression() {
+ return expression.getExpression();
+ }
+
+ @Override
+ public void setExpression(String value) {
+ expression.setExpression(value);
+ }
+
+ @Override
+ public void unsetExpression() {
+ expression.unsetExpression();
+ }
+
+ @Override
+ public boolean isSetExpression() {
+ return expression.isSetExpression();
+ }
+
+ @Override
+ public String getExpressionText() {
+ return expression.getExpressionText();
+ }
+
+ @Override
+ public ExpressionType getUnderlyingType() {
+ return expression.getUnderlyingType();
+ }
+
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/GreaterThanOperatorEvaluator.java b/rba.model.core/src/rba/core/generator/util/value/GreaterThanOperatorEvaluator.java
new file mode 100644
index 0000000..4b3506d
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/GreaterThanOperatorEvaluator.java
@@ -0,0 +1,62 @@
+package rba.core.generator.util.value;
+
+import org.eclipse.emf.common.util.EList;
+
+import rba.core.Expression;
+import rba.core.GreaterThanOperator;
+import rba.core.LetStatement;
+import rba.core.ObjectReference;
+import rba.core.RuleObject;
+import rba.core.ThatOfOperator;
+import rba.core.ValueExpression;
+
+public class GreaterThanOperatorEvaluator<T extends RuleObject> extends ComparisonOperatorEvaluator<T> implements GreaterThanOperator {
+
+ protected GreaterThanOperatorEvaluator(GreaterThanOperator o) {
+ super(o);
+ }
+
+ @Override
+ public boolean evaluate(ValueSortedList<T> list) {
+ Expression operand = operator.getOperand().get(0);
+ if (operand instanceof ObjectReference) {
+ T object = (T) ((ObjectReference) operand).getRefObject();
+ return (list.getGroupIndexOf(subject) > list.getGroupIndexOf(object));
+ }
+
+ return false;
+ }
+
+ @Override
+ public int suggestIndex(ValueSortedList<T> list) {
+ Expression operand = operator.getOperand().get(0);
+ if (operand instanceof ThatOfOperator) {
+ Expression target = ((ThatOfOperator) operand).getOperand().get(0);
+
+ if (target instanceof ObjectReference) {
+ T object = (T) ((ObjectReference) target).getRefObject();
+ if (list.getGroupIndexOf(subject) > list.getGroupIndexOf(object)) {
+ return -1;
+ } else {
+ return list.getGroupIndexOf(object) + 1;
+ }
+ }
+
+ } else if (operand instanceof ValueExpression) {
+ int i = ((ValueExpression) operand).getExpressionValue();
+ if (list.getGroupIndexOf(subject) > i) {
+ return -1;
+ } else {
+ return i + 1;
+ }
+ }
+
+ throw new RuntimeException("Unsupported expression [" + operator.getExpression() + "]");
+ }
+
+ @Override
+ public EList<LetStatement> getLetStatements() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/MuchGreaterThanOperatorEvaluator.java b/rba.model.core/src/rba/core/generator/util/value/MuchGreaterThanOperatorEvaluator.java
new file mode 100644
index 0000000..2c222c2
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/MuchGreaterThanOperatorEvaluator.java
@@ -0,0 +1,65 @@
+package rba.core.generator.util.value;
+
+import org.eclipse.emf.common.util.EList;
+
+import rba.core.Expression;
+import rba.core.LetStatement;
+import rba.core.MuchGreaterThanOperator;
+import rba.core.ObjectReference;
+import rba.core.RuleObject;
+import rba.core.ThatOfOperator;
+import rba.core.ValueExpression;
+
+public class MuchGreaterThanOperatorEvaluator<T extends RuleObject> extends ComparisonOperatorEvaluator<T> implements MuchGreaterThanOperator {
+
+ static int MUCH_GAP = 10;
+
+ public MuchGreaterThanOperatorEvaluator(MuchGreaterThanOperator o) {
+ super(o);
+ }
+
+ @Override
+ public boolean evaluate(ValueSortedList<T> list) {
+ Expression operand = operator.getOperand().get(0);
+ if (operand instanceof ObjectReference) {
+ T object = (T) ((ObjectReference) operand).getRefObject();
+ return (list.getGroupIndexOf(subject) >= list.getGroupIndexOf(object) + MUCH_GAP);
+ }
+
+ return false;
+ }
+
+ @Override
+ public int suggestIndex(ValueSortedList<T> list) {
+ Expression operand = operator.getOperand().get(0);
+ if (operand instanceof ThatOfOperator) {
+ Expression target = ((ThatOfOperator) operand).getOperand().get(0);
+
+ if (target instanceof ObjectReference) {
+ T object = (T) ((ObjectReference) target).getRefObject();
+ if (list.getGroupIndexOf(subject) >= list.getGroupIndexOf(object) + MUCH_GAP) {
+ return -1;
+ } else {
+ return list.getGroupIndexOf(object) + MUCH_GAP;
+ }
+ }
+
+ } else if (operand instanceof ValueExpression) {
+ int i = ((ValueExpression) operand).getExpressionValue();
+ if (list.getGroupIndexOf(subject) > i) {
+ return -1;
+ } else {
+ return i + 1;
+ }
+ }
+
+ throw new RuntimeException("Unsupported expression [" + operator.getExpression() + "]");
+ }
+
+ @Override
+ public EList<LetStatement> getLetStatements() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/ValueGroup.java b/rba.model.core/src/rba/core/generator/util/value/ValueGroup.java
new file mode 100644
index 0000000..de62c20
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/ValueGroup.java
@@ -0,0 +1,35 @@
+package rba.core.generator.util.value;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+public class ValueGroup<T> {
+ private String name;
+
+ private Collection<T> member;
+
+ public ValueGroup(String name) {
+ this.name = name;
+ member = new ArrayList<T>();
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void add(T e) {
+ member.add(e);
+ }
+
+ public void remove(T e) {
+ member.remove(e);
+ }
+
+ public Collection<T> getMember() {
+ return member;
+ }
+}
diff --git a/rba.model.core/src/rba/core/generator/util/value/ValueSortedList.java b/rba.model.core/src/rba/core/generator/util/value/ValueSortedList.java
new file mode 100644
index 0000000..f16f950
--- /dev/null
+++ b/rba.model.core/src/rba/core/generator/util/value/ValueSortedList.java
@@ -0,0 +1,155 @@
+package rba.core.generator.util.value;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import rba.core.ComparisonAnd;
+import rba.core.ComparisonOperator;
+import rba.core.EqualToOperator;
+import rba.core.Expression;
+import rba.core.GreaterThanOperator;
+import rba.core.MuchGreaterThanOperator;
+import rba.core.RuleObject;
+import rba.core.ValueExpression;
+
+abstract public class ValueSortedList<T extends RuleObject> {
+ private List<ValueGroup<T>> list;
+
+ private Collection<T> unsorted;
+
+ public ValueSortedList(Collection<T> originalList) {
+ list = new ArrayList<ValueGroup<T>>();
+ list.add(new ValueGroup<T>("MIN"));
+ list.add(new ValueGroup<T>("1"));
+ list.add(new ValueGroup<T>("MAX"));
+ unsorted = new ArrayList<T>(originalList);
+ sort();
+ }
+
+ public void add(T o) {
+ unsorted.add(o);
+ sort();
+ }
+
+ public void addAll(Collection<T> list) {
+ unsorted.addAll(list);
+ sort();
+ }
+
+ public void sort() {
+ list.get(0).getMember().addAll(unsorted);
+ unsorted.clear();
+ boolean trysort = true;
+ int retry = 0;
+ while (trysort) {
+ trysort = false;
+ retry = retry + 1;
+ if (retry > 100) {
+ throw new RuntimeException("Could not sort value [" + list + "]");
+ }
+ for (T i : sortedList()) {
+ int currentIndex = this.getGroupIndexOf(i);
+ Expression e = this.getValueExpression(i);
+ if (e == null)
+ continue;
+ if (e instanceof ValueExpression) {
+ int index = this.getGroupIndexOf(e.getExpression());
+ if (index == -1) {
+ index = ((ValueExpression) e).getExpressionValue();
+ if (index >= list.size() - 1) {
+ list.get(currentIndex).remove(i);
+ addGroupAt(index, i);
+ trysort = true;
+ continue;
+ }
+ }
+ if (index != currentIndex) {
+ list.get(currentIndex).remove(i);
+ list.get(index).add(i);
+ trysort = true;
+ } else {
+ }
+ } else if (e instanceof ComparisonOperator) {
+ ComparisonOperatorEvaluator<T> evaluator = createEvaluator((ComparisonOperator) e);
+ int index = evaluator.suggestIndex(this);
+ if (index < 0)
+ continue;
+ if (index >= list.size() - 1) {
+ list.get(currentIndex).remove(i);
+ addGroupAt(index, i);
+ trysort = true;
+ } else if (index != currentIndex) {
+ list.get(currentIndex).remove(i);
+ list.get(index).add(i);
+ trysort = true;
+ } else {
+ }
+ } else {
+ throw new RuntimeException("Unsupported expression [" + e.getExpression() + "]");
+ }
+ }
+ }
+ }
+
+ private void addGroupAt(int index, T e) {
+
+ if (index >= list.size() - 1) {
+ for (int i = list.size() - 1; i <= index; ++i) {
+ ValueGroup<T> newGroup = new ValueGroup<T>(Integer.toString(i));
+ list.add(i, newGroup);
+ }
+ }
+
+ list.get(index).add(e);
+
+ }
+
+ public List<T> sortedList() {
+ List<T> result = new ArrayList<T>();
+ for (ValueGroup<T> i : list) {
+ result.addAll(i.getMember());
+ }
+ return result;
+ }
+
+ public List<ValueGroup<T>> getGroupList() {
+ return list;
+ }
+
+ abstract protected Expression getValueExpression(T e);
+
+ public int getGroupIndexOf(T e) {
+ for (ValueGroup<T> i : list) {
+ if (i.getMember().contains(e)) {
+ return list.indexOf(i);
+ }
+ }
+ return -1;
+ }
+
+ public int getGroupIndexOf(String groupName) {
+ for (ValueGroup<T> i : list) {
+ if (i.getName().contentEquals(groupName)) {
+ return list.indexOf(i);
+ }
+ }
+ return -1;
+ }
+
+ public ComparisonOperatorEvaluator<T> createEvaluator(ComparisonOperator e) {
+ ComparisonOperatorEvaluator<T> evaluator;
+ if (e instanceof GreaterThanOperator) {
+ evaluator = new GreaterThanOperatorEvaluator<T>((GreaterThanOperator) e);
+ } else if (e instanceof MuchGreaterThanOperator) {
+ evaluator = new MuchGreaterThanOperatorEvaluator<T>((MuchGreaterThanOperator) e);
+ } else if (e instanceof ComparisonAnd) {
+ evaluator = new ComparisonAndEvaluator<T>((ComparisonAnd) e);
+ } else if (e instanceof EqualToOperator) {
+ evaluator = new EqualToOperatorEvaluator<T>((EqualToOperator) e);
+ } else {
+ throw new RuntimeException("Unsupported expression [" + e.getExpression() + "]");
+ }
+ return evaluator;
+ }
+}
diff --git a/rba.model.core/src/rba/core/impl/AbstractAllocatableImpl.java b/rba.model.core/src/rba/core/impl/AbstractAllocatableImpl.java
new file mode 100644
index 0000000..1f12cd5
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AbstractAllocatableImpl.java
@@ -0,0 +1,235 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import rba.core.AbstractAllocatable;
+import rba.core.AbstractContent;
+import rba.core.Allocatable;
+import rba.core.AllocatableSet;
+import rba.core.Content;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Abstract Allocatable</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.AbstractAllocatableImpl#getContents <em>Contents</em>}</li>
+ * <li>{@link rba.core.impl.AbstractAllocatableImpl#getAllocatableGroup <em>Allocatable Group</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class AbstractAllocatableImpl extends RuleObjectImpl implements AbstractAllocatable {
+ /**
+ * The cached value of the '{@link #getContents() <em>Contents</em>}' reference list.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getContents()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractContent> contents;
+
+ /**
+ * The cached value of the '{@link #getAllocatableGroup() <em>Allocatable Group</em>}' reference list.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @see #getAllocatableGroup()
+ * @generated
+ * @ordered
+ */
+ protected EList<AllocatableSet> allocatableGroup;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractAllocatableImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ABSTRACT_ALLOCATABLE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractContent> getContents() {
+ if (contents == null) {
+ contents = new EObjectWithInverseResolvingEList.ManyInverse<AbstractContent>(AbstractContent.class, this,
+ RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS, RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE);
+ }
+ return contents;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AllocatableSet> getAllocatableGroup() {
+ if (allocatableGroup == null) {
+ allocatableGroup = new EObjectWithInverseResolvingEList.ManyInverse<AllocatableSet>(AllocatableSet.class,
+ this, RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP,
+ RBACorePackage.ALLOCATABLE_SET__TARGET);
+ }
+ return allocatableGroup;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Content> getContentsList() {
+ java.util.Set<Content> contents = new java.util.LinkedHashSet<Content>();
+ getContents().forEach(content -> contents.addAll(content.collectLeafContents()));
+ getAllocatableGroup().forEach(allocatableSet -> contents.addAll(allocatableSet.getContentsList()));
+ return new org.eclipse.emf.common.util.BasicEList<Content>(contents);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Allocatable> collectLeafAllocatable() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getContents()).basicAdd(otherEnd, msgs);
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getAllocatableGroup()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS:
+ return ((InternalEList<?>) getContents()).basicRemove(otherEnd, msgs);
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP:
+ return ((InternalEList<?>) getAllocatableGroup()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS:
+ return getContents();
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP:
+ return getAllocatableGroup();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS:
+ getContents().clear();
+ getContents().addAll((Collection<? extends AbstractContent>) newValue);
+ return;
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP:
+ getAllocatableGroup().clear();
+ getAllocatableGroup().addAll((Collection<? extends AllocatableSet>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS:
+ getContents().clear();
+ return;
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP:
+ getAllocatableGroup().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS:
+ return contents != null && !contents.isEmpty();
+ case RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP:
+ return allocatableGroup != null && !allocatableGroup.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ABSTRACT_ALLOCATABLE___GET_CONTENTS_LIST:
+ return getContentsList();
+ case RBACorePackage.ABSTRACT_ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE:
+ return collectLeafAllocatable();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AbstractAllocatableImpl
diff --git a/rba.model.core/src/rba/core/impl/AbstractConstraintImpl.java b/rba.model.core/src/rba/core/impl/AbstractConstraintImpl.java
new file mode 100644
index 0000000..3e8ab87
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AbstractConstraintImpl.java
@@ -0,0 +1,170 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.AbstractConstraint;
+import rba.core.Expression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Abstract Constraint</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.AbstractConstraintImpl#getExpression <em>Expression</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class AbstractConstraintImpl extends PackagableElementImpl implements AbstractConstraint {
+ /**
+ * The cached value of the '{@link #getExpression() <em>Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpression()
+ * @generated
+ * @ordered
+ */
+ protected Expression expression;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ABSTRACT_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getExpression() {
+ return expression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetExpression(Expression newExpression, NotificationChain msgs) {
+ Expression oldExpression = expression;
+ expression = newExpression;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION, oldExpression, newExpression);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExpression(Expression newExpression) {
+ if (newExpression != expression) {
+ NotificationChain msgs = null;
+ if (expression != null)
+ msgs = ((InternalEObject) expression).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION, null, msgs);
+ if (newExpression != null)
+ msgs = ((InternalEObject) newExpression).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION, null, msgs);
+ msgs = basicSetExpression(newExpression, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION,
+ newExpression, newExpression));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION:
+ return basicSetExpression(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION:
+ return getExpression();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION:
+ setExpression((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION:
+ setExpression((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONSTRAINT__EXPRESSION:
+ return expression != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // AbstractConstraintImpl
diff --git a/rba.model.core/src/rba/core/impl/AbstractContentImpl.java b/rba.model.core/src/rba/core/impl/AbstractContentImpl.java
new file mode 100644
index 0000000..44c0c20
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AbstractContentImpl.java
@@ -0,0 +1,230 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import rba.core.AbstractAllocatable;
+import rba.core.AbstractContent;
+import rba.core.Allocatable;
+import rba.core.Content;
+import rba.core.ContentSet;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Abstract Content</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.AbstractContentImpl#getContentGroup <em>Content Group</em>}</li>
+ * <li>{@link rba.core.impl.AbstractContentImpl#getAllocatable <em>Allocatable</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class AbstractContentImpl extends RuleObjectImpl implements AbstractContent {
+ /**
+ * The cached value of the '{@link #getContentGroup() <em>Content Group</em>}' reference list.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getContentGroup()
+ * @generated
+ * @ordered
+ */
+ protected EList<ContentSet> contentGroup;
+
+ /**
+ * The cached value of the '{@link #getAllocatable() <em>Allocatable</em>}' reference list.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getAllocatable()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractAllocatable> allocatable;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ABSTRACT_CONTENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ContentSet> getContentGroup() {
+ if (contentGroup == null) {
+ contentGroup = new EObjectWithInverseResolvingEList.ManyInverse<ContentSet>(ContentSet.class, this,
+ RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP, RBACorePackage.CONTENT_SET__TARGET);
+ }
+ return contentGroup;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractAllocatable> getAllocatable() {
+ if (allocatable == null) {
+ allocatable = new EObjectWithInverseResolvingEList.ManyInverse<AbstractAllocatable>(
+ AbstractAllocatable.class, this, RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE,
+ RBACorePackage.ABSTRACT_ALLOCATABLE__CONTENTS);
+ }
+ return allocatable;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Allocatable> getAllocatableList() {
+ java.util.Set<Allocatable> allocatables = new java.util.LinkedHashSet<Allocatable>();
+ getAllocatable().forEach(allocatable -> allocatables.addAll(allocatable.collectLeafAllocatable()));
+ getContentGroup().forEach(contentSet -> allocatables.addAll(contentSet.getAllocatableList()));
+ return new org.eclipse.emf.common.util.BasicEList<Allocatable>(allocatables);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Content> collectLeafContents() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getContentGroup()).basicAdd(otherEnd, msgs);
+ case RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getAllocatable()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP:
+ return ((InternalEList<?>) getContentGroup()).basicRemove(otherEnd, msgs);
+ case RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE:
+ return ((InternalEList<?>) getAllocatable()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP:
+ return getContentGroup();
+ case RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE:
+ return getAllocatable();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP:
+ getContentGroup().clear();
+ getContentGroup().addAll((Collection<? extends ContentSet>) newValue);
+ return;
+ case RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE:
+ getAllocatable().clear();
+ getAllocatable().addAll((Collection<? extends AbstractAllocatable>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP:
+ getContentGroup().clear();
+ return;
+ case RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE:
+ getAllocatable().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP:
+ return contentGroup != null && !contentGroup.isEmpty();
+ case RBACorePackage.ABSTRACT_CONTENT__ALLOCATABLE:
+ return allocatable != null && !allocatable.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ABSTRACT_CONTENT___GET_ALLOCATABLE_LIST:
+ return getAllocatableList();
+ case RBACorePackage.ABSTRACT_CONTENT___COLLECT_LEAF_CONTENTS:
+ return collectLeafContents();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AbstractContentImpl
diff --git a/rba.model.core/src/rba/core/impl/AbstractPropertyImpl.java b/rba.model.core/src/rba/core/impl/AbstractPropertyImpl.java
new file mode 100644
index 0000000..243acad
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AbstractPropertyImpl.java
@@ -0,0 +1,208 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import rba.core.AbstractProperty;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.Scene;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Abstract Property</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.AbstractPropertyImpl#getOwner <em>Owner</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class AbstractPropertyImpl extends RuleObjectImpl implements AbstractProperty {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ABSTRACT_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Scene getOwner() {
+ if (eContainerFeatureID() != RBACorePackage.ABSTRACT_PROPERTY__OWNER)
+ return null;
+ return (Scene) eInternalContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetOwner(Scene newOwner, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject) newOwner, RBACorePackage.ABSTRACT_PROPERTY__OWNER, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOwner(Scene newOwner) {
+ if (newOwner != eInternalContainer()
+ || (eContainerFeatureID() != RBACorePackage.ABSTRACT_PROPERTY__OWNER && newOwner != null)) {
+ if (EcoreUtil.isAncestor(this, newOwner))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newOwner != null)
+ msgs = ((InternalEObject) newOwner).eInverseAdd(this, RBACorePackage.SCENE__PROPERTIES, Scene.class,
+ msgs);
+ msgs = basicSetOwner(newOwner, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.ABSTRACT_PROPERTY__OWNER, newOwner,
+ newOwner));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetOwner((Scene) otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ return basicSetOwner(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ return eInternalContainer().eInverseRemove(this, RBACorePackage.SCENE__PROPERTIES, Scene.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ return getOwner();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ setOwner((Scene) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ setOwner((Scene) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ABSTRACT_PROPERTY__OWNER:
+ return getOwner() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ABSTRACT_PROPERTY___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AbstractPropertyImpl
diff --git a/rba.model.core/src/rba/core/impl/AbstractSceneImpl.java b/rba.model.core/src/rba/core/impl/AbstractSceneImpl.java
new file mode 100644
index 0000000..179f9f7
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AbstractSceneImpl.java
@@ -0,0 +1,33 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AbstractScene;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Abstract Scene</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class AbstractSceneImpl extends RuleObjectImpl implements AbstractScene {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractSceneImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ABSTRACT_SCENE;
+ }
+
+} // AbstractSceneImpl
diff --git a/rba.model.core/src/rba/core/impl/ActiveContentsImpl.java b/rba.model.core/src/rba/core/impl/ActiveContentsImpl.java
new file mode 100644
index 0000000..4ce9df2
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ActiveContentsImpl.java
@@ -0,0 +1,85 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ActiveContents;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Active Contents</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ActiveContentsImpl extends AllocatableOperatorImpl implements ActiveContents {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ActiveContentsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ACTIVE_CONTENTS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".activeContents()";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ EList<rba.core.Expression> expressions = getOperand();
+ if (!expressions.isEmpty() && expressions.get(0) != null) {
+ rba.core.Expression first = expressions.get(0);
+ if (first.getType() == ExpressionType.AREA) {
+ return ExpressionType.SET_OF_CONTENT;
+ } else if (first.getType() == ExpressionType.ZONE) {
+ return ExpressionType.SET_OF_SOUND;
+ }
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ACTIVE_CONTENTS___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.ACTIVE_CONTENTS___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //ActiveContentsImpl
diff --git a/rba.model.core/src/rba/core/impl/ActiveStateImpl.java b/rba.model.core/src/rba/core/impl/ActiveStateImpl.java
new file mode 100644
index 0000000..965181c
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ActiveStateImpl.java
@@ -0,0 +1,69 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ActiveState;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Active State</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ActiveStateImpl extends ContentOperatorImpl implements ActiveState {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ActiveStateImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ACTIVE_STATE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".activeState()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.CONTENT_STATE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ACTIVE_STATE___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.ACTIVE_STATE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ActiveStateImpl
diff --git a/rba.model.core/src/rba/core/impl/AllocatableImpl.java b/rba.model.core/src/rba/core/impl/AllocatableImpl.java
new file mode 100644
index 0000000..d47a7dd
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AllocatableImpl.java
@@ -0,0 +1,261 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import rba.core.Allocatable;
+import rba.core.ArbitrationPolicy;
+import rba.core.Expression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Allocatable</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.AllocatableImpl#getArbitrationPolicy <em>Arbitration Policy</em>}</li>
+ * <li>{@link rba.core.impl.AllocatableImpl#getVisibility <em>Visibility</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class AllocatableImpl extends AbstractAllocatableImpl implements Allocatable {
+ /**
+ * The default value of the '{@link #getArbitrationPolicy() <em>Arbitration Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getArbitrationPolicy()
+ * @generated
+ * @ordered
+ */
+ protected static final ArbitrationPolicy ARBITRATION_POLICY_EDEFAULT = ArbitrationPolicy.DEFAULT;
+
+ /**
+ * The cached value of the '{@link #getArbitrationPolicy() <em>Arbitration Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getArbitrationPolicy()
+ * @generated
+ * @ordered
+ */
+ protected ArbitrationPolicy arbitrationPolicy = ARBITRATION_POLICY_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getVisibility() <em>Visibility</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVisibility()
+ * @generated
+ * @ordered
+ */
+ protected Expression visibility;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocatableImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ALLOCATABLE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ArbitrationPolicy getArbitrationPolicy() {
+ return arbitrationPolicy;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setArbitrationPolicy(ArbitrationPolicy newArbitrationPolicy) {
+ ArbitrationPolicy oldArbitrationPolicy = arbitrationPolicy;
+ arbitrationPolicy = newArbitrationPolicy == null ? ARBITRATION_POLICY_EDEFAULT : newArbitrationPolicy;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.ALLOCATABLE__ARBITRATION_POLICY,
+ oldArbitrationPolicy, arbitrationPolicy));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getVisibility() {
+ return visibility;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetVisibility(Expression newVisibility, NotificationChain msgs) {
+ Expression oldVisibility = visibility;
+ visibility = newVisibility;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.ALLOCATABLE__VISIBILITY, oldVisibility, newVisibility);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVisibility(Expression newVisibility) {
+ if (newVisibility != visibility) {
+ NotificationChain msgs = null;
+ if (visibility != null)
+ msgs = ((InternalEObject) visibility).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.ALLOCATABLE__VISIBILITY, null, msgs);
+ if (newVisibility != null)
+ msgs = ((InternalEObject) newVisibility).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.ALLOCATABLE__VISIBILITY, null, msgs);
+ msgs = basicSetVisibility(newVisibility, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.ALLOCATABLE__VISIBILITY, newVisibility,
+ newVisibility));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Allocatable> collectLeafAllocatable() {
+ java.util.Set<Allocatable> allocatables = new java.util.HashSet<Allocatable>();
+ allocatables.add(this);
+ return new org.eclipse.emf.common.util.BasicEList<Allocatable>(allocatables);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE__VISIBILITY:
+ return basicSetVisibility(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE__ARBITRATION_POLICY:
+ return getArbitrationPolicy();
+ case RBACorePackage.ALLOCATABLE__VISIBILITY:
+ return getVisibility();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE__ARBITRATION_POLICY:
+ setArbitrationPolicy((ArbitrationPolicy) newValue);
+ return;
+ case RBACorePackage.ALLOCATABLE__VISIBILITY:
+ setVisibility((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE__ARBITRATION_POLICY:
+ setArbitrationPolicy(ARBITRATION_POLICY_EDEFAULT);
+ return;
+ case RBACorePackage.ALLOCATABLE__VISIBILITY:
+ setVisibility((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE__ARBITRATION_POLICY:
+ return arbitrationPolicy != ARBITRATION_POLICY_EDEFAULT;
+ case RBACorePackage.ALLOCATABLE__VISIBILITY:
+ return visibility != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE:
+ return collectLeafAllocatable();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (arbitrationPolicy: ");
+ result.append(arbitrationPolicy);
+ result.append(')');
+ return result.toString();
+ }
+
+} // AllocatableImpl
diff --git a/rba.model.core/src/rba/core/impl/AllocatableOperatorImpl.java b/rba.model.core/src/rba/core/impl/AllocatableOperatorImpl.java
new file mode 100644
index 0000000..9a034e7
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AllocatableOperatorImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AllocatableOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Allocatable Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class AllocatableOperatorImpl extends OperatorImpl implements AllocatableOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocatableOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ALLOCATABLE_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AllocatableOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/AllocatableSetImpl.java b/rba.model.core/src/rba/core/impl/AllocatableSetImpl.java
new file mode 100644
index 0000000..0cf7052
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AllocatableSetImpl.java
@@ -0,0 +1,181 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import rba.core.AbstractAllocatable;
+import rba.core.Allocatable;
+import rba.core.AllocatableSet;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Allocatable Set</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.AllocatableSetImpl#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class AllocatableSetImpl extends AbstractAllocatableImpl implements AllocatableSet {
+ /**
+ * The cached value of the '{@link #getTarget() <em>Target</em>}' reference list. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getTarget()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractAllocatable> target;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocatableSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ALLOCATABLE_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractAllocatable> getTarget() {
+ if (target == null) {
+ target = new EObjectWithInverseResolvingEList.ManyInverse<AbstractAllocatable>(AbstractAllocatable.class,
+ this, RBACorePackage.ALLOCATABLE_SET__TARGET,
+ RBACorePackage.ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP);
+ }
+ return target;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Allocatable> collectLeafAllocatable() {
+ java.util.Set<Allocatable> allocatables = new java.util.LinkedHashSet<Allocatable>();
+ getTarget().forEach(allocatable -> allocatables.addAll(allocatable.collectLeafAllocatable()));
+ return new org.eclipse.emf.common.util.BasicEList<Allocatable>(allocatables);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE_SET__TARGET:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getTarget()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE_SET__TARGET:
+ return ((InternalEList<?>) getTarget()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE_SET__TARGET:
+ return getTarget();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE_SET__TARGET:
+ getTarget().clear();
+ getTarget().addAll((Collection<? extends AbstractAllocatable>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE_SET__TARGET:
+ getTarget().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ALLOCATABLE_SET__TARGET:
+ return target != null && !target.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ALLOCATABLE_SET___COLLECT_LEAF_ALLOCATABLE:
+ return collectLeafAllocatable();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AllocatableSetImpl
diff --git a/rba.model.core/src/rba/core/impl/AllocatedContentImpl.java b/rba.model.core/src/rba/core/impl/AllocatedContentImpl.java
new file mode 100644
index 0000000..9d30cfa
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AllocatedContentImpl.java
@@ -0,0 +1,78 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AllocatedContent;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Allocated Content</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class AllocatedContentImpl extends AllocatableOperatorImpl implements AllocatedContent {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocatedContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ALLOCATED_CONTENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".allocatedContent()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ EList<rba.core.Expression> expressions = getOperand();
+ if (!expressions.isEmpty() && expressions.get(0) != null) {
+ rba.core.Expression first = expressions.get(0);
+ if ((first.getType() == ExpressionType.AREA) || (first.getType() == ExpressionType.SET_OF_AREA)) {
+ return ExpressionType.CONTENT;
+ } else if ((first.getType() == ExpressionType.ZONE) || (first.getType() == ExpressionType.SET_OF_ZONE)) {
+ return ExpressionType.SOUND;
+ }
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ALLOCATED_CONTENT___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.ALLOCATED_CONTENT___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AllocatedContentImpl
diff --git a/rba.model.core/src/rba/core/impl/AndOperatorImpl.java b/rba.model.core/src/rba/core/impl/AndOperatorImpl.java
new file mode 100644
index 0000000..8768fa1
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/AndOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AndOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>And Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class AndOperatorImpl extends LogicalOperatorImpl implements AndOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AndOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.AND_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "AND";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.AND_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AndOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ArbitrationPolicyExpressionImpl.java b/rba.model.core/src/rba/core/impl/ArbitrationPolicyExpressionImpl.java
new file mode 100644
index 0000000..a9d7764
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ArbitrationPolicyExpressionImpl.java
@@ -0,0 +1,193 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.Enumerator;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.ArbitrationPolicy;
+import rba.core.ArbitrationPolicyExpression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Arbitration Policy Expression</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ArbitrationPolicyExpressionImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ArbitrationPolicyExpressionImpl extends EnumExpressionImpl implements ArbitrationPolicyExpression {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final ArbitrationPolicy VALUE_EDEFAULT = ArbitrationPolicy.DEFAULT;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected ArbitrationPolicy value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ArbitrationPolicyExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ARBITRATION_POLICY_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ArbitrationPolicy getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(ArbitrationPolicy newValue) {
+ ArbitrationPolicy oldValue = value;
+ value = newValue == null ? VALUE_EDEFAULT : newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.ARBITRATION_POLICY_EXPRESSION__VALUE,
+ oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ if (value instanceof ArbitrationPolicy) {
+ return value.getName();
+ } else {
+ return "[Invalid_Expression]";
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Enumerator getExpressionValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION__VALUE:
+ setValue((ArbitrationPolicy) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ArbitrationPolicyExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/ArithmeticOperatorImpl.java b/rba.model.core/src/rba/core/impl/ArithmeticOperatorImpl.java
new file mode 100644
index 0000000..35fb393
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ArithmeticOperatorImpl.java
@@ -0,0 +1,83 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ArithmeticOperator;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Arithmetic Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ArithmeticOperatorImpl extends OperatorImpl implements ArithmeticOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ArithmeticOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ARITHMETIC_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append("(");
+ for (int i = 0; i < expressions.size(); i++) {
+ rba.core.Expression expression = expressions.get(i);
+ expressionText.append(expression.getExpressionText());
+ if (i == expressions.size() - 1) {
+ expressionText.append(")");
+ } else {
+ expressionText.append(" ");
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ }
+ }
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ARITHMETIC_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.ARITHMETIC_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ArithmeticOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ComparisonAndImpl.java b/rba.model.core/src/rba/core/impl/ComparisonAndImpl.java
new file mode 100644
index 0000000..1d1dfa6
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ComparisonAndImpl.java
@@ -0,0 +1,118 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ComparisonAnd;
+import rba.core.ComparisonOperator;
+import rba.core.Expression;
+import rba.core.Operator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Comparison And</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ComparisonAndImpl extends ComparisonOperatorImpl implements ComparisonAnd {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComparisonAndImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.COMPARISON_AND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "and";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append("(");
+ for (int i = 0; i < expressions.size(); i++) {
+ rba.core.Expression expression = expressions.get(i);
+ expressionText.append(expression.getExpressionText());
+ if (i == expressions.size() - 1) {
+ expressionText.append(")");
+ } else {
+ expressionText.append(" ");
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ }
+ }
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.COMPARISON_AND___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.COMPARISON_AND___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == ComparisonOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.COMPARISON_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBACorePackage.COMPARISON_AND___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.COMPARISON_AND___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.COMPARISON_AND___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ComparisonAndImpl
diff --git a/rba.model.core/src/rba/core/impl/ComparisonOperatorImpl.java b/rba.model.core/src/rba/core/impl/ComparisonOperatorImpl.java
new file mode 100644
index 0000000..536b758
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ComparisonOperatorImpl.java
@@ -0,0 +1,73 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ComparisonOperator;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Comparison Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ComparisonOperatorImpl extends OperatorImpl implements ComparisonOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComparisonOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.COMPARISON_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(getSymbol());
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.COMPARISON_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.COMPARISON_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ComparisonOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ComplexExpressionImpl.java b/rba.model.core/src/rba/core/impl/ComplexExpressionImpl.java
new file mode 100644
index 0000000..7032eb5
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ComplexExpressionImpl.java
@@ -0,0 +1,279 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.ComplexExpression;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Complex Expression</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ComplexExpressionImpl#getOtherExpression <em>Other Expression</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ComplexExpressionImpl extends ExpressionImpl implements ComplexExpression {
+ /**
+ * The cached value of the '{@link #getOtherExpression() <em>Other Expression</em>}' containment reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * @see #getOtherExpression()
+ * @generated
+ * @ordered
+ */
+ protected Expression otherExpression;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComplexExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.COMPLEX_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getOtherExpression() {
+ return otherExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetOtherExpression(Expression newOtherExpression, NotificationChain msgs) {
+ Expression oldOtherExpression = otherExpression;
+ otherExpression = newOtherExpression;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION, oldOtherExpression, newOtherExpression);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOtherExpression(Expression newOtherExpression) {
+ if (newOtherExpression != otherExpression) {
+ NotificationChain msgs = null;
+ if (otherExpression != null)
+ msgs = ((InternalEObject) otherExpression).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION, null, msgs);
+ if (newOtherExpression != null)
+ msgs = ((InternalEObject) newOtherExpression).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION, null, msgs);
+ msgs = basicSetOtherExpression(newOtherExpression, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION,
+ newOtherExpression, newOtherExpression));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return otherExpression != null ? otherExpression.getExpressionText() : "[Invalid_Expression]";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ if (otherExpression != null) {
+ return otherExpression.getType();
+ } else {
+ return ExpressionType.VALUE;
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getType() {
+ return getUnderlyingType();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ otherExpression.getLetStatements().addAll(getLetStatements());
+ return otherExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION:
+ return basicSetOtherExpression(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION:
+ return getOtherExpression();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION:
+ setOtherExpression((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION:
+ setOtherExpression((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.COMPLEX_EXPRESSION__OTHER_EXPRESSION:
+ return otherExpression != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.COMPLEX_EXPRESSION___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.COMPLEX_EXPRESSION___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBACorePackage.COMPLEX_EXPRESSION___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBACorePackage.COMPLEX_EXPRESSION___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBACorePackage.COMPLEX_EXPRESSION___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.COMPLEX_EXPRESSION___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.COMPLEX_EXPRESSION___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.COMPLEX_EXPRESSION___GET_TYPE:
+ return getType();
+ case RBACorePackage.COMPLEX_EXPRESSION___CAN_EXPAND:
+ return canExpand();
+ case RBACorePackage.COMPLEX_EXPRESSION___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ComplexExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/ConstraintImpl.java b/rba.model.core/src/rba/core/impl/ConstraintImpl.java
new file mode 100644
index 0000000..180c124
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ConstraintImpl.java
@@ -0,0 +1,186 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.Constraint;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Constraint</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ConstraintImpl#isRuntime <em>Runtime</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConstraintImpl extends AbstractConstraintImpl implements Constraint {
+ /**
+ * The default value of the '{@link #isRuntime() <em>Runtime</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #isRuntime()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean RUNTIME_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isRuntime() <em>Runtime</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #isRuntime()
+ * @generated
+ * @ordered
+ */
+ protected boolean runtime = RUNTIME_EDEFAULT;
+
+ /**
+ * This is true if the Runtime attribute has been set.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean runtimeESet;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isRuntime() {
+ return runtime;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRuntime(boolean newRuntime) {
+ boolean oldRuntime = runtime;
+ runtime = newRuntime;
+ boolean oldRuntimeESet = runtimeESet;
+ runtimeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.CONSTRAINT__RUNTIME, oldRuntime,
+ runtime, !oldRuntimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetRuntime() {
+ boolean oldRuntime = runtime;
+ boolean oldRuntimeESet = runtimeESet;
+ runtime = RUNTIME_EDEFAULT;
+ runtimeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, RBACorePackage.CONSTRAINT__RUNTIME, oldRuntime,
+ RUNTIME_EDEFAULT, oldRuntimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetRuntime() {
+ return runtimeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.CONSTRAINT__RUNTIME:
+ return isRuntime();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.CONSTRAINT__RUNTIME:
+ setRuntime((Boolean) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONSTRAINT__RUNTIME:
+ unsetRuntime();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONSTRAINT__RUNTIME:
+ return isSetRuntime();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (runtime: ");
+ if (runtimeESet)
+ result.append(runtime);
+ else
+ result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} // ConstraintImpl
diff --git a/rba.model.core/src/rba/core/impl/ContentImpl.java b/rba.model.core/src/rba/core/impl/ContentImpl.java
new file mode 100644
index 0000000..7de022e
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ContentImpl.java
@@ -0,0 +1,248 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import rba.core.Content;
+import rba.core.ContentState;
+import rba.core.LoserType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Content</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ContentImpl#getLoserType <em>Loser Type</em>}</li>
+ * <li>{@link rba.core.impl.ContentImpl#getStates <em>States</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ContentImpl extends AbstractContentImpl implements Content {
+ /**
+ * The default value of the '{@link #getLoserType() <em>Loser Type</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getLoserType()
+ * @generated
+ * @ordered
+ */
+ protected static final LoserType LOSER_TYPE_EDEFAULT = LoserType.NEVER_GIVEUP;
+
+ /**
+ * The cached value of the '{@link #getLoserType() <em>Loser Type</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getLoserType()
+ * @generated
+ * @ordered
+ */
+ protected LoserType loserType = LOSER_TYPE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getStates() <em>States</em>}' containment reference list.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getStates()
+ * @generated
+ * @ordered
+ */
+ protected EList<ContentState> states;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONTENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LoserType getLoserType() {
+ return loserType;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLoserType(LoserType newLoserType) {
+ LoserType oldLoserType = loserType;
+ loserType = newLoserType == null ? LOSER_TYPE_EDEFAULT : newLoserType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.CONTENT__LOSER_TYPE, oldLoserType,
+ loserType));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ContentState> getStates() {
+ if (states == null) {
+ states = new EObjectContainmentWithInverseEList<ContentState>(ContentState.class, this,
+ RBACorePackage.CONTENT__STATES, RBACorePackage.CONTENT_STATE__OWNER);
+ }
+ return states;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Content> collectLeafContents() {
+ java.util.Set<Content> contents = new java.util.HashSet<Content>();
+ contents.add(this);
+ return new org.eclipse.emf.common.util.BasicEList<Content>(contents);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT__STATES:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getStates()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT__STATES:
+ return ((InternalEList<?>) getStates()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT__LOSER_TYPE:
+ return getLoserType();
+ case RBACorePackage.CONTENT__STATES:
+ return getStates();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT__LOSER_TYPE:
+ setLoserType((LoserType) newValue);
+ return;
+ case RBACorePackage.CONTENT__STATES:
+ getStates().clear();
+ getStates().addAll((Collection<? extends ContentState>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT__LOSER_TYPE:
+ setLoserType(LOSER_TYPE_EDEFAULT);
+ return;
+ case RBACorePackage.CONTENT__STATES:
+ getStates().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT__LOSER_TYPE:
+ return loserType != LOSER_TYPE_EDEFAULT;
+ case RBACorePackage.CONTENT__STATES:
+ return states != null && !states.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.CONTENT___COLLECT_LEAF_CONTENTS:
+ return collectLeafContents();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (loserType: ");
+ result.append(loserType);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ContentImpl
diff --git a/rba.model.core/src/rba/core/impl/ContentOperatorImpl.java b/rba.model.core/src/rba/core/impl/ContentOperatorImpl.java
new file mode 100644
index 0000000..54d3eee
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ContentOperatorImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ContentOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Content Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ContentOperatorImpl extends OperatorImpl implements ContentOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONTENT_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.CONTENT_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ContentOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ContentSetImpl.java b/rba.model.core/src/rba/core/impl/ContentSetImpl.java
new file mode 100644
index 0000000..48b49dc
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ContentSetImpl.java
@@ -0,0 +1,177 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import rba.core.AbstractContent;
+import rba.core.Content;
+import rba.core.ContentSet;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Content Set</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ContentSetImpl#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ContentSetImpl extends AbstractContentImpl implements ContentSet {
+ /**
+ * The cached value of the '{@link #getTarget() <em>Target</em>}' reference list. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getTarget()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractContent> target;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONTENT_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractContent> getTarget() {
+ if (target == null) {
+ target = new EObjectWithInverseResolvingEList.ManyInverse<AbstractContent>(AbstractContent.class, this,
+ RBACorePackage.CONTENT_SET__TARGET, RBACorePackage.ABSTRACT_CONTENT__CONTENT_GROUP);
+ }
+ return target;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Content> collectLeafContents() {
+ java.util.Set<Content> contents = new java.util.LinkedHashSet<Content>();
+ getTarget().forEach(content -> contents.addAll(content.collectLeafContents()));
+ return new org.eclipse.emf.common.util.BasicEList<Content>(contents);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_SET__TARGET:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getTarget()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_SET__TARGET:
+ return ((InternalEList<?>) getTarget()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_SET__TARGET:
+ return getTarget();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_SET__TARGET:
+ getTarget().clear();
+ getTarget().addAll((Collection<? extends AbstractContent>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_SET__TARGET:
+ getTarget().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_SET__TARGET:
+ return target != null && !target.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.CONTENT_SET___COLLECT_LEAF_CONTENTS:
+ return collectLeafContents();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ContentSetImpl
diff --git a/rba.model.core/src/rba/core/impl/ContentStateImpl.java b/rba.model.core/src/rba/core/impl/ContentStateImpl.java
new file mode 100644
index 0000000..f744899
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ContentStateImpl.java
@@ -0,0 +1,256 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import rba.core.Content;
+import rba.core.ContentState;
+import rba.core.Expression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Content State</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ContentStateImpl#getValue <em>Value</em>}</li>
+ * <li>{@link rba.core.impl.ContentStateImpl#getOwner <em>Owner</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ContentStateImpl extends RuleObjectImpl implements ContentState {
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Expression value;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentStateImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONTENT_STATE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) {
+ Expression oldValue = value;
+ value = newValue;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.CONTENT_STATE__VALUE, oldValue, newValue);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(Expression newValue) {
+ if (newValue != value) {
+ NotificationChain msgs = null;
+ if (value != null)
+ msgs = ((InternalEObject) value).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.CONTENT_STATE__VALUE, null, msgs);
+ if (newValue != null)
+ msgs = ((InternalEObject) newValue).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.CONTENT_STATE__VALUE, null, msgs);
+ msgs = basicSetValue(newValue, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.CONTENT_STATE__VALUE, newValue,
+ newValue));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Content getOwner() {
+ if (eContainerFeatureID() != RBACorePackage.CONTENT_STATE__OWNER)
+ return null;
+ return (Content) eInternalContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetOwner(Content newOwner, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject) newOwner, RBACorePackage.CONTENT_STATE__OWNER, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOwner(Content newOwner) {
+ if (newOwner != eInternalContainer()
+ || (eContainerFeatureID() != RBACorePackage.CONTENT_STATE__OWNER && newOwner != null)) {
+ if (EcoreUtil.isAncestor(this, newOwner))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newOwner != null)
+ msgs = ((InternalEObject) newOwner).eInverseAdd(this, RBACorePackage.CONTENT__STATES, Content.class,
+ msgs);
+ msgs = basicSetOwner(newOwner, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.CONTENT_STATE__OWNER, newOwner,
+ newOwner));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetOwner((Content) otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_STATE__VALUE:
+ return basicSetValue(null, msgs);
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ return basicSetOwner(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ return eInternalContainer().eInverseRemove(this, RBACorePackage.CONTENT__STATES, Content.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_STATE__VALUE:
+ return getValue();
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ return getOwner();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_STATE__VALUE:
+ setValue((Expression) newValue);
+ return;
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ setOwner((Content) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_STATE__VALUE:
+ setValue((Expression) null);
+ return;
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ setOwner((Content) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.CONTENT_STATE__VALUE:
+ return value != null;
+ case RBACorePackage.CONTENT_STATE__OWNER:
+ return getOwner() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // ContentStateImpl
diff --git a/rba.model.core/src/rba/core/impl/ContentStateOperatorImpl.java b/rba.model.core/src/rba/core/impl/ContentStateOperatorImpl.java
new file mode 100644
index 0000000..c8d9330
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ContentStateOperatorImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ContentStateOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Content State Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ContentStateOperatorImpl extends OperatorImpl implements ContentStateOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentStateOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONTENT_STATE_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.CONTENT_STATE_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ContentStateOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ContentValueImpl.java b/rba.model.core/src/rba/core/impl/ContentValueImpl.java
new file mode 100644
index 0000000..0feff1f
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ContentValueImpl.java
@@ -0,0 +1,69 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ContentValue;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Content Value</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ContentValueImpl extends AllocatableOperatorImpl implements ContentValue {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.CONTENT_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".contentValue()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.CONTENT_VALUE___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.CONTENT_VALUE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ContentValueImpl
diff --git a/rba.model.core/src/rba/core/impl/EnumExpressionImpl.java b/rba.model.core/src/rba/core/impl/EnumExpressionImpl.java
new file mode 100644
index 0000000..0c01946
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/EnumExpressionImpl.java
@@ -0,0 +1,82 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.Enumerator;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.EnumExpression;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Enum Expression</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class EnumExpressionImpl extends ExpressionImpl implements EnumExpression {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected EnumExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.ENUM_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.ENUM;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Enumerator getExpressionValue() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getType() {
+ return getUnderlyingType();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.ENUM_EXPRESSION___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.ENUM_EXPRESSION___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ case RBACorePackage.ENUM_EXPRESSION___GET_TYPE:
+ return getType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // EnumExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/EqualToOperatorImpl.java b/rba.model.core/src/rba/core/impl/EqualToOperatorImpl.java
new file mode 100644
index 0000000..c88a227
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/EqualToOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.EqualToOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Equal To Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class EqualToOperatorImpl extends ComparisonOperatorImpl implements EqualToOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected EqualToOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.EQUAL_TO_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "=";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.EQUAL_TO_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // EqualToOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ExistsOperatorImpl.java b/rba.model.core/src/rba/core/impl/ExistsOperatorImpl.java
new file mode 100644
index 0000000..12fa012
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ExistsOperatorImpl.java
@@ -0,0 +1,87 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExistsOperator;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Exists Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ExistsOperatorImpl extends LambdaContextImpl implements ExistsOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExistsOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.EXISTS_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ rba.core.LambdaExpression lambda = getLambda();
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" ");
+ expressionText.append(lambda != null ? lambda.getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "Exists";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.EXISTS_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.EXISTS_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.EXISTS_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ExistsOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ExpressionImpl.java b/rba.model.core/src/rba/core/impl/ExpressionImpl.java
new file mode 100644
index 0000000..207158b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ExpressionImpl.java
@@ -0,0 +1,264 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.LetStatement;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Expression</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ExpressionImpl#getType <em>Type</em>}</li>
+ * <li>{@link rba.core.impl.ExpressionImpl#getExpression <em>Expression</em>}</li>
+ * <li>{@link rba.core.impl.ExpressionImpl#getLetStatements <em>Let Statements</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ExpressionImpl extends MinimalEObjectImpl.Container implements Expression {
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final ExpressionType TYPE_EDEFAULT = ExpressionType.VALUE;
+
+ /**
+ * The default value of the '{@link #getExpression() <em>Expression</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getExpression()
+ * @generated
+ * @ordered
+ */
+ protected static final String EXPRESSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLetStatements() <em>Let Statements</em>}' containment reference list. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * @see #getLetStatements()
+ * @generated
+ * @ordered
+ */
+ protected EList<LetStatement> letStatements;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public ExpressionType getType() {
+ return getUnderlyingType();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public boolean isSetType() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public String getExpression() {
+ return getExpressionText();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExpression(String newExpression) {
+ // TODO: implement this method to set the 'Expression' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetExpression() {
+ // TODO: implement this method to unset the 'Expression' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public boolean isSetExpression() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<LetStatement> getLetStatements() {
+ if (letStatements == null) {
+ letStatements = new EObjectContainmentEList<LetStatement>(LetStatement.class, this,
+ RBACorePackage.EXPRESSION__LET_STATEMENTS);
+ }
+ return letStatements;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.EXPRESSION__LET_STATEMENTS:
+ return ((InternalEList<?>) getLetStatements()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.EXPRESSION__TYPE:
+ return getType();
+ case RBACorePackage.EXPRESSION__EXPRESSION:
+ return getExpression();
+ case RBACorePackage.EXPRESSION__LET_STATEMENTS:
+ return getLetStatements();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.EXPRESSION__EXPRESSION:
+ setExpression((String) newValue);
+ return;
+ case RBACorePackage.EXPRESSION__LET_STATEMENTS:
+ getLetStatements().clear();
+ getLetStatements().addAll((Collection<? extends LetStatement>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.EXPRESSION__EXPRESSION:
+ unsetExpression();
+ return;
+ case RBACorePackage.EXPRESSION__LET_STATEMENTS:
+ getLetStatements().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.EXPRESSION__TYPE:
+ return isSetType();
+ case RBACorePackage.EXPRESSION__EXPRESSION:
+ return isSetExpression();
+ case RBACorePackage.EXPRESSION__LET_STATEMENTS:
+ return letStatements != null && !letStatements.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/ForAllOperatorImpl.java b/rba.model.core/src/rba/core/impl/ForAllOperatorImpl.java
new file mode 100644
index 0000000..dbcb8af
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ForAllOperatorImpl.java
@@ -0,0 +1,91 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.ForAllOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>For All Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ForAllOperatorImpl extends LambdaContextImpl implements ForAllOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ForAllOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.FOR_ALL_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ rba.core.LambdaExpression lambda = getLambda();
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" ");
+ expressionText.append(lambda != null ? lambda.getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "For All";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ rba.core.LambdaExpression lambda = getLambda();
+ if (lambda != null && lambda.getBodyText() != null) {
+ return lambda.getBodyText().getUnderlyingType();
+ }
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.FOR_ALL_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.FOR_ALL_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.FOR_ALL_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ForAllOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/GetAllocatablesImpl.java b/rba.model.core/src/rba/core/impl/GetAllocatablesImpl.java
new file mode 100644
index 0000000..f2a6e28
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/GetAllocatablesImpl.java
@@ -0,0 +1,77 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.GetAllocatables;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Get Allocatables</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GetAllocatablesImpl extends ContentOperatorImpl implements GetAllocatables {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected GetAllocatablesImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.GET_ALLOCATABLES;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".allocatables()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ EList<rba.core.Expression> expressions = getOperand();
+ if (!expressions.isEmpty() && expressions.get(0) != null) {
+ rba.core.Expression first = expressions.get(0);
+ if (first.getType() == ExpressionType.CONTENT) {
+ return ExpressionType.SET_OF_AREA;
+ } else if (first.getType() == ExpressionType.SOUND) {
+ return ExpressionType.SET_OF_ZONE;
+ }
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.GET_ALLOCATABLES___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.GET_ALLOCATABLES___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // GetAllocatablesImpl
diff --git a/rba.model.core/src/rba/core/impl/GetContentsListImpl.java b/rba.model.core/src/rba/core/impl/GetContentsListImpl.java
new file mode 100644
index 0000000..899b468
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/GetContentsListImpl.java
@@ -0,0 +1,77 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.GetContentsList;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Get Contents List</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GetContentsListImpl extends AllocatableOperatorImpl implements GetContentsList {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected GetContentsListImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.GET_CONTENTS_LIST;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".contentsList()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ EList<rba.core.Expression> expressions = getOperand();
+ if (!expressions.isEmpty() && expressions.get(0) != null) {
+ rba.core.Expression first = expressions.get(0);
+ if (first.getType() == ExpressionType.AREA) {
+ return ExpressionType.SET_OF_CONTENT;
+ } else if (first.getType() == ExpressionType.ZONE) {
+ return ExpressionType.SET_OF_SOUND;
+ }
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.GET_CONTENTS_LIST___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.GET_CONTENTS_LIST___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // GetContentsListImpl
diff --git a/rba.model.core/src/rba/core/impl/GetPropertyImpl.java b/rba.model.core/src/rba/core/impl/GetPropertyImpl.java
new file mode 100644
index 0000000..c3fc47d
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/GetPropertyImpl.java
@@ -0,0 +1,105 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.GetProperty;
+import rba.core.Operator;
+import rba.core.PropertyOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Get Property</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GetPropertyImpl extends PropertyOperatorImpl implements GetProperty {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected GetPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.GET_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".get()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.GET_PROPERTY___GET_UNDERLYING_TYPE;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.GET_PROPERTY___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == PropertyOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.PROPERTY_OPERATOR___GET_UNDERLYING_TYPE:
+ return RBACorePackage.GET_PROPERTY___GET_UNDERLYING_TYPE;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.GET_PROPERTY___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.GET_PROPERTY___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // GetPropertyImpl
diff --git a/rba.model.core/src/rba/core/impl/GetStateImpl.java b/rba.model.core/src/rba/core/impl/GetStateImpl.java
new file mode 100644
index 0000000..ed4be93
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/GetStateImpl.java
@@ -0,0 +1,59 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import rba.core.GetState;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Get State</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GetStateImpl extends MinimalEObjectImpl.Container implements GetState {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected GetStateImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.GET_STATE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".state()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.GET_STATE___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // GetStateImpl
diff --git a/rba.model.core/src/rba/core/impl/GreaterThanOperatorImpl.java b/rba.model.core/src/rba/core/impl/GreaterThanOperatorImpl.java
new file mode 100644
index 0000000..7da0250
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/GreaterThanOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.GreaterThanOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Greater Than Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GreaterThanOperatorImpl extends ComparisonOperatorImpl implements GreaterThanOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected GreaterThanOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.GREATER_THAN_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ">";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.GREATER_THAN_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // GreaterThanOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/HasBeenDisplayedImpl.java b/rba.model.core/src/rba/core/impl/HasBeenDisplayedImpl.java
new file mode 100644
index 0000000..aae7b82
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/HasBeenDisplayedImpl.java
@@ -0,0 +1,69 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.HasBeenDisplayed;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Has Been Displayed</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class HasBeenDisplayedImpl extends ContentOperatorImpl implements HasBeenDisplayed {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected HasBeenDisplayedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.HAS_BEEN_DISPLAYED;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".hasBeenDisplayed()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.HAS_BEEN_DISPLAYED___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.HAS_BEEN_DISPLAYED___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // HasBeenDisplayedImpl
diff --git a/rba.model.core/src/rba/core/impl/HasComeEarlierThanImpl.java b/rba.model.core/src/rba/core/impl/HasComeEarlierThanImpl.java
new file mode 100644
index 0000000..1b6aed1
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/HasComeEarlierThanImpl.java
@@ -0,0 +1,124 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ContentOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.HasComeEarlierThan;
+import rba.core.Operator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Has Come Earlier Than</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class HasComeEarlierThanImpl extends ContentOperatorImpl implements HasComeEarlierThan {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected HasComeEarlierThanImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.HAS_COME_EARLIER_THAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".hasComeEarlierThan"; //$NON-NLS-1$
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.HAS_COME_EARLIER_THAN___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.HAS_COME_EARLIER_THAN___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.HAS_COME_EARLIER_THAN___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == ContentOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.CONTENT_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBACorePackage.HAS_COME_EARLIER_THAN___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.HAS_COME_EARLIER_THAN___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.HAS_COME_EARLIER_THAN___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.HAS_COME_EARLIER_THAN___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // HasComeEarlierThanImpl
diff --git a/rba.model.core/src/rba/core/impl/HasComeLaterThanImpl.java b/rba.model.core/src/rba/core/impl/HasComeLaterThanImpl.java
new file mode 100644
index 0000000..130a12a
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/HasComeLaterThanImpl.java
@@ -0,0 +1,124 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ContentOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.HasComeLaterThan;
+import rba.core.Operator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Has Come Later Than</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class HasComeLaterThanImpl extends ContentOperatorImpl implements HasComeLaterThan {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected HasComeLaterThanImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.HAS_COME_LATER_THAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".hasComeLaterThan"; //$NON-NLS-1$
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.HAS_COME_LATER_THAN___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.HAS_COME_LATER_THAN___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.HAS_COME_LATER_THAN___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == ContentOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.CONTENT_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBACorePackage.HAS_COME_LATER_THAN___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.HAS_COME_LATER_THAN___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.HAS_COME_LATER_THAN___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.HAS_COME_LATER_THAN___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // HasComeLaterThanImpl
diff --git a/rba.model.core/src/rba/core/impl/IfStatementImpl.java b/rba.model.core/src/rba/core/impl/IfStatementImpl.java
new file mode 100644
index 0000000..60ab034
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IfStatementImpl.java
@@ -0,0 +1,354 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.IfStatement;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>If Statement</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.IfStatementImpl#getCondition <em>Condition</em>}</li>
+ * <li>{@link rba.core.impl.IfStatementImpl#getThenExpression <em>Then Expression</em>}</li>
+ * <li>{@link rba.core.impl.IfStatementImpl#getElseExpression <em>Else Expression</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IfStatementImpl extends ExpressionImpl implements IfStatement {
+ /**
+ * The cached value of the '{@link #getCondition() <em>Condition</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getCondition()
+ * @generated
+ * @ordered
+ */
+ protected Expression condition;
+
+ /**
+ * The cached value of the '{@link #getThenExpression() <em>Then Expression</em>}' containment reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * @see #getThenExpression()
+ * @generated
+ * @ordered
+ */
+ protected Expression thenExpression;
+
+ /**
+ * The cached value of the '{@link #getElseExpression() <em>Else Expression</em>}' containment reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * @see #getElseExpression()
+ * @generated
+ * @ordered
+ */
+ protected Expression elseExpression;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IfStatementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IF_STATEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getCondition() {
+ return condition;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) {
+ Expression oldCondition = condition;
+ condition = newCondition;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.IF_STATEMENT__CONDITION, oldCondition, newCondition);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCondition(Expression newCondition) {
+ if (newCondition != condition) {
+ NotificationChain msgs = null;
+ if (condition != null)
+ msgs = ((InternalEObject) condition).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.IF_STATEMENT__CONDITION, null, msgs);
+ if (newCondition != null)
+ msgs = ((InternalEObject) newCondition).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.IF_STATEMENT__CONDITION, null, msgs);
+ msgs = basicSetCondition(newCondition, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.IF_STATEMENT__CONDITION, newCondition,
+ newCondition));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getThenExpression() {
+ return thenExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetThenExpression(Expression newThenExpression, NotificationChain msgs) {
+ Expression oldThenExpression = thenExpression;
+ thenExpression = newThenExpression;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.IF_STATEMENT__THEN_EXPRESSION, oldThenExpression, newThenExpression);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setThenExpression(Expression newThenExpression) {
+ if (newThenExpression != thenExpression) {
+ NotificationChain msgs = null;
+ if (thenExpression != null)
+ msgs = ((InternalEObject) thenExpression).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.IF_STATEMENT__THEN_EXPRESSION, null, msgs);
+ if (newThenExpression != null)
+ msgs = ((InternalEObject) newThenExpression).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.IF_STATEMENT__THEN_EXPRESSION, null, msgs);
+ msgs = basicSetThenExpression(newThenExpression, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.IF_STATEMENT__THEN_EXPRESSION,
+ newThenExpression, newThenExpression));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getElseExpression() {
+ return elseExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetElseExpression(Expression newElseExpression, NotificationChain msgs) {
+ Expression oldElseExpression = elseExpression;
+ elseExpression = newElseExpression;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION, oldElseExpression, newElseExpression);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setElseExpression(Expression newElseExpression) {
+ if (newElseExpression != elseExpression) {
+ NotificationChain msgs = null;
+ if (elseExpression != null)
+ msgs = ((InternalEObject) elseExpression).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION, null, msgs);
+ if (newElseExpression != null)
+ msgs = ((InternalEObject) newElseExpression).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION, null, msgs);
+ msgs = basicSetElseExpression(newElseExpression, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION,
+ newElseExpression, newElseExpression));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ if (thenExpression != null) {
+ return thenExpression.getUnderlyingType();
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ expressionText.append("IF(");
+ expressionText.append(condition != null ? condition.getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(") THEN ");
+ expressionText.append(thenExpression != null ? thenExpression.getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" ELSE ");
+ expressionText.append(elseExpression != null ? elseExpression.getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.IF_STATEMENT__CONDITION:
+ return basicSetCondition(null, msgs);
+ case RBACorePackage.IF_STATEMENT__THEN_EXPRESSION:
+ return basicSetThenExpression(null, msgs);
+ case RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION:
+ return basicSetElseExpression(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.IF_STATEMENT__CONDITION:
+ return getCondition();
+ case RBACorePackage.IF_STATEMENT__THEN_EXPRESSION:
+ return getThenExpression();
+ case RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION:
+ return getElseExpression();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.IF_STATEMENT__CONDITION:
+ setCondition((Expression) newValue);
+ return;
+ case RBACorePackage.IF_STATEMENT__THEN_EXPRESSION:
+ setThenExpression((Expression) newValue);
+ return;
+ case RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION:
+ setElseExpression((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.IF_STATEMENT__CONDITION:
+ setCondition((Expression) null);
+ return;
+ case RBACorePackage.IF_STATEMENT__THEN_EXPRESSION:
+ setThenExpression((Expression) null);
+ return;
+ case RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION:
+ setElseExpression((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.IF_STATEMENT__CONDITION:
+ return condition != null;
+ case RBACorePackage.IF_STATEMENT__THEN_EXPRESSION:
+ return thenExpression != null;
+ case RBACorePackage.IF_STATEMENT__ELSE_EXPRESSION:
+ return elseExpression != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IF_STATEMENT___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.IF_STATEMENT___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IfStatementImpl
diff --git a/rba.model.core/src/rba/core/impl/ImpliesOperatorImpl.java b/rba.model.core/src/rba/core/impl/ImpliesOperatorImpl.java
new file mode 100644
index 0000000..d48ab99
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ImpliesOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ImpliesOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Implies Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ImpliesOperatorImpl extends LogicalOperatorImpl implements ImpliesOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ImpliesOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IMPLIES_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "->";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IMPLIES_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ImpliesOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/IntegerPropertyImpl.java b/rba.model.core/src/rba/core/impl/IntegerPropertyImpl.java
new file mode 100644
index 0000000..3b5b2e9
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IntegerPropertyImpl.java
@@ -0,0 +1,170 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.Expression;
+import rba.core.IntegerProperty;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Integer Property</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.IntegerPropertyImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IntegerPropertyImpl extends AbstractPropertyImpl implements IntegerProperty {
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Expression value;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IntegerPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.INTEGER_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) {
+ Expression oldValue = value;
+ value = newValue;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.INTEGER_PROPERTY__VALUE, oldValue, newValue);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(Expression newValue) {
+ if (newValue != value) {
+ NotificationChain msgs = null;
+ if (value != null)
+ msgs = ((InternalEObject) value).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.INTEGER_PROPERTY__VALUE, null, msgs);
+ if (newValue != null)
+ msgs = ((InternalEObject) newValue).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.INTEGER_PROPERTY__VALUE, null, msgs);
+ msgs = basicSetValue(newValue, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.INTEGER_PROPERTY__VALUE, newValue,
+ newValue));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_PROPERTY__VALUE:
+ return basicSetValue(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_PROPERTY__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_PROPERTY__VALUE:
+ setValue((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_PROPERTY__VALUE:
+ setValue((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_PROPERTY__VALUE:
+ return value != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // IntegerPropertyImpl
diff --git a/rba.model.core/src/rba/core/impl/IntegerValueImpl.java b/rba.model.core/src/rba/core/impl/IntegerValueImpl.java
new file mode 100644
index 0000000..e62d28e
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IntegerValueImpl.java
@@ -0,0 +1,186 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.IntegerValue;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Integer Value</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.IntegerValueImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IntegerValueImpl extends ValueExpressionImpl implements IntegerValue {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final int VALUE_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected int value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IntegerValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.INTEGER_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(int newValue) {
+ int oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.INTEGER_VALUE__VALUE, oldValue,
+ value));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return String.valueOf(value);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getExpressionValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_VALUE__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_VALUE__VALUE:
+ setValue((Integer) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_VALUE__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.INTEGER_VALUE__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.INTEGER_VALUE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.INTEGER_VALUE___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} // IntegerValueImpl
diff --git a/rba.model.core/src/rba/core/impl/IsActiveImpl.java b/rba.model.core/src/rba/core/impl/IsActiveImpl.java
new file mode 100644
index 0000000..23310da
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsActiveImpl.java
@@ -0,0 +1,69 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.IsActive;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Active</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsActiveImpl extends ContentOperatorImpl implements IsActive {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsActiveImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_ACTIVE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isActive()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_ACTIVE___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.IS_ACTIVE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsActiveImpl
diff --git a/rba.model.core/src/rba/core/impl/IsAllocatedToImpl.java b/rba.model.core/src/rba/core/impl/IsAllocatedToImpl.java
new file mode 100644
index 0000000..901be5b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsAllocatedToImpl.java
@@ -0,0 +1,171 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AllocatedContent;
+import rba.core.ContentOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.IsAllocatedTo;
+import rba.core.ObjectCompare;
+import rba.core.Operator;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Allocated To</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsAllocatedToImpl extends ContentOperatorImpl implements IsAllocatedTo {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsAllocatedToImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_ALLOCATED_TO;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isAllocatedTo";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ ObjectCompare compare = RBACoreFactory.eINSTANCE.createObjectCompare();
+ AllocatedContent content = RBACoreFactory.eINSTANCE.createAllocatedContent();
+ content.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ compare.getOperand().add(content);
+ compare.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ return compare;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.IS_ALLOCATED_TO___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.IS_ALLOCATED_TO___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.IS_ALLOCATED_TO___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == ContentOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.CONTENT_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBACorePackage.IS_ALLOCATED_TO___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBACorePackage.IS_ALLOCATED_TO___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBACorePackage.IS_ALLOCATED_TO___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBACorePackage.IS_ALLOCATED_TO___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_ALLOCATED_TO___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.IS_ALLOCATED_TO___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.IS_ALLOCATED_TO___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.IS_ALLOCATED_TO___CAN_EXPAND:
+ return canExpand();
+ case RBACorePackage.IS_ALLOCATED_TO___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsAllocatedToImpl
diff --git a/rba.model.core/src/rba/core/impl/IsChangedImpl.java b/rba.model.core/src/rba/core/impl/IsChangedImpl.java
new file mode 100644
index 0000000..1ae8bdf
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsChangedImpl.java
@@ -0,0 +1,156 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AllocatedContent;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.IsChanged;
+import rba.core.NotOperator;
+import rba.core.ObjectCompare;
+import rba.core.ObjectReference;
+import rba.core.Operator;
+import rba.core.PreviousModifier;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Changed</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsChangedImpl extends AllocatableOperatorImpl implements IsChanged {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsChangedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_CHANGED;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isChanged()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ NotOperator not = RBACoreFactory.eINSTANCE.createNotOperator();
+ ObjectCompare equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ AllocatedContent content = RBACoreFactory.eINSTANCE.createAllocatedContent();
+ PreviousModifier preModifier = RBACoreFactory.eINSTANCE.createPreviousModifier();
+
+ preModifier.setObjReference((ObjectReference) org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ content.getOperand().add(preModifier);
+ equal.getOperand().add(content);
+
+ content = RBACoreFactory.eINSTANCE.createAllocatedContent();
+ content.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+
+ equal.getOperand().add(content);
+ not.getOperand().add(equal);
+ return not;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.IS_CHANGED___GET_UNDERLYING_TYPE;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.IS_CHANGED___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBACorePackage.IS_CHANGED___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBACorePackage.IS_CHANGED___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBACorePackage.IS_CHANGED___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_CHANGED___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.IS_CHANGED___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.IS_CHANGED___CAN_EXPAND:
+ return canExpand();
+ case RBACorePackage.IS_CHANGED___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsChangedImpl
diff --git a/rba.model.core/src/rba/core/impl/IsEqualToOperatorImpl.java b/rba.model.core/src/rba/core/impl/IsEqualToOperatorImpl.java
new file mode 100644
index 0000000..3b5869b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsEqualToOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.IsEqualToOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Equal To Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsEqualToOperatorImpl extends LogicalOperatorImpl implements IsEqualToOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsEqualToOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_EQUAL_TO_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "=";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_EQUAL_TO_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsEqualToOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/IsGreaterThanEqualOperatorImpl.java b/rba.model.core/src/rba/core/impl/IsGreaterThanEqualOperatorImpl.java
new file mode 100644
index 0000000..218422b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsGreaterThanEqualOperatorImpl.java
@@ -0,0 +1,59 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.IsGreaterThanEqualOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Greater Than Equal Operator</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+public class IsGreaterThanEqualOperatorImpl extends LogicalOperatorImpl implements IsGreaterThanEqualOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsGreaterThanEqualOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_GREATER_THAN_EQUAL_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ">=";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_GREATER_THAN_EQUAL_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsGreaterThanEqualOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/IsGreaterThanOperatorImpl.java b/rba.model.core/src/rba/core/impl/IsGreaterThanOperatorImpl.java
new file mode 100644
index 0000000..3746b0b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsGreaterThanOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.IsGreaterThanOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Greater Than Operator</b></em>'. <!-- end-user-doc
+ * -->
+ * @generated
+ */
+public class IsGreaterThanOperatorImpl extends LogicalOperatorImpl implements IsGreaterThanOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsGreaterThanOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_GREATER_THAN_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ">";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_GREATER_THAN_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsGreaterThanOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/IsLowerThanEqualOperatorImpl.java b/rba.model.core/src/rba/core/impl/IsLowerThanEqualOperatorImpl.java
new file mode 100644
index 0000000..27d8d48
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsLowerThanEqualOperatorImpl.java
@@ -0,0 +1,59 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.IsLowerThanEqualOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Lower Than Equal Operator</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+public class IsLowerThanEqualOperatorImpl extends LogicalOperatorImpl implements IsLowerThanEqualOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsLowerThanEqualOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_LOWER_THAN_EQUAL_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "<=";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_LOWER_THAN_EQUAL_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsLowerThanEqualOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/IsLowerThanOperatorImpl.java b/rba.model.core/src/rba/core/impl/IsLowerThanOperatorImpl.java
new file mode 100644
index 0000000..e4813ee
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsLowerThanOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.IsLowerThanOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Lower Than Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsLowerThanOperatorImpl extends LogicalOperatorImpl implements IsLowerThanOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsLowerThanOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_LOWER_THAN_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "<";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_LOWER_THAN_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsLowerThanOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/IsOnImpl.java b/rba.model.core/src/rba/core/impl/IsOnImpl.java
new file mode 100644
index 0000000..2894799
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsOnImpl.java
@@ -0,0 +1,69 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.IsOn;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is On</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsOnImpl extends SceneOperatorImpl implements IsOn {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsOnImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_ON;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isOn()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_ON___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.IS_ON___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsOnImpl
diff --git a/rba.model.core/src/rba/core/impl/IsTranslatedToImpl.java b/rba.model.core/src/rba/core/impl/IsTranslatedToImpl.java
new file mode 100644
index 0000000..fe93499
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsTranslatedToImpl.java
@@ -0,0 +1,191 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AllocatableOperator;
+import rba.core.AllocatedContent;
+import rba.core.AndOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.IsTranslatedTo;
+import rba.core.NotOperator;
+import rba.core.ObjectCompare;
+import rba.core.ObjectReference;
+import rba.core.Operator;
+import rba.core.PreviousModifier;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Translated To</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsTranslatedToImpl extends AllocatableOperatorImpl implements IsTranslatedTo {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsTranslatedToImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_TRANSLATED_TO;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isTranslatedTo";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ AndOperator AND = RBACoreFactory.eINSTANCE.createAndOperator();
+ NotOperator not = RBACoreFactory.eINSTANCE.createNotOperator();
+ ObjectCompare equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ AllocatedContent content = RBACoreFactory.eINSTANCE.createAllocatedContent();
+ PreviousModifier preModifier = RBACoreFactory.eINSTANCE.createPreviousModifier();
+
+ preModifier.setObjReference((ObjectReference) org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ content.getOperand().add(preModifier);
+ equal.getOperand().add(content);
+ equal.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ not.getOperand().add(equal);
+ AND.getOperand().add(not);
+
+ content = RBACoreFactory.eINSTANCE.createAllocatedContent();
+ equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+
+ content.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ equal.getOperand().add(content);
+ equal.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+
+ AND.getOperand().add(equal);
+ return AND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.IS_TRANSLATED_TO___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.IS_TRANSLATED_TO___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.IS_TRANSLATED_TO___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == AllocatableOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBACorePackage.IS_TRANSLATED_TO___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBACorePackage.IS_TRANSLATED_TO___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBACorePackage.IS_TRANSLATED_TO___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBACorePackage.IS_TRANSLATED_TO___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_TRANSLATED_TO___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.IS_TRANSLATED_TO___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.IS_TRANSLATED_TO___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.IS_TRANSLATED_TO___CAN_EXPAND:
+ return canExpand();
+ case RBACorePackage.IS_TRANSLATED_TO___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsTranslatedToImpl
diff --git a/rba.model.core/src/rba/core/impl/IsTypeOfImpl.java b/rba.model.core/src/rba/core/impl/IsTypeOfImpl.java
new file mode 100644
index 0000000..2174a0b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/IsTypeOfImpl.java
@@ -0,0 +1,202 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import rba.core.ExpressionType;
+import rba.core.IsTypeOf;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Type Of</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.IsTypeOfImpl#getTagName <em>Tag Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IsTypeOfImpl extends OperatorImpl implements IsTypeOf {
+ /**
+ * The default value of the '{@link #getTagName() <em>Tag Name</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getTagName()
+ * @generated
+ * @ordered
+ */
+ protected static final String TAG_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getTagName() <em>Tag Name</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getTagName()
+ * @generated
+ * @ordered
+ */
+ protected String tagName = TAG_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsTypeOfImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.IS_TYPE_OF;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getTagName() {
+ return tagName;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTagName(String newTagName) {
+ String oldTagName = tagName;
+ tagName = newTagName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.IS_TYPE_OF__TAG_NAME, oldTagName,
+ tagName));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(tagName != null ? tagName : "");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isTypeOf";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.IS_TYPE_OF__TAG_NAME:
+ return getTagName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.IS_TYPE_OF__TAG_NAME:
+ setTagName((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.IS_TYPE_OF__TAG_NAME:
+ setTagName(TAG_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.IS_TYPE_OF__TAG_NAME:
+ return TAG_NAME_EDEFAULT == null ? tagName != null : !TAG_NAME_EDEFAULT.equals(tagName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.IS_TYPE_OF___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.IS_TYPE_OF___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.IS_TYPE_OF___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (tagName: ");
+ result.append(tagName);
+ result.append(')');
+ return result.toString();
+ }
+
+} // IsTypeOfImpl
diff --git a/rba.model.core/src/rba/core/impl/LambdaContextImpl.java b/rba.model.core/src/rba/core/impl/LambdaContextImpl.java
new file mode 100644
index 0000000..49b5291
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/LambdaContextImpl.java
@@ -0,0 +1,224 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.ExpressionType;
+import rba.core.LambdaContext;
+import rba.core.LambdaExpression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Lambda Context</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.LambdaContextImpl#getLambda <em>Lambda</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class LambdaContextImpl extends SetOperatorImpl implements LambdaContext {
+ /**
+ * The cached value of the '{@link #getLambda() <em>Lambda</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getLambda()
+ * @generated
+ * @ordered
+ */
+ protected LambdaExpression lambda;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected LambdaContextImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.LAMBDA_CONTEXT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LambdaExpression getLambda() {
+ return lambda;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetLambda(LambdaExpression newLambda, NotificationChain msgs) {
+ LambdaExpression oldLambda = lambda;
+ lambda = newLambda;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.LAMBDA_CONTEXT__LAMBDA, oldLambda, newLambda);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLambda(LambdaExpression newLambda) {
+ if (newLambda != lambda) {
+ NotificationChain msgs = null;
+ if (lambda != null)
+ msgs = ((InternalEObject) lambda).eInverseRemove(this, RBACorePackage.LAMBDA_EXPRESSION__CONTEXT,
+ LambdaExpression.class, msgs);
+ if (newLambda != null)
+ msgs = ((InternalEObject) newLambda).eInverseAdd(this, RBACorePackage.LAMBDA_EXPRESSION__CONTEXT,
+ LambdaExpression.class, msgs);
+ msgs = basicSetLambda(newLambda, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LAMBDA_CONTEXT__LAMBDA, newLambda,
+ newLambda));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getContextType() {
+ if (!getOperand().isEmpty()) {
+ rba.core.Expression first = getOperand().get(0);
+ if (first.getType() == ExpressionType.SET_OF_CONTENT) {
+ return ExpressionType.CONTENT;
+ } else if (first.getType() == ExpressionType.SET_OF_AREA) {
+ return ExpressionType.AREA;
+ } else if (first.getType() == ExpressionType.SET_OF_ZONE) {
+ return ExpressionType.ZONE;
+ } else if (first.getType() == ExpressionType.SET_OF_SOUND) {
+ return ExpressionType.SOUND;
+ } else {
+ return first.getType();
+ }
+ }
+
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_CONTEXT__LAMBDA:
+ if (lambda != null)
+ msgs = ((InternalEObject) lambda).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LAMBDA_CONTEXT__LAMBDA, null, msgs);
+ return basicSetLambda((LambdaExpression) otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_CONTEXT__LAMBDA:
+ return basicSetLambda(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_CONTEXT__LAMBDA:
+ return getLambda();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_CONTEXT__LAMBDA:
+ setLambda((LambdaExpression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_CONTEXT__LAMBDA:
+ setLambda((LambdaExpression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_CONTEXT__LAMBDA:
+ return lambda != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.LAMBDA_CONTEXT___GET_CONTEXT_TYPE:
+ return getContextType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // LambdaContextImpl
diff --git a/rba.model.core/src/rba/core/impl/LambdaExpressionImpl.java b/rba.model.core/src/rba/core/impl/LambdaExpressionImpl.java
new file mode 100644
index 0000000..7828524
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/LambdaExpressionImpl.java
@@ -0,0 +1,370 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.LambdaContext;
+import rba.core.LambdaExpression;
+import rba.core.RBACorePackage;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Lambda Expression</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.LambdaExpressionImpl#getContext <em>Context</em>}</li>
+ * <li>{@link rba.core.impl.LambdaExpressionImpl#getX <em>X</em>}</li>
+ * <li>{@link rba.core.impl.LambdaExpressionImpl#getBodyText <em>Body Text</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LambdaExpressionImpl extends ExpressionImpl implements LambdaExpression {
+ /**
+ * The cached value of the '{@link #getX() <em>X</em>}' containment reference.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getX()
+ * @generated
+ * @ordered
+ */
+ protected Variable x;
+
+ /**
+ * The cached value of the '{@link #getBodyText() <em>Body Text</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getBodyText()
+ * @generated
+ * @ordered
+ */
+ protected Expression bodyText;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected LambdaExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.LAMBDA_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LambdaContext getContext() {
+ if (eContainerFeatureID() != RBACorePackage.LAMBDA_EXPRESSION__CONTEXT)
+ return null;
+ return (LambdaContext) eInternalContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetContext(LambdaContext newContext, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject) newContext, RBACorePackage.LAMBDA_EXPRESSION__CONTEXT, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContext(LambdaContext newContext) {
+ if (newContext != eInternalContainer()
+ || (eContainerFeatureID() != RBACorePackage.LAMBDA_EXPRESSION__CONTEXT && newContext != null)) {
+ if (EcoreUtil.isAncestor(this, newContext))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newContext != null)
+ msgs = ((InternalEObject) newContext).eInverseAdd(this, RBACorePackage.LAMBDA_CONTEXT__LAMBDA,
+ LambdaContext.class, msgs);
+ msgs = basicSetContext(newContext, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LAMBDA_EXPRESSION__CONTEXT, newContext,
+ newContext));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Variable getX() {
+ return x;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetX(Variable newX, NotificationChain msgs) {
+ Variable oldX = x;
+ x = newX;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.LAMBDA_EXPRESSION__X, oldX, newX);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setX(Variable newX) {
+ if (newX != x) {
+ NotificationChain msgs = null;
+ if (x != null)
+ msgs = ((InternalEObject) x).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LAMBDA_EXPRESSION__X, null, msgs);
+ if (newX != null)
+ msgs = ((InternalEObject) newX).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LAMBDA_EXPRESSION__X, null, msgs);
+ msgs = basicSetX(newX, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LAMBDA_EXPRESSION__X, newX, newX));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getBodyText() {
+ if (bodyText != null)
+ bodyText.getLetStatements().addAll(getLetStatements());
+ return bodyText;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetBodyText(Expression newBodyText, NotificationChain msgs) {
+ Expression oldBodyText = bodyText;
+ bodyText = newBodyText;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT, oldBodyText, newBodyText);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBodyText(Expression newBodyText) {
+ if (newBodyText != bodyText) {
+ NotificationChain msgs = null;
+ if (bodyText != null)
+ msgs = ((InternalEObject) bodyText).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT, null, msgs);
+ if (newBodyText != null)
+ msgs = ((InternalEObject) newBodyText).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT, null, msgs);
+ msgs = basicSetBodyText(newBodyText, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT,
+ newBodyText, newBodyText));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ expressionText.append("{ ");
+ expressionText.append(x != null ? x.getName() : "[Invalid_Expression]");
+ expressionText.append(" | ");
+ getLetStatements().forEach(let -> expressionText.append(let));
+ expressionText.append(bodyText != null ? bodyText.getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" }");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.LAMBDA;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetContext((LambdaContext) otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ return basicSetContext(null, msgs);
+ case RBACorePackage.LAMBDA_EXPRESSION__X:
+ return basicSetX(null, msgs);
+ case RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT:
+ return basicSetBodyText(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ return eInternalContainer().eInverseRemove(this, RBACorePackage.LAMBDA_CONTEXT__LAMBDA, LambdaContext.class,
+ msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ return getContext();
+ case RBACorePackage.LAMBDA_EXPRESSION__X:
+ return getX();
+ case RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT:
+ return getBodyText();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ setContext((LambdaContext) newValue);
+ return;
+ case RBACorePackage.LAMBDA_EXPRESSION__X:
+ setX((Variable) newValue);
+ return;
+ case RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT:
+ setBodyText((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ setContext((LambdaContext) null);
+ return;
+ case RBACorePackage.LAMBDA_EXPRESSION__X:
+ setX((Variable) null);
+ return;
+ case RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT:
+ setBodyText((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LAMBDA_EXPRESSION__CONTEXT:
+ return getContext() != null;
+ case RBACorePackage.LAMBDA_EXPRESSION__X:
+ return x != null;
+ case RBACorePackage.LAMBDA_EXPRESSION__BODY_TEXT:
+ return bodyText != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.LAMBDA_EXPRESSION___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.LAMBDA_EXPRESSION___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // LambdaExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/LetStatementImpl.java b/rba.model.core/src/rba/core/impl/LetStatementImpl.java
new file mode 100644
index 0000000..53f62aa
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/LetStatementImpl.java
@@ -0,0 +1,268 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import rba.core.Expression;
+import rba.core.LetStatement;
+import rba.core.RBACorePackage;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Let Statement</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.LetStatementImpl#getVariable <em>Variable</em>}</li>
+ * <li>{@link rba.core.impl.LetStatementImpl#getBody <em>Body</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LetStatementImpl extends ModelElementImpl implements LetStatement {
+ /**
+ * The cached value of the '{@link #getVariable() <em>Variable</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getVariable()
+ * @generated
+ * @ordered
+ */
+ protected Variable variable;
+
+ /**
+ * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getBody()
+ * @generated
+ * @ordered
+ */
+ protected Expression body;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected LetStatementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.LET_STATEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Variable getVariable() {
+ return variable;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetVariable(Variable newVariable, NotificationChain msgs) {
+ Variable oldVariable = variable;
+ variable = newVariable;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.LET_STATEMENT__VARIABLE, oldVariable, newVariable);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVariable(Variable newVariable) {
+ if (newVariable != variable) {
+ NotificationChain msgs = null;
+ if (variable != null)
+ msgs = ((InternalEObject) variable).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LET_STATEMENT__VARIABLE, null, msgs);
+ if (newVariable != null)
+ msgs = ((InternalEObject) newVariable).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LET_STATEMENT__VARIABLE, null, msgs);
+ msgs = basicSetVariable(newVariable, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LET_STATEMENT__VARIABLE, newVariable,
+ newVariable));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getBody() {
+ return body;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
+ Expression oldBody = body;
+ body = newBody;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.LET_STATEMENT__BODY, oldBody, newBody);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBody(Expression newBody) {
+ if (newBody != body) {
+ NotificationChain msgs = null;
+ if (body != null)
+ msgs = ((InternalEObject) body).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LET_STATEMENT__BODY, null, msgs);
+ if (newBody != null)
+ msgs = ((InternalEObject) newBody).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.LET_STATEMENT__BODY, null, msgs);
+ msgs = basicSetBody(newBody, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LET_STATEMENT__BODY, newBody,
+ newBody));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String toString() {
+ StringBuilder ret = new StringBuilder();
+ ret.append("let "); //$NON-NLS-1$
+ ret.append(getVariable().getName());
+ ret.append("= "); //$NON-NLS-1$
+ ret.append(getBody().getExpressionText());
+ return ret.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.LET_STATEMENT__VARIABLE:
+ return basicSetVariable(null, msgs);
+ case RBACorePackage.LET_STATEMENT__BODY:
+ return basicSetBody(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.LET_STATEMENT__VARIABLE:
+ return getVariable();
+ case RBACorePackage.LET_STATEMENT__BODY:
+ return getBody();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.LET_STATEMENT__VARIABLE:
+ setVariable((Variable) newValue);
+ return;
+ case RBACorePackage.LET_STATEMENT__BODY:
+ setBody((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LET_STATEMENT__VARIABLE:
+ setVariable((Variable) null);
+ return;
+ case RBACorePackage.LET_STATEMENT__BODY:
+ setBody((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LET_STATEMENT__VARIABLE:
+ return variable != null;
+ case RBACorePackage.LET_STATEMENT__BODY:
+ return body != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.LET_STATEMENT___TO_STRING:
+ return toString();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // LetStatementImpl
diff --git a/rba.model.core/src/rba/core/impl/LogicalOperatorImpl.java b/rba.model.core/src/rba/core/impl/LogicalOperatorImpl.java
new file mode 100644
index 0000000..c919cba
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/LogicalOperatorImpl.java
@@ -0,0 +1,83 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.LogicalOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Logical Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class LogicalOperatorImpl extends OperatorImpl implements LogicalOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected LogicalOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.LOGICAL_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append("(");
+ for (int i = 0; i < expressions.size(); i++) {
+ rba.core.Expression expression = expressions.get(i);
+ expressionText.append(expression.getExpressionText());
+ if (i == expressions.size() - 1) {
+ expressionText.append(")");
+ } else {
+ expressionText.append(" ");
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ }
+ }
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.LOGICAL_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.LOGICAL_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // LogicalOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/LoserTypeExpressionImpl.java b/rba.model.core/src/rba/core/impl/LoserTypeExpressionImpl.java
new file mode 100644
index 0000000..1e5234e
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/LoserTypeExpressionImpl.java
@@ -0,0 +1,192 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.Enumerator;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.LoserType;
+import rba.core.LoserTypeExpression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Loser Type Expression</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.LoserTypeExpressionImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LoserTypeExpressionImpl extends EnumExpressionImpl implements LoserTypeExpression {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final LoserType VALUE_EDEFAULT = LoserType.NEVER_GIVEUP;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected LoserType value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected LoserTypeExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.LOSER_TYPE_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LoserType getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(LoserType newValue) {
+ LoserType oldValue = value;
+ value = newValue == null ? VALUE_EDEFAULT : newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.LOSER_TYPE_EXPRESSION__VALUE, oldValue,
+ value));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ if (value instanceof LoserType) {
+ return value.getName();
+ } else {
+ return "[Invalid_Expression]";
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Enumerator getExpressionValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.LOSER_TYPE_EXPRESSION__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.LOSER_TYPE_EXPRESSION__VALUE:
+ setValue((LoserType) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LOSER_TYPE_EXPRESSION__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.LOSER_TYPE_EXPRESSION__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.LOSER_TYPE_EXPRESSION___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.LOSER_TYPE_EXPRESSION___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} // LoserTypeExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/LowerThanOperatorImpl.java b/rba.model.core/src/rba/core/impl/LowerThanOperatorImpl.java
new file mode 100644
index 0000000..ec69740
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/LowerThanOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.LowerThanOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Lower Than Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class LowerThanOperatorImpl extends ComparisonOperatorImpl implements LowerThanOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected LowerThanOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.LOWER_THAN_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "<";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.LOWER_THAN_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // LowerThanOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/MaxOperatorImpl.java b/rba.model.core/src/rba/core/impl/MaxOperatorImpl.java
new file mode 100644
index 0000000..681b102
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/MaxOperatorImpl.java
@@ -0,0 +1,87 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.MaxOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Max Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MaxOperatorImpl extends LambdaContextImpl implements MaxOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected MaxOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.MAX_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ rba.core.LambdaExpression lambda = getLambda();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("{ ");
+ expressionText.append(lambda != null ? lambda.getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" }");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".max";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return getContextType();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.MAX_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.MAX_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.MAX_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // MaxOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/MaxValueImpl.java b/rba.model.core/src/rba/core/impl/MaxValueImpl.java
new file mode 100644
index 0000000..ec458be
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/MaxValueImpl.java
@@ -0,0 +1,68 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.MaxValue;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Max Value</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MaxValueImpl extends ValueExpressionImpl implements MaxValue {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected MaxValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.MAX_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "MAX";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getExpressionValue() {
+ return 9999;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.MAX_VALUE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.MAX_VALUE___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // MaxValueImpl
diff --git a/rba.model.core/src/rba/core/impl/MinOperatorImpl.java b/rba.model.core/src/rba/core/impl/MinOperatorImpl.java
new file mode 100644
index 0000000..74f572b
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/MinOperatorImpl.java
@@ -0,0 +1,87 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.MinOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Min Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MinOperatorImpl extends LambdaContextImpl implements MinOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected MinOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.MIN_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ rba.core.LambdaExpression lambda = getLambda();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("{ ");
+ expressionText.append(lambda != null ? lambda.getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" }");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".min";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return getContextType();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.MIN_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.MIN_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.MIN_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // MinOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/MinValueImpl.java b/rba.model.core/src/rba/core/impl/MinValueImpl.java
new file mode 100644
index 0000000..ad28949
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/MinValueImpl.java
@@ -0,0 +1,68 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.MinValue;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Min Value</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MinValueImpl extends ValueExpressionImpl implements MinValue {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected MinValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.MIN_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "MIN";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getExpressionValue() {
+ return 0;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.MIN_VALUE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.MIN_VALUE___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // MinValueImpl
diff --git a/rba.model.core/src/rba/core/impl/ModelElementImpl.java b/rba.model.core/src/rba/core/impl/ModelElementImpl.java
new file mode 100644
index 0000000..6e77878
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ModelElementImpl.java
@@ -0,0 +1,154 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import rba.core.ModelElement;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Model Element</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ModelElementImpl#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ModelElementImpl extends MinimalEObjectImpl.Container implements ModelElement {
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected String description = DESCRIPTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ModelElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.MODEL_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDescription(String newDescription) {
+ String oldDescription = description;
+ description = newDescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.MODEL_ELEMENT__DESCRIPTION,
+ oldDescription, description));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.MODEL_ELEMENT__DESCRIPTION:
+ return getDescription();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.MODEL_ELEMENT__DESCRIPTION:
+ setDescription((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.MODEL_ELEMENT__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.MODEL_ELEMENT__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (description: ");
+ result.append(description);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ModelElementImpl
diff --git a/rba.model.core/src/rba/core/impl/MuchGreaterThanOperatorImpl.java b/rba.model.core/src/rba/core/impl/MuchGreaterThanOperatorImpl.java
new file mode 100644
index 0000000..c6be637
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/MuchGreaterThanOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.MuchGreaterThanOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Much Greater Than Operator</b></em>'. <!-- end-user-doc
+ * -->
+ * @generated
+ */
+public class MuchGreaterThanOperatorImpl extends ComparisonOperatorImpl implements MuchGreaterThanOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected MuchGreaterThanOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.MUCH_GREATER_THAN_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ">>";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.MUCH_GREATER_THAN_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // MuchGreaterThanOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/NamedElementImpl.java b/rba.model.core/src/rba/core/impl/NamedElementImpl.java
new file mode 100644
index 0000000..d3b3041
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/NamedElementImpl.java
@@ -0,0 +1,150 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.NamedElement;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Named Element</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.NamedElementImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class NamedElementImpl extends ModelElementImpl implements NamedElement {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected NamedElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.NAMED_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.NAMED_ELEMENT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.NAMED_ELEMENT__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.NAMED_ELEMENT__NAME:
+ setName((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.NAMED_ELEMENT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.NAMED_ELEMENT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} // NamedElementImpl
diff --git a/rba.model.core/src/rba/core/impl/NoneValueImpl.java b/rba.model.core/src/rba/core/impl/NoneValueImpl.java
new file mode 100644
index 0000000..90783ba
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/NoneValueImpl.java
@@ -0,0 +1,68 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.NoneValue;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>None Value</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class NoneValueImpl extends ValueExpressionImpl implements NoneValue {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected NoneValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.NONE_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "NONE";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getExpressionValue() {
+ return -1;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.NONE_VALUE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.NONE_VALUE___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // NoneValueImpl
diff --git a/rba.model.core/src/rba/core/impl/NotOperatorImpl.java b/rba.model.core/src/rba/core/impl/NotOperatorImpl.java
new file mode 100644
index 0000000..a53a968
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/NotOperatorImpl.java
@@ -0,0 +1,110 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.Expression;
+import rba.core.LogicalOperator;
+import rba.core.NotOperator;
+import rba.core.Operator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Not Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class NotOperatorImpl extends LogicalOperatorImpl implements NotOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected NotOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.NOT_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "!";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.NOT_OPERATOR___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.NOT_OPERATOR___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == LogicalOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.LOGICAL_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBACorePackage.NOT_OPERATOR___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.NOT_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.NOT_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // NotOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/NullExpressionImpl.java b/rba.model.core/src/rba/core/impl/NullExpressionImpl.java
new file mode 100644
index 0000000..81286db
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/NullExpressionImpl.java
@@ -0,0 +1,76 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.NullExpression;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Null Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class NullExpressionImpl extends ExpressionImpl implements NullExpression {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NullExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.NULL_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.NULL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "NULL";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.NULL_EXPRESSION___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.NULL_EXPRESSION___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //NullExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/ObjectCompareImpl.java b/rba.model.core/src/rba/core/impl/ObjectCompareImpl.java
new file mode 100644
index 0000000..cb440e7
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ObjectCompareImpl.java
@@ -0,0 +1,86 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.ObjectCompare;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Object Compare</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ObjectCompareImpl extends OperatorImpl implements ObjectCompare {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ObjectCompareImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.OBJECT_COMPARE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "==";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" ");
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.OBJECT_COMPARE___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.OBJECT_COMPARE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.OBJECT_COMPARE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ObjectCompareImpl
diff --git a/rba.model.core/src/rba/core/impl/ObjectCompareNotImpl.java b/rba.model.core/src/rba/core/impl/ObjectCompareNotImpl.java
new file mode 100644
index 0000000..c974d58
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ObjectCompareNotImpl.java
@@ -0,0 +1,160 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.NotOperator;
+import rba.core.ObjectCompare;
+import rba.core.ObjectCompareNot;
+import rba.core.Operator;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Object Compare Not</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ObjectCompareNotImpl extends OperatorImpl implements ObjectCompareNot {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ObjectCompareNotImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.OBJECT_COMPARE_NOT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "!=";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" ");
+ expressionText.append(getSymbol());
+ expressionText.append(" ");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ NotOperator not = RBACoreFactory.eINSTANCE.createNotOperator();
+ ObjectCompare equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ getOperand().forEach(o -> equal.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(o)));
+ not.getOperand().add(equal);
+ return not;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBACorePackage.OBJECT_COMPARE_NOT___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBACorePackage.OBJECT_COMPARE_NOT___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBACorePackage.OBJECT_COMPARE_NOT___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBACorePackage.OBJECT_COMPARE_NOT___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBACorePackage.OBJECT_COMPARE_NOT___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBACorePackage.OBJECT_COMPARE_NOT___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.OBJECT_COMPARE_NOT___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.OBJECT_COMPARE_NOT___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.OBJECT_COMPARE_NOT___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.OBJECT_COMPARE_NOT___CAN_EXPAND:
+ return canExpand();
+ case RBACorePackage.OBJECT_COMPARE_NOT___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ObjectCompareNotImpl
diff --git a/rba.model.core/src/rba/core/impl/ObjectReferenceImpl.java b/rba.model.core/src/rba/core/impl/ObjectReferenceImpl.java
new file mode 100644
index 0000000..6d34cc5
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ObjectReferenceImpl.java
@@ -0,0 +1,202 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.AbstractProperty;
+import rba.core.ContentState;
+import rba.core.ExpressionType;
+import rba.core.ObjectReference;
+import rba.core.RBACorePackage;
+import rba.core.RuleObject;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Object Reference</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ObjectReferenceImpl#getRefObject <em>Ref Object</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ObjectReferenceImpl extends ExpressionImpl implements ObjectReference {
+ /**
+ * The cached value of the '{@link #getRefObject() <em>Ref Object</em>}' reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getRefObject()
+ * @generated
+ * @ordered
+ */
+ protected RuleObject refObject;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ObjectReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.OBJECT_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RuleObject getRefObject() {
+ if (refObject != null && refObject.eIsProxy()) {
+ InternalEObject oldRefObject = (InternalEObject) refObject;
+ refObject = (RuleObject) eResolveProxy(oldRefObject);
+ if (refObject != oldRefObject) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE,
+ RBACorePackage.OBJECT_REFERENCE__REF_OBJECT, oldRefObject, refObject));
+ }
+ }
+ return refObject;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RuleObject basicGetRefObject() {
+ return refObject;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRefObject(RuleObject newRefObject) {
+ RuleObject oldRefObject = refObject;
+ refObject = newRefObject;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.OBJECT_REFERENCE__REF_OBJECT,
+ oldRefObject, refObject));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ RuleObject obj = getRefObject();
+ if (obj != null) {
+ return obj.getExpressionType();
+ } else {
+ return ExpressionType.VALUE;
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ RuleObject obj = getRefObject();
+ if (obj instanceof ContentState) {
+ ContentState state = (ContentState) obj;
+ expressionText.append(state.getOwner().getName() + "." + state.getName());
+ } else if (obj instanceof AbstractProperty) {
+ AbstractProperty property = (AbstractProperty) obj;
+ expressionText.append(property.getOwner().getName() + "." + property.getName());
+ } else {
+ expressionText.append(obj != null ? obj.getName() : "[Invalid_Expression]");
+ }
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.OBJECT_REFERENCE__REF_OBJECT:
+ if (resolve)
+ return getRefObject();
+ return basicGetRefObject();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.OBJECT_REFERENCE__REF_OBJECT:
+ setRefObject((RuleObject) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.OBJECT_REFERENCE__REF_OBJECT:
+ setRefObject((RuleObject) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.OBJECT_REFERENCE__REF_OBJECT:
+ return refObject != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.OBJECT_REFERENCE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.OBJECT_REFERENCE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ObjectReferenceImpl
diff --git a/rba.model.core/src/rba/core/impl/OperatorImpl.java b/rba.model.core/src/rba/core/impl/OperatorImpl.java
new file mode 100644
index 0000000..b57c3f0
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/OperatorImpl.java
@@ -0,0 +1,165 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import rba.core.Expression;
+import rba.core.Operator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Operator</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.OperatorImpl#getOperand <em>Operand</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class OperatorImpl extends ExpressionImpl implements Operator {
+ /**
+ * The cached value of the '{@link #getOperand() <em>Operand</em>}' containment reference list.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getOperand()
+ * @generated
+ * @ordered
+ */
+ protected EList<Expression> operand;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected OperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Expression> getOperand() {
+ if (operand == null) {
+ operand = new EObjectContainmentEList<Expression>(Expression.class, this, RBACorePackage.OPERATOR__OPERAND);
+ }
+ return operand;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.OPERATOR__OPERAND:
+ return ((InternalEList<?>) getOperand()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.OPERATOR__OPERAND:
+ return getOperand();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.OPERATOR__OPERAND:
+ getOperand().clear();
+ getOperand().addAll((Collection<? extends Expression>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.OPERATOR__OPERAND:
+ getOperand().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.OPERATOR__OPERAND:
+ return operand != null && !operand.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // OperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/OrOperatorImpl.java b/rba.model.core/src/rba/core/impl/OrOperatorImpl.java
new file mode 100644
index 0000000..f288df0
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/OrOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.OrOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Or Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class OrOperatorImpl extends LogicalOperatorImpl implements OrOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected OrOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.OR_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "OR";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.OR_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // OrOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/PackagableElementImpl.java b/rba.model.core/src/rba/core/impl/PackagableElementImpl.java
new file mode 100644
index 0000000..de00f27
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/PackagableElementImpl.java
@@ -0,0 +1,33 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.PackagableElement;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Packagable Element</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class PackagableElementImpl extends NamedElementImpl implements PackagableElement {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected PackagableElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.PACKAGABLE_ELEMENT;
+ }
+
+} // PackagableElementImpl
diff --git a/rba.model.core/src/rba/core/impl/PackageImpl.java b/rba.model.core/src/rba/core/impl/PackageImpl.java
new file mode 100644
index 0000000..079ae9c
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/PackageImpl.java
@@ -0,0 +1,139 @@
+/**
+ */
+package rba.core.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import rba.core.PackagableElement;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Package</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.PackageImpl#getPackagableelement <em>Packagableelement</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PackageImpl extends PackagableElementImpl implements rba.core.Package {
+ /**
+ * The cached value of the '{@link #getPackagableelement() <em>Packagableelement</em>}' containment reference list. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * @see #getPackagableelement()
+ * @generated
+ * @ordered
+ */
+ protected EList<PackagableElement> packagableelement;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected PackageImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.PACKAGE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<PackagableElement> getPackagableelement() {
+ if (packagableelement == null) {
+ packagableelement = new EObjectContainmentEList<PackagableElement>(PackagableElement.class, this,
+ RBACorePackage.PACKAGE__PACKAGABLEELEMENT);
+ }
+ return packagableelement;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.PACKAGE__PACKAGABLEELEMENT:
+ return ((InternalEList<?>) getPackagableelement()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.PACKAGE__PACKAGABLEELEMENT:
+ return getPackagableelement();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.PACKAGE__PACKAGABLEELEMENT:
+ getPackagableelement().clear();
+ getPackagableelement().addAll((Collection<? extends PackagableElement>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.PACKAGE__PACKAGABLEELEMENT:
+ getPackagableelement().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.PACKAGE__PACKAGABLEELEMENT:
+ return packagableelement != null && !packagableelement.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // PackageImpl
diff --git a/rba.model.core/src/rba/core/impl/PlusOperatorImpl.java b/rba.model.core/src/rba/core/impl/PlusOperatorImpl.java
new file mode 100644
index 0000000..ee73fb0
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/PlusOperatorImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.PlusOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Plus Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class PlusOperatorImpl extends ArithmeticOperatorImpl implements PlusOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected PlusOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.PLUS_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "+";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.PLUS_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // PlusOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/PreviousModifierImpl.java b/rba.model.core/src/rba/core/impl/PreviousModifierImpl.java
new file mode 100644
index 0000000..c531187
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/PreviousModifierImpl.java
@@ -0,0 +1,229 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.ExpressionType;
+import rba.core.ObjectReference;
+import rba.core.PreviousModifier;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Previous Modifier</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.PreviousModifierImpl#getObjReference <em>Obj Reference</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PreviousModifierImpl extends ExpressionImpl implements PreviousModifier {
+ /**
+ * The cached value of the '{@link #getObjReference() <em>Obj Reference</em>}' containment reference.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @see #getObjReference()
+ * @generated
+ * @ordered
+ */
+ protected ObjectReference objReference;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected PreviousModifierImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.PREVIOUS_MODIFIER;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectReference getObjReference() {
+ return objReference;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetObjReference(ObjectReference newObjReference, NotificationChain msgs) {
+ ObjectReference oldObjReference = objReference;
+ objReference = newObjReference;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE, oldObjReference, newObjReference);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setObjReference(ObjectReference newObjReference) {
+ if (newObjReference != objReference) {
+ NotificationChain msgs = null;
+ if (objReference != null)
+ msgs = ((InternalEObject) objReference).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE, null, msgs);
+ if (newObjReference != null)
+ msgs = ((InternalEObject) newObjReference).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE, null, msgs);
+ msgs = basicSetObjReference(newObjReference, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE,
+ newObjReference, newObjReference));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "(pre)";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ ObjectReference objReference = getObjReference();
+ if (objReference != null) {
+ return objReference.getUnderlyingType();
+ } else {
+ return ExpressionType.VALUE;
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ if (getObjReference() != null && getObjReference().getRefObject() != null) {
+ ObjectReference reference = getObjReference();
+ expressionText.append(getSymbol());
+ expressionText.append(reference.getExpressionText());
+ } else {
+ expressionText.append("[Invalid_Expression]");
+ }
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE:
+ return basicSetObjReference(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE:
+ return getObjReference();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE:
+ setObjReference((ObjectReference) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE:
+ setObjReference((ObjectReference) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.PREVIOUS_MODIFIER__OBJ_REFERENCE:
+ return objReference != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.PREVIOUS_MODIFIER___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.PREVIOUS_MODIFIER___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.PREVIOUS_MODIFIER___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // PreviousModifierImpl
diff --git a/rba.model.core/src/rba/core/impl/ProjectImpl.java b/rba.model.core/src/rba/core/impl/ProjectImpl.java
new file mode 100644
index 0000000..6e62c3e
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ProjectImpl.java
@@ -0,0 +1,233 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import rba.core.Project;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Project</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.ProjectImpl#getVersion <em>Version</em>}</li>
+ * <li>{@link rba.core.impl.ProjectImpl#getDummyName <em>Dummy Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ProjectImpl extends PackageImpl implements Project {
+ /**
+ * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getVersion()
+ * @generated
+ * @ordered
+ */
+ protected static final String VERSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getVersion()
+ * @generated
+ * @ordered
+ */
+ protected String version = VERSION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDummyName() <em>Dummy Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDummyName()
+ * @generated
+ * @ordered
+ */
+ protected static final String DUMMY_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDummyName() <em>Dummy Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDummyName()
+ * @generated
+ * @ordered
+ */
+ protected String dummyName = DUMMY_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ProjectImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.PROJECT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVersion(String newVersion) {
+ String oldVersion = version;
+ version = newVersion;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.PROJECT__VERSION, oldVersion,
+ version));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDummyName() {
+ return dummyName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDummyName(String newDummyName) {
+ String oldDummyName = dummyName;
+ dummyName = newDummyName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.PROJECT__DUMMY_NAME, oldDummyName,
+ dummyName));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ if (this.eResource() != null) {
+ String segments[] = this.eResource().getURI().toString().split("/");
+ return segments[2];
+ } else {
+ return this.name;
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.PROJECT__VERSION:
+ return getVersion();
+ case RBACorePackage.PROJECT__DUMMY_NAME:
+ return getDummyName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.PROJECT__VERSION:
+ setVersion((String) newValue);
+ return;
+ case RBACorePackage.PROJECT__DUMMY_NAME:
+ setDummyName((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.PROJECT__VERSION:
+ setVersion(VERSION_EDEFAULT);
+ return;
+ case RBACorePackage.PROJECT__DUMMY_NAME:
+ setDummyName(DUMMY_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.PROJECT__VERSION:
+ return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
+ case RBACorePackage.PROJECT__DUMMY_NAME:
+ return DUMMY_NAME_EDEFAULT == null ? dummyName != null : !DUMMY_NAME_EDEFAULT.equals(dummyName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.PROJECT___GET_NAME:
+ return getName();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (version: ");
+ result.append(version);
+ result.append(", dummyName: ");
+ result.append(dummyName);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ProjectImpl
diff --git a/rba.model.core/src/rba/core/impl/PropertyOperatorImpl.java b/rba.model.core/src/rba/core/impl/PropertyOperatorImpl.java
new file mode 100644
index 0000000..9f99cfb
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/PropertyOperatorImpl.java
@@ -0,0 +1,73 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.PropertyOperator;
+import rba.core.RBACorePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Property Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class PropertyOperatorImpl extends OperatorImpl implements PropertyOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected PropertyOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.PROPERTY_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.PROPERTY_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.PROPERTY_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // PropertyOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/RBACoreFactoryImpl.java b/rba.model.core/src/rba/core/impl/RBACoreFactoryImpl.java
new file mode 100644
index 0000000..49b69a2
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/RBACoreFactoryImpl.java
@@ -0,0 +1,958 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import rba.core.ActiveContents;
+import rba.core.ActiveState;
+import rba.core.AllocatedContent;
+import rba.core.AndOperator;
+import rba.core.ArbitrationPolicy;
+import rba.core.ArbitrationPolicyExpression;
+import rba.core.ComparisonAnd;
+import rba.core.ComplexExpression;
+import rba.core.Constraint;
+import rba.core.ContentValue;
+import rba.core.EqualToOperator;
+import rba.core.ExistsOperator;
+import rba.core.ExpressionType;
+import rba.core.ForAllOperator;
+import rba.core.GetAllocatables;
+import rba.core.GetContentsList;
+import rba.core.GetProperty;
+import rba.core.GetState;
+import rba.core.GreaterThanOperator;
+import rba.core.HasBeenDisplayed;
+import rba.core.HasComeEarlierThan;
+import rba.core.HasComeLaterThan;
+import rba.core.IfStatement;
+import rba.core.ImpliesOperator;
+import rba.core.IntegerProperty;
+import rba.core.IntegerValue;
+import rba.core.IsActive;
+import rba.core.IsAllocatedTo;
+import rba.core.IsChanged;
+import rba.core.IsEqualToOperator;
+import rba.core.IsGreaterThanEqualOperator;
+import rba.core.IsGreaterThanOperator;
+import rba.core.IsLowerThanEqualOperator;
+import rba.core.IsLowerThanOperator;
+import rba.core.IsOn;
+import rba.core.IsTranslatedTo;
+import rba.core.IsTypeOf;
+import rba.core.LambdaExpression;
+import rba.core.LetStatement;
+import rba.core.LoserType;
+import rba.core.LoserTypeExpression;
+import rba.core.LowerThanOperator;
+import rba.core.MaxOperator;
+import rba.core.MaxValue;
+import rba.core.MinOperator;
+import rba.core.MinValue;
+import rba.core.MuchGreaterThanOperator;
+import rba.core.NoneValue;
+import rba.core.NotOperator;
+import rba.core.NullExpression;
+import rba.core.ObjectCompare;
+import rba.core.ObjectCompareNot;
+import rba.core.ObjectReference;
+import rba.core.OrOperator;
+import rba.core.PlusOperator;
+import rba.core.PreviousModifier;
+import rba.core.Project;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.Scene;
+import rba.core.SelectOperator;
+import rba.core.SetOfOperator;
+import rba.core.SizeOperator;
+import rba.core.StandardValue;
+import rba.core.StateValue;
+import rba.core.Stereotype;
+import rba.core.Tag;
+import rba.core.ThatOfOperator;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ * @generated
+ */
+public class RBACoreFactoryImpl extends EFactoryImpl implements RBACoreFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public static RBACoreFactory init() {
+ try {
+ RBACoreFactory theRBACoreFactory = (RBACoreFactory) EPackage.Registry.INSTANCE
+ .getEFactory(RBACorePackage.eNS_URI);
+ if (theRBACoreFactory != null) {
+ return theRBACoreFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new RBACoreFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBACoreFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case RBACorePackage.PROJECT:
+ return createProject();
+ case RBACorePackage.PACKAGE:
+ return createPackage();
+ case RBACorePackage.STEREOTYPE:
+ return createStereotype();
+ case RBACorePackage.TAG:
+ return createTag();
+ case RBACorePackage.SCENE:
+ return createScene();
+ case RBACorePackage.INTEGER_PROPERTY:
+ return createIntegerProperty();
+ case RBACorePackage.CONSTRAINT:
+ return createConstraint();
+ case RBACorePackage.LET_STATEMENT:
+ return createLetStatement();
+ case RBACorePackage.COMPLEX_EXPRESSION:
+ return createComplexExpression();
+ case RBACorePackage.IS_TYPE_OF:
+ return createIsTypeOf();
+ case RBACorePackage.OBJECT_REFERENCE:
+ return createObjectReference();
+ case RBACorePackage.PREVIOUS_MODIFIER:
+ return createPreviousModifier();
+ case RBACorePackage.GREATER_THAN_OPERATOR:
+ return createGreaterThanOperator();
+ case RBACorePackage.MUCH_GREATER_THAN_OPERATOR:
+ return createMuchGreaterThanOperator();
+ case RBACorePackage.LOWER_THAN_OPERATOR:
+ return createLowerThanOperator();
+ case RBACorePackage.EQUAL_TO_OPERATOR:
+ return createEqualToOperator();
+ case RBACorePackage.COMPARISON_AND:
+ return createComparisonAnd();
+ case RBACorePackage.AND_OPERATOR:
+ return createAndOperator();
+ case RBACorePackage.OR_OPERATOR:
+ return createOrOperator();
+ case RBACorePackage.NOT_OPERATOR:
+ return createNotOperator();
+ case RBACorePackage.IS_EQUAL_TO_OPERATOR:
+ return createIsEqualToOperator();
+ case RBACorePackage.IS_GREATER_THAN_OPERATOR:
+ return createIsGreaterThanOperator();
+ case RBACorePackage.IS_LOWER_THAN_OPERATOR:
+ return createIsLowerThanOperator();
+ case RBACorePackage.IS_GREATER_THAN_EQUAL_OPERATOR:
+ return createIsGreaterThanEqualOperator();
+ case RBACorePackage.IS_LOWER_THAN_EQUAL_OPERATOR:
+ return createIsLowerThanEqualOperator();
+ case RBACorePackage.PLUS_OPERATOR:
+ return createPlusOperator();
+ case RBACorePackage.IMPLIES_OPERATOR:
+ return createImpliesOperator();
+ case RBACorePackage.IS_ACTIVE:
+ return createIsActive();
+ case RBACorePackage.GET_ALLOCATABLES:
+ return createGetAllocatables();
+ case RBACorePackage.HAS_BEEN_DISPLAYED:
+ return createHasBeenDisplayed();
+ case RBACorePackage.ACTIVE_STATE:
+ return createActiveState();
+ case RBACorePackage.OBJECT_COMPARE:
+ return createObjectCompare();
+ case RBACorePackage.THAT_OF_OPERATOR:
+ return createThatOfOperator();
+ case RBACorePackage.MAX_VALUE:
+ return createMaxValue();
+ case RBACorePackage.MIN_VALUE:
+ return createMinValue();
+ case RBACorePackage.NONE_VALUE:
+ return createNoneValue();
+ case RBACorePackage.STANDARD_VALUE:
+ return createStandardValue();
+ case RBACorePackage.INTEGER_VALUE:
+ return createIntegerValue();
+ case RBACorePackage.LOSER_TYPE_EXPRESSION:
+ return createLoserTypeExpression();
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION:
+ return createArbitrationPolicyExpression();
+ case RBACorePackage.SIZE_OPERATOR:
+ return createSizeOperator();
+ case RBACorePackage.EXISTS_OPERATOR:
+ return createExistsOperator();
+ case RBACorePackage.FOR_ALL_OPERATOR:
+ return createForAllOperator();
+ case RBACorePackage.MAX_OPERATOR:
+ return createMaxOperator();
+ case RBACorePackage.MIN_OPERATOR:
+ return createMinOperator();
+ case RBACorePackage.SELECT_OPERATOR:
+ return createSelectOperator();
+ case RBACorePackage.SET_OF_OPERATOR:
+ return createSetOfOperator();
+ case RBACorePackage.LAMBDA_EXPRESSION:
+ return createLambdaExpression();
+ case RBACorePackage.VARIABLE:
+ return createVariable();
+ case RBACorePackage.IF_STATEMENT:
+ return createIfStatement();
+ case RBACorePackage.IS_ON:
+ return createIsOn();
+ case RBACorePackage.ALLOCATED_CONTENT:
+ return createAllocatedContent();
+ case RBACorePackage.CONTENT_VALUE:
+ return createContentValue();
+ case RBACorePackage.GET_CONTENTS_LIST:
+ return createGetContentsList();
+ case RBACorePackage.ACTIVE_CONTENTS:
+ return createActiveContents();
+ case RBACorePackage.GET_PROPERTY:
+ return createGetProperty();
+ case RBACorePackage.STATE_VALUE:
+ return createStateValue();
+ case RBACorePackage.HAS_COME_LATER_THAN:
+ return createHasComeLaterThan();
+ case RBACorePackage.HAS_COME_EARLIER_THAN:
+ return createHasComeEarlierThan();
+ case RBACorePackage.OBJECT_COMPARE_NOT:
+ return createObjectCompareNot();
+ case RBACorePackage.IS_ALLOCATED_TO:
+ return createIsAllocatedTo();
+ case RBACorePackage.IS_CHANGED:
+ return createIsChanged();
+ case RBACorePackage.IS_TRANSLATED_TO:
+ return createIsTranslatedTo();
+ case RBACorePackage.GET_STATE:
+ return createGetState();
+ case RBACorePackage.NULL_EXPRESSION:
+ return createNullExpression();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case RBACorePackage.ARBITRATION_POLICY:
+ return createArbitrationPolicyFromString(eDataType, initialValue);
+ case RBACorePackage.EXPRESSION_TYPE:
+ return createExpressionTypeFromString(eDataType, initialValue);
+ case RBACorePackage.LOSER_TYPE:
+ return createLoserTypeFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case RBACorePackage.ARBITRATION_POLICY:
+ return convertArbitrationPolicyToString(eDataType, instanceValue);
+ case RBACorePackage.EXPRESSION_TYPE:
+ return convertExpressionTypeToString(eDataType, instanceValue);
+ case RBACorePackage.LOSER_TYPE:
+ return convertLoserTypeToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Project createProject() {
+ ProjectImpl project = new ProjectImpl();
+ return project;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public rba.core.Package createPackage() {
+ PackageImpl package_ = new PackageImpl();
+ return package_;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Stereotype createStereotype() {
+ StereotypeImpl stereotype = new StereotypeImpl();
+ return stereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Tag createTag() {
+ TagImpl tag = new TagImpl();
+ return tag;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Scene createScene() {
+ SceneImpl scene = new SceneImpl();
+ return scene;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IntegerProperty createIntegerProperty() {
+ IntegerPropertyImpl integerProperty = new IntegerPropertyImpl();
+ return integerProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Constraint createConstraint() {
+ ConstraintImpl constraint = new ConstraintImpl();
+ return constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LetStatement createLetStatement() {
+ LetStatementImpl letStatement = new LetStatementImpl();
+ return letStatement;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ComplexExpression createComplexExpression() {
+ ComplexExpressionImpl complexExpression = new ComplexExpressionImpl();
+ return complexExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsTypeOf createIsTypeOf() {
+ IsTypeOfImpl isTypeOf = new IsTypeOfImpl();
+ return isTypeOf;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectReference createObjectReference() {
+ ObjectReferenceImpl objectReference = new ObjectReferenceImpl();
+ return objectReference;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public PreviousModifier createPreviousModifier() {
+ PreviousModifierImpl previousModifier = new PreviousModifierImpl();
+ return previousModifier;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public GreaterThanOperator createGreaterThanOperator() {
+ GreaterThanOperatorImpl greaterThanOperator = new GreaterThanOperatorImpl();
+ return greaterThanOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public MuchGreaterThanOperator createMuchGreaterThanOperator() {
+ MuchGreaterThanOperatorImpl muchGreaterThanOperator = new MuchGreaterThanOperatorImpl();
+ return muchGreaterThanOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LowerThanOperator createLowerThanOperator() {
+ LowerThanOperatorImpl lowerThanOperator = new LowerThanOperatorImpl();
+ return lowerThanOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EqualToOperator createEqualToOperator() {
+ EqualToOperatorImpl equalToOperator = new EqualToOperatorImpl();
+ return equalToOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ComparisonAnd createComparisonAnd() {
+ ComparisonAndImpl comparisonAnd = new ComparisonAndImpl();
+ return comparisonAnd;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public AndOperator createAndOperator() {
+ AndOperatorImpl andOperator = new AndOperatorImpl();
+ return andOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public OrOperator createOrOperator() {
+ OrOperatorImpl orOperator = new OrOperatorImpl();
+ return orOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotOperator createNotOperator() {
+ NotOperatorImpl notOperator = new NotOperatorImpl();
+ return notOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsEqualToOperator createIsEqualToOperator() {
+ IsEqualToOperatorImpl isEqualToOperator = new IsEqualToOperatorImpl();
+ return isEqualToOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsGreaterThanOperator createIsGreaterThanOperator() {
+ IsGreaterThanOperatorImpl isGreaterThanOperator = new IsGreaterThanOperatorImpl();
+ return isGreaterThanOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsLowerThanOperator createIsLowerThanOperator() {
+ IsLowerThanOperatorImpl isLowerThanOperator = new IsLowerThanOperatorImpl();
+ return isLowerThanOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsGreaterThanEqualOperator createIsGreaterThanEqualOperator() {
+ IsGreaterThanEqualOperatorImpl isGreaterThanEqualOperator = new IsGreaterThanEqualOperatorImpl();
+ return isGreaterThanEqualOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsLowerThanEqualOperator createIsLowerThanEqualOperator() {
+ IsLowerThanEqualOperatorImpl isLowerThanEqualOperator = new IsLowerThanEqualOperatorImpl();
+ return isLowerThanEqualOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public PlusOperator createPlusOperator() {
+ PlusOperatorImpl plusOperator = new PlusOperatorImpl();
+ return plusOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ImpliesOperator createImpliesOperator() {
+ ImpliesOperatorImpl impliesOperator = new ImpliesOperatorImpl();
+ return impliesOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsActive createIsActive() {
+ IsActiveImpl isActive = new IsActiveImpl();
+ return isActive;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public GetAllocatables createGetAllocatables() {
+ GetAllocatablesImpl getAllocatables = new GetAllocatablesImpl();
+ return getAllocatables;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public HasBeenDisplayed createHasBeenDisplayed() {
+ HasBeenDisplayedImpl hasBeenDisplayed = new HasBeenDisplayedImpl();
+ return hasBeenDisplayed;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ActiveState createActiveState() {
+ ActiveStateImpl activeState = new ActiveStateImpl();
+ return activeState;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectCompare createObjectCompare() {
+ ObjectCompareImpl objectCompare = new ObjectCompareImpl();
+ return objectCompare;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ThatOfOperator createThatOfOperator() {
+ ThatOfOperatorImpl thatOfOperator = new ThatOfOperatorImpl();
+ return thatOfOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public MaxValue createMaxValue() {
+ MaxValueImpl maxValue = new MaxValueImpl();
+ return maxValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public MinValue createMinValue() {
+ MinValueImpl minValue = new MinValueImpl();
+ return minValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NoneValue createNoneValue() {
+ NoneValueImpl noneValue = new NoneValueImpl();
+ return noneValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public StandardValue createStandardValue() {
+ StandardValueImpl standardValue = new StandardValueImpl();
+ return standardValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IntegerValue createIntegerValue() {
+ IntegerValueImpl integerValue = new IntegerValueImpl();
+ return integerValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LoserTypeExpression createLoserTypeExpression() {
+ LoserTypeExpressionImpl loserTypeExpression = new LoserTypeExpressionImpl();
+ return loserTypeExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ArbitrationPolicyExpression createArbitrationPolicyExpression() {
+ ArbitrationPolicyExpressionImpl arbitrationPolicyExpression = new ArbitrationPolicyExpressionImpl();
+ return arbitrationPolicyExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public SizeOperator createSizeOperator() {
+ SizeOperatorImpl sizeOperator = new SizeOperatorImpl();
+ return sizeOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExistsOperator createExistsOperator() {
+ ExistsOperatorImpl existsOperator = new ExistsOperatorImpl();
+ return existsOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ForAllOperator createForAllOperator() {
+ ForAllOperatorImpl forAllOperator = new ForAllOperatorImpl();
+ return forAllOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public MaxOperator createMaxOperator() {
+ MaxOperatorImpl maxOperator = new MaxOperatorImpl();
+ return maxOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public MinOperator createMinOperator() {
+ MinOperatorImpl minOperator = new MinOperatorImpl();
+ return minOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public SelectOperator createSelectOperator() {
+ SelectOperatorImpl selectOperator = new SelectOperatorImpl();
+ return selectOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public SetOfOperator createSetOfOperator() {
+ SetOfOperatorImpl setOfOperator = new SetOfOperatorImpl();
+ return setOfOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LambdaExpression createLambdaExpression() {
+ LambdaExpressionImpl lambdaExpression = new LambdaExpressionImpl();
+ return lambdaExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Variable createVariable() {
+ VariableImpl variable = new VariableImpl();
+ return variable;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IfStatement createIfStatement() {
+ IfStatementImpl ifStatement = new IfStatementImpl();
+ return ifStatement;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsOn createIsOn() {
+ IsOnImpl isOn = new IsOnImpl();
+ return isOn;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocatedContent createAllocatedContent() {
+ AllocatedContentImpl allocatedContent = new AllocatedContentImpl();
+ return allocatedContent;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ContentValue createContentValue() {
+ ContentValueImpl contentValue = new ContentValueImpl();
+ return contentValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public GetContentsList createGetContentsList() {
+ GetContentsListImpl getContentsList = new GetContentsListImpl();
+ return getContentsList;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ActiveContents createActiveContents() {
+ ActiveContentsImpl activeContents = new ActiveContentsImpl();
+ return activeContents;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public GetProperty createGetProperty() {
+ GetPropertyImpl getProperty = new GetPropertyImpl();
+ return getProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public StateValue createStateValue() {
+ StateValueImpl stateValue = new StateValueImpl();
+ return stateValue;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public HasComeLaterThan createHasComeLaterThan() {
+ HasComeLaterThanImpl hasComeLaterThan = new HasComeLaterThanImpl();
+ return hasComeLaterThan;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public HasComeEarlierThan createHasComeEarlierThan() {
+ HasComeEarlierThanImpl hasComeEarlierThan = new HasComeEarlierThanImpl();
+ return hasComeEarlierThan;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectCompareNot createObjectCompareNot() {
+ ObjectCompareNotImpl objectCompareNot = new ObjectCompareNotImpl();
+ return objectCompareNot;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsAllocatedTo createIsAllocatedTo() {
+ IsAllocatedToImpl isAllocatedTo = new IsAllocatedToImpl();
+ return isAllocatedTo;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsChanged createIsChanged() {
+ IsChangedImpl isChanged = new IsChangedImpl();
+ return isChanged;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsTranslatedTo createIsTranslatedTo() {
+ IsTranslatedToImpl isTranslatedTo = new IsTranslatedToImpl();
+ return isTranslatedTo;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public GetState createGetState() {
+ GetStateImpl getState = new GetStateImpl();
+ return getState;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NullExpression createNullExpression() {
+ NullExpressionImpl nullExpression = new NullExpressionImpl();
+ return nullExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ArbitrationPolicy createArbitrationPolicyFromString(EDataType eDataType, String initialValue) {
+ ArbitrationPolicy result = ArbitrationPolicy.get(initialValue);
+ if (result == null)
+ throw new IllegalArgumentException(
+ "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertArbitrationPolicyToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType createExpressionTypeFromString(EDataType eDataType, String initialValue) {
+ ExpressionType result = ExpressionType.get(initialValue);
+ if (result == null)
+ throw new IllegalArgumentException(
+ "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertExpressionTypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public LoserType createLoserTypeFromString(EDataType eDataType, String initialValue) {
+ LoserType result = LoserType.get(initialValue);
+ if (result == null)
+ throw new IllegalArgumentException(
+ "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertLoserTypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBACorePackage getRBACorePackage() {
+ return (RBACorePackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static RBACorePackage getPackage() {
+ return RBACorePackage.eINSTANCE;
+ }
+
+} // RBACoreFactoryImpl
diff --git a/rba.model.core/src/rba/core/impl/RBACorePackageImpl.java b/rba.model.core/src/rba/core/impl/RBACorePackageImpl.java
new file mode 100644
index 0000000..ce9e33c
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/RBACorePackageImpl.java
@@ -0,0 +1,4565 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import rba.core.*;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc -->
+ * @generated
+ */
+public class RBACorePackageImpl extends EPackageImpl implements RBACorePackage {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass modelElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass namedElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractAllocatableEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocatableEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocatableSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass projectEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass packagableElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass packageEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stereotypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tagEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass ruleObjectEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractContentEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractSceneEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sceneEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentStateEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass integerPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass constraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass expressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass letStatementEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass complexExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass operatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isTypeOfEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass objectReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass previousModifierEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass greaterThanOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass muchGreaterThanOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass lowerThanOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass comparisonOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass equalToOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass comparisonAndEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass logicalOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass andOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass orOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass notOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isEqualToOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isGreaterThanOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isLowerThanOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isGreaterThanEqualOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isLowerThanEqualOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass arithmeticOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass plusOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass impliesOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isActiveEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass getAllocatablesEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hasBeenDisplayedEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass activeStateEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass objectCompareEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass thatOfOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass valueExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass maxValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass minValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass noneValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass standardValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass integerValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass enumExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass loserTypeExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass arbitrationPolicyExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass setExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass setOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sizeOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass existsOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass forAllOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass maxOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass minOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass selectOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass setOfOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass lambdaExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass variableEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass lambdaContextEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass ifStatementEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sceneOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isOnEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocatableOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocatedContentEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass getContentsListEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass activeContentsEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass propertyOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass getPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stateValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hasComeLaterThanEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hasComeEarlierThanEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sugarExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sugarExpressionBaseEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass objectCompareNotEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isAllocatedToEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isChangedEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isTranslatedToEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass getStateEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentStateOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass nullExpressionEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum arbitrationPolicyEEnum = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum expressionTypeEEnum = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum loserTypeEEnum = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see rba.core.RBACorePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private RBACorePackageImpl() {
+ super(eNS_URI, RBACoreFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 RBACorePackage#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 --> <!--
+ * end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static RBACorePackage init() {
+ if (isInited)
+ return (RBACorePackage) EPackage.Registry.INSTANCE.getEPackage(RBACorePackage.eNS_URI);
+
+ // Obtain or create and register package
+ RBACorePackageImpl theRBACorePackage = (RBACorePackageImpl) (EPackage.Registry.INSTANCE
+ .get(eNS_URI) instanceof RBACorePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+ : new RBACorePackageImpl());
+
+ isInited = true;
+
+ // Create package meta-data objects
+ theRBACorePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theRBACorePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theRBACorePackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(RBACorePackage.eNS_URI, theRBACorePackage);
+ return theRBACorePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getModelElement() {
+ return modelElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getModelElement_Description() {
+ return (EAttribute) modelElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNamedElement() {
+ return namedElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getNamedElement_Name() {
+ return (EAttribute) namedElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractAllocatable() {
+ return abstractAllocatableEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractAllocatable_Contents() {
+ return (EReference) abstractAllocatableEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractAllocatable_AllocatableGroup() {
+ return (EReference) abstractAllocatableEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAbstractAllocatable__GetContentsList() {
+ return abstractAllocatableEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAbstractAllocatable__CollectLeafAllocatable() {
+ return abstractAllocatableEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocatable() {
+ return allocatableEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAllocatable_ArbitrationPolicy() {
+ return (EAttribute) allocatableEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocatable_Visibility() {
+ return (EReference) allocatableEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocatable__CollectLeafAllocatable() {
+ return allocatableEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocatableSet() {
+ return allocatableSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocatableSet_Target() {
+ return (EReference) allocatableSetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocatableSet__CollectLeafAllocatable() {
+ return allocatableSetEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getProject() {
+ return projectEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProject_Version() {
+ return (EAttribute) projectEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProject_DummyName() {
+ return (EAttribute) projectEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getProject__GetName() {
+ return projectEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPackagableElement() {
+ return packagableElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPackage() {
+ return packageEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getPackage_Packagableelement() {
+ return (EReference) packageEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStereotype() {
+ return stereotypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStereotype_TargetModelName() {
+ return (EAttribute) stereotypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStereotype_BodyText() {
+ return (EAttribute) stereotypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTag() {
+ return tagEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTag_Values() {
+ return (EAttribute) tagEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStereotype_Variables() {
+ return (EReference) stereotypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getRuleObject() {
+ return ruleObjectEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRuleObject_Tags() {
+ return (EReference) ruleObjectEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getRuleObject__GetExpressionType() {
+ return ruleObjectEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractContent() {
+ return abstractContentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractContent_ContentGroup() {
+ return (EReference) abstractContentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractContent_Allocatable() {
+ return (EReference) abstractContentEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAbstractContent__GetAllocatableList() {
+ return abstractContentEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAbstractContent__CollectLeafContents() {
+ return abstractContentEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractScene() {
+ return abstractSceneEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getScene() {
+ return sceneEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getScene_Global() {
+ return (EAttribute) sceneEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getScene_Properties() {
+ return (EReference) sceneEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getScene__GetExpressionType() {
+ return sceneEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContent() {
+ return contentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getContent_LoserType() {
+ return (EAttribute) contentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContent_States() {
+ return (EReference) contentEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getContent__CollectLeafContents() {
+ return contentEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContentSet() {
+ return contentSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContentSet_Target() {
+ return (EReference) contentSetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getContentSet__CollectLeafContents() {
+ return contentSetEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContentState() {
+ return contentStateEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContentState_Value() {
+ return (EReference) contentStateEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContentState_Owner() {
+ return (EReference) contentStateEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractProperty() {
+ return abstractPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractProperty_Owner() {
+ return (EReference) abstractPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAbstractProperty__GetExpressionType() {
+ return abstractPropertyEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIntegerProperty() {
+ return integerPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getIntegerProperty_Value() {
+ return (EReference) integerPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractConstraint() {
+ return abstractConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractConstraint_Expression() {
+ return (EReference) abstractConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getConstraint() {
+ return constraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getConstraint_Runtime() {
+ return (EAttribute) constraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getExpression() {
+ return expressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getExpression_Type() {
+ return (EAttribute) expressionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getExpression_Expression() {
+ return (EAttribute) expressionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getExpression_LetStatements() {
+ return (EReference) expressionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getExpression__GetUnderlyingType() {
+ return expressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getExpression__GetExpressionText() {
+ return expressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLetStatement() {
+ return letStatementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getLetStatement_Variable() {
+ return (EReference) letStatementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getLetStatement_Body() {
+ return (EReference) letStatementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLetStatement__ToString() {
+ return letStatementEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getComplexExpression() {
+ return complexExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getComplexExpression_OtherExpression() {
+ return (EReference) complexExpressionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComplexExpression__GetExpressionText() {
+ return complexExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComplexExpression__GetUnderlyingType() {
+ return complexExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComplexExpression__GetType() {
+ return complexExpressionEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOperator() {
+ return operatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getOperator_Operand() {
+ return (EReference) operatorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getOperator__GetSymbol() {
+ return operatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsTypeOf() {
+ return isTypeOfEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getIsTypeOf_TagName() {
+ return (EAttribute) isTypeOfEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTypeOf__GetExpressionText() {
+ return isTypeOfEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTypeOf__GetSymbol() {
+ return isTypeOfEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTypeOf__GetUnderlyingType() {
+ return isTypeOfEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getObjectReference() {
+ return objectReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getObjectReference_RefObject() {
+ return (EReference) objectReferenceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectReference__GetUnderlyingType() {
+ return objectReferenceEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectReference__GetExpressionText() {
+ return objectReferenceEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPreviousModifier() {
+ return previousModifierEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getPreviousModifier_ObjReference() {
+ return (EReference) previousModifierEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getPreviousModifier__GetSymbol() {
+ return previousModifierEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getPreviousModifier__GetUnderlyingType() {
+ return previousModifierEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getPreviousModifier__GetExpressionText() {
+ return previousModifierEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getGreaterThanOperator() {
+ return greaterThanOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGreaterThanOperator__GetSymbol() {
+ return greaterThanOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMuchGreaterThanOperator() {
+ return muchGreaterThanOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMuchGreaterThanOperator__GetSymbol() {
+ return muchGreaterThanOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLowerThanOperator() {
+ return lowerThanOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLowerThanOperator__GetSymbol() {
+ return lowerThanOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getComparisonOperator() {
+ return comparisonOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComparisonOperator__GetUnderlyingType() {
+ return comparisonOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComparisonOperator__GetExpressionText() {
+ return comparisonOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEqualToOperator() {
+ return equalToOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getEqualToOperator__GetSymbol() {
+ return equalToOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getComparisonAnd() {
+ return comparisonAndEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComparisonAnd__GetSymbol() {
+ return comparisonAndEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getComparisonAnd__GetExpressionText() {
+ return comparisonAndEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLogicalOperator() {
+ return logicalOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLogicalOperator__GetUnderlyingType() {
+ return logicalOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLogicalOperator__GetExpressionText() {
+ return logicalOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAndOperator() {
+ return andOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAndOperator__GetSymbol() {
+ return andOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOrOperator() {
+ return orOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getOrOperator__GetSymbol() {
+ return orOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNotOperator() {
+ return notOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getNotOperator__GetSymbol() {
+ return notOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getNotOperator__GetExpressionText() {
+ return notOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsEqualToOperator() {
+ return isEqualToOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsEqualToOperator__GetSymbol() {
+ return isEqualToOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsGreaterThanOperator() {
+ return isGreaterThanOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsGreaterThanOperator__GetSymbol() {
+ return isGreaterThanOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsLowerThanOperator() {
+ return isLowerThanOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsLowerThanOperator__GetSymbol() {
+ return isLowerThanOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsGreaterThanEqualOperator() {
+ return isGreaterThanEqualOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsGreaterThanEqualOperator__GetSymbol() {
+ return isGreaterThanEqualOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsLowerThanEqualOperator() {
+ return isLowerThanEqualOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsLowerThanEqualOperator__GetSymbol() {
+ return isLowerThanEqualOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getArithmeticOperator() {
+ return arithmeticOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getArithmeticOperator__GetUnderlyingType() {
+ return arithmeticOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getArithmeticOperator__GetExpressionText() {
+ return arithmeticOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPlusOperator() {
+ return plusOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getPlusOperator__GetSymbol() {
+ return plusOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getImpliesOperator() {
+ return impliesOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getImpliesOperator__GetSymbol() {
+ return impliesOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContentOperator() {
+ return contentOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getContentOperator__GetExpressionText() {
+ return contentOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsActive() {
+ return isActiveEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsActive__GetSymbol() {
+ return isActiveEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsActive__GetUnderlyingType() {
+ return isActiveEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getGetAllocatables() {
+ return getAllocatablesEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetAllocatables__GetSymbol() {
+ return getAllocatablesEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetAllocatables__GetUnderlyingType() {
+ return getAllocatablesEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHasBeenDisplayed() {
+ return hasBeenDisplayedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasBeenDisplayed__GetSymbol() {
+ return hasBeenDisplayedEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasBeenDisplayed__GetUnderlyingType() {
+ return hasBeenDisplayedEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getActiveState() {
+ return activeStateEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getActiveState__GetSymbol() {
+ return activeStateEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getActiveState__GetUnderlyingType() {
+ return activeStateEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getObjectCompare() {
+ return objectCompareEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectCompare__GetSymbol() {
+ return objectCompareEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectCompare__GetUnderlyingType() {
+ return objectCompareEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectCompare__GetExpressionText() {
+ return objectCompareEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getThatOfOperator() {
+ return thatOfOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getThatOfOperator__GetExpressionText() {
+ return thatOfOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getThatOfOperator__GetSymbol() {
+ return thatOfOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getThatOfOperator__GetUnderlyingType() {
+ return thatOfOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getValueExpression() {
+ return valueExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getValueExpression__GetUnderlyingType() {
+ return valueExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getValueExpression__GetExpressionValue() {
+ return valueExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getValueExpression__GetType() {
+ return valueExpressionEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMaxValue() {
+ return maxValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMaxValue__GetExpressionText() {
+ return maxValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMaxValue__GetExpressionValue() {
+ return maxValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMinValue() {
+ return minValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMinValue__GetExpressionText() {
+ return minValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMinValue__GetExpressionValue() {
+ return minValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNoneValue() {
+ return noneValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getNoneValue__GetExpressionText() {
+ return noneValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getNoneValue__GetExpressionValue() {
+ return noneValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStandardValue() {
+ return standardValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getStandardValue__GetExpressionText() {
+ return standardValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getStandardValue__GetExpressionValue() {
+ return standardValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIntegerValue() {
+ return integerValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getIntegerValue_Value() {
+ return (EAttribute) integerValueEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIntegerValue__GetExpressionText() {
+ return integerValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIntegerValue__GetExpressionValue() {
+ return integerValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEnumExpression() {
+ return enumExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getEnumExpression__GetUnderlyingType() {
+ return enumExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getEnumExpression__GetExpressionValue() {
+ return enumExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getEnumExpression__GetType() {
+ return enumExpressionEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLoserTypeExpression() {
+ return loserTypeExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getLoserTypeExpression_Value() {
+ return (EAttribute) loserTypeExpressionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLoserTypeExpression__GetExpressionText() {
+ return loserTypeExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLoserTypeExpression__GetExpressionValue() {
+ return loserTypeExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getArbitrationPolicyExpression() {
+ return arbitrationPolicyExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getArbitrationPolicyExpression_Value() {
+ return (EAttribute) arbitrationPolicyExpressionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getArbitrationPolicyExpression__GetExpressionText() {
+ return arbitrationPolicyExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getArbitrationPolicyExpression__GetExpressionValue() {
+ return arbitrationPolicyExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSetExpression() {
+ return setExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSetOperator() {
+ return setOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSizeOperator() {
+ return sizeOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSizeOperator__GetExpressionText() {
+ return sizeOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSizeOperator__GetSymbol() {
+ return sizeOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSizeOperator__GetUnderlyingType() {
+ return sizeOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getExistsOperator() {
+ return existsOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getExistsOperator__GetExpressionText() {
+ return existsOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getExistsOperator__GetSymbol() {
+ return existsOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getExistsOperator__GetUnderlyingType() {
+ return existsOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getForAllOperator() {
+ return forAllOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getForAllOperator__GetExpressionText() {
+ return forAllOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getForAllOperator__GetSymbol() {
+ return forAllOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getForAllOperator__GetUnderlyingType() {
+ return forAllOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMaxOperator() {
+ return maxOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMaxOperator__GetExpressionText() {
+ return maxOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMaxOperator__GetSymbol() {
+ return maxOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMaxOperator__GetUnderlyingType() {
+ return maxOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMinOperator() {
+ return minOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMinOperator__GetExpressionText() {
+ return minOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMinOperator__GetSymbol() {
+ return minOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMinOperator__GetUnderlyingType() {
+ return minOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSelectOperator() {
+ return selectOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSelectOperator__GetExpressionText() {
+ return selectOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSelectOperator__GetSymbol() {
+ return selectOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSelectOperator__GetUnderlyingType() {
+ return selectOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSetOfOperator() {
+ return setOfOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSetOfOperator__GetExpressionText() {
+ return setOfOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSetOfOperator__GetSymbol() {
+ return setOfOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSetOfOperator__GetUnderlyingType() {
+ return setOfOperatorEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLambdaExpression() {
+ return lambdaExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getLambdaExpression_Context() {
+ return (EReference) lambdaExpressionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getLambdaExpression_X() {
+ return (EReference) lambdaExpressionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getLambdaExpression_BodyText() {
+ return (EReference) lambdaExpressionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLambdaExpression__GetExpressionText() {
+ return lambdaExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLambdaExpression__GetUnderlyingType() {
+ return lambdaExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVariable() {
+ return variableEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getVariable__GetExpressionType() {
+ return variableEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLambdaContext() {
+ return lambdaContextEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getLambdaContext_Lambda() {
+ return (EReference) lambdaContextEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLambdaContext__GetContextType() {
+ return lambdaContextEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIfStatement() {
+ return ifStatementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getIfStatement_Condition() {
+ return (EReference) ifStatementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getIfStatement_ThenExpression() {
+ return (EReference) ifStatementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getIfStatement_ElseExpression() {
+ return (EReference) ifStatementEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIfStatement__GetUnderlyingType() {
+ return ifStatementEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIfStatement__GetExpressionText() {
+ return ifStatementEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSceneOperator() {
+ return sceneOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSceneOperator__GetExpressionText() {
+ return sceneOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsOn() {
+ return isOnEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOn__GetSymbol() {
+ return isOnEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOn__GetUnderlyingType() {
+ return isOnEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocatableOperator() {
+ return allocatableOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocatableOperator__GetExpressionText() {
+ return allocatableOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocatedContent() {
+ return allocatedContentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocatedContent__GetSymbol() {
+ return allocatedContentEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocatedContent__GetUnderlyingType() {
+ return allocatedContentEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContentValue() {
+ return contentValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getContentValue__GetSymbol() {
+ return contentValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getContentValue__GetUnderlyingType() {
+ return contentValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getGetContentsList() {
+ return getContentsListEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetContentsList__GetSymbol() {
+ return getContentsListEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetContentsList__GetUnderlyingType() {
+ return getContentsListEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getActiveContents() {
+ return activeContentsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getActiveContents__GetSymbol() {
+ return activeContentsEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getActiveContents__GetUnderlyingType() {
+ return activeContentsEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPropertyOperator() {
+ return propertyOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getPropertyOperator__GetUnderlyingType() {
+ return propertyOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getPropertyOperator__GetExpressionText() {
+ return propertyOperatorEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getGetProperty() {
+ return getPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetProperty__GetSymbol() {
+ return getPropertyEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetProperty__GetUnderlyingType() {
+ return getPropertyEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStateValue() {
+ return stateValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getStateValue__GetSymbol() {
+ return stateValueEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getStateValue__GetUnderlyingType() {
+ return stateValueEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHasComeLaterThan() {
+ return hasComeLaterThanEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasComeLaterThan__GetSymbol() {
+ return hasComeLaterThanEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasComeLaterThan__GetUnderlyingType() {
+ return hasComeLaterThanEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasComeLaterThan__GetExpressionText() {
+ return hasComeLaterThanEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHasComeEarlierThan() {
+ return hasComeEarlierThanEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasComeEarlierThan__GetSymbol() {
+ return hasComeEarlierThanEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasComeEarlierThan__GetUnderlyingType() {
+ return hasComeEarlierThanEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getHasComeEarlierThan__GetExpressionText() {
+ return hasComeEarlierThanEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSugarExpression() {
+ return sugarExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSugarExpression__CanExpand() {
+ return sugarExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSugarExpression__GetExpanded() {
+ return sugarExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSugarExpressionBase() {
+ return sugarExpressionBaseEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSugarExpressionBase__CanExpand() {
+ return sugarExpressionBaseEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getObjectCompareNot() {
+ return objectCompareNotEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectCompareNot__GetSymbol() {
+ return objectCompareNotEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectCompareNot__GetUnderlyingType() {
+ return objectCompareNotEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getObjectCompareNot__GetExpressionText() {
+ return objectCompareNotEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsAllocatedTo() {
+ return isAllocatedToEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsAllocatedTo__GetSymbol() {
+ return isAllocatedToEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsAllocatedTo__GetUnderlyingType() {
+ return isAllocatedToEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsAllocatedTo__GetExpressionText() {
+ return isAllocatedToEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsChanged() {
+ return isChangedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsChanged__GetSymbol() {
+ return isChangedEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsChanged__GetUnderlyingType() {
+ return isChangedEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsTranslatedTo() {
+ return isTranslatedToEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTranslatedTo__GetSymbol() {
+ return isTranslatedToEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTranslatedTo__GetUnderlyingType() {
+ return isTranslatedToEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTranslatedTo__GetExpressionText() {
+ return isTranslatedToEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getGetState() {
+ return getStateEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getGetState__GetSymbol() {
+ return getStateEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContentStateOperator() {
+ return contentStateOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getContentStateOperator__GetExpressionText() {
+ return contentStateOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNullExpression() {
+ return nullExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getNullExpression__GetUnderlyingType() {
+ return nullExpressionEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getNullExpression__GetExpressionText() {
+ return nullExpressionEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getArbitrationPolicy() {
+ return arbitrationPolicyEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getExpressionType() {
+ return expressionTypeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getLoserType() {
+ return loserTypeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBACoreFactory getRBACoreFactory() {
+ return (RBACoreFactory) getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated)
+ return;
+ isCreated = true;
+
+ // Create classes and their features
+ modelElementEClass = createEClass(MODEL_ELEMENT);
+ createEAttribute(modelElementEClass, MODEL_ELEMENT__DESCRIPTION);
+
+ namedElementEClass = createEClass(NAMED_ELEMENT);
+ createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME);
+
+ abstractAllocatableEClass = createEClass(ABSTRACT_ALLOCATABLE);
+ createEReference(abstractAllocatableEClass, ABSTRACT_ALLOCATABLE__CONTENTS);
+ createEReference(abstractAllocatableEClass, ABSTRACT_ALLOCATABLE__ALLOCATABLE_GROUP);
+ createEOperation(abstractAllocatableEClass, ABSTRACT_ALLOCATABLE___GET_CONTENTS_LIST);
+ createEOperation(abstractAllocatableEClass, ABSTRACT_ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE);
+
+ allocatableEClass = createEClass(ALLOCATABLE);
+ createEAttribute(allocatableEClass, ALLOCATABLE__ARBITRATION_POLICY);
+ createEReference(allocatableEClass, ALLOCATABLE__VISIBILITY);
+ createEOperation(allocatableEClass, ALLOCATABLE___COLLECT_LEAF_ALLOCATABLE);
+
+ allocatableSetEClass = createEClass(ALLOCATABLE_SET);
+ createEReference(allocatableSetEClass, ALLOCATABLE_SET__TARGET);
+ createEOperation(allocatableSetEClass, ALLOCATABLE_SET___COLLECT_LEAF_ALLOCATABLE);
+
+ projectEClass = createEClass(PROJECT);
+ createEAttribute(projectEClass, PROJECT__VERSION);
+ createEAttribute(projectEClass, PROJECT__DUMMY_NAME);
+ createEOperation(projectEClass, PROJECT___GET_NAME);
+
+ packagableElementEClass = createEClass(PACKAGABLE_ELEMENT);
+
+ packageEClass = createEClass(PACKAGE);
+ createEReference(packageEClass, PACKAGE__PACKAGABLEELEMENT);
+
+ stereotypeEClass = createEClass(STEREOTYPE);
+ createEAttribute(stereotypeEClass, STEREOTYPE__TARGET_MODEL_NAME);
+ createEReference(stereotypeEClass, STEREOTYPE__VARIABLES);
+ createEAttribute(stereotypeEClass, STEREOTYPE__BODY_TEXT);
+
+ tagEClass = createEClass(TAG);
+ createEAttribute(tagEClass, TAG__VALUES);
+
+ ruleObjectEClass = createEClass(RULE_OBJECT);
+ createEReference(ruleObjectEClass, RULE_OBJECT__TAGS);
+ createEOperation(ruleObjectEClass, RULE_OBJECT___GET_EXPRESSION_TYPE);
+
+ abstractContentEClass = createEClass(ABSTRACT_CONTENT);
+ createEReference(abstractContentEClass, ABSTRACT_CONTENT__CONTENT_GROUP);
+ createEReference(abstractContentEClass, ABSTRACT_CONTENT__ALLOCATABLE);
+ createEOperation(abstractContentEClass, ABSTRACT_CONTENT___GET_ALLOCATABLE_LIST);
+ createEOperation(abstractContentEClass, ABSTRACT_CONTENT___COLLECT_LEAF_CONTENTS);
+
+ abstractSceneEClass = createEClass(ABSTRACT_SCENE);
+
+ sceneEClass = createEClass(SCENE);
+ createEAttribute(sceneEClass, SCENE__GLOBAL);
+ createEReference(sceneEClass, SCENE__PROPERTIES);
+ createEOperation(sceneEClass, SCENE___GET_EXPRESSION_TYPE);
+
+ contentEClass = createEClass(CONTENT);
+ createEAttribute(contentEClass, CONTENT__LOSER_TYPE);
+ createEReference(contentEClass, CONTENT__STATES);
+ createEOperation(contentEClass, CONTENT___COLLECT_LEAF_CONTENTS);
+
+ contentSetEClass = createEClass(CONTENT_SET);
+ createEReference(contentSetEClass, CONTENT_SET__TARGET);
+ createEOperation(contentSetEClass, CONTENT_SET___COLLECT_LEAF_CONTENTS);
+
+ contentStateEClass = createEClass(CONTENT_STATE);
+ createEReference(contentStateEClass, CONTENT_STATE__VALUE);
+ createEReference(contentStateEClass, CONTENT_STATE__OWNER);
+
+ abstractPropertyEClass = createEClass(ABSTRACT_PROPERTY);
+ createEReference(abstractPropertyEClass, ABSTRACT_PROPERTY__OWNER);
+ createEOperation(abstractPropertyEClass, ABSTRACT_PROPERTY___GET_EXPRESSION_TYPE);
+
+ integerPropertyEClass = createEClass(INTEGER_PROPERTY);
+ createEReference(integerPropertyEClass, INTEGER_PROPERTY__VALUE);
+
+ abstractConstraintEClass = createEClass(ABSTRACT_CONSTRAINT);
+ createEReference(abstractConstraintEClass, ABSTRACT_CONSTRAINT__EXPRESSION);
+
+ constraintEClass = createEClass(CONSTRAINT);
+ createEAttribute(constraintEClass, CONSTRAINT__RUNTIME);
+
+ expressionEClass = createEClass(EXPRESSION);
+ createEAttribute(expressionEClass, EXPRESSION__TYPE);
+ createEAttribute(expressionEClass, EXPRESSION__EXPRESSION);
+ createEReference(expressionEClass, EXPRESSION__LET_STATEMENTS);
+ createEOperation(expressionEClass, EXPRESSION___GET_UNDERLYING_TYPE);
+ createEOperation(expressionEClass, EXPRESSION___GET_EXPRESSION_TEXT);
+
+ letStatementEClass = createEClass(LET_STATEMENT);
+ createEReference(letStatementEClass, LET_STATEMENT__VARIABLE);
+ createEReference(letStatementEClass, LET_STATEMENT__BODY);
+ createEOperation(letStatementEClass, LET_STATEMENT___TO_STRING);
+
+ complexExpressionEClass = createEClass(COMPLEX_EXPRESSION);
+ createEReference(complexExpressionEClass, COMPLEX_EXPRESSION__OTHER_EXPRESSION);
+ createEOperation(complexExpressionEClass, COMPLEX_EXPRESSION___GET_EXPRESSION_TEXT);
+ createEOperation(complexExpressionEClass, COMPLEX_EXPRESSION___GET_UNDERLYING_TYPE);
+ createEOperation(complexExpressionEClass, COMPLEX_EXPRESSION___GET_TYPE);
+
+ operatorEClass = createEClass(OPERATOR);
+ createEReference(operatorEClass, OPERATOR__OPERAND);
+ createEOperation(operatorEClass, OPERATOR___GET_SYMBOL);
+
+ isTypeOfEClass = createEClass(IS_TYPE_OF);
+ createEAttribute(isTypeOfEClass, IS_TYPE_OF__TAG_NAME);
+ createEOperation(isTypeOfEClass, IS_TYPE_OF___GET_EXPRESSION_TEXT);
+ createEOperation(isTypeOfEClass, IS_TYPE_OF___GET_SYMBOL);
+ createEOperation(isTypeOfEClass, IS_TYPE_OF___GET_UNDERLYING_TYPE);
+
+ objectReferenceEClass = createEClass(OBJECT_REFERENCE);
+ createEReference(objectReferenceEClass, OBJECT_REFERENCE__REF_OBJECT);
+ createEOperation(objectReferenceEClass, OBJECT_REFERENCE___GET_UNDERLYING_TYPE);
+ createEOperation(objectReferenceEClass, OBJECT_REFERENCE___GET_EXPRESSION_TEXT);
+
+ previousModifierEClass = createEClass(PREVIOUS_MODIFIER);
+ createEReference(previousModifierEClass, PREVIOUS_MODIFIER__OBJ_REFERENCE);
+ createEOperation(previousModifierEClass, PREVIOUS_MODIFIER___GET_SYMBOL);
+ createEOperation(previousModifierEClass, PREVIOUS_MODIFIER___GET_UNDERLYING_TYPE);
+ createEOperation(previousModifierEClass, PREVIOUS_MODIFIER___GET_EXPRESSION_TEXT);
+
+ greaterThanOperatorEClass = createEClass(GREATER_THAN_OPERATOR);
+ createEOperation(greaterThanOperatorEClass, GREATER_THAN_OPERATOR___GET_SYMBOL);
+
+ muchGreaterThanOperatorEClass = createEClass(MUCH_GREATER_THAN_OPERATOR);
+ createEOperation(muchGreaterThanOperatorEClass, MUCH_GREATER_THAN_OPERATOR___GET_SYMBOL);
+
+ lowerThanOperatorEClass = createEClass(LOWER_THAN_OPERATOR);
+ createEOperation(lowerThanOperatorEClass, LOWER_THAN_OPERATOR___GET_SYMBOL);
+
+ comparisonOperatorEClass = createEClass(COMPARISON_OPERATOR);
+ createEOperation(comparisonOperatorEClass, COMPARISON_OPERATOR___GET_UNDERLYING_TYPE);
+ createEOperation(comparisonOperatorEClass, COMPARISON_OPERATOR___GET_EXPRESSION_TEXT);
+
+ equalToOperatorEClass = createEClass(EQUAL_TO_OPERATOR);
+ createEOperation(equalToOperatorEClass, EQUAL_TO_OPERATOR___GET_SYMBOL);
+
+ comparisonAndEClass = createEClass(COMPARISON_AND);
+ createEOperation(comparisonAndEClass, COMPARISON_AND___GET_SYMBOL);
+ createEOperation(comparisonAndEClass, COMPARISON_AND___GET_EXPRESSION_TEXT);
+
+ logicalOperatorEClass = createEClass(LOGICAL_OPERATOR);
+ createEOperation(logicalOperatorEClass, LOGICAL_OPERATOR___GET_UNDERLYING_TYPE);
+ createEOperation(logicalOperatorEClass, LOGICAL_OPERATOR___GET_EXPRESSION_TEXT);
+
+ andOperatorEClass = createEClass(AND_OPERATOR);
+ createEOperation(andOperatorEClass, AND_OPERATOR___GET_SYMBOL);
+
+ orOperatorEClass = createEClass(OR_OPERATOR);
+ createEOperation(orOperatorEClass, OR_OPERATOR___GET_SYMBOL);
+
+ notOperatorEClass = createEClass(NOT_OPERATOR);
+ createEOperation(notOperatorEClass, NOT_OPERATOR___GET_SYMBOL);
+ createEOperation(notOperatorEClass, NOT_OPERATOR___GET_EXPRESSION_TEXT);
+
+ isEqualToOperatorEClass = createEClass(IS_EQUAL_TO_OPERATOR);
+ createEOperation(isEqualToOperatorEClass, IS_EQUAL_TO_OPERATOR___GET_SYMBOL);
+
+ isGreaterThanOperatorEClass = createEClass(IS_GREATER_THAN_OPERATOR);
+ createEOperation(isGreaterThanOperatorEClass, IS_GREATER_THAN_OPERATOR___GET_SYMBOL);
+
+ isLowerThanOperatorEClass = createEClass(IS_LOWER_THAN_OPERATOR);
+ createEOperation(isLowerThanOperatorEClass, IS_LOWER_THAN_OPERATOR___GET_SYMBOL);
+
+ isGreaterThanEqualOperatorEClass = createEClass(IS_GREATER_THAN_EQUAL_OPERATOR);
+ createEOperation(isGreaterThanEqualOperatorEClass, IS_GREATER_THAN_EQUAL_OPERATOR___GET_SYMBOL);
+
+ isLowerThanEqualOperatorEClass = createEClass(IS_LOWER_THAN_EQUAL_OPERATOR);
+ createEOperation(isLowerThanEqualOperatorEClass, IS_LOWER_THAN_EQUAL_OPERATOR___GET_SYMBOL);
+
+ arithmeticOperatorEClass = createEClass(ARITHMETIC_OPERATOR);
+ createEOperation(arithmeticOperatorEClass, ARITHMETIC_OPERATOR___GET_UNDERLYING_TYPE);
+ createEOperation(arithmeticOperatorEClass, ARITHMETIC_OPERATOR___GET_EXPRESSION_TEXT);
+
+ plusOperatorEClass = createEClass(PLUS_OPERATOR);
+ createEOperation(plusOperatorEClass, PLUS_OPERATOR___GET_SYMBOL);
+
+ impliesOperatorEClass = createEClass(IMPLIES_OPERATOR);
+ createEOperation(impliesOperatorEClass, IMPLIES_OPERATOR___GET_SYMBOL);
+
+ contentOperatorEClass = createEClass(CONTENT_OPERATOR);
+ createEOperation(contentOperatorEClass, CONTENT_OPERATOR___GET_EXPRESSION_TEXT);
+
+ isActiveEClass = createEClass(IS_ACTIVE);
+ createEOperation(isActiveEClass, IS_ACTIVE___GET_SYMBOL);
+ createEOperation(isActiveEClass, IS_ACTIVE___GET_UNDERLYING_TYPE);
+
+ getAllocatablesEClass = createEClass(GET_ALLOCATABLES);
+ createEOperation(getAllocatablesEClass, GET_ALLOCATABLES___GET_SYMBOL);
+ createEOperation(getAllocatablesEClass, GET_ALLOCATABLES___GET_UNDERLYING_TYPE);
+
+ hasBeenDisplayedEClass = createEClass(HAS_BEEN_DISPLAYED);
+ createEOperation(hasBeenDisplayedEClass, HAS_BEEN_DISPLAYED___GET_SYMBOL);
+ createEOperation(hasBeenDisplayedEClass, HAS_BEEN_DISPLAYED___GET_UNDERLYING_TYPE);
+
+ activeStateEClass = createEClass(ACTIVE_STATE);
+ createEOperation(activeStateEClass, ACTIVE_STATE___GET_SYMBOL);
+ createEOperation(activeStateEClass, ACTIVE_STATE___GET_UNDERLYING_TYPE);
+
+ objectCompareEClass = createEClass(OBJECT_COMPARE);
+ createEOperation(objectCompareEClass, OBJECT_COMPARE___GET_SYMBOL);
+ createEOperation(objectCompareEClass, OBJECT_COMPARE___GET_UNDERLYING_TYPE);
+ createEOperation(objectCompareEClass, OBJECT_COMPARE___GET_EXPRESSION_TEXT);
+
+ thatOfOperatorEClass = createEClass(THAT_OF_OPERATOR);
+ createEOperation(thatOfOperatorEClass, THAT_OF_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(thatOfOperatorEClass, THAT_OF_OPERATOR___GET_SYMBOL);
+ createEOperation(thatOfOperatorEClass, THAT_OF_OPERATOR___GET_UNDERLYING_TYPE);
+
+ valueExpressionEClass = createEClass(VALUE_EXPRESSION);
+ createEOperation(valueExpressionEClass, VALUE_EXPRESSION___GET_UNDERLYING_TYPE);
+ createEOperation(valueExpressionEClass, VALUE_EXPRESSION___GET_EXPRESSION_VALUE);
+ createEOperation(valueExpressionEClass, VALUE_EXPRESSION___GET_TYPE);
+
+ maxValueEClass = createEClass(MAX_VALUE);
+ createEOperation(maxValueEClass, MAX_VALUE___GET_EXPRESSION_TEXT);
+ createEOperation(maxValueEClass, MAX_VALUE___GET_EXPRESSION_VALUE);
+
+ minValueEClass = createEClass(MIN_VALUE);
+ createEOperation(minValueEClass, MIN_VALUE___GET_EXPRESSION_TEXT);
+ createEOperation(minValueEClass, MIN_VALUE___GET_EXPRESSION_VALUE);
+
+ noneValueEClass = createEClass(NONE_VALUE);
+ createEOperation(noneValueEClass, NONE_VALUE___GET_EXPRESSION_TEXT);
+ createEOperation(noneValueEClass, NONE_VALUE___GET_EXPRESSION_VALUE);
+
+ standardValueEClass = createEClass(STANDARD_VALUE);
+ createEOperation(standardValueEClass, STANDARD_VALUE___GET_EXPRESSION_TEXT);
+ createEOperation(standardValueEClass, STANDARD_VALUE___GET_EXPRESSION_VALUE);
+
+ integerValueEClass = createEClass(INTEGER_VALUE);
+ createEAttribute(integerValueEClass, INTEGER_VALUE__VALUE);
+ createEOperation(integerValueEClass, INTEGER_VALUE___GET_EXPRESSION_TEXT);
+ createEOperation(integerValueEClass, INTEGER_VALUE___GET_EXPRESSION_VALUE);
+
+ enumExpressionEClass = createEClass(ENUM_EXPRESSION);
+ createEOperation(enumExpressionEClass, ENUM_EXPRESSION___GET_UNDERLYING_TYPE);
+ createEOperation(enumExpressionEClass, ENUM_EXPRESSION___GET_EXPRESSION_VALUE);
+ createEOperation(enumExpressionEClass, ENUM_EXPRESSION___GET_TYPE);
+
+ loserTypeExpressionEClass = createEClass(LOSER_TYPE_EXPRESSION);
+ createEAttribute(loserTypeExpressionEClass, LOSER_TYPE_EXPRESSION__VALUE);
+ createEOperation(loserTypeExpressionEClass, LOSER_TYPE_EXPRESSION___GET_EXPRESSION_TEXT);
+ createEOperation(loserTypeExpressionEClass, LOSER_TYPE_EXPRESSION___GET_EXPRESSION_VALUE);
+
+ arbitrationPolicyExpressionEClass = createEClass(ARBITRATION_POLICY_EXPRESSION);
+ createEAttribute(arbitrationPolicyExpressionEClass, ARBITRATION_POLICY_EXPRESSION__VALUE);
+ createEOperation(arbitrationPolicyExpressionEClass, ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_TEXT);
+ createEOperation(arbitrationPolicyExpressionEClass, ARBITRATION_POLICY_EXPRESSION___GET_EXPRESSION_VALUE);
+
+ setExpressionEClass = createEClass(SET_EXPRESSION);
+
+ setOperatorEClass = createEClass(SET_OPERATOR);
+
+ sizeOperatorEClass = createEClass(SIZE_OPERATOR);
+ createEOperation(sizeOperatorEClass, SIZE_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(sizeOperatorEClass, SIZE_OPERATOR___GET_SYMBOL);
+ createEOperation(sizeOperatorEClass, SIZE_OPERATOR___GET_UNDERLYING_TYPE);
+
+ existsOperatorEClass = createEClass(EXISTS_OPERATOR);
+ createEOperation(existsOperatorEClass, EXISTS_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(existsOperatorEClass, EXISTS_OPERATOR___GET_SYMBOL);
+ createEOperation(existsOperatorEClass, EXISTS_OPERATOR___GET_UNDERLYING_TYPE);
+
+ forAllOperatorEClass = createEClass(FOR_ALL_OPERATOR);
+ createEOperation(forAllOperatorEClass, FOR_ALL_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(forAllOperatorEClass, FOR_ALL_OPERATOR___GET_SYMBOL);
+ createEOperation(forAllOperatorEClass, FOR_ALL_OPERATOR___GET_UNDERLYING_TYPE);
+
+ maxOperatorEClass = createEClass(MAX_OPERATOR);
+ createEOperation(maxOperatorEClass, MAX_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(maxOperatorEClass, MAX_OPERATOR___GET_SYMBOL);
+ createEOperation(maxOperatorEClass, MAX_OPERATOR___GET_UNDERLYING_TYPE);
+
+ minOperatorEClass = createEClass(MIN_OPERATOR);
+ createEOperation(minOperatorEClass, MIN_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(minOperatorEClass, MIN_OPERATOR___GET_SYMBOL);
+ createEOperation(minOperatorEClass, MIN_OPERATOR___GET_UNDERLYING_TYPE);
+
+ selectOperatorEClass = createEClass(SELECT_OPERATOR);
+ createEOperation(selectOperatorEClass, SELECT_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(selectOperatorEClass, SELECT_OPERATOR___GET_SYMBOL);
+ createEOperation(selectOperatorEClass, SELECT_OPERATOR___GET_UNDERLYING_TYPE);
+
+ setOfOperatorEClass = createEClass(SET_OF_OPERATOR);
+ createEOperation(setOfOperatorEClass, SET_OF_OPERATOR___GET_EXPRESSION_TEXT);
+ createEOperation(setOfOperatorEClass, SET_OF_OPERATOR___GET_SYMBOL);
+ createEOperation(setOfOperatorEClass, SET_OF_OPERATOR___GET_UNDERLYING_TYPE);
+
+ lambdaExpressionEClass = createEClass(LAMBDA_EXPRESSION);
+ createEReference(lambdaExpressionEClass, LAMBDA_EXPRESSION__CONTEXT);
+ createEReference(lambdaExpressionEClass, LAMBDA_EXPRESSION__X);
+ createEReference(lambdaExpressionEClass, LAMBDA_EXPRESSION__BODY_TEXT);
+ createEOperation(lambdaExpressionEClass, LAMBDA_EXPRESSION___GET_EXPRESSION_TEXT);
+ createEOperation(lambdaExpressionEClass, LAMBDA_EXPRESSION___GET_UNDERLYING_TYPE);
+
+ variableEClass = createEClass(VARIABLE);
+ createEOperation(variableEClass, VARIABLE___GET_EXPRESSION_TYPE);
+
+ lambdaContextEClass = createEClass(LAMBDA_CONTEXT);
+ createEReference(lambdaContextEClass, LAMBDA_CONTEXT__LAMBDA);
+ createEOperation(lambdaContextEClass, LAMBDA_CONTEXT___GET_CONTEXT_TYPE);
+
+ ifStatementEClass = createEClass(IF_STATEMENT);
+ createEReference(ifStatementEClass, IF_STATEMENT__CONDITION);
+ createEReference(ifStatementEClass, IF_STATEMENT__THEN_EXPRESSION);
+ createEReference(ifStatementEClass, IF_STATEMENT__ELSE_EXPRESSION);
+ createEOperation(ifStatementEClass, IF_STATEMENT___GET_UNDERLYING_TYPE);
+ createEOperation(ifStatementEClass, IF_STATEMENT___GET_EXPRESSION_TEXT);
+
+ sceneOperatorEClass = createEClass(SCENE_OPERATOR);
+ createEOperation(sceneOperatorEClass, SCENE_OPERATOR___GET_EXPRESSION_TEXT);
+
+ isOnEClass = createEClass(IS_ON);
+ createEOperation(isOnEClass, IS_ON___GET_SYMBOL);
+ createEOperation(isOnEClass, IS_ON___GET_UNDERLYING_TYPE);
+
+ allocatableOperatorEClass = createEClass(ALLOCATABLE_OPERATOR);
+ createEOperation(allocatableOperatorEClass, ALLOCATABLE_OPERATOR___GET_EXPRESSION_TEXT);
+
+ allocatedContentEClass = createEClass(ALLOCATED_CONTENT);
+ createEOperation(allocatedContentEClass, ALLOCATED_CONTENT___GET_SYMBOL);
+ createEOperation(allocatedContentEClass, ALLOCATED_CONTENT___GET_UNDERLYING_TYPE);
+
+ contentValueEClass = createEClass(CONTENT_VALUE);
+ createEOperation(contentValueEClass, CONTENT_VALUE___GET_SYMBOL);
+ createEOperation(contentValueEClass, CONTENT_VALUE___GET_UNDERLYING_TYPE);
+
+ getContentsListEClass = createEClass(GET_CONTENTS_LIST);
+ createEOperation(getContentsListEClass, GET_CONTENTS_LIST___GET_SYMBOL);
+ createEOperation(getContentsListEClass, GET_CONTENTS_LIST___GET_UNDERLYING_TYPE);
+
+ activeContentsEClass = createEClass(ACTIVE_CONTENTS);
+ createEOperation(activeContentsEClass, ACTIVE_CONTENTS___GET_SYMBOL);
+ createEOperation(activeContentsEClass, ACTIVE_CONTENTS___GET_UNDERLYING_TYPE);
+
+ propertyOperatorEClass = createEClass(PROPERTY_OPERATOR);
+ createEOperation(propertyOperatorEClass, PROPERTY_OPERATOR___GET_UNDERLYING_TYPE);
+ createEOperation(propertyOperatorEClass, PROPERTY_OPERATOR___GET_EXPRESSION_TEXT);
+
+ getPropertyEClass = createEClass(GET_PROPERTY);
+ createEOperation(getPropertyEClass, GET_PROPERTY___GET_SYMBOL);
+ createEOperation(getPropertyEClass, GET_PROPERTY___GET_UNDERLYING_TYPE);
+
+ stateValueEClass = createEClass(STATE_VALUE);
+ createEOperation(stateValueEClass, STATE_VALUE___GET_SYMBOL);
+ createEOperation(stateValueEClass, STATE_VALUE___GET_UNDERLYING_TYPE);
+
+ hasComeLaterThanEClass = createEClass(HAS_COME_LATER_THAN);
+ createEOperation(hasComeLaterThanEClass, HAS_COME_LATER_THAN___GET_SYMBOL);
+ createEOperation(hasComeLaterThanEClass, HAS_COME_LATER_THAN___GET_UNDERLYING_TYPE);
+ createEOperation(hasComeLaterThanEClass, HAS_COME_LATER_THAN___GET_EXPRESSION_TEXT);
+
+ hasComeEarlierThanEClass = createEClass(HAS_COME_EARLIER_THAN);
+ createEOperation(hasComeEarlierThanEClass, HAS_COME_EARLIER_THAN___GET_SYMBOL);
+ createEOperation(hasComeEarlierThanEClass, HAS_COME_EARLIER_THAN___GET_UNDERLYING_TYPE);
+ createEOperation(hasComeEarlierThanEClass, HAS_COME_EARLIER_THAN___GET_EXPRESSION_TEXT);
+
+ sugarExpressionEClass = createEClass(SUGAR_EXPRESSION);
+ createEOperation(sugarExpressionEClass, SUGAR_EXPRESSION___CAN_EXPAND);
+ createEOperation(sugarExpressionEClass, SUGAR_EXPRESSION___GET_EXPANDED);
+
+ sugarExpressionBaseEClass = createEClass(SUGAR_EXPRESSION_BASE);
+ createEOperation(sugarExpressionBaseEClass, SUGAR_EXPRESSION_BASE___CAN_EXPAND);
+
+ objectCompareNotEClass = createEClass(OBJECT_COMPARE_NOT);
+ createEOperation(objectCompareNotEClass, OBJECT_COMPARE_NOT___GET_SYMBOL);
+ createEOperation(objectCompareNotEClass, OBJECT_COMPARE_NOT___GET_UNDERLYING_TYPE);
+ createEOperation(objectCompareNotEClass, OBJECT_COMPARE_NOT___GET_EXPRESSION_TEXT);
+
+ isAllocatedToEClass = createEClass(IS_ALLOCATED_TO);
+ createEOperation(isAllocatedToEClass, IS_ALLOCATED_TO___GET_SYMBOL);
+ createEOperation(isAllocatedToEClass, IS_ALLOCATED_TO___GET_UNDERLYING_TYPE);
+ createEOperation(isAllocatedToEClass, IS_ALLOCATED_TO___GET_EXPRESSION_TEXT);
+
+ isChangedEClass = createEClass(IS_CHANGED);
+ createEOperation(isChangedEClass, IS_CHANGED___GET_SYMBOL);
+ createEOperation(isChangedEClass, IS_CHANGED___GET_UNDERLYING_TYPE);
+
+ isTranslatedToEClass = createEClass(IS_TRANSLATED_TO);
+ createEOperation(isTranslatedToEClass, IS_TRANSLATED_TO___GET_SYMBOL);
+ createEOperation(isTranslatedToEClass, IS_TRANSLATED_TO___GET_UNDERLYING_TYPE);
+ createEOperation(isTranslatedToEClass, IS_TRANSLATED_TO___GET_EXPRESSION_TEXT);
+
+ getStateEClass = createEClass(GET_STATE);
+ createEOperation(getStateEClass, GET_STATE___GET_SYMBOL);
+
+ contentStateOperatorEClass = createEClass(CONTENT_STATE_OPERATOR);
+ createEOperation(contentStateOperatorEClass, CONTENT_STATE_OPERATOR___GET_EXPRESSION_TEXT);
+
+ nullExpressionEClass = createEClass(NULL_EXPRESSION);
+ createEOperation(nullExpressionEClass, NULL_EXPRESSION___GET_UNDERLYING_TYPE);
+ createEOperation(nullExpressionEClass, NULL_EXPRESSION___GET_EXPRESSION_TEXT);
+
+ // Create enums
+ arbitrationPolicyEEnum = createEEnum(ARBITRATION_POLICY);
+ expressionTypeEEnum = createEEnum(EXPRESSION_TYPE);
+ loserTypeEEnum = createEEnum(LOSER_TYPE);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized)
+ return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ namedElementEClass.getESuperTypes().add(this.getModelElement());
+ abstractAllocatableEClass.getESuperTypes().add(this.getRuleObject());
+ allocatableEClass.getESuperTypes().add(this.getAbstractAllocatable());
+ allocatableSetEClass.getESuperTypes().add(this.getAbstractAllocatable());
+ projectEClass.getESuperTypes().add(this.getPackage());
+ packagableElementEClass.getESuperTypes().add(this.getNamedElement());
+ packageEClass.getESuperTypes().add(this.getPackagableElement());
+ stereotypeEClass.getESuperTypes().add(this.getPackagableElement());
+ tagEClass.getESuperTypes().add(this.getNamedElement());
+ ruleObjectEClass.getESuperTypes().add(this.getPackagableElement());
+ abstractContentEClass.getESuperTypes().add(this.getRuleObject());
+ abstractSceneEClass.getESuperTypes().add(this.getRuleObject());
+ sceneEClass.getESuperTypes().add(this.getAbstractScene());
+ contentEClass.getESuperTypes().add(this.getAbstractContent());
+ contentSetEClass.getESuperTypes().add(this.getAbstractContent());
+ contentStateEClass.getESuperTypes().add(this.getRuleObject());
+ abstractPropertyEClass.getESuperTypes().add(this.getRuleObject());
+ integerPropertyEClass.getESuperTypes().add(this.getAbstractProperty());
+ abstractConstraintEClass.getESuperTypes().add(this.getPackagableElement());
+ constraintEClass.getESuperTypes().add(this.getAbstractConstraint());
+ letStatementEClass.getESuperTypes().add(this.getModelElement());
+ complexExpressionEClass.getESuperTypes().add(this.getExpression());
+ complexExpressionEClass.getESuperTypes().add(this.getSugarExpressionBase());
+ operatorEClass.getESuperTypes().add(this.getExpression());
+ isTypeOfEClass.getESuperTypes().add(this.getOperator());
+ objectReferenceEClass.getESuperTypes().add(this.getExpression());
+ previousModifierEClass.getESuperTypes().add(this.getExpression());
+ greaterThanOperatorEClass.getESuperTypes().add(this.getComparisonOperator());
+ muchGreaterThanOperatorEClass.getESuperTypes().add(this.getComparisonOperator());
+ lowerThanOperatorEClass.getESuperTypes().add(this.getComparisonOperator());
+ comparisonOperatorEClass.getESuperTypes().add(this.getOperator());
+ equalToOperatorEClass.getESuperTypes().add(this.getComparisonOperator());
+ comparisonAndEClass.getESuperTypes().add(this.getComparisonOperator());
+ logicalOperatorEClass.getESuperTypes().add(this.getOperator());
+ andOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ orOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ notOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ isEqualToOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ isGreaterThanOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ isLowerThanOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ isGreaterThanEqualOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ isLowerThanEqualOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ arithmeticOperatorEClass.getESuperTypes().add(this.getOperator());
+ plusOperatorEClass.getESuperTypes().add(this.getArithmeticOperator());
+ impliesOperatorEClass.getESuperTypes().add(this.getLogicalOperator());
+ contentOperatorEClass.getESuperTypes().add(this.getOperator());
+ isActiveEClass.getESuperTypes().add(this.getContentOperator());
+ getAllocatablesEClass.getESuperTypes().add(this.getContentOperator());
+ hasBeenDisplayedEClass.getESuperTypes().add(this.getContentOperator());
+ activeStateEClass.getESuperTypes().add(this.getContentOperator());
+ objectCompareEClass.getESuperTypes().add(this.getOperator());
+ thatOfOperatorEClass.getESuperTypes().add(this.getOperator());
+ valueExpressionEClass.getESuperTypes().add(this.getExpression());
+ maxValueEClass.getESuperTypes().add(this.getValueExpression());
+ minValueEClass.getESuperTypes().add(this.getValueExpression());
+ noneValueEClass.getESuperTypes().add(this.getValueExpression());
+ standardValueEClass.getESuperTypes().add(this.getValueExpression());
+ integerValueEClass.getESuperTypes().add(this.getValueExpression());
+ enumExpressionEClass.getESuperTypes().add(this.getExpression());
+ loserTypeExpressionEClass.getESuperTypes().add(this.getEnumExpression());
+ arbitrationPolicyExpressionEClass.getESuperTypes().add(this.getEnumExpression());
+ setExpressionEClass.getESuperTypes().add(this.getExpression());
+ setOperatorEClass.getESuperTypes().add(this.getOperator());
+ sizeOperatorEClass.getESuperTypes().add(this.getSetOperator());
+ existsOperatorEClass.getESuperTypes().add(this.getLambdaContext());
+ forAllOperatorEClass.getESuperTypes().add(this.getLambdaContext());
+ maxOperatorEClass.getESuperTypes().add(this.getLambdaContext());
+ minOperatorEClass.getESuperTypes().add(this.getLambdaContext());
+ selectOperatorEClass.getESuperTypes().add(this.getLambdaContext());
+ setOfOperatorEClass.getESuperTypes().add(this.getOperator());
+ lambdaExpressionEClass.getESuperTypes().add(this.getExpression());
+ variableEClass.getESuperTypes().add(this.getRuleObject());
+ lambdaContextEClass.getESuperTypes().add(this.getSetOperator());
+ ifStatementEClass.getESuperTypes().add(this.getExpression());
+ sceneOperatorEClass.getESuperTypes().add(this.getOperator());
+ isOnEClass.getESuperTypes().add(this.getSceneOperator());
+ allocatableOperatorEClass.getESuperTypes().add(this.getOperator());
+ allocatedContentEClass.getESuperTypes().add(this.getAllocatableOperator());
+ contentValueEClass.getESuperTypes().add(this.getAllocatableOperator());
+ getContentsListEClass.getESuperTypes().add(this.getAllocatableOperator());
+ activeContentsEClass.getESuperTypes().add(this.getAllocatableOperator());
+ propertyOperatorEClass.getESuperTypes().add(this.getOperator());
+ getPropertyEClass.getESuperTypes().add(this.getPropertyOperator());
+ stateValueEClass.getESuperTypes().add(this.getContentOperator());
+ hasComeLaterThanEClass.getESuperTypes().add(this.getContentOperator());
+ hasComeEarlierThanEClass.getESuperTypes().add(this.getContentOperator());
+ sugarExpressionBaseEClass.getESuperTypes().add(this.getSugarExpression());
+ objectCompareNotEClass.getESuperTypes().add(this.getOperator());
+ objectCompareNotEClass.getESuperTypes().add(this.getSugarExpressionBase());
+ isAllocatedToEClass.getESuperTypes().add(this.getContentOperator());
+ isAllocatedToEClass.getESuperTypes().add(this.getSugarExpressionBase());
+ isChangedEClass.getESuperTypes().add(this.getAllocatableOperator());
+ isChangedEClass.getESuperTypes().add(this.getSugarExpressionBase());
+ isTranslatedToEClass.getESuperTypes().add(this.getAllocatableOperator());
+ isTranslatedToEClass.getESuperTypes().add(this.getSugarExpressionBase());
+ contentStateOperatorEClass.getESuperTypes().add(this.getOperator());
+ nullExpressionEClass.getESuperTypes().add(this.getExpression());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(modelElementEClass, ModelElement.class, "ModelElement", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getModelElement_Description(), ecorePackage.getEString(), "description", null, 0, 1,
+ ModelElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+ !IS_DERIVED, IS_ORDERED);
+
+ initEClass(namedElementEClass, NamedElement.class, "NamedElement", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedElement.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(abstractAllocatableEClass, AbstractAllocatable.class, "AbstractAllocatable", IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAbstractAllocatable_Contents(), this.getAbstractContent(),
+ this.getAbstractContent_Allocatable(), "contents", null, 0, -1, AbstractAllocatable.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAbstractAllocatable_AllocatableGroup(), this.getAllocatableSet(),
+ this.getAllocatableSet_Target(), "allocatableGroup", null, 0, -1, AbstractAllocatable.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getAbstractAllocatable__GetContentsList(), this.getContent(), "getContentsList", 0, -1,
+ IS_UNIQUE, !IS_ORDERED);
+
+ initEOperation(getAbstractAllocatable__CollectLeafAllocatable(), this.getAllocatable(),
+ "collectLeafAllocatable", 0, -1, IS_UNIQUE, !IS_ORDERED);
+
+ initEClass(allocatableEClass, Allocatable.class, "Allocatable", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getAllocatable_ArbitrationPolicy(), this.getArbitrationPolicy(), "arbitrationPolicy", null, 0, 1,
+ Allocatable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+ !IS_DERIVED, IS_ORDERED);
+ initEReference(getAllocatable_Visibility(), this.getExpression(), null, "visibility", null, 0, 1,
+ Allocatable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getAllocatable__CollectLeafAllocatable(), this.getAllocatable(), "collectLeafAllocatable", 0, -1,
+ IS_UNIQUE, !IS_ORDERED);
+
+ initEClass(allocatableSetEClass, AllocatableSet.class, "AllocatableSet", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAllocatableSet_Target(), this.getAbstractAllocatable(),
+ this.getAbstractAllocatable_AllocatableGroup(), "target", null, 0, -1, AllocatableSet.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getAllocatableSet__CollectLeafAllocatable(), this.getAllocatable(), "collectLeafAllocatable", 0,
+ -1, IS_UNIQUE, !IS_ORDERED);
+
+ initEClass(projectEClass, Project.class, "Project", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getProject_Version(), ecorePackage.getEString(), "version", null, 0, 1, Project.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getProject_DummyName(), ecorePackage.getEString(), "dummyName", null, 0, 1, Project.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getProject__GetName(), ecorePackage.getEString(), "getName", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(packagableElementEClass, PackagableElement.class, "PackagableElement", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(packageEClass, rba.core.Package.class, "Package", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getPackage_Packagableelement(), this.getPackagableElement(), null, "packagableelement", null, 0,
+ -1, rba.core.Package.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+ !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stereotypeEClass, Stereotype.class, "Stereotype", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStereotype_TargetModelName(), ecorePackage.getEString(), "targetModelName", null, 1, 1,
+ Stereotype.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+ !IS_DERIVED, IS_ORDERED);
+ initEReference(getStereotype_Variables(), this.getVariable(), null, "variables", null, 0, -1, Stereotype.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotype_BodyText(), ecorePackage.getEString(), "bodyText", null, 1, 1, Stereotype.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(tagEClass, Tag.class, "Tag", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTag_Values(), ecorePackage.getEString(), "values", null, 0, -1, Tag.class, !IS_TRANSIENT,
+ !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(ruleObjectEClass, RuleObject.class, "RuleObject", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getRuleObject_Tags(), this.getTag(), null, "tags", null, 0, -1, RuleObject.class, !IS_TRANSIENT,
+ !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+
+ initEOperation(getRuleObject__GetExpressionType(), this.getExpressionType(), "getExpressionType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(abstractContentEClass, AbstractContent.class, "AbstractContent", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAbstractContent_ContentGroup(), this.getContentSet(), this.getContentSet_Target(),
+ "contentGroup", null, 0, -1, AbstractContent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
+ !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAbstractContent_Allocatable(), this.getAbstractAllocatable(),
+ this.getAbstractAllocatable_Contents(), "allocatable", null, 0, -1, AbstractContent.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getAbstractContent__GetAllocatableList(), this.getAllocatable(), "getAllocatableList", 0, -1,
+ IS_UNIQUE, !IS_ORDERED);
+
+ initEOperation(getAbstractContent__CollectLeafContents(), this.getContent(), "collectLeafContents", 0, -1,
+ IS_UNIQUE, !IS_ORDERED);
+
+ initEClass(abstractSceneEClass, AbstractScene.class, "AbstractScene", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(sceneEClass, Scene.class, "Scene", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getScene_Global(), ecorePackage.getEBoolean(), "global", "false", 1, 1, Scene.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getScene_Properties(), this.getAbstractProperty(), this.getAbstractProperty_Owner(),
+ "properties", null, 0, -1, Scene.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+ !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getScene__GetExpressionType(), this.getExpressionType(), "getExpressionType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(contentEClass, Content.class, "Content", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getContent_LoserType(), this.getLoserType(), "loserType", "NEVER_GIVEUP", 0, 1, Content.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getContent_States(), this.getContentState(), this.getContentState_Owner(), "states", null, 0, -1,
+ Content.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getContent__CollectLeafContents(), this.getContent(), "collectLeafContents", 0, -1, IS_UNIQUE,
+ !IS_ORDERED);
+
+ initEClass(contentSetEClass, ContentSet.class, "ContentSet", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getContentSet_Target(), this.getAbstractContent(), this.getAbstractContent_ContentGroup(),
+ "target", null, 0, -1, ContentSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
+ IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getContentSet__CollectLeafContents(), this.getContent(), "collectLeafContents", 0, -1, IS_UNIQUE,
+ !IS_ORDERED);
+
+ initEClass(contentStateEClass, ContentState.class, "ContentState", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getContentState_Value(), this.getExpression(), null, "value", null, 1, 1, ContentState.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getContentState_Owner(), this.getContent(), this.getContent_States(), "owner", null, 0, 1,
+ ContentState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(abstractPropertyEClass, AbstractProperty.class, "AbstractProperty", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAbstractProperty_Owner(), this.getScene(), this.getScene_Properties(), "owner", null, 0, 1,
+ AbstractProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getAbstractProperty__GetExpressionType(), this.getExpressionType(), "getExpressionType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(integerPropertyEClass, IntegerProperty.class, "IntegerProperty", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getIntegerProperty_Value(), this.getExpression(), null, "value", null, 1, 1,
+ IntegerProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(abstractConstraintEClass, AbstractConstraint.class, "AbstractConstraint", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAbstractConstraint_Expression(), this.getExpression(), null, "expression", null, 1, 1,
+ AbstractConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(constraintEClass, Constraint.class, "Constraint", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getConstraint_Runtime(), ecorePackage.getEBoolean(), "runtime", "true", 1, 1, Constraint.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(expressionEClass, Expression.class, "Expression", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getExpression_Type(), this.getExpressionType(), "type", null, 0, 1, Expression.class,
+ !IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEAttribute(getExpression_Expression(), ecorePackage.getEString(), "expression", null, 0, 1,
+ Expression.class, !IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+ IS_DERIVED, IS_ORDERED);
+ initEReference(getExpression_LetStatements(), this.getLetStatement(), null, "letStatements", null, 0, -1,
+ Expression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getExpression__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getExpression__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(letStatementEClass, LetStatement.class, "LetStatement", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getLetStatement_Variable(), this.getVariable(), null, "variable", null, 1, 1, LetStatement.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getLetStatement_Body(), this.getExpression(), null, "body", null, 1, 1, LetStatement.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getLetStatement__ToString(), ecorePackage.getEString(), "toString", 1, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(complexExpressionEClass, ComplexExpression.class, "ComplexExpression", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getComplexExpression_OtherExpression(), this.getExpression(), null, "otherExpression", null, 1,
+ 1, ComplexExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+ !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getComplexExpression__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getComplexExpression__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getComplexExpression__GetType(), this.getExpressionType(), "getType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(operatorEClass, Operator.class, "Operator", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getOperator_Operand(), this.getExpression(), null, "operand", null, 1, -1, Operator.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isTypeOfEClass, IsTypeOf.class, "IsTypeOf", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getIsTypeOf_TagName(), ecorePackage.getEString(), "tagName", null, 1, 1, IsTypeOf.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getIsTypeOf__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsTypeOf__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsTypeOf__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(objectReferenceEClass, ObjectReference.class, "ObjectReference", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getObjectReference_RefObject(), this.getRuleObject(), null, "refObject", null, 0, 1,
+ ObjectReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getObjectReference__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getObjectReference__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(previousModifierEClass, PreviousModifier.class, "PreviousModifier", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getPreviousModifier_ObjReference(), this.getObjectReference(), null, "objReference", null, 0, 1,
+ PreviousModifier.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getPreviousModifier__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getPreviousModifier__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getPreviousModifier__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(greaterThanOperatorEClass, GreaterThanOperator.class, "GreaterThanOperator", !IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getGreaterThanOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(muchGreaterThanOperatorEClass, MuchGreaterThanOperator.class, "MuchGreaterThanOperator",
+ !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getMuchGreaterThanOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(lowerThanOperatorEClass, LowerThanOperator.class, "LowerThanOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getLowerThanOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(comparisonOperatorEClass, ComparisonOperator.class, "ComparisonOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getComparisonOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getComparisonOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(equalToOperatorEClass, EqualToOperator.class, "EqualToOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getEqualToOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(comparisonAndEClass, ComparisonAnd.class, "ComparisonAnd", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getComparisonAnd__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getComparisonAnd__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(logicalOperatorEClass, LogicalOperator.class, "LogicalOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getLogicalOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getLogicalOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(andOperatorEClass, AndOperator.class, "AndOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getAndOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(orOperatorEClass, OrOperator.class, "OrOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getOrOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(notOperatorEClass, NotOperator.class, "NotOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getNotOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getNotOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isEqualToOperatorEClass, IsEqualToOperator.class, "IsEqualToOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsEqualToOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(isGreaterThanOperatorEClass, IsGreaterThanOperator.class, "IsGreaterThanOperator", !IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsGreaterThanOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(isLowerThanOperatorEClass, IsLowerThanOperator.class, "IsLowerThanOperator", !IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsLowerThanOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(isGreaterThanEqualOperatorEClass, IsGreaterThanEqualOperator.class, "IsGreaterThanEqualOperator",
+ !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsGreaterThanEqualOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isLowerThanEqualOperatorEClass, IsLowerThanEqualOperator.class, "IsLowerThanEqualOperator",
+ !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsLowerThanEqualOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(arithmeticOperatorEClass, ArithmeticOperator.class, "ArithmeticOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getArithmeticOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getArithmeticOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(plusOperatorEClass, PlusOperator.class, "PlusOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getPlusOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(impliesOperatorEClass, ImpliesOperator.class, "ImpliesOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getImpliesOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(contentOperatorEClass, ContentOperator.class, "ContentOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getContentOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isActiveEClass, IsActive.class, "IsActive", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsActive__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsActive__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(getAllocatablesEClass, GetAllocatables.class, "GetAllocatables", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getGetAllocatables__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getGetAllocatables__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(hasBeenDisplayedEClass, HasBeenDisplayed.class, "HasBeenDisplayed", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getHasBeenDisplayed__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getHasBeenDisplayed__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(activeStateEClass, ActiveState.class, "ActiveState", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getActiveState__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getActiveState__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(objectCompareEClass, ObjectCompare.class, "ObjectCompare", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getObjectCompare__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getObjectCompare__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getObjectCompare__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(thatOfOperatorEClass, ThatOfOperator.class, "ThatOfOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getThatOfOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getThatOfOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getThatOfOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(valueExpressionEClass, ValueExpression.class, "ValueExpression", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getValueExpression__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getValueExpression__GetExpressionValue(), ecorePackage.getEInt(), "getExpressionValue", 1, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getValueExpression__GetType(), this.getExpressionType(), "getType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(maxValueEClass, MaxValue.class, "MaxValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getMaxValue__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getMaxValue__GetExpressionValue(), ecorePackage.getEInt(), "getExpressionValue", 1, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(minValueEClass, MinValue.class, "MinValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getMinValue__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getMinValue__GetExpressionValue(), ecorePackage.getEInt(), "getExpressionValue", 1, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(noneValueEClass, NoneValue.class, "NoneValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getNoneValue__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getNoneValue__GetExpressionValue(), ecorePackage.getEInt(), "getExpressionValue", 1, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(standardValueEClass, StandardValue.class, "StandardValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getStandardValue__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getStandardValue__GetExpressionValue(), ecorePackage.getEInt(), "getExpressionValue", 1, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(integerValueEClass, IntegerValue.class, "IntegerValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getIntegerValue_Value(), ecorePackage.getEInt(), "value", null, 1, 1, IntegerValue.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getIntegerValue__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIntegerValue__GetExpressionValue(), ecorePackage.getEInt(), "getExpressionValue", 1, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(enumExpressionEClass, EnumExpression.class, "EnumExpression", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getEnumExpression__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getEnumExpression__GetExpressionValue(), ecorePackage.getEEnumerator(), "getExpressionValue", 1,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getEnumExpression__GetType(), this.getExpressionType(), "getType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(loserTypeExpressionEClass, LoserTypeExpression.class, "LoserTypeExpression", !IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getLoserTypeExpression_Value(), this.getLoserType(), "value", null, 1, 1,
+ LoserTypeExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getLoserTypeExpression__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getLoserTypeExpression__GetExpressionValue(), ecorePackage.getEEnumerator(),
+ "getExpressionValue", 1, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(arbitrationPolicyExpressionEClass, ArbitrationPolicyExpression.class, "ArbitrationPolicyExpression",
+ !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getArbitrationPolicyExpression_Value(), this.getArbitrationPolicy(), "value", null, 1, 1,
+ ArbitrationPolicyExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getArbitrationPolicyExpression__GetExpressionText(), ecorePackage.getEString(),
+ "getExpressionText", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getArbitrationPolicyExpression__GetExpressionValue(), ecorePackage.getEEnumerator(),
+ "getExpressionValue", 1, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(setExpressionEClass, SetExpression.class, "SetExpression", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(setOperatorEClass, SetOperator.class, "SetOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(sizeOperatorEClass, SizeOperator.class, "SizeOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSizeOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getSizeOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getSizeOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(existsOperatorEClass, ExistsOperator.class, "ExistsOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getExistsOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getExistsOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getExistsOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(forAllOperatorEClass, ForAllOperator.class, "ForAllOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getForAllOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getForAllOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getForAllOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(maxOperatorEClass, MaxOperator.class, "MaxOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getMaxOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getMaxOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getMaxOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(minOperatorEClass, MinOperator.class, "MinOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getMinOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getMinOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getMinOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(selectOperatorEClass, SelectOperator.class, "SelectOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSelectOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getSelectOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getSelectOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(setOfOperatorEClass, SetOfOperator.class, "SetOfOperator", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSetOfOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getSetOfOperator__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getSetOfOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(lambdaExpressionEClass, LambdaExpression.class, "LambdaExpression", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getLambdaExpression_Context(), this.getLambdaContext(), this.getLambdaContext_Lambda(),
+ "context", null, 0, 1, LambdaExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
+ !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getLambdaExpression_X(), this.getVariable(), null, "x", null, 1, 1, LambdaExpression.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getLambdaExpression_BodyText(), this.getExpression(), null, "bodyText", null, 1, 1,
+ LambdaExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getLambdaExpression__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getLambdaExpression__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getVariable__GetExpressionType(), this.getExpressionType(), "getExpressionType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(lambdaContextEClass, LambdaContext.class, "LambdaContext", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getLambdaContext_Lambda(), this.getLambdaExpression(), this.getLambdaExpression_Context(),
+ "lambda", null, 0, 1, LambdaContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+ !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getLambdaContext__GetContextType(), this.getExpressionType(), "getContextType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(ifStatementEClass, IfStatement.class, "IfStatement", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getIfStatement_Condition(), this.getExpression(), null, "condition", null, 1, 1,
+ IfStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getIfStatement_ThenExpression(), this.getExpression(), null, "thenExpression", null, 1, 1,
+ IfStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getIfStatement_ElseExpression(), this.getExpression(), null, "elseExpression", null, 1, 1,
+ IfStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getIfStatement__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIfStatement__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(sceneOperatorEClass, SceneOperator.class, "SceneOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSceneOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isOnEClass, IsOn.class, "IsOn", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsOn__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsOn__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(allocatableOperatorEClass, AllocatableOperator.class, "AllocatableOperator", IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getAllocatableOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(allocatedContentEClass, AllocatedContent.class, "AllocatedContent", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getAllocatedContent__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getAllocatedContent__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(contentValueEClass, ContentValue.class, "ContentValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getContentValue__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getContentValue__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(getContentsListEClass, GetContentsList.class, "GetContentsList", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getGetContentsList__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getGetContentsList__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(activeContentsEClass, ActiveContents.class, "ActiveContents", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getActiveContents__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getActiveContents__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(propertyOperatorEClass, PropertyOperator.class, "PropertyOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getPropertyOperator__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getPropertyOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(getPropertyEClass, GetProperty.class, "GetProperty", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getGetProperty__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getGetProperty__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(stateValueEClass, StateValue.class, "StateValue", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getStateValue__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getStateValue__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(hasComeLaterThanEClass, HasComeLaterThan.class, "HasComeLaterThan", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getHasComeLaterThan__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getHasComeLaterThan__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getHasComeLaterThan__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(hasComeEarlierThanEClass, HasComeEarlierThan.class, "HasComeEarlierThan", !IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getHasComeEarlierThan__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getHasComeEarlierThan__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getHasComeEarlierThan__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(sugarExpressionEClass, SugarExpression.class, "SugarExpression", IS_ABSTRACT, IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSugarExpression__CanExpand(), ecorePackage.getEBoolean(), "canExpand", 1, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getSugarExpression__GetExpanded(), this.getExpression(), "getExpanded", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(sugarExpressionBaseEClass, SugarExpressionBase.class, "SugarExpressionBase", IS_ABSTRACT,
+ IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSugarExpressionBase__CanExpand(), ecorePackage.getEBoolean(), "canExpand", 1, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEClass(objectCompareNotEClass, ObjectCompareNot.class, "ObjectCompareNot", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getObjectCompareNot__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getObjectCompareNot__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getObjectCompareNot__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isAllocatedToEClass, IsAllocatedTo.class, "IsAllocatedTo", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsAllocatedTo__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsAllocatedTo__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsAllocatedTo__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isChangedEClass, IsChanged.class, "IsChanged", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsChanged__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsChanged__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isTranslatedToEClass, IsTranslatedTo.class, "IsTranslatedTo", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsTranslatedTo__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsTranslatedTo__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsTranslatedTo__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(getStateEClass, GetState.class, "GetState", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getGetState__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(contentStateOperatorEClass, ContentStateOperator.class, "ContentStateOperator", IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getContentStateOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(nullExpressionEClass, NullExpression.class, "NullExpression", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getNullExpression__GetUnderlyingType(), this.getExpressionType(), "getUnderlyingType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getNullExpression__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(arbitrationPolicyEEnum, ArbitrationPolicy.class, "ArbitrationPolicy");
+ addEEnumLiteral(arbitrationPolicyEEnum, ArbitrationPolicy.DEFAULT);
+ addEEnumLiteral(arbitrationPolicyEEnum, ArbitrationPolicy.FIRST_COME_FIRST);
+ addEEnumLiteral(arbitrationPolicyEEnum, ArbitrationPolicy.LAST_COME_FIRST);
+ addEEnumLiteral(arbitrationPolicyEEnum, ArbitrationPolicy.PRIORITY_FIRST_COME_FIRST);
+ addEEnumLiteral(arbitrationPolicyEEnum, ArbitrationPolicy.PRIORITY_LAST_COME_FIRST);
+
+ initEEnum(expressionTypeEEnum, ExpressionType.class, "ExpressionType");
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.VALUE);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.BOOLEAN);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.AREA);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.CONTENT);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.SET_OF_AREA);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.SET_OF_CONTENT);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.LAMBDA);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.SCENE);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.ZONE);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.SET_OF_ZONE);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.SOUND);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.SET_OF_SOUND);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.PROPERTY);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.CONTENT_STATE);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.ENUM);
+ addEEnumLiteral(expressionTypeEEnum, ExpressionType.NULL);
+
+ initEEnum(loserTypeEEnum, LoserType.class, "LoserType");
+ addEEnumLiteral(loserTypeEEnum, LoserType.NEVER_GIVEUP);
+ addEEnumLiteral(loserTypeEEnum, LoserType.GOOD_LOSER);
+ addEEnumLiteral(loserTypeEEnum, LoserType.DO_NOT_GIVEUP_UNTIL_WIN);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/OCL/Import
+ createImportAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/OCL/Import</b>.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createImportAnnotations() {
+ String source = "http://www.eclipse.org/OCL/Import";
+ addAnnotation(this, source, new String[] { "ecore", "http://www.eclipse.org/emf/2002/Ecore" });
+ }
+
+} // RBACorePackageImpl
diff --git a/rba.model.core/src/rba/core/impl/RuleObjectImpl.java b/rba.model.core/src/rba/core/impl/RuleObjectImpl.java
new file mode 100644
index 0000000..bd3687c
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/RuleObjectImpl.java
@@ -0,0 +1,167 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.RuleObject;
+import rba.core.Tag;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Rule Object</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.RuleObjectImpl#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class RuleObjectImpl extends PackagableElementImpl implements RuleObject {
+ /**
+ * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTags()
+ * @generated
+ * @ordered
+ */
+ protected EList<Tag> tags;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected RuleObjectImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.RULE_OBJECT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Tag> getTags() {
+ if (tags == null) {
+ tags = new EObjectContainmentEList<Tag>(Tag.class, this, RBACorePackage.RULE_OBJECT__TAGS);
+ }
+ return tags;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.RULE_OBJECT__TAGS:
+ return ((InternalEList<?>) getTags()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.RULE_OBJECT__TAGS:
+ return getTags();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.RULE_OBJECT__TAGS:
+ getTags().clear();
+ getTags().addAll((Collection<? extends Tag>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.RULE_OBJECT__TAGS:
+ getTags().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.RULE_OBJECT__TAGS:
+ return tags != null && !tags.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.RULE_OBJECT___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // RuleObjectImpl
diff --git a/rba.model.core/src/rba/core/impl/SceneImpl.java b/rba.model.core/src/rba/core/impl/SceneImpl.java
new file mode 100644
index 0000000..9cdd3a4
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SceneImpl.java
@@ -0,0 +1,245 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import rba.core.AbstractProperty;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.Scene;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Scene</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.SceneImpl#isGlobal <em>Global</em>}</li>
+ * <li>{@link rba.core.impl.SceneImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SceneImpl extends AbstractSceneImpl implements Scene {
+ /**
+ * The default value of the '{@link #isGlobal() <em>Global</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #isGlobal()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean GLOBAL_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isGlobal() <em>Global</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #isGlobal()
+ * @generated
+ * @ordered
+ */
+ protected boolean global = GLOBAL_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference list.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @see #getProperties()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractProperty> properties;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SceneImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SCENE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isGlobal() {
+ return global;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setGlobal(boolean newGlobal) {
+ boolean oldGlobal = global;
+ global = newGlobal;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.SCENE__GLOBAL, oldGlobal, global));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractProperty> getProperties() {
+ if (properties == null) {
+ properties = new EObjectContainmentWithInverseEList<AbstractProperty>(AbstractProperty.class, this,
+ RBACorePackage.SCENE__PROPERTIES, RBACorePackage.ABSTRACT_PROPERTY__OWNER);
+ }
+ return properties;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.SCENE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.SCENE__PROPERTIES:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getProperties()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.SCENE__PROPERTIES:
+ return ((InternalEList<?>) getProperties()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.SCENE__GLOBAL:
+ return isGlobal();
+ case RBACorePackage.SCENE__PROPERTIES:
+ return getProperties();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.SCENE__GLOBAL:
+ setGlobal((Boolean) newValue);
+ return;
+ case RBACorePackage.SCENE__PROPERTIES:
+ getProperties().clear();
+ getProperties().addAll((Collection<? extends AbstractProperty>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.SCENE__GLOBAL:
+ setGlobal(GLOBAL_EDEFAULT);
+ return;
+ case RBACorePackage.SCENE__PROPERTIES:
+ getProperties().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.SCENE__GLOBAL:
+ return global != GLOBAL_EDEFAULT;
+ case RBACorePackage.SCENE__PROPERTIES:
+ return properties != null && !properties.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.SCENE___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (global: ");
+ result.append(global);
+ result.append(')');
+ return result.toString();
+ }
+
+} // SceneImpl
diff --git a/rba.model.core/src/rba/core/impl/SceneOperatorImpl.java b/rba.model.core/src/rba/core/impl/SceneOperatorImpl.java
new file mode 100644
index 0000000..86fdfcf
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SceneOperatorImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.RBACorePackage;
+import rba.core.SceneOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Scene Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class SceneOperatorImpl extends OperatorImpl implements SceneOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SceneOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SCENE_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.SCENE_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SceneOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/SelectOperatorImpl.java b/rba.model.core/src/rba/core/impl/SelectOperatorImpl.java
new file mode 100644
index 0000000..9acb6d1
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SelectOperatorImpl.java
@@ -0,0 +1,92 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.SelectOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Select Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SelectOperatorImpl extends LambdaContextImpl implements SelectOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SelectOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SELECT_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ rba.core.LambdaExpression lambda = getLambda();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("{ ");
+ expressionText.append(lambda != null ? lambda.getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(" }");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".select";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ if (!getOperand().isEmpty()) {
+ Expression first = getOperand().get(0);
+ return first.getType();
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.SELECT_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.SELECT_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.SELECT_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SelectOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/SetExpressionImpl.java b/rba.model.core/src/rba/core/impl/SetExpressionImpl.java
new file mode 100644
index 0000000..612a015
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SetExpressionImpl.java
@@ -0,0 +1,33 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.RBACorePackage;
+import rba.core.SetExpression;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Set Expression</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class SetExpressionImpl extends ExpressionImpl implements SetExpression {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SetExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SET_EXPRESSION;
+ }
+
+} // SetExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/SetOfOperatorImpl.java b/rba.model.core/src/rba/core/impl/SetOfOperatorImpl.java
new file mode 100644
index 0000000..4500364
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SetOfOperatorImpl.java
@@ -0,0 +1,106 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.SetOfOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Set Of Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SetOfOperatorImpl extends OperatorImpl implements SetOfOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SetOfOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SET_OF_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append("{");
+ for (int i = 0; i < expressions.size(); i++) {
+ rba.core.Expression expression = expressions.get(i);
+ expressionText.append(expression.getExpressionText());
+ if (i == expressions.size() - 1) {
+ expressionText.append("}");
+ } else {
+ expressionText.append(", ");
+ }
+ }
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ EList<rba.core.Expression> expressions = getOperand();
+ if (!expressions.isEmpty() && expressions.get(0) != null) {
+ rba.core.Expression first = expressions.get(0);
+ if ((first.getType() == ExpressionType.CONTENT) || (first.getType() == ExpressionType.SET_OF_CONTENT)) {
+ return ExpressionType.SET_OF_CONTENT;
+ } else if ((first.getType() == ExpressionType.AREA) || (first.getType() == ExpressionType.SET_OF_AREA)) {
+ return ExpressionType.SET_OF_AREA;
+ } else if ((first.getType() == ExpressionType.SOUND) || (first.getType() == ExpressionType.SET_OF_SOUND)) {
+ return ExpressionType.SET_OF_SOUND;
+ } else if ((first.getType() == ExpressionType.ZONE) || (first.getType() == ExpressionType.SET_OF_ZONE)) {
+ return ExpressionType.SET_OF_ZONE;
+ } else {
+ return first.getType();
+ }
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.SET_OF_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.SET_OF_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.SET_OF_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SetOfOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/SetOperatorImpl.java b/rba.model.core/src/rba/core/impl/SetOperatorImpl.java
new file mode 100644
index 0000000..0614ac8
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SetOperatorImpl.java
@@ -0,0 +1,33 @@
+/**
+ */
+package rba.core.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.RBACorePackage;
+import rba.core.SetOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Set Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class SetOperatorImpl extends OperatorImpl implements SetOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SetOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SET_OPERATOR;
+ }
+
+} // SetOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/SizeOperatorImpl.java b/rba.model.core/src/rba/core/impl/SizeOperatorImpl.java
new file mode 100644
index 0000000..df669e5
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/SizeOperatorImpl.java
@@ -0,0 +1,83 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.SizeOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Size Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SizeOperatorImpl extends SetOperatorImpl implements SizeOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SizeOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.SIZE_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".size()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.SIZE_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.SIZE_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.SIZE_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SizeOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/StandardValueImpl.java b/rba.model.core/src/rba/core/impl/StandardValueImpl.java
new file mode 100644
index 0000000..177510a
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/StandardValueImpl.java
@@ -0,0 +1,68 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.RBACorePackage;
+import rba.core.StandardValue;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Standard Value</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class StandardValueImpl extends ValueExpressionImpl implements StandardValue {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected StandardValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.STANDARD_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "STANDARD";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getExpressionValue() {
+ return 10;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.STANDARD_VALUE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.STANDARD_VALUE___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // StandardValueImpl
diff --git a/rba.model.core/src/rba/core/impl/StateValueImpl.java b/rba.model.core/src/rba/core/impl/StateValueImpl.java
new file mode 100644
index 0000000..047682d
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/StateValueImpl.java
@@ -0,0 +1,69 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.StateValue;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>State Value</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class StateValueImpl extends ContentOperatorImpl implements StateValue {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected StateValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.STATE_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".stateValue()"; //$NON-NLS-1$
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.STATE_VALUE___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.STATE_VALUE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // StateValueImpl
diff --git a/rba.model.core/src/rba/core/impl/StereotypeImpl.java b/rba.model.core/src/rba/core/impl/StereotypeImpl.java
new file mode 100644
index 0000000..d53306f
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/StereotypeImpl.java
@@ -0,0 +1,263 @@
+/**
+ */
+package rba.core.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import rba.core.RBACorePackage;
+import rba.core.Stereotype;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Stereotype</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.StereotypeImpl#getTargetModelName <em>Target Model Name</em>}</li>
+ * <li>{@link rba.core.impl.StereotypeImpl#getVariables <em>Variables</em>}</li>
+ * <li>{@link rba.core.impl.StereotypeImpl#getBodyText <em>Body Text</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class StereotypeImpl extends PackagableElementImpl implements Stereotype {
+ /**
+ * The default value of the '{@link #getTargetModelName() <em>Target Model Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTargetModelName()
+ * @generated
+ * @ordered
+ */
+ protected static final String TARGET_MODEL_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getTargetModelName() <em>Target Model Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTargetModelName()
+ * @generated
+ * @ordered
+ */
+ protected String targetModelName = TARGET_MODEL_NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getVariables() <em>Variables</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVariables()
+ * @generated
+ * @ordered
+ */
+ protected EList<Variable> variables;
+
+ /**
+ * The default value of the '{@link #getBodyText() <em>Body Text</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getBodyText()
+ * @generated
+ * @ordered
+ */
+ protected static final String BODY_TEXT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBodyText() <em>Body Text</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ * @see #getBodyText()
+ * @generated
+ * @ordered
+ */
+ protected String bodyText = BODY_TEXT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected StereotypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.STEREOTYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getTargetModelName() {
+ return targetModelName;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTargetModelName(String newTargetModelName) {
+ String oldTargetModelName = targetModelName;
+ targetModelName = newTargetModelName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.STEREOTYPE__TARGET_MODEL_NAME,
+ oldTargetModelName, targetModelName));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getBodyText() {
+ return bodyText;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBodyText(String newBodyText) {
+ String oldBodyText = bodyText;
+ bodyText = newBodyText;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBACorePackage.STEREOTYPE__BODY_TEXT, oldBodyText,
+ bodyText));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Variable> getVariables() {
+ if (variables == null) {
+ variables = new EObjectContainmentEList<Variable>(Variable.class, this,
+ RBACorePackage.STEREOTYPE__VARIABLES);
+ }
+ return variables;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBACorePackage.STEREOTYPE__VARIABLES:
+ return ((InternalEList<?>) getVariables()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.STEREOTYPE__TARGET_MODEL_NAME:
+ return getTargetModelName();
+ case RBACorePackage.STEREOTYPE__VARIABLES:
+ return getVariables();
+ case RBACorePackage.STEREOTYPE__BODY_TEXT:
+ return getBodyText();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.STEREOTYPE__TARGET_MODEL_NAME:
+ setTargetModelName((String) newValue);
+ return;
+ case RBACorePackage.STEREOTYPE__VARIABLES:
+ getVariables().clear();
+ getVariables().addAll((Collection<? extends Variable>) newValue);
+ return;
+ case RBACorePackage.STEREOTYPE__BODY_TEXT:
+ setBodyText((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.STEREOTYPE__TARGET_MODEL_NAME:
+ setTargetModelName(TARGET_MODEL_NAME_EDEFAULT);
+ return;
+ case RBACorePackage.STEREOTYPE__VARIABLES:
+ getVariables().clear();
+ return;
+ case RBACorePackage.STEREOTYPE__BODY_TEXT:
+ setBodyText(BODY_TEXT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.STEREOTYPE__TARGET_MODEL_NAME:
+ return TARGET_MODEL_NAME_EDEFAULT == null ? targetModelName != null
+ : !TARGET_MODEL_NAME_EDEFAULT.equals(targetModelName);
+ case RBACorePackage.STEREOTYPE__VARIABLES:
+ return variables != null && !variables.isEmpty();
+ case RBACorePackage.STEREOTYPE__BODY_TEXT:
+ return BODY_TEXT_EDEFAULT == null ? bodyText != null : !BODY_TEXT_EDEFAULT.equals(bodyText);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (targetModelName: ");
+ result.append(targetModelName);
+ result.append(", bodyText: ");
+ result.append(bodyText);
+ result.append(')');
+ return result.toString();
+ }
+
+} // StereotypeImpl
diff --git a/rba.model.core/src/rba/core/impl/TagImpl.java b/rba.model.core/src/rba/core/impl/TagImpl.java
new file mode 100644
index 0000000..c94583c
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/TagImpl.java
@@ -0,0 +1,148 @@
+/**
+ */
+package rba.core.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import rba.core.RBACorePackage;
+import rba.core.Tag;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Tag</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.core.impl.TagImpl#getValues <em>Values</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class TagImpl extends NamedElementImpl implements Tag {
+ /**
+ * The cached value of the '{@link #getValues() <em>Values</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValues()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> values;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TagImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.TAG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getValues() {
+ if (values == null) {
+ values = new EDataTypeEList<String>(String.class, this, RBACorePackage.TAG__VALUES);
+ }
+ return values;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBACorePackage.TAG__VALUES:
+ return getValues();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBACorePackage.TAG__VALUES:
+ getValues().clear();
+ getValues().addAll((Collection<? extends String>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.TAG__VALUES:
+ getValues().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBACorePackage.TAG__VALUES:
+ return values != null && !values.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (values: ");
+ result.append(values);
+ result.append(')');
+ return result.toString();
+ }
+
+} //TagImpl
diff --git a/rba.model.core/src/rba/core/impl/ThatOfOperatorImpl.java b/rba.model.core/src/rba/core/impl/ThatOfOperatorImpl.java
new file mode 100644
index 0000000..323fcad
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ThatOfOperatorImpl.java
@@ -0,0 +1,83 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.ThatOfOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>That Of Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ThatOfOperatorImpl extends OperatorImpl implements ThatOfOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ThatOfOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.THAT_OF_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(getSymbol());
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "That of ";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.THAT_OF_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBACorePackage.THAT_OF_OPERATOR___GET_SYMBOL:
+ return getSymbol();
+ case RBACorePackage.THAT_OF_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ThatOfOperatorImpl
diff --git a/rba.model.core/src/rba/core/impl/ValueExpressionImpl.java b/rba.model.core/src/rba/core/impl/ValueExpressionImpl.java
new file mode 100644
index 0000000..b46eb87
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/ValueExpressionImpl.java
@@ -0,0 +1,81 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+import rba.core.RBACorePackage;
+import rba.core.ValueExpression;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Value Expression</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ValueExpressionImpl extends ExpressionImpl implements ValueExpression {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ValueExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.VALUE_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public int getExpressionValue() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getType() {
+ return getUnderlyingType();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.VALUE_EXPRESSION___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBACorePackage.VALUE_EXPRESSION___GET_EXPRESSION_VALUE:
+ return getExpressionValue();
+ case RBACorePackage.VALUE_EXPRESSION___GET_TYPE:
+ return getType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ValueExpressionImpl
diff --git a/rba.model.core/src/rba/core/impl/VariableImpl.java b/rba.model.core/src/rba/core/impl/VariableImpl.java
new file mode 100644
index 0000000..3a16ec6
--- /dev/null
+++ b/rba.model.core/src/rba/core/impl/VariableImpl.java
@@ -0,0 +1,103 @@
+/**
+ */
+package rba.core.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.EObject;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.LambdaContext;
+import rba.core.LambdaExpression;
+import rba.core.LetStatement;
+import rba.core.RBACorePackage;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Variable</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class VariableImpl extends RuleObjectImpl implements Variable {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected VariableImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBACorePackage.Literals.VARIABLE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ EObject container = eContainer();
+ if (container instanceof LambdaExpression) {
+ container = container.eContainer();
+ if (container instanceof LambdaContext) {
+ List<Expression> operands = ((LambdaContext) container).getOperand();
+ if (operands.size() > 0) {
+ switch (operands.get(0).getUnderlyingType()) {
+ case AREA:
+ case SET_OF_AREA:
+ return ExpressionType.AREA;
+ case CONTENT:
+ case SET_OF_CONTENT:
+ return ExpressionType.CONTENT;
+ case SOUND:
+ case SET_OF_SOUND:
+ return ExpressionType.SOUND;
+ case ZONE:
+ case SET_OF_ZONE:
+ return ExpressionType.ZONE;
+ case SCENE:
+ return ExpressionType.SCENE;
+ case PROPERTY:
+ return ExpressionType.PROPERTY;
+ case BOOLEAN:
+ return ExpressionType.BOOLEAN;
+ case LAMBDA:
+ return ExpressionType.LAMBDA;
+ case VALUE:
+ default:
+ return ExpressionType.VALUE;
+ }
+ }
+ }
+ } else if (container instanceof LetStatement) {
+ Expression body = ((LetStatement) container).getBody();
+ if (body != null) {
+ return body.getUnderlyingType();
+ }
+ }
+ return ExpressionType.VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBACorePackage.VARIABLE___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // VariableImpl
diff --git a/rba.model.core/src/rba/core/util/RBACoreAdapterFactory.java b/rba.model.core/src/rba/core/util/RBACoreAdapterFactory.java
new file mode 100644
index 0000000..715cc9a
--- /dev/null
+++ b/rba.model.core/src/rba/core/util/RBACoreAdapterFactory.java
@@ -0,0 +1,1861 @@
+/**
+ */
+package rba.core.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+import rba.core.AbstractAllocatable;
+import rba.core.AbstractConstraint;
+import rba.core.AbstractContent;
+import rba.core.AbstractProperty;
+import rba.core.AbstractScene;
+import rba.core.ActiveContents;
+import rba.core.ActiveState;
+import rba.core.Allocatable;
+import rba.core.AllocatableOperator;
+import rba.core.AllocatableSet;
+import rba.core.AllocatedContent;
+import rba.core.AndOperator;
+import rba.core.ArbitrationPolicyExpression;
+import rba.core.ArithmeticOperator;
+import rba.core.ComparisonAnd;
+import rba.core.ComparisonOperator;
+import rba.core.ComplexExpression;
+import rba.core.Constraint;
+import rba.core.Content;
+import rba.core.ContentOperator;
+import rba.core.ContentSet;
+import rba.core.ContentState;
+import rba.core.ContentStateOperator;
+import rba.core.ContentValue;
+import rba.core.EnumExpression;
+import rba.core.EqualToOperator;
+import rba.core.ExistsOperator;
+import rba.core.Expression;
+import rba.core.ForAllOperator;
+import rba.core.GetAllocatables;
+import rba.core.GetContentsList;
+import rba.core.GetProperty;
+import rba.core.GetState;
+import rba.core.GreaterThanOperator;
+import rba.core.HasBeenDisplayed;
+import rba.core.HasComeEarlierThan;
+import rba.core.HasComeLaterThan;
+import rba.core.IfStatement;
+import rba.core.ImpliesOperator;
+import rba.core.IntegerProperty;
+import rba.core.IntegerValue;
+import rba.core.IsActive;
+import rba.core.IsAllocatedTo;
+import rba.core.IsChanged;
+import rba.core.IsEqualToOperator;
+import rba.core.IsGreaterThanEqualOperator;
+import rba.core.IsGreaterThanOperator;
+import rba.core.IsLowerThanEqualOperator;
+import rba.core.IsLowerThanOperator;
+import rba.core.IsOn;
+import rba.core.IsTranslatedTo;
+import rba.core.IsTypeOf;
+import rba.core.LambdaContext;
+import rba.core.LambdaExpression;
+import rba.core.LetStatement;
+import rba.core.LogicalOperator;
+import rba.core.LoserTypeExpression;
+import rba.core.LowerThanOperator;
+import rba.core.MaxOperator;
+import rba.core.MaxValue;
+import rba.core.MinOperator;
+import rba.core.MinValue;
+import rba.core.ModelElement;
+import rba.core.MuchGreaterThanOperator;
+import rba.core.NamedElement;
+import rba.core.NoneValue;
+import rba.core.NotOperator;
+import rba.core.NullExpression;
+import rba.core.ObjectCompare;
+import rba.core.ObjectCompareNot;
+import rba.core.ObjectReference;
+import rba.core.Operator;
+import rba.core.OrOperator;
+import rba.core.PackagableElement;
+import rba.core.PlusOperator;
+import rba.core.PreviousModifier;
+import rba.core.Project;
+import rba.core.PropertyOperator;
+import rba.core.RBACorePackage;
+import rba.core.RuleObject;
+import rba.core.Scene;
+import rba.core.SceneOperator;
+import rba.core.SelectOperator;
+import rba.core.SetExpression;
+import rba.core.SetOfOperator;
+import rba.core.SetOperator;
+import rba.core.SizeOperator;
+import rba.core.StandardValue;
+import rba.core.StateValue;
+import rba.core.Stereotype;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+import rba.core.Tag;
+import rba.core.ThatOfOperator;
+import rba.core.ValueExpression;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides an adapter <code>createXXX</code> method for
+ * each class of the model. <!-- end-user-doc -->
+ * @see rba.core.RBACorePackage
+ * @generated
+ */
+public class RBACoreAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected static RBACorePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBACoreAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = RBACorePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc --> This implementation
+ * returns <code>true</code> if the object is either the model's package or is an instance object of the model. <!--
+ * end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject) object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected RBACoreSwitch<Adapter> modelSwitch = new RBACoreSwitch<Adapter>() {
+ @Override
+ public Adapter caseModelElement(ModelElement object) {
+ return createModelElementAdapter();
+ }
+
+ @Override
+ public Adapter caseNamedElement(NamedElement object) {
+ return createNamedElementAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractAllocatable(AbstractAllocatable object) {
+ return createAbstractAllocatableAdapter();
+ }
+
+ @Override
+ public Adapter caseAllocatable(Allocatable object) {
+ return createAllocatableAdapter();
+ }
+
+ @Override
+ public Adapter caseAllocatableSet(AllocatableSet object) {
+ return createAllocatableSetAdapter();
+ }
+
+ @Override
+ public Adapter caseProject(Project object) {
+ return createProjectAdapter();
+ }
+
+ @Override
+ public Adapter casePackagableElement(PackagableElement object) {
+ return createPackagableElementAdapter();
+ }
+
+ @Override
+ public Adapter casePackage(rba.core.Package object) {
+ return createPackageAdapter();
+ }
+
+ @Override
+ public Adapter caseStereotype(Stereotype object) {
+ return createStereotypeAdapter();
+ }
+
+ @Override
+ public Adapter caseTag(Tag object) {
+ return createTagAdapter();
+ }
+
+ @Override
+ public Adapter caseRuleObject(RuleObject object) {
+ return createRuleObjectAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractContent(AbstractContent object) {
+ return createAbstractContentAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractScene(AbstractScene object) {
+ return createAbstractSceneAdapter();
+ }
+
+ @Override
+ public Adapter caseScene(Scene object) {
+ return createSceneAdapter();
+ }
+
+ @Override
+ public Adapter caseContent(Content object) {
+ return createContentAdapter();
+ }
+
+ @Override
+ public Adapter caseContentSet(ContentSet object) {
+ return createContentSetAdapter();
+ }
+
+ @Override
+ public Adapter caseContentState(ContentState object) {
+ return createContentStateAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractProperty(AbstractProperty object) {
+ return createAbstractPropertyAdapter();
+ }
+
+ @Override
+ public Adapter caseIntegerProperty(IntegerProperty object) {
+ return createIntegerPropertyAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractConstraint(AbstractConstraint object) {
+ return createAbstractConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseConstraint(Constraint object) {
+ return createConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseExpression(Expression object) {
+ return createExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseLetStatement(LetStatement object) {
+ return createLetStatementAdapter();
+ }
+
+ @Override
+ public Adapter caseComplexExpression(ComplexExpression object) {
+ return createComplexExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseOperator(Operator object) {
+ return createOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsTypeOf(IsTypeOf object) {
+ return createIsTypeOfAdapter();
+ }
+
+ @Override
+ public Adapter caseObjectReference(ObjectReference object) {
+ return createObjectReferenceAdapter();
+ }
+
+ @Override
+ public Adapter casePreviousModifier(PreviousModifier object) {
+ return createPreviousModifierAdapter();
+ }
+
+ @Override
+ public Adapter caseGreaterThanOperator(GreaterThanOperator object) {
+ return createGreaterThanOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseMuchGreaterThanOperator(MuchGreaterThanOperator object) {
+ return createMuchGreaterThanOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseLowerThanOperator(LowerThanOperator object) {
+ return createLowerThanOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseComparisonOperator(ComparisonOperator object) {
+ return createComparisonOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseEqualToOperator(EqualToOperator object) {
+ return createEqualToOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseComparisonAnd(ComparisonAnd object) {
+ return createComparisonAndAdapter();
+ }
+
+ @Override
+ public Adapter caseLogicalOperator(LogicalOperator object) {
+ return createLogicalOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseAndOperator(AndOperator object) {
+ return createAndOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseOrOperator(OrOperator object) {
+ return createOrOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseNotOperator(NotOperator object) {
+ return createNotOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsEqualToOperator(IsEqualToOperator object) {
+ return createIsEqualToOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsGreaterThanOperator(IsGreaterThanOperator object) {
+ return createIsGreaterThanOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsLowerThanOperator(IsLowerThanOperator object) {
+ return createIsLowerThanOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsGreaterThanEqualOperator(IsGreaterThanEqualOperator object) {
+ return createIsGreaterThanEqualOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsLowerThanEqualOperator(IsLowerThanEqualOperator object) {
+ return createIsLowerThanEqualOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseArithmeticOperator(ArithmeticOperator object) {
+ return createArithmeticOperatorAdapter();
+ }
+
+ @Override
+ public Adapter casePlusOperator(PlusOperator object) {
+ return createPlusOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseImpliesOperator(ImpliesOperator object) {
+ return createImpliesOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseContentOperator(ContentOperator object) {
+ return createContentOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsActive(IsActive object) {
+ return createIsActiveAdapter();
+ }
+
+ @Override
+ public Adapter caseGetAllocatables(GetAllocatables object) {
+ return createGetAllocatablesAdapter();
+ }
+
+ @Override
+ public Adapter caseHasBeenDisplayed(HasBeenDisplayed object) {
+ return createHasBeenDisplayedAdapter();
+ }
+
+ @Override
+ public Adapter caseActiveState(ActiveState object) {
+ return createActiveStateAdapter();
+ }
+
+ @Override
+ public Adapter caseObjectCompare(ObjectCompare object) {
+ return createObjectCompareAdapter();
+ }
+
+ @Override
+ public Adapter caseThatOfOperator(ThatOfOperator object) {
+ return createThatOfOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseValueExpression(ValueExpression object) {
+ return createValueExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseMaxValue(MaxValue object) {
+ return createMaxValueAdapter();
+ }
+
+ @Override
+ public Adapter caseMinValue(MinValue object) {
+ return createMinValueAdapter();
+ }
+
+ @Override
+ public Adapter caseNoneValue(NoneValue object) {
+ return createNoneValueAdapter();
+ }
+
+ @Override
+ public Adapter caseStandardValue(StandardValue object) {
+ return createStandardValueAdapter();
+ }
+
+ @Override
+ public Adapter caseIntegerValue(IntegerValue object) {
+ return createIntegerValueAdapter();
+ }
+
+ @Override
+ public Adapter caseEnumExpression(EnumExpression object) {
+ return createEnumExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseLoserTypeExpression(LoserTypeExpression object) {
+ return createLoserTypeExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseArbitrationPolicyExpression(ArbitrationPolicyExpression object) {
+ return createArbitrationPolicyExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseSetExpression(SetExpression object) {
+ return createSetExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseSetOperator(SetOperator object) {
+ return createSetOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseSizeOperator(SizeOperator object) {
+ return createSizeOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseExistsOperator(ExistsOperator object) {
+ return createExistsOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseForAllOperator(ForAllOperator object) {
+ return createForAllOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseMaxOperator(MaxOperator object) {
+ return createMaxOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseMinOperator(MinOperator object) {
+ return createMinOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseSelectOperator(SelectOperator object) {
+ return createSelectOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseSetOfOperator(SetOfOperator object) {
+ return createSetOfOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseLambdaExpression(LambdaExpression object) {
+ return createLambdaExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseVariable(Variable object) {
+ return createVariableAdapter();
+ }
+
+ @Override
+ public Adapter caseLambdaContext(LambdaContext object) {
+ return createLambdaContextAdapter();
+ }
+
+ @Override
+ public Adapter caseIfStatement(IfStatement object) {
+ return createIfStatementAdapter();
+ }
+
+ @Override
+ public Adapter caseSceneOperator(SceneOperator object) {
+ return createSceneOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseIsOn(IsOn object) {
+ return createIsOnAdapter();
+ }
+
+ @Override
+ public Adapter caseAllocatableOperator(AllocatableOperator object) {
+ return createAllocatableOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseAllocatedContent(AllocatedContent object) {
+ return createAllocatedContentAdapter();
+ }
+
+ @Override
+ public Adapter caseContentValue(ContentValue object) {
+ return createContentValueAdapter();
+ }
+
+ @Override
+ public Adapter caseGetContentsList(GetContentsList object) {
+ return createGetContentsListAdapter();
+ }
+
+ @Override
+ public Adapter caseActiveContents(ActiveContents object) {
+ return createActiveContentsAdapter();
+ }
+
+ @Override
+ public Adapter casePropertyOperator(PropertyOperator object) {
+ return createPropertyOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseGetProperty(GetProperty object) {
+ return createGetPropertyAdapter();
+ }
+
+ @Override
+ public Adapter caseStateValue(StateValue object) {
+ return createStateValueAdapter();
+ }
+
+ @Override
+ public Adapter caseHasComeLaterThan(HasComeLaterThan object) {
+ return createHasComeLaterThanAdapter();
+ }
+
+ @Override
+ public Adapter caseHasComeEarlierThan(HasComeEarlierThan object) {
+ return createHasComeEarlierThanAdapter();
+ }
+
+ @Override
+ public Adapter caseSugarExpression(SugarExpression object) {
+ return createSugarExpressionAdapter();
+ }
+
+ @Override
+ public Adapter caseSugarExpressionBase(SugarExpressionBase object) {
+ return createSugarExpressionBaseAdapter();
+ }
+
+ @Override
+ public Adapter caseObjectCompareNot(ObjectCompareNot object) {
+ return createObjectCompareNotAdapter();
+ }
+
+ @Override
+ public Adapter caseIsAllocatedTo(IsAllocatedTo object) {
+ return createIsAllocatedToAdapter();
+ }
+
+ @Override
+ public Adapter caseIsChanged(IsChanged object) {
+ return createIsChangedAdapter();
+ }
+
+ @Override
+ public Adapter caseIsTranslatedTo(IsTranslatedTo object) {
+ return createIsTranslatedToAdapter();
+ }
+
+ @Override
+ public Adapter caseGetState(GetState object) {
+ return createGetStateAdapter();
+ }
+
+ @Override
+ public Adapter caseContentStateOperator(ContentStateOperator object) {
+ return createContentStateOperatorAdapter();
+ }
+
+ @Override
+ public Adapter caseNullExpression(NullExpression object) {
+ return createNullExpressionAdapter();
+ }
+
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject) target);
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ModelElement <em>Model 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 rba.core.ModelElement
+ * @generated
+ */
+ public Adapter createModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.NamedElement <em>Named 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 rba.core.NamedElement
+ * @generated
+ */
+ public Adapter createNamedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AbstractAllocatable <em>Abstract Allocatable</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 rba.core.AbstractAllocatable
+ * @generated
+ */
+ public Adapter createAbstractAllocatableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Allocatable <em>Allocatable</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 rba.core.Allocatable
+ * @generated
+ */
+ public Adapter createAllocatableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AllocatableSet <em>Allocatable Set</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 rba.core.AllocatableSet
+ * @generated
+ */
+ public Adapter createAllocatableSetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Project <em>Project</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 rba.core.Project
+ * @generated
+ */
+ public Adapter createProjectAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.PackagableElement <em>Packagable 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 rba.core.PackagableElement
+ * @generated
+ */
+ public Adapter createPackagableElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Package <em>Package</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 rba.core.Package
+ * @generated
+ */
+ public Adapter createPackageAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Stereotype <em>Stereotype</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 rba.core.Stereotype
+ * @generated
+ */
+ public Adapter createStereotypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Tag <em>Tag</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 rba.core.Tag
+ * @generated
+ */
+ public Adapter createTagAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.RuleObject <em>Rule Object</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 rba.core.RuleObject
+ * @generated
+ */
+ public Adapter createRuleObjectAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AbstractContent <em>Abstract Content</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 rba.core.AbstractContent
+ * @generated
+ */
+ public Adapter createAbstractContentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AbstractScene <em>Abstract Scene</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 rba.core.AbstractScene
+ * @generated
+ */
+ public Adapter createAbstractSceneAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Scene <em>Scene</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 rba.core.Scene
+ * @generated
+ */
+ public Adapter createSceneAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Content <em>Content</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 rba.core.Content
+ * @generated
+ */
+ public Adapter createContentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ContentSet <em>Content Set</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 rba.core.ContentSet
+ * @generated
+ */
+ public Adapter createContentSetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ContentState <em>Content State</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 rba.core.ContentState
+ * @generated
+ */
+ public Adapter createContentStateAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AbstractProperty <em>Abstract Property</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 rba.core.AbstractProperty
+ * @generated
+ */
+ public Adapter createAbstractPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IntegerProperty <em>Integer Property</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 rba.core.IntegerProperty
+ * @generated
+ */
+ public Adapter createIntegerPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AbstractConstraint <em>Abstract Constraint</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 rba.core.AbstractConstraint
+ * @generated
+ */
+ public Adapter createAbstractConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Constraint <em>Constraint</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 rba.core.Constraint
+ * @generated
+ */
+ public Adapter createConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Expression <em>Expression</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 rba.core.Expression
+ * @generated
+ */
+ public Adapter createExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.LetStatement <em>Let Statement</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 rba.core.LetStatement
+ * @generated
+ */
+ public Adapter createLetStatementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ComplexExpression <em>Complex Expression</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 rba.core.ComplexExpression
+ * @generated
+ */
+ public Adapter createComplexExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Operator <em>Operator</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 rba.core.Operator
+ * @generated
+ */
+ public Adapter createOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsTypeOf <em>Is Type Of</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 rba.core.IsTypeOf
+ * @generated
+ */
+ public Adapter createIsTypeOfAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ObjectReference <em>Object Reference</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 rba.core.ObjectReference
+ * @generated
+ */
+ public Adapter createObjectReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.PreviousModifier <em>Previous Modifier</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 rba.core.PreviousModifier
+ * @generated
+ */
+ public Adapter createPreviousModifierAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.GreaterThanOperator <em>Greater Than Operator</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 rba.core.GreaterThanOperator
+ * @generated
+ */
+ public Adapter createGreaterThanOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.MuchGreaterThanOperator <em>Much Greater Than Operator</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 rba.core.MuchGreaterThanOperator
+ * @generated
+ */
+ public Adapter createMuchGreaterThanOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.LowerThanOperator <em>Lower Than Operator</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 rba.core.LowerThanOperator
+ * @generated
+ */
+ public Adapter createLowerThanOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ComparisonOperator <em>Comparison Operator</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 rba.core.ComparisonOperator
+ * @generated
+ */
+ public Adapter createComparisonOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.EqualToOperator <em>Equal To Operator</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 rba.core.EqualToOperator
+ * @generated
+ */
+ public Adapter createEqualToOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ComparisonAnd <em>Comparison And</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 rba.core.ComparisonAnd
+ * @generated
+ */
+ public Adapter createComparisonAndAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.LogicalOperator <em>Logical Operator</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 rba.core.LogicalOperator
+ * @generated
+ */
+ public Adapter createLogicalOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AndOperator <em>And Operator</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 rba.core.AndOperator
+ * @generated
+ */
+ public Adapter createAndOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.OrOperator <em>Or Operator</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 rba.core.OrOperator
+ * @generated
+ */
+ public Adapter createOrOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.NotOperator <em>Not Operator</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 rba.core.NotOperator
+ * @generated
+ */
+ public Adapter createNotOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsEqualToOperator <em>Is Equal To Operator</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 rba.core.IsEqualToOperator
+ * @generated
+ */
+ public Adapter createIsEqualToOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsGreaterThanOperator <em>Is Greater Than Operator</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 rba.core.IsGreaterThanOperator
+ * @generated
+ */
+ public Adapter createIsGreaterThanOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsLowerThanOperator <em>Is Lower Than Operator</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 rba.core.IsLowerThanOperator
+ * @generated
+ */
+ public Adapter createIsLowerThanOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsGreaterThanEqualOperator <em>Is Greater Than Equal Operator</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 rba.core.IsGreaterThanEqualOperator
+ * @generated
+ */
+ public Adapter createIsGreaterThanEqualOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsLowerThanEqualOperator <em>Is Lower Than Equal Operator</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 rba.core.IsLowerThanEqualOperator
+ * @generated
+ */
+ public Adapter createIsLowerThanEqualOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ArithmeticOperator <em>Arithmetic Operator</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 rba.core.ArithmeticOperator
+ * @generated
+ */
+ public Adapter createArithmeticOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.PlusOperator <em>Plus Operator</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 rba.core.PlusOperator
+ * @generated
+ */
+ public Adapter createPlusOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ImpliesOperator <em>Implies Operator</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 rba.core.ImpliesOperator
+ * @generated
+ */
+ public Adapter createImpliesOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ContentOperator <em>Content Operator</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 rba.core.ContentOperator
+ * @generated
+ */
+ public Adapter createContentOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsActive <em>Is Active</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 rba.core.IsActive
+ * @generated
+ */
+ public Adapter createIsActiveAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.GetAllocatables <em>Get Allocatables</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 rba.core.GetAllocatables
+ * @generated
+ */
+ public Adapter createGetAllocatablesAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.HasBeenDisplayed <em>Has Been Displayed</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 rba.core.HasBeenDisplayed
+ * @generated
+ */
+ public Adapter createHasBeenDisplayedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ActiveState <em>Active State</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 rba.core.ActiveState
+ * @generated
+ */
+ public Adapter createActiveStateAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ObjectCompare <em>Object Compare</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 rba.core.ObjectCompare
+ * @generated
+ */
+ public Adapter createObjectCompareAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ThatOfOperator <em>That Of Operator</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 rba.core.ThatOfOperator
+ * @generated
+ */
+ public Adapter createThatOfOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ValueExpression <em>Value Expression</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 rba.core.ValueExpression
+ * @generated
+ */
+ public Adapter createValueExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.MaxValue <em>Max Value</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 rba.core.MaxValue
+ * @generated
+ */
+ public Adapter createMaxValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.MinValue <em>Min Value</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 rba.core.MinValue
+ * @generated
+ */
+ public Adapter createMinValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.NoneValue <em>None Value</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 rba.core.NoneValue
+ * @generated
+ */
+ public Adapter createNoneValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.StandardValue <em>Standard Value</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 rba.core.StandardValue
+ * @generated
+ */
+ public Adapter createStandardValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IntegerValue <em>Integer Value</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 rba.core.IntegerValue
+ * @generated
+ */
+ public Adapter createIntegerValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.EnumExpression <em>Enum Expression</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 rba.core.EnumExpression
+ * @generated
+ */
+ public Adapter createEnumExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.LoserTypeExpression <em>Loser Type Expression</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 rba.core.LoserTypeExpression
+ * @generated
+ */
+ public Adapter createLoserTypeExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ArbitrationPolicyExpression <em>Arbitration Policy Expression</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 rba.core.ArbitrationPolicyExpression
+ * @generated
+ */
+ public Adapter createArbitrationPolicyExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SetExpression <em>Set Expression</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 rba.core.SetExpression
+ * @generated
+ */
+ public Adapter createSetExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SetOperator <em>Set Operator</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 rba.core.SetOperator
+ * @generated
+ */
+ public Adapter createSetOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SizeOperator <em>Size Operator</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 rba.core.SizeOperator
+ * @generated
+ */
+ public Adapter createSizeOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ExistsOperator <em>Exists Operator</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 rba.core.ExistsOperator
+ * @generated
+ */
+ public Adapter createExistsOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ForAllOperator <em>For All Operator</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 rba.core.ForAllOperator
+ * @generated
+ */
+ public Adapter createForAllOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.MaxOperator <em>Max Operator</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 rba.core.MaxOperator
+ * @generated
+ */
+ public Adapter createMaxOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.MinOperator <em>Min Operator</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 rba.core.MinOperator
+ * @generated
+ */
+ public Adapter createMinOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SelectOperator <em>Select Operator</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 rba.core.SelectOperator
+ * @generated
+ */
+ public Adapter createSelectOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SetOfOperator <em>Set Of Operator</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 rba.core.SetOfOperator
+ * @generated
+ */
+ public Adapter createSetOfOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.LambdaExpression <em>Lambda Expression</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 rba.core.LambdaExpression
+ * @generated
+ */
+ public Adapter createLambdaExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.Variable <em>Variable</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 rba.core.Variable
+ * @generated
+ */
+ public Adapter createVariableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.LambdaContext <em>Lambda Context</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 rba.core.LambdaContext
+ * @generated
+ */
+ public Adapter createLambdaContextAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IfStatement <em>If Statement</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 rba.core.IfStatement
+ * @generated
+ */
+ public Adapter createIfStatementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SceneOperator <em>Scene Operator</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 rba.core.SceneOperator
+ * @generated
+ */
+ public Adapter createSceneOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsOn <em>Is On</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 rba.core.IsOn
+ * @generated
+ */
+ public Adapter createIsOnAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AllocatableOperator <em>Allocatable Operator</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 rba.core.AllocatableOperator
+ * @generated
+ */
+ public Adapter createAllocatableOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.AllocatedContent <em>Allocated Content</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 rba.core.AllocatedContent
+ * @generated
+ */
+ public Adapter createAllocatedContentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ContentValue <em>Content Value</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 rba.core.ContentValue
+ * @generated
+ */
+ public Adapter createContentValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.GetContentsList <em>Get Contents List</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 rba.core.GetContentsList
+ * @generated
+ */
+ public Adapter createGetContentsListAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ActiveContents <em>Active Contents</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 rba.core.ActiveContents
+ * @generated
+ */
+ public Adapter createActiveContentsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.PropertyOperator <em>Property Operator</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 rba.core.PropertyOperator
+ * @generated
+ */
+ public Adapter createPropertyOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.GetProperty <em>Get Property</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 rba.core.GetProperty
+ * @generated
+ */
+ public Adapter createGetPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.StateValue <em>State Value</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 rba.core.StateValue
+ * @generated
+ */
+ public Adapter createStateValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.HasComeLaterThan <em>Has Come Later Than</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 rba.core.HasComeLaterThan
+ * @generated
+ */
+ public Adapter createHasComeLaterThanAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.HasComeEarlierThan <em>Has Come Earlier Than</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 rba.core.HasComeEarlierThan
+ * @generated
+ */
+ public Adapter createHasComeEarlierThanAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SugarExpression <em>Sugar Expression</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 rba.core.SugarExpression
+ * @generated
+ */
+ public Adapter createSugarExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.SugarExpressionBase <em>Sugar Expression Base</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 rba.core.SugarExpressionBase
+ * @generated
+ */
+ public Adapter createSugarExpressionBaseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ObjectCompareNot <em>Object Compare Not</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 rba.core.ObjectCompareNot
+ * @generated
+ */
+ public Adapter createObjectCompareNotAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsAllocatedTo <em>Is Allocated To</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 rba.core.IsAllocatedTo
+ * @generated
+ */
+ public Adapter createIsAllocatedToAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsChanged <em>Is Changed</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 rba.core.IsChanged
+ * @generated
+ */
+ public Adapter createIsChangedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.IsTranslatedTo <em>Is Translated To</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 rba.core.IsTranslatedTo
+ * @generated
+ */
+ public Adapter createIsTranslatedToAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.GetState <em>Get State</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 rba.core.GetState
+ * @generated
+ */
+ public Adapter createGetStateAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.ContentStateOperator <em>Content State Operator</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 rba.core.ContentStateOperator
+ * @generated
+ */
+ public Adapter createContentStateOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link rba.core.NullExpression <em>Null Expression</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 rba.core.NullExpression
+ * @generated
+ */
+ public Adapter createNullExpressionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc --> This default implementation returns null. <!--
+ * end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} // RBACoreAdapterFactory
diff --git a/rba.model.core/src/rba/core/util/RBACoreSwitch.java b/rba.model.core/src/rba/core/util/RBACoreSwitch.java
new file mode 100644
index 0000000..2009df3
--- /dev/null
+++ b/rba.model.core/src/rba/core/util/RBACoreSwitch.java
@@ -0,0 +1,2622 @@
+/**
+ */
+package rba.core.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+import rba.core.AbstractAllocatable;
+import rba.core.AbstractConstraint;
+import rba.core.AbstractContent;
+import rba.core.AbstractProperty;
+import rba.core.AbstractScene;
+import rba.core.ActiveContents;
+import rba.core.ActiveState;
+import rba.core.Allocatable;
+import rba.core.AllocatableOperator;
+import rba.core.AllocatableSet;
+import rba.core.AllocatedContent;
+import rba.core.AndOperator;
+import rba.core.ArbitrationPolicyExpression;
+import rba.core.ArithmeticOperator;
+import rba.core.ComparisonAnd;
+import rba.core.ComparisonOperator;
+import rba.core.ComplexExpression;
+import rba.core.Constraint;
+import rba.core.Content;
+import rba.core.ContentOperator;
+import rba.core.ContentSet;
+import rba.core.ContentState;
+import rba.core.ContentStateOperator;
+import rba.core.ContentValue;
+import rba.core.EnumExpression;
+import rba.core.EqualToOperator;
+import rba.core.ExistsOperator;
+import rba.core.Expression;
+import rba.core.ForAllOperator;
+import rba.core.GetAllocatables;
+import rba.core.GetContentsList;
+import rba.core.GetProperty;
+import rba.core.GetState;
+import rba.core.GreaterThanOperator;
+import rba.core.HasBeenDisplayed;
+import rba.core.HasComeEarlierThan;
+import rba.core.HasComeLaterThan;
+import rba.core.IfStatement;
+import rba.core.ImpliesOperator;
+import rba.core.IntegerProperty;
+import rba.core.IntegerValue;
+import rba.core.IsActive;
+import rba.core.IsAllocatedTo;
+import rba.core.IsChanged;
+import rba.core.IsEqualToOperator;
+import rba.core.IsGreaterThanEqualOperator;
+import rba.core.IsGreaterThanOperator;
+import rba.core.IsLowerThanEqualOperator;
+import rba.core.IsLowerThanOperator;
+import rba.core.IsOn;
+import rba.core.IsTranslatedTo;
+import rba.core.IsTypeOf;
+import rba.core.LambdaContext;
+import rba.core.LambdaExpression;
+import rba.core.LetStatement;
+import rba.core.LogicalOperator;
+import rba.core.LoserTypeExpression;
+import rba.core.LowerThanOperator;
+import rba.core.MaxOperator;
+import rba.core.MaxValue;
+import rba.core.MinOperator;
+import rba.core.MinValue;
+import rba.core.ModelElement;
+import rba.core.MuchGreaterThanOperator;
+import rba.core.NamedElement;
+import rba.core.NoneValue;
+import rba.core.NotOperator;
+import rba.core.NullExpression;
+import rba.core.ObjectCompare;
+import rba.core.ObjectCompareNot;
+import rba.core.ObjectReference;
+import rba.core.Operator;
+import rba.core.OrOperator;
+import rba.core.PackagableElement;
+import rba.core.PlusOperator;
+import rba.core.PreviousModifier;
+import rba.core.Project;
+import rba.core.PropertyOperator;
+import rba.core.RBACorePackage;
+import rba.core.RuleObject;
+import rba.core.Scene;
+import rba.core.SceneOperator;
+import rba.core.SelectOperator;
+import rba.core.SetExpression;
+import rba.core.SetOfOperator;
+import rba.core.SetOperator;
+import rba.core.SizeOperator;
+import rba.core.StandardValue;
+import rba.core.StateValue;
+import rba.core.Stereotype;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+import rba.core.Tag;
+import rba.core.ThatOfOperator;
+import rba.core.ValueExpression;
+import rba.core.Variable;
+
+/**
+ * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the call
+ * {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the model, starting
+ * with the actual class of the object and proceeding up the inheritance hierarchy until a non-null result is returned, which is
+ * the result of the switch. <!-- end-user-doc -->
+ * @see rba.core.RBACorePackage
+ * @generated
+ */
+public class RBACoreSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected static RBACorePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBACoreSwitch() {
+ if (modelPackage == null) {
+ modelPackage = RBACorePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case RBACorePackage.MODEL_ELEMENT: {
+ ModelElement modelElement = (ModelElement) theEObject;
+ T result = caseModelElement(modelElement);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.NAMED_ELEMENT: {
+ NamedElement namedElement = (NamedElement) theEObject;
+ T result = caseNamedElement(namedElement);
+ if (result == null)
+ result = caseModelElement(namedElement);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ABSTRACT_ALLOCATABLE: {
+ AbstractAllocatable abstractAllocatable = (AbstractAllocatable) theEObject;
+ T result = caseAbstractAllocatable(abstractAllocatable);
+ if (result == null)
+ result = caseRuleObject(abstractAllocatable);
+ if (result == null)
+ result = casePackagableElement(abstractAllocatable);
+ if (result == null)
+ result = caseNamedElement(abstractAllocatable);
+ if (result == null)
+ result = caseModelElement(abstractAllocatable);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ALLOCATABLE: {
+ Allocatable allocatable = (Allocatable) theEObject;
+ T result = caseAllocatable(allocatable);
+ if (result == null)
+ result = caseAbstractAllocatable(allocatable);
+ if (result == null)
+ result = caseRuleObject(allocatable);
+ if (result == null)
+ result = casePackagableElement(allocatable);
+ if (result == null)
+ result = caseNamedElement(allocatable);
+ if (result == null)
+ result = caseModelElement(allocatable);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ALLOCATABLE_SET: {
+ AllocatableSet allocatableSet = (AllocatableSet) theEObject;
+ T result = caseAllocatableSet(allocatableSet);
+ if (result == null)
+ result = caseAbstractAllocatable(allocatableSet);
+ if (result == null)
+ result = caseRuleObject(allocatableSet);
+ if (result == null)
+ result = casePackagableElement(allocatableSet);
+ if (result == null)
+ result = caseNamedElement(allocatableSet);
+ if (result == null)
+ result = caseModelElement(allocatableSet);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.PROJECT: {
+ Project project = (Project) theEObject;
+ T result = caseProject(project);
+ if (result == null)
+ result = casePackage(project);
+ if (result == null)
+ result = casePackagableElement(project);
+ if (result == null)
+ result = caseNamedElement(project);
+ if (result == null)
+ result = caseModelElement(project);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.PACKAGABLE_ELEMENT: {
+ PackagableElement packagableElement = (PackagableElement) theEObject;
+ T result = casePackagableElement(packagableElement);
+ if (result == null)
+ result = caseNamedElement(packagableElement);
+ if (result == null)
+ result = caseModelElement(packagableElement);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.PACKAGE: {
+ rba.core.Package package_ = (rba.core.Package) theEObject;
+ T result = casePackage(package_);
+ if (result == null)
+ result = casePackagableElement(package_);
+ if (result == null)
+ result = caseNamedElement(package_);
+ if (result == null)
+ result = caseModelElement(package_);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.STEREOTYPE: {
+ Stereotype stereotype = (Stereotype) theEObject;
+ T result = caseStereotype(stereotype);
+ if (result == null)
+ result = casePackagableElement(stereotype);
+ if (result == null)
+ result = caseNamedElement(stereotype);
+ if (result == null)
+ result = caseModelElement(stereotype);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.TAG: {
+ Tag tag = (Tag) theEObject;
+ T result = caseTag(tag);
+ if (result == null)
+ result = caseNamedElement(tag);
+ if (result == null)
+ result = caseModelElement(tag);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.RULE_OBJECT: {
+ RuleObject ruleObject = (RuleObject) theEObject;
+ T result = caseRuleObject(ruleObject);
+ if (result == null)
+ result = casePackagableElement(ruleObject);
+ if (result == null)
+ result = caseNamedElement(ruleObject);
+ if (result == null)
+ result = caseModelElement(ruleObject);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ABSTRACT_CONTENT: {
+ AbstractContent abstractContent = (AbstractContent) theEObject;
+ T result = caseAbstractContent(abstractContent);
+ if (result == null)
+ result = caseRuleObject(abstractContent);
+ if (result == null)
+ result = casePackagableElement(abstractContent);
+ if (result == null)
+ result = caseNamedElement(abstractContent);
+ if (result == null)
+ result = caseModelElement(abstractContent);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ABSTRACT_SCENE: {
+ AbstractScene abstractScene = (AbstractScene) theEObject;
+ T result = caseAbstractScene(abstractScene);
+ if (result == null)
+ result = caseRuleObject(abstractScene);
+ if (result == null)
+ result = casePackagableElement(abstractScene);
+ if (result == null)
+ result = caseNamedElement(abstractScene);
+ if (result == null)
+ result = caseModelElement(abstractScene);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SCENE: {
+ Scene scene = (Scene) theEObject;
+ T result = caseScene(scene);
+ if (result == null)
+ result = caseAbstractScene(scene);
+ if (result == null)
+ result = caseRuleObject(scene);
+ if (result == null)
+ result = casePackagableElement(scene);
+ if (result == null)
+ result = caseNamedElement(scene);
+ if (result == null)
+ result = caseModelElement(scene);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONTENT: {
+ Content content = (Content) theEObject;
+ T result = caseContent(content);
+ if (result == null)
+ result = caseAbstractContent(content);
+ if (result == null)
+ result = caseRuleObject(content);
+ if (result == null)
+ result = casePackagableElement(content);
+ if (result == null)
+ result = caseNamedElement(content);
+ if (result == null)
+ result = caseModelElement(content);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONTENT_SET: {
+ ContentSet contentSet = (ContentSet) theEObject;
+ T result = caseContentSet(contentSet);
+ if (result == null)
+ result = caseAbstractContent(contentSet);
+ if (result == null)
+ result = caseRuleObject(contentSet);
+ if (result == null)
+ result = casePackagableElement(contentSet);
+ if (result == null)
+ result = caseNamedElement(contentSet);
+ if (result == null)
+ result = caseModelElement(contentSet);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONTENT_STATE: {
+ ContentState contentState = (ContentState) theEObject;
+ T result = caseContentState(contentState);
+ if (result == null)
+ result = caseRuleObject(contentState);
+ if (result == null)
+ result = casePackagableElement(contentState);
+ if (result == null)
+ result = caseNamedElement(contentState);
+ if (result == null)
+ result = caseModelElement(contentState);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ABSTRACT_PROPERTY: {
+ AbstractProperty abstractProperty = (AbstractProperty) theEObject;
+ T result = caseAbstractProperty(abstractProperty);
+ if (result == null)
+ result = caseRuleObject(abstractProperty);
+ if (result == null)
+ result = casePackagableElement(abstractProperty);
+ if (result == null)
+ result = caseNamedElement(abstractProperty);
+ if (result == null)
+ result = caseModelElement(abstractProperty);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.INTEGER_PROPERTY: {
+ IntegerProperty integerProperty = (IntegerProperty) theEObject;
+ T result = caseIntegerProperty(integerProperty);
+ if (result == null)
+ result = caseAbstractProperty(integerProperty);
+ if (result == null)
+ result = caseRuleObject(integerProperty);
+ if (result == null)
+ result = casePackagableElement(integerProperty);
+ if (result == null)
+ result = caseNamedElement(integerProperty);
+ if (result == null)
+ result = caseModelElement(integerProperty);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ABSTRACT_CONSTRAINT: {
+ AbstractConstraint abstractConstraint = (AbstractConstraint) theEObject;
+ T result = caseAbstractConstraint(abstractConstraint);
+ if (result == null)
+ result = casePackagableElement(abstractConstraint);
+ if (result == null)
+ result = caseNamedElement(abstractConstraint);
+ if (result == null)
+ result = caseModelElement(abstractConstraint);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONSTRAINT: {
+ Constraint constraint = (Constraint) theEObject;
+ T result = caseConstraint(constraint);
+ if (result == null)
+ result = caseAbstractConstraint(constraint);
+ if (result == null)
+ result = casePackagableElement(constraint);
+ if (result == null)
+ result = caseNamedElement(constraint);
+ if (result == null)
+ result = caseModelElement(constraint);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.EXPRESSION: {
+ Expression expression = (Expression) theEObject;
+ T result = caseExpression(expression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.LET_STATEMENT: {
+ LetStatement letStatement = (LetStatement) theEObject;
+ T result = caseLetStatement(letStatement);
+ if (result == null)
+ result = caseModelElement(letStatement);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.COMPLEX_EXPRESSION: {
+ ComplexExpression complexExpression = (ComplexExpression) theEObject;
+ T result = caseComplexExpression(complexExpression);
+ if (result == null)
+ result = caseExpression(complexExpression);
+ if (result == null)
+ result = caseSugarExpressionBase(complexExpression);
+ if (result == null)
+ result = caseSugarExpression(complexExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.OPERATOR: {
+ Operator operator = (Operator) theEObject;
+ T result = caseOperator(operator);
+ if (result == null)
+ result = caseExpression(operator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_TYPE_OF: {
+ IsTypeOf isTypeOf = (IsTypeOf) theEObject;
+ T result = caseIsTypeOf(isTypeOf);
+ if (result == null)
+ result = caseOperator(isTypeOf);
+ if (result == null)
+ result = caseExpression(isTypeOf);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.OBJECT_REFERENCE: {
+ ObjectReference objectReference = (ObjectReference) theEObject;
+ T result = caseObjectReference(objectReference);
+ if (result == null)
+ result = caseExpression(objectReference);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.PREVIOUS_MODIFIER: {
+ PreviousModifier previousModifier = (PreviousModifier) theEObject;
+ T result = casePreviousModifier(previousModifier);
+ if (result == null)
+ result = caseExpression(previousModifier);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.GREATER_THAN_OPERATOR: {
+ GreaterThanOperator greaterThanOperator = (GreaterThanOperator) theEObject;
+ T result = caseGreaterThanOperator(greaterThanOperator);
+ if (result == null)
+ result = caseComparisonOperator(greaterThanOperator);
+ if (result == null)
+ result = caseOperator(greaterThanOperator);
+ if (result == null)
+ result = caseExpression(greaterThanOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.MUCH_GREATER_THAN_OPERATOR: {
+ MuchGreaterThanOperator muchGreaterThanOperator = (MuchGreaterThanOperator) theEObject;
+ T result = caseMuchGreaterThanOperator(muchGreaterThanOperator);
+ if (result == null)
+ result = caseComparisonOperator(muchGreaterThanOperator);
+ if (result == null)
+ result = caseOperator(muchGreaterThanOperator);
+ if (result == null)
+ result = caseExpression(muchGreaterThanOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.LOWER_THAN_OPERATOR: {
+ LowerThanOperator lowerThanOperator = (LowerThanOperator) theEObject;
+ T result = caseLowerThanOperator(lowerThanOperator);
+ if (result == null)
+ result = caseComparisonOperator(lowerThanOperator);
+ if (result == null)
+ result = caseOperator(lowerThanOperator);
+ if (result == null)
+ result = caseExpression(lowerThanOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.COMPARISON_OPERATOR: {
+ ComparisonOperator comparisonOperator = (ComparisonOperator) theEObject;
+ T result = caseComparisonOperator(comparisonOperator);
+ if (result == null)
+ result = caseOperator(comparisonOperator);
+ if (result == null)
+ result = caseExpression(comparisonOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.EQUAL_TO_OPERATOR: {
+ EqualToOperator equalToOperator = (EqualToOperator) theEObject;
+ T result = caseEqualToOperator(equalToOperator);
+ if (result == null)
+ result = caseComparisonOperator(equalToOperator);
+ if (result == null)
+ result = caseOperator(equalToOperator);
+ if (result == null)
+ result = caseExpression(equalToOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.COMPARISON_AND: {
+ ComparisonAnd comparisonAnd = (ComparisonAnd) theEObject;
+ T result = caseComparisonAnd(comparisonAnd);
+ if (result == null)
+ result = caseComparisonOperator(comparisonAnd);
+ if (result == null)
+ result = caseOperator(comparisonAnd);
+ if (result == null)
+ result = caseExpression(comparisonAnd);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.LOGICAL_OPERATOR: {
+ LogicalOperator logicalOperator = (LogicalOperator) theEObject;
+ T result = caseLogicalOperator(logicalOperator);
+ if (result == null)
+ result = caseOperator(logicalOperator);
+ if (result == null)
+ result = caseExpression(logicalOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.AND_OPERATOR: {
+ AndOperator andOperator = (AndOperator) theEObject;
+ T result = caseAndOperator(andOperator);
+ if (result == null)
+ result = caseLogicalOperator(andOperator);
+ if (result == null)
+ result = caseOperator(andOperator);
+ if (result == null)
+ result = caseExpression(andOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.OR_OPERATOR: {
+ OrOperator orOperator = (OrOperator) theEObject;
+ T result = caseOrOperator(orOperator);
+ if (result == null)
+ result = caseLogicalOperator(orOperator);
+ if (result == null)
+ result = caseOperator(orOperator);
+ if (result == null)
+ result = caseExpression(orOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.NOT_OPERATOR: {
+ NotOperator notOperator = (NotOperator) theEObject;
+ T result = caseNotOperator(notOperator);
+ if (result == null)
+ result = caseLogicalOperator(notOperator);
+ if (result == null)
+ result = caseOperator(notOperator);
+ if (result == null)
+ result = caseExpression(notOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_EQUAL_TO_OPERATOR: {
+ IsEqualToOperator isEqualToOperator = (IsEqualToOperator) theEObject;
+ T result = caseIsEqualToOperator(isEqualToOperator);
+ if (result == null)
+ result = caseLogicalOperator(isEqualToOperator);
+ if (result == null)
+ result = caseOperator(isEqualToOperator);
+ if (result == null)
+ result = caseExpression(isEqualToOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_GREATER_THAN_OPERATOR: {
+ IsGreaterThanOperator isGreaterThanOperator = (IsGreaterThanOperator) theEObject;
+ T result = caseIsGreaterThanOperator(isGreaterThanOperator);
+ if (result == null)
+ result = caseLogicalOperator(isGreaterThanOperator);
+ if (result == null)
+ result = caseOperator(isGreaterThanOperator);
+ if (result == null)
+ result = caseExpression(isGreaterThanOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_LOWER_THAN_OPERATOR: {
+ IsLowerThanOperator isLowerThanOperator = (IsLowerThanOperator) theEObject;
+ T result = caseIsLowerThanOperator(isLowerThanOperator);
+ if (result == null)
+ result = caseLogicalOperator(isLowerThanOperator);
+ if (result == null)
+ result = caseOperator(isLowerThanOperator);
+ if (result == null)
+ result = caseExpression(isLowerThanOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_GREATER_THAN_EQUAL_OPERATOR: {
+ IsGreaterThanEqualOperator isGreaterThanEqualOperator = (IsGreaterThanEqualOperator) theEObject;
+ T result = caseIsGreaterThanEqualOperator(isGreaterThanEqualOperator);
+ if (result == null)
+ result = caseLogicalOperator(isGreaterThanEqualOperator);
+ if (result == null)
+ result = caseOperator(isGreaterThanEqualOperator);
+ if (result == null)
+ result = caseExpression(isGreaterThanEqualOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_LOWER_THAN_EQUAL_OPERATOR: {
+ IsLowerThanEqualOperator isLowerThanEqualOperator = (IsLowerThanEqualOperator) theEObject;
+ T result = caseIsLowerThanEqualOperator(isLowerThanEqualOperator);
+ if (result == null)
+ result = caseLogicalOperator(isLowerThanEqualOperator);
+ if (result == null)
+ result = caseOperator(isLowerThanEqualOperator);
+ if (result == null)
+ result = caseExpression(isLowerThanEqualOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ARITHMETIC_OPERATOR: {
+ ArithmeticOperator arithmeticOperator = (ArithmeticOperator) theEObject;
+ T result = caseArithmeticOperator(arithmeticOperator);
+ if (result == null)
+ result = caseOperator(arithmeticOperator);
+ if (result == null)
+ result = caseExpression(arithmeticOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.PLUS_OPERATOR: {
+ PlusOperator plusOperator = (PlusOperator) theEObject;
+ T result = casePlusOperator(plusOperator);
+ if (result == null)
+ result = caseArithmeticOperator(plusOperator);
+ if (result == null)
+ result = caseOperator(plusOperator);
+ if (result == null)
+ result = caseExpression(plusOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IMPLIES_OPERATOR: {
+ ImpliesOperator impliesOperator = (ImpliesOperator) theEObject;
+ T result = caseImpliesOperator(impliesOperator);
+ if (result == null)
+ result = caseLogicalOperator(impliesOperator);
+ if (result == null)
+ result = caseOperator(impliesOperator);
+ if (result == null)
+ result = caseExpression(impliesOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONTENT_OPERATOR: {
+ ContentOperator contentOperator = (ContentOperator) theEObject;
+ T result = caseContentOperator(contentOperator);
+ if (result == null)
+ result = caseOperator(contentOperator);
+ if (result == null)
+ result = caseExpression(contentOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_ACTIVE: {
+ IsActive isActive = (IsActive) theEObject;
+ T result = caseIsActive(isActive);
+ if (result == null)
+ result = caseContentOperator(isActive);
+ if (result == null)
+ result = caseOperator(isActive);
+ if (result == null)
+ result = caseExpression(isActive);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.GET_ALLOCATABLES: {
+ GetAllocatables getAllocatables = (GetAllocatables) theEObject;
+ T result = caseGetAllocatables(getAllocatables);
+ if (result == null)
+ result = caseContentOperator(getAllocatables);
+ if (result == null)
+ result = caseOperator(getAllocatables);
+ if (result == null)
+ result = caseExpression(getAllocatables);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.HAS_BEEN_DISPLAYED: {
+ HasBeenDisplayed hasBeenDisplayed = (HasBeenDisplayed) theEObject;
+ T result = caseHasBeenDisplayed(hasBeenDisplayed);
+ if (result == null)
+ result = caseContentOperator(hasBeenDisplayed);
+ if (result == null)
+ result = caseOperator(hasBeenDisplayed);
+ if (result == null)
+ result = caseExpression(hasBeenDisplayed);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ACTIVE_STATE: {
+ ActiveState activeState = (ActiveState) theEObject;
+ T result = caseActiveState(activeState);
+ if (result == null)
+ result = caseContentOperator(activeState);
+ if (result == null)
+ result = caseOperator(activeState);
+ if (result == null)
+ result = caseExpression(activeState);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.OBJECT_COMPARE: {
+ ObjectCompare objectCompare = (ObjectCompare) theEObject;
+ T result = caseObjectCompare(objectCompare);
+ if (result == null)
+ result = caseOperator(objectCompare);
+ if (result == null)
+ result = caseExpression(objectCompare);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.THAT_OF_OPERATOR: {
+ ThatOfOperator thatOfOperator = (ThatOfOperator) theEObject;
+ T result = caseThatOfOperator(thatOfOperator);
+ if (result == null)
+ result = caseOperator(thatOfOperator);
+ if (result == null)
+ result = caseExpression(thatOfOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.VALUE_EXPRESSION: {
+ ValueExpression valueExpression = (ValueExpression) theEObject;
+ T result = caseValueExpression(valueExpression);
+ if (result == null)
+ result = caseExpression(valueExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.MAX_VALUE: {
+ MaxValue maxValue = (MaxValue) theEObject;
+ T result = caseMaxValue(maxValue);
+ if (result == null)
+ result = caseValueExpression(maxValue);
+ if (result == null)
+ result = caseExpression(maxValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.MIN_VALUE: {
+ MinValue minValue = (MinValue) theEObject;
+ T result = caseMinValue(minValue);
+ if (result == null)
+ result = caseValueExpression(minValue);
+ if (result == null)
+ result = caseExpression(minValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.NONE_VALUE: {
+ NoneValue noneValue = (NoneValue) theEObject;
+ T result = caseNoneValue(noneValue);
+ if (result == null)
+ result = caseValueExpression(noneValue);
+ if (result == null)
+ result = caseExpression(noneValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.STANDARD_VALUE: {
+ StandardValue standardValue = (StandardValue) theEObject;
+ T result = caseStandardValue(standardValue);
+ if (result == null)
+ result = caseValueExpression(standardValue);
+ if (result == null)
+ result = caseExpression(standardValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.INTEGER_VALUE: {
+ IntegerValue integerValue = (IntegerValue) theEObject;
+ T result = caseIntegerValue(integerValue);
+ if (result == null)
+ result = caseValueExpression(integerValue);
+ if (result == null)
+ result = caseExpression(integerValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ENUM_EXPRESSION: {
+ EnumExpression enumExpression = (EnumExpression) theEObject;
+ T result = caseEnumExpression(enumExpression);
+ if (result == null)
+ result = caseExpression(enumExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.LOSER_TYPE_EXPRESSION: {
+ LoserTypeExpression loserTypeExpression = (LoserTypeExpression) theEObject;
+ T result = caseLoserTypeExpression(loserTypeExpression);
+ if (result == null)
+ result = caseEnumExpression(loserTypeExpression);
+ if (result == null)
+ result = caseExpression(loserTypeExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ARBITRATION_POLICY_EXPRESSION: {
+ ArbitrationPolicyExpression arbitrationPolicyExpression = (ArbitrationPolicyExpression) theEObject;
+ T result = caseArbitrationPolicyExpression(arbitrationPolicyExpression);
+ if (result == null)
+ result = caseEnumExpression(arbitrationPolicyExpression);
+ if (result == null)
+ result = caseExpression(arbitrationPolicyExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SET_EXPRESSION: {
+ SetExpression setExpression = (SetExpression) theEObject;
+ T result = caseSetExpression(setExpression);
+ if (result == null)
+ result = caseExpression(setExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SET_OPERATOR: {
+ SetOperator setOperator = (SetOperator) theEObject;
+ T result = caseSetOperator(setOperator);
+ if (result == null)
+ result = caseOperator(setOperator);
+ if (result == null)
+ result = caseExpression(setOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SIZE_OPERATOR: {
+ SizeOperator sizeOperator = (SizeOperator) theEObject;
+ T result = caseSizeOperator(sizeOperator);
+ if (result == null)
+ result = caseSetOperator(sizeOperator);
+ if (result == null)
+ result = caseOperator(sizeOperator);
+ if (result == null)
+ result = caseExpression(sizeOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.EXISTS_OPERATOR: {
+ ExistsOperator existsOperator = (ExistsOperator) theEObject;
+ T result = caseExistsOperator(existsOperator);
+ if (result == null)
+ result = caseLambdaContext(existsOperator);
+ if (result == null)
+ result = caseSetOperator(existsOperator);
+ if (result == null)
+ result = caseOperator(existsOperator);
+ if (result == null)
+ result = caseExpression(existsOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.FOR_ALL_OPERATOR: {
+ ForAllOperator forAllOperator = (ForAllOperator) theEObject;
+ T result = caseForAllOperator(forAllOperator);
+ if (result == null)
+ result = caseLambdaContext(forAllOperator);
+ if (result == null)
+ result = caseSetOperator(forAllOperator);
+ if (result == null)
+ result = caseOperator(forAllOperator);
+ if (result == null)
+ result = caseExpression(forAllOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.MAX_OPERATOR: {
+ MaxOperator maxOperator = (MaxOperator) theEObject;
+ T result = caseMaxOperator(maxOperator);
+ if (result == null)
+ result = caseLambdaContext(maxOperator);
+ if (result == null)
+ result = caseSetOperator(maxOperator);
+ if (result == null)
+ result = caseOperator(maxOperator);
+ if (result == null)
+ result = caseExpression(maxOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.MIN_OPERATOR: {
+ MinOperator minOperator = (MinOperator) theEObject;
+ T result = caseMinOperator(minOperator);
+ if (result == null)
+ result = caseLambdaContext(minOperator);
+ if (result == null)
+ result = caseSetOperator(minOperator);
+ if (result == null)
+ result = caseOperator(minOperator);
+ if (result == null)
+ result = caseExpression(minOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SELECT_OPERATOR: {
+ SelectOperator selectOperator = (SelectOperator) theEObject;
+ T result = caseSelectOperator(selectOperator);
+ if (result == null)
+ result = caseLambdaContext(selectOperator);
+ if (result == null)
+ result = caseSetOperator(selectOperator);
+ if (result == null)
+ result = caseOperator(selectOperator);
+ if (result == null)
+ result = caseExpression(selectOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SET_OF_OPERATOR: {
+ SetOfOperator setOfOperator = (SetOfOperator) theEObject;
+ T result = caseSetOfOperator(setOfOperator);
+ if (result == null)
+ result = caseOperator(setOfOperator);
+ if (result == null)
+ result = caseExpression(setOfOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.LAMBDA_EXPRESSION: {
+ LambdaExpression lambdaExpression = (LambdaExpression) theEObject;
+ T result = caseLambdaExpression(lambdaExpression);
+ if (result == null)
+ result = caseExpression(lambdaExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.VARIABLE: {
+ Variable variable = (Variable) theEObject;
+ T result = caseVariable(variable);
+ if (result == null)
+ result = caseRuleObject(variable);
+ if (result == null)
+ result = casePackagableElement(variable);
+ if (result == null)
+ result = caseNamedElement(variable);
+ if (result == null)
+ result = caseModelElement(variable);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.LAMBDA_CONTEXT: {
+ LambdaContext lambdaContext = (LambdaContext) theEObject;
+ T result = caseLambdaContext(lambdaContext);
+ if (result == null)
+ result = caseSetOperator(lambdaContext);
+ if (result == null)
+ result = caseOperator(lambdaContext);
+ if (result == null)
+ result = caseExpression(lambdaContext);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IF_STATEMENT: {
+ IfStatement ifStatement = (IfStatement) theEObject;
+ T result = caseIfStatement(ifStatement);
+ if (result == null)
+ result = caseExpression(ifStatement);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SCENE_OPERATOR: {
+ SceneOperator sceneOperator = (SceneOperator) theEObject;
+ T result = caseSceneOperator(sceneOperator);
+ if (result == null)
+ result = caseOperator(sceneOperator);
+ if (result == null)
+ result = caseExpression(sceneOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_ON: {
+ IsOn isOn = (IsOn) theEObject;
+ T result = caseIsOn(isOn);
+ if (result == null)
+ result = caseSceneOperator(isOn);
+ if (result == null)
+ result = caseOperator(isOn);
+ if (result == null)
+ result = caseExpression(isOn);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ALLOCATABLE_OPERATOR: {
+ AllocatableOperator allocatableOperator = (AllocatableOperator) theEObject;
+ T result = caseAllocatableOperator(allocatableOperator);
+ if (result == null)
+ result = caseOperator(allocatableOperator);
+ if (result == null)
+ result = caseExpression(allocatableOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ALLOCATED_CONTENT: {
+ AllocatedContent allocatedContent = (AllocatedContent) theEObject;
+ T result = caseAllocatedContent(allocatedContent);
+ if (result == null)
+ result = caseAllocatableOperator(allocatedContent);
+ if (result == null)
+ result = caseOperator(allocatedContent);
+ if (result == null)
+ result = caseExpression(allocatedContent);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONTENT_VALUE: {
+ ContentValue contentValue = (ContentValue) theEObject;
+ T result = caseContentValue(contentValue);
+ if (result == null)
+ result = caseAllocatableOperator(contentValue);
+ if (result == null)
+ result = caseOperator(contentValue);
+ if (result == null)
+ result = caseExpression(contentValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.GET_CONTENTS_LIST: {
+ GetContentsList getContentsList = (GetContentsList) theEObject;
+ T result = caseGetContentsList(getContentsList);
+ if (result == null)
+ result = caseAllocatableOperator(getContentsList);
+ if (result == null)
+ result = caseOperator(getContentsList);
+ if (result == null)
+ result = caseExpression(getContentsList);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.ACTIVE_CONTENTS: {
+ ActiveContents activeContents = (ActiveContents) theEObject;
+ T result = caseActiveContents(activeContents);
+ if (result == null)
+ result = caseAllocatableOperator(activeContents);
+ if (result == null)
+ result = caseOperator(activeContents);
+ if (result == null)
+ result = caseExpression(activeContents);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.PROPERTY_OPERATOR: {
+ PropertyOperator propertyOperator = (PropertyOperator) theEObject;
+ T result = casePropertyOperator(propertyOperator);
+ if (result == null)
+ result = caseOperator(propertyOperator);
+ if (result == null)
+ result = caseExpression(propertyOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.GET_PROPERTY: {
+ GetProperty getProperty = (GetProperty) theEObject;
+ T result = caseGetProperty(getProperty);
+ if (result == null)
+ result = casePropertyOperator(getProperty);
+ if (result == null)
+ result = caseOperator(getProperty);
+ if (result == null)
+ result = caseExpression(getProperty);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.STATE_VALUE: {
+ StateValue stateValue = (StateValue) theEObject;
+ T result = caseStateValue(stateValue);
+ if (result == null)
+ result = caseContentOperator(stateValue);
+ if (result == null)
+ result = caseOperator(stateValue);
+ if (result == null)
+ result = caseExpression(stateValue);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.HAS_COME_LATER_THAN: {
+ HasComeLaterThan hasComeLaterThan = (HasComeLaterThan) theEObject;
+ T result = caseHasComeLaterThan(hasComeLaterThan);
+ if (result == null)
+ result = caseContentOperator(hasComeLaterThan);
+ if (result == null)
+ result = caseOperator(hasComeLaterThan);
+ if (result == null)
+ result = caseExpression(hasComeLaterThan);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.HAS_COME_EARLIER_THAN: {
+ HasComeEarlierThan hasComeEarlierThan = (HasComeEarlierThan) theEObject;
+ T result = caseHasComeEarlierThan(hasComeEarlierThan);
+ if (result == null)
+ result = caseContentOperator(hasComeEarlierThan);
+ if (result == null)
+ result = caseOperator(hasComeEarlierThan);
+ if (result == null)
+ result = caseExpression(hasComeEarlierThan);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SUGAR_EXPRESSION: {
+ SugarExpression sugarExpression = (SugarExpression) theEObject;
+ T result = caseSugarExpression(sugarExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.SUGAR_EXPRESSION_BASE: {
+ SugarExpressionBase sugarExpressionBase = (SugarExpressionBase) theEObject;
+ T result = caseSugarExpressionBase(sugarExpressionBase);
+ if (result == null)
+ result = caseSugarExpression(sugarExpressionBase);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.OBJECT_COMPARE_NOT: {
+ ObjectCompareNot objectCompareNot = (ObjectCompareNot) theEObject;
+ T result = caseObjectCompareNot(objectCompareNot);
+ if (result == null)
+ result = caseOperator(objectCompareNot);
+ if (result == null)
+ result = caseSugarExpressionBase(objectCompareNot);
+ if (result == null)
+ result = caseExpression(objectCompareNot);
+ if (result == null)
+ result = caseSugarExpression(objectCompareNot);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_ALLOCATED_TO: {
+ IsAllocatedTo isAllocatedTo = (IsAllocatedTo) theEObject;
+ T result = caseIsAllocatedTo(isAllocatedTo);
+ if (result == null)
+ result = caseContentOperator(isAllocatedTo);
+ if (result == null)
+ result = caseSugarExpressionBase(isAllocatedTo);
+ if (result == null)
+ result = caseOperator(isAllocatedTo);
+ if (result == null)
+ result = caseSugarExpression(isAllocatedTo);
+ if (result == null)
+ result = caseExpression(isAllocatedTo);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_CHANGED: {
+ IsChanged isChanged = (IsChanged) theEObject;
+ T result = caseIsChanged(isChanged);
+ if (result == null)
+ result = caseAllocatableOperator(isChanged);
+ if (result == null)
+ result = caseSugarExpressionBase(isChanged);
+ if (result == null)
+ result = caseOperator(isChanged);
+ if (result == null)
+ result = caseSugarExpression(isChanged);
+ if (result == null)
+ result = caseExpression(isChanged);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.IS_TRANSLATED_TO: {
+ IsTranslatedTo isTranslatedTo = (IsTranslatedTo) theEObject;
+ T result = caseIsTranslatedTo(isTranslatedTo);
+ if (result == null)
+ result = caseAllocatableOperator(isTranslatedTo);
+ if (result == null)
+ result = caseSugarExpressionBase(isTranslatedTo);
+ if (result == null)
+ result = caseOperator(isTranslatedTo);
+ if (result == null)
+ result = caseSugarExpression(isTranslatedTo);
+ if (result == null)
+ result = caseExpression(isTranslatedTo);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.GET_STATE: {
+ GetState getState = (GetState) theEObject;
+ T result = caseGetState(getState);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.CONTENT_STATE_OPERATOR: {
+ ContentStateOperator contentStateOperator = (ContentStateOperator) theEObject;
+ T result = caseContentStateOperator(contentStateOperator);
+ if (result == null)
+ result = caseOperator(contentStateOperator);
+ if (result == null)
+ result = caseExpression(contentStateOperator);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case RBACorePackage.NULL_EXPRESSION: {
+ NullExpression nullExpression = (NullExpression) theEObject;
+ T result = caseNullExpression(nullExpression);
+ if (result == null)
+ result = caseExpression(nullExpression);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model 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>Model Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModelElement(ModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Named 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>Named Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNamedElement(NamedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Allocatable</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>Abstract Allocatable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractAllocatable(AbstractAllocatable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocatable</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>Allocatable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocatable(Allocatable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocatable Set</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>Allocatable Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocatableSet(AllocatableSet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Project</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>Project</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProject(Project object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Packagable 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>Packagable Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePackagableElement(PackagableElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Package</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>Package</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePackage(rba.core.Package object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Stereotype</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>Stereotype</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStereotype(Stereotype object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Tag</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>Tag</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTag(Tag object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Rule Object</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>Rule Object</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRuleObject(RuleObject object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Content</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>Abstract Content</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractContent(AbstractContent object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Scene</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>Abstract Scene</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractScene(AbstractScene object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Scene</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>Scene</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseScene(Scene object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content</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>Content</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContent(Content object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content Set</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>Content Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContentSet(ContentSet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content State</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>Content State</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContentState(ContentState object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Property</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>Abstract Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractProperty(AbstractProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Integer Property</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>Integer Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIntegerProperty(IntegerProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Constraint</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>Abstract Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractConstraint(AbstractConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Constraint</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>Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConstraint(Constraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Expression</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>Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseExpression(Expression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Let Statement</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>Let Statement</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLetStatement(LetStatement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Complex Expression</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>Complex Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseComplexExpression(ComplexExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Operator</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>Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOperator(Operator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Type Of</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>Is Type Of</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsTypeOf(IsTypeOf object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Object Reference</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>Object Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseObjectReference(ObjectReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Previous Modifier</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>Previous Modifier</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePreviousModifier(PreviousModifier object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Greater Than Operator</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>Greater Than Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGreaterThanOperator(GreaterThanOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Much Greater Than Operator</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>Much Greater Than Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMuchGreaterThanOperator(MuchGreaterThanOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Lower Than Operator</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>Lower Than Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLowerThanOperator(LowerThanOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Comparison Operator</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>Comparison Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseComparisonOperator(ComparisonOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Equal To Operator</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>Equal To Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEqualToOperator(EqualToOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Comparison And</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>Comparison And</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseComparisonAnd(ComparisonAnd object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Logical Operator</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>Logical Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLogicalOperator(LogicalOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>And Operator</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>And Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAndOperator(AndOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Or Operator</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>Or Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOrOperator(OrOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Not Operator</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>Not Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNotOperator(NotOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Equal To Operator</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>Is Equal To Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsEqualToOperator(IsEqualToOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Greater Than Operator</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>Is Greater Than Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsGreaterThanOperator(IsGreaterThanOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Lower Than Operator</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>Is Lower Than Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsLowerThanOperator(IsLowerThanOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Greater Than Equal Operator</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>Is Greater Than Equal Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsGreaterThanEqualOperator(IsGreaterThanEqualOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Lower Than Equal Operator</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>Is Lower Than Equal Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsLowerThanEqualOperator(IsLowerThanEqualOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Arithmetic Operator</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>Arithmetic Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseArithmeticOperator(ArithmeticOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Plus Operator</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>Plus Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePlusOperator(PlusOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Implies Operator</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>Implies Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseImpliesOperator(ImpliesOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content Operator</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>Content Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContentOperator(ContentOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Active</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>Is Active</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsActive(IsActive object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Get Allocatables</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>Get Allocatables</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGetAllocatables(GetAllocatables object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Has Been Displayed</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>Has Been Displayed</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHasBeenDisplayed(HasBeenDisplayed object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Active State</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>Active State</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseActiveState(ActiveState object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Object Compare</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>Object Compare</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseObjectCompare(ObjectCompare object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>That Of Operator</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>That Of Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseThatOfOperator(ThatOfOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Value Expression</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>Value Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseValueExpression(ValueExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Max Value</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>Max Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMaxValue(MaxValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Min Value</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>Min Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMinValue(MinValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>None Value</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>None Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNoneValue(NoneValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Standard Value</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>Standard Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStandardValue(StandardValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Integer Value</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>Integer Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIntegerValue(IntegerValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Enum Expression</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>Enum Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEnumExpression(EnumExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Loser Type Expression</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>Loser Type Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLoserTypeExpression(LoserTypeExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Arbitration Policy Expression</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>Arbitration Policy Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseArbitrationPolicyExpression(ArbitrationPolicyExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Set Expression</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>Set Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSetExpression(SetExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Set Operator</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>Set Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSetOperator(SetOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Size Operator</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>Size Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSizeOperator(SizeOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Exists Operator</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>Exists Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseExistsOperator(ExistsOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>For All Operator</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>For All Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseForAllOperator(ForAllOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Max Operator</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>Max Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMaxOperator(MaxOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Min Operator</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>Min Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMinOperator(MinOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Select Operator</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>Select Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSelectOperator(SelectOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Set Of Operator</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>Set Of Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSetOfOperator(SetOfOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Lambda Expression</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>Lambda Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLambdaExpression(LambdaExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Variable</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>Variable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVariable(Variable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Lambda Context</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>Lambda Context</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLambdaContext(LambdaContext object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>If Statement</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>If Statement</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIfStatement(IfStatement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Scene Operator</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>Scene Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSceneOperator(SceneOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is On</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>Is On</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsOn(IsOn object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocatable Operator</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>Allocatable Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocatableOperator(AllocatableOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocated Content</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>Allocated Content</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocatedContent(AllocatedContent object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content Value</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>Content Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContentValue(ContentValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Get Contents List</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>Get Contents List</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGetContentsList(GetContentsList object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Active Contents</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>Active Contents</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseActiveContents(ActiveContents object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Property Operator</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>Property Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePropertyOperator(PropertyOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Get Property</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>Get Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGetProperty(GetProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>State Value</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>State Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStateValue(StateValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Has Come Later Than</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>Has Come Later Than</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHasComeLaterThan(HasComeLaterThan object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Has Come Earlier Than</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>Has Come Earlier Than</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHasComeEarlierThan(HasComeEarlierThan object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Sugar Expression</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>Sugar Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSugarExpression(SugarExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Sugar Expression Base</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>Sugar Expression Base</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSugarExpressionBase(SugarExpressionBase object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Object Compare Not</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>Object Compare Not</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseObjectCompareNot(ObjectCompareNot object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Allocated To</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>Is Allocated To</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsAllocatedTo(IsAllocatedTo object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Changed</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>Is Changed</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsChanged(IsChanged object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is Translated To</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>Is Translated To</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsTranslatedTo(IsTranslatedTo object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Get State</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>Get State</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGetState(GetState object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content State Operator</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>Content State Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContentStateOperator(ContentStateOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Null Expression</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>Null Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNullExpression(NullExpression object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc --> This
+ * implementation returns null; returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} // RBACoreSwitch