Browse Source

LabelProvider, NameProvider, NamespaceScope

benjamin.schwertfeger@gmail.com 14 years ago
parent
commit
67bfc13dff
100 changed files with 67360 additions and 65427 deletions
  1. 6 0
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/AbstractSTextProposalProvider.java
  2. 5 1
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/STextParser.java
  3. 281 21
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.g
  4. 156 152
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.tokens
  5. 3426 3354
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextLexer.java
  6. 30979 30072
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextParser.java
  7. 8 5
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/internal/STextActivator.java
  8. 11 7
      plugins/org.yakindu.sct.model.stext.ui/src/org/yakindu/sct/model/stext/ui/labeling/STextLabelProvider.java
  9. 273 272
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore
  10. 233 232
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.genmodel
  11. 1485 1467
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.xmi
  12. 112 30
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parseTreeConstruction/STextParsetreeConstructor.java
  13. 109 32
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSText.g
  14. 156 152
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSText.tokens
  15. 3428 3355
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSTextLexer.java
  16. 12570 12181
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSTextParser.java
  17. 117 62
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/services/STextGrammarAccess.java
  18. 226 227
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/AdditiveOperator.java
  19. 20 21
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/AlwaysEvent.java
  20. 111 112
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Assignment.java
  21. 469 470
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/AssignmentOperator.java
  22. 79 80
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BitwiseAndExpression.java
  23. 79 80
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BitwiseOrExpression.java
  24. 79 80
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BitwiseXorExpression.java
  25. 20 21
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BuiltinEventSpec.java
  26. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Clock.java
  27. 106 107
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ConditionalExpression.java
  28. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/DefRoot.java
  29. 253 254
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Direction.java
  30. 53 54
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ElementReferenceExpression.java
  31. 20 21
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EntryEvent.java
  32. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EntryPointSpec.java
  33. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Entrypoint.java
  34. 113 114
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventDefinition.java
  35. 80 81
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventDerivation.java
  36. 81 82
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventRaising.java
  37. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventSpec.java
  38. 20 21
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ExitEvent.java
  39. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ExitPointSpec.java
  40. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Exitpoint.java
  41. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Expression.java
  42. 53 54
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/InterfaceScope.java
  43. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/InternalScope.java
  44. 54 55
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LocalReaction.java
  45. 79 80
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalAndExpression.java
  46. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalNotExpression.java
  47. 79 80
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalOrExpression.java
  48. 109 110
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalRelationExpression.java
  49. 253 254
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/MultiplicativeOperator.java
  50. 109 110
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/NumericalAddSubtractExpression.java
  51. 109 110
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/NumericalMultiplyDivideExpression.java
  52. 82 83
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/NumericalUnaryExpression.java
  53. 20 21
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/OnCycleEvent.java
  54. 77 78
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Operation.java
  55. 70 71
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/OperationCall.java
  56. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/PrimitiveValueExpression.java
  57. 46 47
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionEffect.java
  58. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionPriority.java
  59. 45 46
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionProperties.java
  60. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionProperty.java
  61. 72 73
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionTrigger.java
  62. 53 54
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/RegularEventSpec.java
  63. 333 334
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/RelationalOperator.java
  64. 45 46
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Root.java
  65. 109 110
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ShiftExpression.java
  66. 226 227
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ShiftOperator.java
  67. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/SimpleScope.java
  68. 55 56
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StateDeclaration.java
  69. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StateRoot.java
  70. 74 48
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StatechartDefinition.java
  71. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StatechartRoot.java
  72. 514 515
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StextFactory.java
  73. 4570 4543
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StextPackage.java
  74. 112 113
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TimeEventSpec.java
  75. 226 227
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TimeEventType.java
  76. 253 254
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TimeUnit.java
  77. 53 54
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TransitionReaction.java
  78. 52 53
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TransitionRoot.java
  79. 21 22
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TransitionStatement.java
  80. 306 307
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Type.java
  81. 253 254
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/UnaryOperator.java
  82. 137 138
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/VariableDefinition.java
  83. 44 45
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/AlwaysEventImpl.java
  84. 336 337
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/AssignmentImpl.java
  85. 266 267
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BitwiseAndExpressionImpl.java
  86. 266 267
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BitwiseOrExpressionImpl.java
  87. 266 267
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BitwiseXorExpressionImpl.java
  88. 44 45
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BuiltinEventSpecImpl.java
  89. 46 47
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ClockImpl.java
  90. 337 338
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ConditionalExpressionImpl.java
  91. 46 47
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/DefRootImpl.java
  92. 176 177
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ElementReferenceExpressionImpl.java
  93. 44 45
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EntryEventImpl.java
  94. 174 175
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EntryPointSpecImpl.java
  95. 46 47
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EntrypointImpl.java
  96. 326 327
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventDefinitionImpl.java
  97. 267 268
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventDerivationImpl.java
  98. 264 265
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventRaisingImpl.java
  99. 46 47
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventSpecImpl.java
  100. 0 0
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ExitEventImpl.java

+ 6 - 0
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/AbstractSTextProposalProvider.java

@@ -29,6 +29,9 @@ public class AbstractSTextProposalProvider extends TerminalsProposalProvider {
 	public void completeTransitionRoot_Def(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
+	public void completeStatechartDefinition_Namespace(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+	}
 	public void completeStatechartDefinition_DefinitionScopes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -297,6 +300,9 @@ public class AbstractSTextProposalProvider extends TerminalsProposalProvider {
 	public void complete_Exitpoint(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
+	public void complete_FQN(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		// subclasses may override
+	}
 	public void complete_Reaction(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}

+ 5 - 1
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/STextParser.java

@@ -66,6 +66,7 @@ public class STextParser extends AbstractContentAssistParser {
 					put(grammarAccess.getStateRootAccess().getGroup(), "rule__StateRoot__Group__0");
 					put(grammarAccess.getTransitionRootAccess().getGroup(), "rule__TransitionRoot__Group__0");
 					put(grammarAccess.getStatechartDefinitionAccess().getGroup(), "rule__StatechartDefinition__Group__0");
+					put(grammarAccess.getStatechartDefinitionAccess().getGroup_1(), "rule__StatechartDefinition__Group_1__0");
 					put(grammarAccess.getSimpleScopeAccess().getGroup(), "rule__SimpleScope__Group__0");
 					put(grammarAccess.getInterfaceScopeAccess().getGroup(), "rule__InterfaceScope__Group__0");
 					put(grammarAccess.getInternalScopeAccess().getGroup(), "rule__InternalScope__Group__0");
@@ -82,6 +83,8 @@ public class STextParser extends AbstractContentAssistParser {
 					put(grammarAccess.getOperationAccess().getGroup_6(), "rule__Operation__Group_6__0");
 					put(grammarAccess.getEntrypointAccess().getGroup(), "rule__Entrypoint__Group__0");
 					put(grammarAccess.getExitpointAccess().getGroup(), "rule__Exitpoint__Group__0");
+					put(grammarAccess.getFQNAccess().getGroup(), "rule__FQN__Group__0");
+					put(grammarAccess.getFQNAccess().getGroup_1(), "rule__FQN__Group_1__0");
 					put(grammarAccess.getLocalReactionAccess().getGroup(), "rule__LocalReaction__Group__0");
 					put(grammarAccess.getLocalReactionAccess().getGroup_1(), "rule__LocalReaction__Group_1__0");
 					put(grammarAccess.getLocalReactionAccess().getGroup_2(), "rule__LocalReaction__Group_2__0");
@@ -138,7 +141,8 @@ public class STextParser extends AbstractContentAssistParser {
 					put(grammarAccess.getStatechartRootAccess().getDefAssignment_1(), "rule__StatechartRoot__DefAssignment_1");
 					put(grammarAccess.getStateRootAccess().getDefAssignment_1(), "rule__StateRoot__DefAssignment_1");
 					put(grammarAccess.getTransitionRootAccess().getDefAssignment_1(), "rule__TransitionRoot__DefAssignment_1");
-					put(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_1(), "rule__StatechartDefinition__DefinitionScopesAssignment_1");
+					put(grammarAccess.getStatechartDefinitionAccess().getNamespaceAssignment_1_1(), "rule__StatechartDefinition__NamespaceAssignment_1_1");
+					put(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_2(), "rule__StatechartDefinition__DefinitionScopesAssignment_2");
 					put(grammarAccess.getStateDeclarationAccess().getScopeAssignment(), "rule__StateDeclaration__ScopeAssignment");
 					put(grammarAccess.getSimpleScopeAccess().getDeclarationsAssignment_1(), "rule__SimpleScope__DeclarationsAssignment_1");
 					put(grammarAccess.getInterfaceScopeAccess().getNameAssignment_2(), "rule__InterfaceScope__NameAssignment_2");

+ 281 - 21
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.g

@@ -24,7 +24,6 @@ import java.io.InputStream;
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
 import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.xtext.parsetree.*;
 import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.xtext.parser.antlr.XtextTokenStream;
@@ -620,6 +619,34 @@ finally {
 
 
 
+// Entry rule entryRuleFQN
+entryRuleFQN 
+:
+{ before(grammarAccess.getFQNRule()); }
+	 ruleFQN
+{ after(grammarAccess.getFQNRule()); } 
+	 EOF 
+;
+
+// Rule FQN
+ruleFQN
+    @init {
+		int stackSize = keepStackSize();
+    }
+	:
+(
+{ before(grammarAccess.getFQNAccess().getGroup()); }
+(rule__FQN__Group__0)
+{ after(grammarAccess.getFQNAccess().getGroup()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
 
 
 // Entry rule entryRuleLocalReaction
@@ -2891,6 +2918,7 @@ rule__StatechartDefinition__Group__1
     }
 :
 	rule__StatechartDefinition__Group__1__Impl
+	rule__StatechartDefinition__Group__2
 ;
 finally {
 	restoreStackSize(stackSize);
@@ -2902,9 +2930,102 @@ rule__StatechartDefinition__Group__1__Impl
     }
 :
 (
-{ before(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_1()); }
-(rule__StatechartDefinition__DefinitionScopesAssignment_1)*
-{ after(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_1()); }
+{ before(grammarAccess.getStatechartDefinitionAccess().getGroup_1()); }
+(rule__StatechartDefinition__Group_1__0)?
+{ after(grammarAccess.getStatechartDefinitionAccess().getGroup_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__StatechartDefinition__Group__2
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__StatechartDefinition__Group__2__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__StatechartDefinition__Group__2__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_2()); }
+(rule__StatechartDefinition__DefinitionScopesAssignment_2)*
+{ after(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_2()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__StatechartDefinition__Group_1__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__StatechartDefinition__Group_1__0__Impl
+	rule__StatechartDefinition__Group_1__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__StatechartDefinition__Group_1__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getStatechartDefinitionAccess().getNamespaceKeyword_1_0()); }
+
+	'namespace' 
+
+{ after(grammarAccess.getStatechartDefinitionAccess().getNamespaceKeyword_1_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__StatechartDefinition__Group_1__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__StatechartDefinition__Group_1__1__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__StatechartDefinition__Group_1__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getStatechartDefinitionAccess().getNamespaceAssignment_1_1()); }
+(rule__StatechartDefinition__NamespaceAssignment_1_1)
+{ after(grammarAccess.getStatechartDefinitionAccess().getNamespaceAssignment_1_1()); }
 )
 
 ;
@@ -4662,6 +4783,130 @@ finally {
 
 
 
+rule__FQN__Group__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__FQN__Group__0__Impl
+	rule__FQN__Group__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__FQN__Group__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0()); }
+	RULE_ID
+{ after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__FQN__Group__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__FQN__Group__1__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__FQN__Group__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getFQNAccess().getGroup_1()); }
+(rule__FQN__Group_1__0)*
+{ after(grammarAccess.getFQNAccess().getGroup_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__FQN__Group_1__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__FQN__Group_1__0__Impl
+	rule__FQN__Group_1__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__FQN__Group_1__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getFQNAccess().getFullStopKeyword_1_0()); }
+
+	'.' 
+
+{ after(grammarAccess.getFQNAccess().getFullStopKeyword_1_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__FQN__Group_1__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__FQN__Group_1__1__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__FQN__Group_1__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1()); }
+	RULE_ID
+{ after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
 rule__LocalReaction__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -8943,14 +9188,29 @@ finally {
 	restoreStackSize(stackSize);
 }
 
-rule__StatechartDefinition__DefinitionScopesAssignment_1
+rule__StatechartDefinition__NamespaceAssignment_1_1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getStatechartDefinitionAccess().getNamespaceFQNParserRuleCall_1_1_0()); }
+	ruleFQN{ after(grammarAccess.getStatechartDefinitionAccess().getNamespaceFQNParserRuleCall_1_1_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__StatechartDefinition__DefinitionScopesAssignment_2
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_1_0()); }
-	ruleStatechartScope{ after(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_1_0()); }
+{ before(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_2_0()); }
+	ruleStatechartScope{ after(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_2_0()); }
 )
 
 ;
@@ -9522,8 +9782,8 @@ rule__EntryPointSpec__EntrypointAssignment_1
 (
 { before(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointCrossReference_1_0()); }
 (
-{ before(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointIDTerminalRuleCall_1_0_1()); }
-	RULE_ID{ after(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointIDTerminalRuleCall_1_0_1()); }
+{ before(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointFQNParserRuleCall_1_0_1()); }
+	ruleFQN{ after(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointFQNParserRuleCall_1_0_1()); }
 )
 { after(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointCrossReference_1_0()); }
 )
@@ -9541,8 +9801,8 @@ rule__ExitPointSpec__ExitpointAssignment_0
 (
 { before(grammarAccess.getExitPointSpecAccess().getExitpointExitpointCrossReference_0_0()); }
 (
-{ before(grammarAccess.getExitPointSpecAccess().getExitpointExitpointIDTerminalRuleCall_0_0_1()); }
-	RULE_ID{ after(grammarAccess.getExitPointSpecAccess().getExitpointExitpointIDTerminalRuleCall_0_0_1()); }
+{ before(grammarAccess.getExitPointSpecAccess().getExitpointExitpointFQNParserRuleCall_0_0_1()); }
+	ruleFQN{ after(grammarAccess.getExitPointSpecAccess().getExitpointExitpointFQNParserRuleCall_0_0_1()); }
 )
 { after(grammarAccess.getExitPointSpecAccess().getExitpointExitpointCrossReference_0_0()); }
 )
@@ -9560,8 +9820,8 @@ rule__RegularEventSpec__EventAssignment
 (
 { before(grammarAccess.getRegularEventSpecAccess().getEventEventCrossReference_0()); }
 (
-{ before(grammarAccess.getRegularEventSpecAccess().getEventEventIDTerminalRuleCall_0_1()); }
-	RULE_ID{ after(grammarAccess.getRegularEventSpecAccess().getEventEventIDTerminalRuleCall_0_1()); }
+{ before(grammarAccess.getRegularEventSpecAccess().getEventEventFQNParserRuleCall_0_1()); }
+	ruleFQN{ after(grammarAccess.getRegularEventSpecAccess().getEventEventFQNParserRuleCall_0_1()); }
 )
 { after(grammarAccess.getRegularEventSpecAccess().getEventEventCrossReference_0()); }
 )
@@ -9624,8 +9884,8 @@ rule__Assignment__VarRefAssignment_0
 (
 { before(grammarAccess.getAssignmentAccess().getVarRefVariableCrossReference_0_0()); }
 (
-{ before(grammarAccess.getAssignmentAccess().getVarRefVariableIDTerminalRuleCall_0_0_1()); }
-	RULE_ID{ after(grammarAccess.getAssignmentAccess().getVarRefVariableIDTerminalRuleCall_0_0_1()); }
+{ before(grammarAccess.getAssignmentAccess().getVarRefVariableFQNParserRuleCall_0_0_1()); }
+	ruleFQN{ after(grammarAccess.getAssignmentAccess().getVarRefVariableFQNParserRuleCall_0_0_1()); }
 )
 { after(grammarAccess.getAssignmentAccess().getVarRefVariableCrossReference_0_0()); }
 )
@@ -9673,8 +9933,8 @@ rule__EventRaising__EventAssignment_1
 (
 { before(grammarAccess.getEventRaisingAccess().getEventEventCrossReference_1_0()); }
 (
-{ before(grammarAccess.getEventRaisingAccess().getEventEventIDTerminalRuleCall_1_0_1()); }
-	RULE_ID{ after(grammarAccess.getEventRaisingAccess().getEventEventIDTerminalRuleCall_1_0_1()); }
+{ before(grammarAccess.getEventRaisingAccess().getEventEventFQNParserRuleCall_1_0_1()); }
+	ruleFQN{ after(grammarAccess.getEventRaisingAccess().getEventEventFQNParserRuleCall_1_0_1()); }
 )
 { after(grammarAccess.getEventRaisingAccess().getEventEventCrossReference_1_0()); }
 )
@@ -9992,8 +10252,8 @@ rule__ElementReferenceExpression__ValueAssignment_1
 (
 { before(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationCrossReference_1_0()); }
 (
-{ before(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationIDTerminalRuleCall_1_0_1()); }
-	RULE_ID{ after(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationIDTerminalRuleCall_1_0_1()); }
+{ before(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationFQNParserRuleCall_1_0_1()); }
+	ruleFQN{ after(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationFQNParserRuleCall_1_0_1()); }
 )
 { after(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationCrossReference_1_0()); }
 )
@@ -10011,8 +10271,8 @@ rule__OperationCall__OperationAssignment_1
 (
 { before(grammarAccess.getOperationCallAccess().getOperationOperationCrossReference_1_0()); }
 (
-{ before(grammarAccess.getOperationCallAccess().getOperationOperationIDTerminalRuleCall_1_0_1()); }
-	RULE_ID{ after(grammarAccess.getOperationCallAccess().getOperationOperationIDTerminalRuleCall_1_0_1()); }
+{ before(grammarAccess.getOperationCallAccess().getOperationOperationFQNParserRuleCall_1_0_1()); }
+	ruleFQN{ after(grammarAccess.getOperationCallAccess().getOperationOperationFQNParserRuleCall_1_0_1()); }
 )
 { after(grammarAccess.getOperationCallAccess().getOperationOperationCrossReference_1_0()); }
 )

+ 156 - 152
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.tokens

@@ -1,152 +1,156 @@
-T__68=68
-T__69=69
-RULE_ID=9
-T__66=66
-T__67=67
-T__64=64
-T__29=29
-T__65=65
-T__28=28
-T__62=62
-T__27=27
-T__63=63
-T__26=26
-T__25=25
-T__24=24
-T__23=23
-T__22=22
-RULE_ANY_OTHER=13
-T__21=21
-T__20=20
-RULE_BOOL=4
-T__61=61
-T__60=60
-T__55=55
-T__56=56
-T__19=19
-T__57=57
-RULE_HEX=6
-T__58=58
-T__16=16
-T__51=51
-T__15=15
-T__52=52
-T__18=18
-T__53=53
-T__54=54
-T__17=17
-T__14=14
-T__59=59
-RULE_INT=5
-T__50=50
-T__42=42
-T__43=43
-T__40=40
-T__41=41
-T__80=80
-T__46=46
-T__81=81
-T__47=47
-T__82=82
-T__44=44
-T__83=83
-T__45=45
-T__48=48
-T__49=49
-RULE_FLOAT=8
-RULE_SL_COMMENT=11
-T__84=84
-RULE_ML_COMMENT=10
-T__30=30
-T__31=31
-RULE_STRING=7
-T__32=32
-T__71=71
-T__33=33
-T__72=72
-T__34=34
-T__35=35
-T__70=70
-T__36=36
-T__37=37
-T__38=38
-T__39=39
-RULE_WS=12
-T__76=76
-T__75=75
-T__74=74
-T__73=73
-T__79=79
-T__78=78
-T__77=77
-'#'=67
-'out'=16
-'>='=41
-'internal'=57
-'~'=37
-'/'=35
-'=='=42
-'/='=21
-'string'=51
-'integer'=48
-'%='=22
-'>'=40
-'event'=58
-'||'=77
-'&&'=78
-';'=70
-'raise'=75
-'+'=32
-'^'=80
-'>>'=31
-'^='=28
-'+='=23
-'readonly'=83
-'>>='=26
-'void'=47
-'?'=76
-'var'=59
-'&='=27
-'s'=44
-':'=56
-'('=62
-'exit'=72
-'-'=33
-','=64
-'in'=15
-'-='=24
-']'=69
-'<<='=25
-'ns'=46
-'real'=49
-'!'=79
-'|'=81
-'ms'=45
-'every'=18
-'|='=29
-'@@statechart@@'=52
-'exitpoint'=66
-'@@state@@'=53
-'='=19
-'always'=74
-'oncycle'=73
-')'=63
-'*='=20
-'entry'=71
-'%'=36
-'operation'=61
-'after'=17
-'boolean'=50
-'entrypoint'=65
-'<<'=30
-'<='=39
-'!='=43
-'@@transition@@'=54
-'external'=84
-'<'=38
-'['=68
-'*'=34
-'clock'=60
-'local'=14
-'&'=82
-'interface'=55
+T__68=68
+T__69=69
+RULE_ID=9
+T__66=66
+T__67=67
+T__64=64
+T__29=29
+T__65=65
+T__28=28
+T__62=62
+T__27=27
+T__63=63
+T__26=26
+T__25=25
+T__24=24
+T__23=23
+T__22=22
+RULE_ANY_OTHER=13
+T__21=21
+T__20=20
+RULE_BOOL=4
+T__61=61
+T__60=60
+T__55=55
+T__56=56
+T__19=19
+T__57=57
+RULE_HEX=6
+T__58=58
+T__16=16
+T__51=51
+T__15=15
+T__52=52
+T__18=18
+T__53=53
+T__54=54
+T__17=17
+T__14=14
+T__59=59
+RULE_INT=5
+T__50=50
+T__42=42
+T__43=43
+T__40=40
+T__41=41
+T__80=80
+T__46=46
+T__81=81
+T__47=47
+T__82=82
+T__44=44
+T__83=83
+T__45=45
+T__48=48
+T__49=49
+RULE_FLOAT=8
+T__85=85
+RULE_SL_COMMENT=11
+T__84=84
+T__86=86
+RULE_ML_COMMENT=10
+T__30=30
+T__31=31
+RULE_STRING=7
+T__32=32
+T__71=71
+T__33=33
+T__72=72
+T__34=34
+T__35=35
+T__70=70
+T__36=36
+T__37=37
+T__38=38
+T__39=39
+RULE_WS=12
+T__76=76
+T__75=75
+T__74=74
+T__73=73
+T__79=79
+T__78=78
+T__77=77
+'#'=69
+'out'=16
+'>='=41
+'internal'=58
+'~'=37
+'/'=35
+'=='=42
+'/='=21
+'string'=51
+'integer'=48
+'%='=22
+'>'=40
+'event'=59
+'||'=79
+'&&'=80
+';'=72
+'raise'=77
+'+'=32
+'.'=68
+'^'=82
+'>>'=31
+'^='=28
+'+='=23
+'readonly'=85
+'>>='=26
+'void'=47
+'?'=78
+'var'=60
+'&='=27
+'s'=44
+'('=63
+':'=57
+'exit'=74
+'-'=33
+','=65
+'in'=15
+'-='=24
+']'=71
+'<<='=25
+'ns'=46
+'real'=49
+'!'=81
+'|'=83
+'ms'=45
+'every'=18
+'|='=29
+'@@statechart@@'=52
+'exitpoint'=67
+'@@state@@'=53
+'='=19
+'always'=76
+'oncycle'=75
+')'=64
+'*='=20
+'entry'=73
+'%'=36
+'operation'=62
+'after'=17
+'boolean'=50
+'entrypoint'=66
+'namespace'=55
+'<<'=30
+'<='=39
+'!='=43
+'@@transition@@'=54
+'external'=86
+'<'=38
+'['=70
+'*'=34
+'clock'=61
+'local'=14
+'&'=84
+'interface'=56

File diff suppressed because it is too large
+ 3426 - 3354
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextLexer.java


File diff suppressed because it is too large
+ 30979 - 30072
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextParser.java


+ 8 - 5
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/internal/STextActivator.java

@@ -3,20 +3,19 @@
  */
 package org.yakindu.sct.model.stext.ui.internal;
 
-import static com.google.inject.util.Modules.override;
 import static com.google.inject.Guice.createInjector;
+import static com.google.inject.util.Modules.override;
 
-import org.apache.log4j.Logger;
+import java.util.HashMap;
+import java.util.Map;
 
+import org.apache.log4j.Logger;
 import org.eclipse.ui.plugin.AbstractUIPlugin;
 import org.osgi.framework.BundleContext;
 
 import com.google.inject.Injector;
 import com.google.inject.Module;
 
-import java.util.Map;
-import java.util.HashMap;
-
 /**
  * This class was generated. Customizations should only happen in a newly
  * introduced subclass. 
@@ -29,6 +28,10 @@ public class STextActivator extends AbstractUIPlugin {
 	public Injector getInjector(String languageName) {
 		return injectors.get(languageName);
 	}
+
+	public Injector getInjector() {
+		return injectors.get("org.yakindu.sct.model.stext.SText");
+	}
 	
 	@Override
 	public void start(BundleContext context) throws Exception {

+ 11 - 7
plugins/org.yakindu.sct.model.stext.ui/src/org/yakindu/sct/model/stext/ui/labeling/STextLabelProvider.java

@@ -4,7 +4,9 @@
 package org.yakindu.sct.model.stext.ui.labeling;
 
 import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.xtext.resource.IEObjectDescription;
 import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider;
+import org.yakindu.sct.model.sgraph.Statechart;
 
 import com.google.inject.Inject;
 
@@ -20,15 +22,17 @@ public class STextLabelProvider extends DefaultEObjectLabelProvider {
 		super(delegate);
 	}
 
-/*
 	//Labels and icons can be computed like this:
 	
-	String text(MyModel ele) {
-	  return "my "+ele.getName();
+	String text(Statechart ele) {
+		return ele.getName();
+	}
+
+	String text(IEObjectDescription ele) {
+		return ele.getName().toString();
 	}
 	 
-    String image(MyModel ele) {
-      return "MyModel.gif";
-    }
-*/
+	/*
+	 * String image(MyModel ele) { return "MyModel.gif"; }
+	 */
 }

+ 273 - 272
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore

@@ -1,272 +1,273 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="stext"
-    nsURI="http://www.yakindu.org/sct/statechart/SText" nsPrefix="stext">
-  <eClassifiers xsi:type="ecore:EClass" name="Root">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="roots" upperBound="-1"
-        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="DefRoot"/>
-  <eClassifiers xsi:type="ecore:EClass" name="StatechartRoot" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="def" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="StateRoot" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="def" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateDeclaration"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="TransitionRoot" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="def" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionStatement"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="StatechartDefinition">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="definitionScopes" upperBound="-1"
-        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="StateDeclaration">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="scope" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="TransitionStatement"/>
-  <eClassifiers xsi:type="ecore:EClass" name="EventDerivation">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="Direction">
-    <eLiterals name="LOCAL" literal="local"/>
-    <eLiterals name="IN" value="1" literal="in"/>
-    <eLiterals name="OUT" value="2" literal="out"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="LocalReaction" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Reaction">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="TransitionReaction" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionStatement platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Reaction">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ReactionProperties">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
-        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ReactionProperty"/>
-  <eClassifiers xsi:type="ecore:EClass" name="ReactionPriority" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="priority" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="EntryPointSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="entrypoint" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Entrypoint"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ExitPointSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="exitpoint" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Exitpoint"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="EventSpec"/>
-  <eClassifiers xsi:type="ecore:EClass" name="RegularEventSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Event"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="TimeEventSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unit" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="TimeEventType">
-    <eLiterals name="after" literal="after"/>
-    <eLiterals name="every" value="1" literal="every"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="BuiltinEventSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec"/>
-  <eClassifiers xsi:type="ecore:EClass" name="EntryEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
-  <eClassifiers xsi:type="ecore:EClass" name="ExitEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
-  <eClassifiers xsi:type="ecore:EClass" name="OnCycleEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
-  <eClassifiers xsi:type="ecore:EClass" name="AlwaysEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
-  <eClassifiers xsi:type="ecore:EClass" name="Assignment" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="varRef" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Variable"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="expression" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="AssignmentOperator">
-    <eLiterals name="assign" literal="="/>
-    <eLiterals name="multAssign" value="1" literal="*="/>
-    <eLiterals name="divAssign" value="2" literal="/="/>
-    <eLiterals name="modAssign" value="3" literal="%="/>
-    <eLiterals name="addAssign" value="4" literal="+="/>
-    <eLiterals name="subAssign" value="5" literal="-="/>
-    <eLiterals name="leftShiftAssign" value="6" literal="&lt;&lt;="/>
-    <eLiterals name="rightShiftAssign" value="7" literal=">>="/>
-    <eLiterals name="andAssign" value="8" literal="&amp;="/>
-    <eLiterals name="xorAssign" value="9" literal="^="/>
-    <eLiterals name="orAssign" value="10" literal="|="/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="EventRaising" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Event"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Expression" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement"/>
-  <eClassifiers xsi:type="ecore:EEnum" name="ShiftOperator">
-    <eLiterals name="left" literal="&lt;&lt;"/>
-    <eLiterals name="right" value="1" literal=">>"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="AdditiveOperator">
-    <eLiterals name="plus" literal="+"/>
-    <eLiterals name="minus" value="1" literal="-"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="MultiplicativeOperator">
-    <eLiterals name="mul" literal="*"/>
-    <eLiterals name="div" value="1" literal="/"/>
-    <eLiterals name="mod" value="2" literal="%"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="UnaryOperator">
-    <eLiterals name="positive" literal="+"/>
-    <eLiterals name="negative" value="1" literal="-"/>
-    <eLiterals name="complement" value="2" literal="~"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="RelationalOperator">
-    <eLiterals name="smaller" literal="&lt;"/>
-    <eLiterals name="smallerEqual" value="1" literal="&lt;="/>
-    <eLiterals name="greater" value="2" literal=">"/>
-    <eLiterals name="greaterEqual" value="3" literal=">="/>
-    <eLiterals name="equals" value="4" literal="=="/>
-    <eLiterals name="notEquals" value="5" literal="!="/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="TimeUnit">
-    <eLiterals name="second" literal="s"/>
-    <eLiterals name="millisecond" value="1" literal="ms"/>
-    <eLiterals name="nanosecond" value="2" literal="ns"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="Type">
-    <eLiterals name="void" literal="void"/>
-    <eLiterals name="integer" value="1" literal="integer"/>
-    <eLiterals name="real" value="2" literal="real"/>
-    <eLiterals name="boolean" value="3" literal="boolean"/>
-    <eLiterals name="string" value="4" literal="string"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="SimpleScope" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"/>
-  <eClassifiers xsi:type="ecore:EClass" name="InterfaceScope" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="InternalScope" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"/>
-  <eClassifiers xsi:type="ecore:EClass" name="EventDefinition" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Event">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="derivation" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="VariableDefinition" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Variable">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="readonly" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="external" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initialValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Clock" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
-  <eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="paramTypes" unique="false"
-        upperBound="-1" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Entrypoint" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
-  <eClassifiers xsi:type="ecore:EClass" name="Exitpoint" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
-  <eClassifiers xsi:type="ecore:EClass" name="ReactionTrigger" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Trigger">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1"
-        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="guardExpression" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ReactionEffect" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Effect">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="actions" upperBound="-1"
-        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ConditionalExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="trueCase" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="falseCase" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="LogicalOrExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="LogicalAndExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="LogicalNotExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="operand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="BitwiseXorExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="BitwiseOrExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="BitwiseAndExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="LogicalRelationExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ShiftExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="NumericalAddSubtractExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="NumericalMultiplyDivideExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="NumericalUnaryExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="operand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="PrimitiveValueExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ElementReferenceExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="OperationCall" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="operation" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="args" upperBound="-1" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
-        containment="true"/>
-  </eClassifiers>
-</ecore:EPackage>
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="stext"
+    nsURI="http://www.yakindu.org/sct/statechart/SText" nsPrefix="stext">
+  <eClassifiers xsi:type="ecore:EClass" name="Root">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="roots" upperBound="-1"
+        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DefRoot"/>
+  <eClassifiers xsi:type="ecore:EClass" name="StatechartRoot" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="def" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="StateRoot" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="def" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateDeclaration"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TransitionRoot" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="def" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionStatement"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="StatechartDefinition">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="namespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="definitionScopes" upperBound="-1"
+        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="StateDeclaration">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="scope" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TransitionStatement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EventDerivation">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Direction">
+    <eLiterals name="LOCAL" literal="local"/>
+    <eLiterals name="IN" value="1" literal="in"/>
+    <eLiterals name="OUT" value="2" literal="out"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LocalReaction" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Reaction">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TransitionReaction" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionStatement platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Reaction">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ReactionProperties">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
+        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ReactionProperty"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ReactionPriority" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="priority" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EntryPointSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="entrypoint" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Entrypoint"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ExitPointSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="exitpoint" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Exitpoint"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EventSpec"/>
+  <eClassifiers xsi:type="ecore:EClass" name="RegularEventSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Event"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TimeEventSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unit" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="TimeEventType">
+    <eLiterals name="after" literal="after"/>
+    <eLiterals name="every" value="1" literal="every"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BuiltinEventSpec" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EntryEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ExitEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
+  <eClassifiers xsi:type="ecore:EClass" name="OnCycleEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
+  <eClassifiers xsi:type="ecore:EClass" name="AlwaysEvent" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
+  <eClassifiers xsi:type="ecore:EClass" name="Assignment" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="varRef" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Variable"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="expression" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="AssignmentOperator">
+    <eLiterals name="assign" literal="="/>
+    <eLiterals name="multAssign" value="1" literal="*="/>
+    <eLiterals name="divAssign" value="2" literal="/="/>
+    <eLiterals name="modAssign" value="3" literal="%="/>
+    <eLiterals name="addAssign" value="4" literal="+="/>
+    <eLiterals name="subAssign" value="5" literal="-="/>
+    <eLiterals name="leftShiftAssign" value="6" literal="&lt;&lt;="/>
+    <eLiterals name="rightShiftAssign" value="7" literal=">>="/>
+    <eLiterals name="andAssign" value="8" literal="&amp;="/>
+    <eLiterals name="xorAssign" value="9" literal="^="/>
+    <eLiterals name="orAssign" value="10" literal="|="/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EventRaising" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Event"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Expression" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement"/>
+  <eClassifiers xsi:type="ecore:EEnum" name="ShiftOperator">
+    <eLiterals name="left" literal="&lt;&lt;"/>
+    <eLiterals name="right" value="1" literal=">>"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="AdditiveOperator">
+    <eLiterals name="plus" literal="+"/>
+    <eLiterals name="minus" value="1" literal="-"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="MultiplicativeOperator">
+    <eLiterals name="mul" literal="*"/>
+    <eLiterals name="div" value="1" literal="/"/>
+    <eLiterals name="mod" value="2" literal="%"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="UnaryOperator">
+    <eLiterals name="positive" literal="+"/>
+    <eLiterals name="negative" value="1" literal="-"/>
+    <eLiterals name="complement" value="2" literal="~"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="RelationalOperator">
+    <eLiterals name="smaller" literal="&lt;"/>
+    <eLiterals name="smallerEqual" value="1" literal="&lt;="/>
+    <eLiterals name="greater" value="2" literal=">"/>
+    <eLiterals name="greaterEqual" value="3" literal=">="/>
+    <eLiterals name="equals" value="4" literal="=="/>
+    <eLiterals name="notEquals" value="5" literal="!="/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="TimeUnit">
+    <eLiterals name="second" literal="s"/>
+    <eLiterals name="millisecond" value="1" literal="ms"/>
+    <eLiterals name="nanosecond" value="2" literal="ns"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Type">
+    <eLiterals name="void" literal="void"/>
+    <eLiterals name="integer" value="1" literal="integer"/>
+    <eLiterals name="real" value="2" literal="real"/>
+    <eLiterals name="boolean" value="3" literal="boolean"/>
+    <eLiterals name="string" value="4" literal="string"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SimpleScope" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"/>
+  <eClassifiers xsi:type="ecore:EClass" name="InterfaceScope" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="InternalScope" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Scope"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EventDefinition" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Event">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="derivation" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="VariableDefinition" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Variable">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="readonly" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="external" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initialValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Clock" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
+  <eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="paramTypes" unique="false"
+        upperBound="-1" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Entrypoint" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
+  <eClassifiers xsi:type="ecore:EClass" name="Exitpoint" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ReactionTrigger" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Trigger">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1"
+        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="guardExpression" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ReactionEffect" eSuperTypes="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Effect">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="actions" upperBound="-1"
+        eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Statement"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConditionalExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="trueCase" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="falseCase" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LogicalOrExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LogicalAndExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LogicalNotExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BitwiseXorExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BitwiseOrExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BitwiseAndExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LogicalRelationExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ShiftExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="NumericalAddSubtractExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="NumericalMultiplyDivideExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="NumericalUnaryExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EEnum platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operand" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="PrimitiveValueExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ElementReferenceExpression" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore#//Declaration"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="OperationCall" eSuperTypes="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operation" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="args" upperBound="-1" eType="ecore:EClass platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"
+        containment="true"/>
+  </eClassifiers>
+</ecore:EPackage>

+ 233 - 232
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.genmodel

@@ -1,232 +1,233 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<genmodel:GenModel xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
-    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.yakindu.sct.model.stext/src-gen"
-    editDirectory="/org.yakindu.sct.model.stext.edit/src" editorDirectory="/org.yakindu.sct.model.stext.editor/src"
-    modelPluginID="org.yakindu.sct.model.stext" forceOverwrite="true" modelName="SText"
-    updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
-    complianceLevel="5.0" copyrightFields="false" editPluginID="org.yakindu.sct.model.stext.edit"
-    editorPluginID="org.yakindu.sct.model.stext.editor" usedGenPackages="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.genmodel#//sgraph">
-  <genPackages prefix="Stext" basePackage="org.yakindu.sct.model.stext" disposableProviderFactory="true"
-      ecorePackage="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#/">
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction/LOCAL"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction/IN"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction/OUT"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType/after"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType/every"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/assign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/multAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/divAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/modAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/addAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/subAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/leftShiftAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/rightShiftAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/andAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/xorAssign"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/orAssign"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator/left"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator/right"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator/plus"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator/minus"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator/mul"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator/div"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator/mod"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator/positive"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator/negative"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator/complement"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/smaller"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/smallerEqual"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/greater"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/greaterEqual"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/equals"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/notEquals"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit/second"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit/millisecond"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit/nanosecond"/>
-    </genEnums>
-    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type">
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/void"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/integer"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/real"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/boolean"/>
-      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/string"/>
-    </genEnums>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Root">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Root/roots"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartRoot">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartRoot/def"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateRoot">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateRoot/def"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionRoot">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionRoot/def"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition/definitionScopes"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateDeclaration">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateDeclaration/scope"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionStatement"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation/condition"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation/value"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LocalReaction">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LocalReaction/properties"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionReaction">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionReaction/properties"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties/properties"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionPriority">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionPriority/priority"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EntryPointSpec">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EntryPointSpec/entrypoint"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ExitPointSpec">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ExitPointSpec/exitpoint"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RegularEventSpec">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RegularEventSpec/event"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec/type"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec/value"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec/unit"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EntryEvent"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ExitEvent"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OnCycleEvent"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AlwaysEvent"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment/varRef"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment/operator"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment/expression"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventRaising">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventRaising/event"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventRaising/value"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//SimpleScope"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//InterfaceScope">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//InterfaceScope/name"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//InternalScope"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition/direction"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition/type"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition/derivation"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/readonly"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/external"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/type"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/initialValue"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Clock"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation/paramTypes"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation/type"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Entrypoint"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Exitpoint"/>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionTrigger">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionTrigger/triggers"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionTrigger/guardExpression"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionEffect">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionEffect/actions"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression/condition"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression/trueCase"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression/falseCase"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalOrExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalOrExpression/leftOperand"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalOrExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalAndExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalAndExpression/leftOperand"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalAndExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalNotExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalNotExpression/operand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseXorExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseXorExpression/leftOperand"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseXorExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseOrExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseOrExpression/leftOperand"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseOrExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseAndExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseAndExpression/leftOperand"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseAndExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression/leftOperand"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression/operator"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression/leftOperand"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression/operator"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression/leftOperand"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression/operator"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression/leftOperand"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression/operator"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression/rightOperand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalUnaryExpression">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalUnaryExpression/operator"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalUnaryExpression/operand"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//PrimitiveValueExpression">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//PrimitiveValueExpression/value"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ElementReferenceExpression">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ElementReferenceExpression/value"/>
-    </genClasses>
-    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OperationCall">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OperationCall/operation"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OperationCall/args"/>
-    </genClasses>
-  </genPackages>
-</genmodel:GenModel>
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.yakindu.sct.model.stext/src-gen"
+    editDirectory="/org.yakindu.sct.model.stext.edit/src" editorDirectory="/org.yakindu.sct.model.stext.editor/src"
+    modelPluginID="org.yakindu.sct.model.stext" forceOverwrite="true" modelName="SText"
+    updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    complianceLevel="5.0" copyrightFields="false" editPluginID="org.yakindu.sct.model.stext.edit"
+    editorPluginID="org.yakindu.sct.model.stext.editor" usedGenPackages="platform:/resource/org.yakindu.sct.model.sgraph/model/emf/sgraph.genmodel#//sgraph">
+  <genPackages prefix="Stext" basePackage="org.yakindu.sct.model.stext" disposableProviderFactory="true"
+      ecorePackage="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#/">
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction/LOCAL"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction/IN"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Direction/OUT"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType/after"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventType/every"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/assign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/multAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/divAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/modAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/addAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/subAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/leftShiftAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/rightShiftAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/andAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/xorAssign"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AssignmentOperator/orAssign"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator/left"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftOperator/right"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator/plus"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AdditiveOperator/minus"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator/mul"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator/div"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//MultiplicativeOperator/mod"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator/positive"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator/negative"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//UnaryOperator/complement"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/smaller"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/smallerEqual"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/greater"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/greaterEqual"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/equals"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RelationalOperator/notEquals"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit/second"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit/millisecond"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeUnit/nanosecond"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type">
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/void"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/integer"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/real"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/boolean"/>
+      <genEnumLiterals ecoreEnumLiteral="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Type/string"/>
+    </genEnums>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Root">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Root/roots"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//DefRoot"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartRoot">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartRoot/def"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateRoot">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateRoot/def"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionRoot">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionRoot/def"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition/namespace"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StatechartDefinition/definitionScopes"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateDeclaration">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//StateDeclaration/scope"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionStatement"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation/condition"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDerivation/value"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LocalReaction">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LocalReaction/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionReaction">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TransitionReaction/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperties/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionProperty"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionPriority">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionPriority/priority"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EntryPointSpec">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EntryPointSpec/entrypoint"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ExitPointSpec">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ExitPointSpec/exitpoint"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventSpec"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RegularEventSpec">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//RegularEventSpec/event"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec/type"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//TimeEventSpec/unit"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BuiltinEventSpec"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EntryEvent"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ExitEvent"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OnCycleEvent"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//AlwaysEvent"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment/varRef"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment/operator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Assignment/expression"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventRaising">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventRaising/event"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventRaising/value"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Expression"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//SimpleScope"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//InterfaceScope">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//InterfaceScope/name"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//InternalScope"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition/direction"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition/type"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//EventDefinition/derivation"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/readonly"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/external"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/type"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//VariableDefinition/initialValue"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Clock"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation/paramTypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Operation/type"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Entrypoint"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//Exitpoint"/>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionTrigger">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionTrigger/triggers"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionTrigger/guardExpression"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionEffect">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ReactionEffect/actions"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression/condition"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression/trueCase"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ConditionalExpression/falseCase"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalOrExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalOrExpression/leftOperand"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalOrExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalAndExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalAndExpression/leftOperand"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalAndExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalNotExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalNotExpression/operand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseXorExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseXorExpression/leftOperand"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseXorExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseOrExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseOrExpression/leftOperand"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseOrExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseAndExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseAndExpression/leftOperand"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//BitwiseAndExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression/leftOperand"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression/operator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//LogicalRelationExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression/leftOperand"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression/operator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ShiftExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression/leftOperand"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression/operator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalAddSubtractExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression/leftOperand"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression/operator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalMultiplyDivideExpression/rightOperand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalUnaryExpression">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalUnaryExpression/operator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//NumericalUnaryExpression/operand"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//PrimitiveValueExpression">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//PrimitiveValueExpression/value"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ElementReferenceExpression">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//ElementReferenceExpression/value"/>
+    </genClasses>
+    <genClasses ecoreClass="platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OperationCall">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OperationCall/operation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.ecore#//OperationCall/args"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>

File diff suppressed because it is too large
+ 1485 - 1467
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/SText.xmi


+ 112 - 30
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parseTreeConstruction/STextParsetreeConstructor.java

@@ -634,11 +634,11 @@ protected class TransitionRoot_DefAssignment_1 extends AssignmentToken  {
  * / * ---- start rules ----
  * Define the starting points used by the statechart integration. These rules hook in the concrete rules of the specific grammar.
  * * / StatechartDefinition:
- * 	{StatechartDefinition} definitionScopes+=StatechartScope*;
+ * 	{StatechartDefinition} ("namespace" namespace=FQN)? definitionScopes+=StatechartScope*;
  *
  **/
 
-// {StatechartDefinition} definitionScopes+=StatechartScope*
+// {StatechartDefinition} ("namespace" namespace=FQN)? definitionScopes+=StatechartScope*
 protected class StatechartDefinition_Group extends GroupToken {
 	
 	public StatechartDefinition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -653,8 +653,9 @@ protected class StatechartDefinition_Group extends GroupToken {
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new StatechartDefinition_DefinitionScopesAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new StatechartDefinition_StatechartDefinitionAction_0(lastRuleCallOrigin, this, 1, inst);
+			case 0: return new StatechartDefinition_DefinitionScopesAssignment_2(lastRuleCallOrigin, this, 0, inst);
+			case 1: return new StatechartDefinition_Group_1(lastRuleCallOrigin, this, 1, inst);
+			case 2: return new StatechartDefinition_StatechartDefinitionAction_0(lastRuleCallOrigin, this, 2, inst);
 			default: return null;
 		}	
 	}
@@ -694,16 +695,95 @@ protected class StatechartDefinition_StatechartDefinitionAction_0 extends Action
 	}
 }
 
+// ("namespace" namespace=FQN)?
+protected class StatechartDefinition_Group_1 extends GroupToken {
+	
+	public StatechartDefinition_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Group getGrammarElement() {
+		return grammarAccess.getStatechartDefinitionAccess().getGroup_1();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new StatechartDefinition_NamespaceAssignment_1_1(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+// "namespace"
+protected class StatechartDefinition_NamespaceKeyword_1_0 extends KeywordToken  {
+	
+	public StatechartDefinition_NamespaceKeyword_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getStatechartDefinitionAccess().getNamespaceKeyword_1_0();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new StatechartDefinition_StatechartDefinitionAction_0(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+// namespace=FQN
+protected class StatechartDefinition_NamespaceAssignment_1_1 extends AssignmentToken  {
+	
+	public StatechartDefinition_NamespaceAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Assignment getGrammarElement() {
+		return grammarAccess.getStatechartDefinitionAccess().getNamespaceAssignment_1_1();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new StatechartDefinition_NamespaceKeyword_1_0(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override	
+	public IEObjectConsumer tryConsume() {
+		if((value = eObjectConsumer.getConsumable("namespace",false)) == null) return null;
+		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("namespace");
+		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getStatechartDefinitionAccess().getNamespaceFQNParserRuleCall_1_1_0(), value, null)) {
+			type = AssignmentType.DATATYPE_RULE_CALL;
+			element = grammarAccess.getStatechartDefinitionAccess().getNamespaceFQNParserRuleCall_1_1_0();
+			return obj;
+		}
+		return null;
+	}
+
+}
+
+
 // definitionScopes+=StatechartScope*
-protected class StatechartDefinition_DefinitionScopesAssignment_1 extends AssignmentToken  {
+protected class StatechartDefinition_DefinitionScopesAssignment_2 extends AssignmentToken  {
 	
-	public StatechartDefinition_DefinitionScopesAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public StatechartDefinition_DefinitionScopesAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Assignment getGrammarElement() {
-		return grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_1();
+		return grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesAssignment_2();
 	}
 
     @Override
@@ -722,7 +802,7 @@ protected class StatechartDefinition_DefinitionScopesAssignment_1 extends Assign
 			IEObjectConsumer param = createEObjectConsumer((EObject)value);
 			if(param.isInstanceOf(grammarAccess.getStatechartScopeRule().getType().getClassifier())) {
 				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_1_0(); 
+				element = grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_2_0(); 
 				consumed = obj;
 				return param;
 			}
@@ -734,8 +814,9 @@ protected class StatechartDefinition_DefinitionScopesAssignment_1 extends Assign
 	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
 		if(value == inst.getEObject() && !inst.isConsumed()) return null;
 		switch(index) {
-			case 0: return new StatechartDefinition_DefinitionScopesAssignment_1(lastRuleCallOrigin, next, actIndex, consumed);
-			case 1: return new StatechartDefinition_StatechartDefinitionAction_0(lastRuleCallOrigin, next, actIndex, consumed);
+			case 0: return new StatechartDefinition_DefinitionScopesAssignment_2(lastRuleCallOrigin, next, actIndex, consumed);
+			case 1: return new StatechartDefinition_Group_1(lastRuleCallOrigin, next, actIndex, consumed);
+			case 2: return new StatechartDefinition_StatechartDefinitionAction_0(lastRuleCallOrigin, next, actIndex, consumed);
 			default: return null;
 		}	
 	}	
@@ -3443,6 +3524,7 @@ protected class Exitpoint_NameAssignment_2 extends AssignmentToken  {
 /************ end Rule Exitpoint ****************/
 
 
+
 /************ begin Rule Reaction ****************
  *
  * / * ---- reaction rules ----
@@ -5082,11 +5164,11 @@ protected class ReactionPriority_PriorityAssignment extends AssignmentToken  {
 /************ begin Rule EntryPointSpec ****************
  *
  * EntryPointSpec:
- * 	">" entrypoint=[Entrypoint];
+ * 	">" entrypoint=[Entrypoint|FQN];
  *
  **/
 
-// ">" entrypoint=[Entrypoint]
+// ">" entrypoint=[Entrypoint|FQN]
 protected class EntryPointSpec_Group extends GroupToken {
 	
 	public EntryPointSpec_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -5136,7 +5218,7 @@ protected class EntryPointSpec_GreaterThanSignKeyword_0 extends KeywordToken  {
 
 }
 
-// entrypoint=[Entrypoint]
+// entrypoint=[Entrypoint|FQN]
 protected class EntryPointSpec_EntrypointAssignment_1 extends AssignmentToken  {
 	
 	public EntryPointSpec_EntrypointAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -5180,11 +5262,11 @@ protected class EntryPointSpec_EntrypointAssignment_1 extends AssignmentToken  {
 /************ begin Rule ExitPointSpec ****************
  *
  * ExitPointSpec:
- * 	exitpoint=[Exitpoint] ">";
+ * 	exitpoint=[Exitpoint|FQN] ">";
  *
  **/
 
-// exitpoint=[Exitpoint] ">"
+// exitpoint=[Exitpoint|FQN] ">"
 protected class ExitPointSpec_Group extends GroupToken {
 	
 	public ExitPointSpec_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -5213,7 +5295,7 @@ protected class ExitPointSpec_Group extends GroupToken {
 
 }
 
-// exitpoint=[Exitpoint]
+// exitpoint=[Exitpoint|FQN]
 protected class ExitPointSpec_ExitpointAssignment_0 extends AssignmentToken  {
 	
 	public ExitPointSpec_ExitpointAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -5436,11 +5518,11 @@ protected class EventSpec_BuiltinEventSpecParserRuleCall_2 extends RuleCallToken
 /************ begin Rule RegularEventSpec ****************
  *
  * RegularEventSpec:
- * 	event=[sct::Event];
+ * 	event=[sct::Event|FQN];
  *
  **/
 
-// event=[sct::Event]
+// event=[sct::Event|FQN]
 protected class RegularEventSpec_EventAssignment extends AssignmentToken  {
 	
 	public RegularEventSpec_EventAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -6323,11 +6405,11 @@ protected class Statement_OperationCallParserRuleCall_2 extends RuleCallToken {
 /************ begin Rule Assignment ****************
  *
  * Assignment:
- * 	varRef=[sct::Variable] operator=AssignmentOperator expression=Expression;
+ * 	varRef=[sct::Variable|FQN] operator=AssignmentOperator expression=Expression;
  *
  **/
 
-// varRef=[sct::Variable] operator=AssignmentOperator expression=Expression
+// varRef=[sct::Variable|FQN] operator=AssignmentOperator expression=Expression
 protected class Assignment_Group extends GroupToken {
 	
 	public Assignment_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -6356,7 +6438,7 @@ protected class Assignment_Group extends GroupToken {
 
 }
 
-// varRef=[sct::Variable]
+// varRef=[sct::Variable|FQN]
 protected class Assignment_VarRefAssignment_0 extends AssignmentToken  {
 	
 	public Assignment_VarRefAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -6479,11 +6561,11 @@ protected class Assignment_ExpressionAssignment_2 extends AssignmentToken  {
 /************ begin Rule EventRaising ****************
  *
  * EventRaising:
- * 	"raise" event=[sct::Event] (":" value=Expression)?;
+ * 	"raise" event=[sct::Event|FQN] (":" value=Expression)?;
  *
  **/
 
-// "raise" event=[sct::Event] (":" value=Expression)?
+// "raise" event=[sct::Event|FQN] (":" value=Expression)?
 protected class EventRaising_Group extends GroupToken {
 	
 	public EventRaising_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -6534,7 +6616,7 @@ protected class EventRaising_RaiseKeyword_0 extends KeywordToken  {
 
 }
 
-// event=[sct::Event]
+// event=[sct::Event|FQN]
 protected class EventRaising_EventAssignment_1 extends AssignmentToken  {
 	
 	public EventRaising_EventAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -9913,11 +9995,11 @@ protected class PrimitiveValueExpression_ValueAssignment_1 extends AssignmentTok
 /************ begin Rule ElementReferenceExpression ****************
  *
  * ElementReferenceExpression returns Expression:
- * 	{ElementReferenceExpression} value=[sct::Declaration];
+ * 	{ElementReferenceExpression} value=[sct::Declaration|FQN];
  *
  **/
 
-// {ElementReferenceExpression} value=[sct::Declaration]
+// {ElementReferenceExpression} value=[sct::Declaration|FQN]
 protected class ElementReferenceExpression_Group extends GroupToken {
 	
 	public ElementReferenceExpression_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -9972,7 +10054,7 @@ protected class ElementReferenceExpression_ElementReferenceExpressionAction_0 ex
 	}
 }
 
-// value=[sct::Declaration]
+// value=[sct::Declaration|FQN]
 protected class ElementReferenceExpression_ValueAssignment_1 extends AssignmentToken  {
 	
 	public ElementReferenceExpression_ValueAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -10016,11 +10098,11 @@ protected class ElementReferenceExpression_ValueAssignment_1 extends AssignmentT
 /************ begin Rule OperationCall ****************
  *
  * OperationCall returns Expression:
- * 	{OperationCall} operation=[Operation] "(" (args+=Expression ("," args+=Expression)*)? ")";
+ * 	{OperationCall} operation=[Operation|FQN] "(" (args+=Expression ("," args+=Expression)*)? ")";
  *
  **/
 
-// {OperationCall} operation=[Operation] "(" (args+=Expression ("," args+=Expression)*)? ")"
+// {OperationCall} operation=[Operation|FQN] "(" (args+=Expression ("," args+=Expression)*)? ")"
 protected class OperationCall_Group extends GroupToken {
 	
 	public OperationCall_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -10075,7 +10157,7 @@ protected class OperationCall_OperationCallAction_0 extends ActionToken  {
 	}
 }
 
-// operation=[Operation]
+// operation=[Operation|FQN]
 protected class OperationCall_OperationAssignment_1 extends AssignmentToken  {
 	
 	public OperationCall_OperationAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {

+ 109 - 32
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSText.g

@@ -302,19 +302,41 @@ ruleStatechartDefinition returns [EObject current=null]
             grammarAccess.getStatechartDefinitionAccess().getStatechartDefinitionAction_0(),
             $current);
     }
-)(
+)(	otherlv_1='namespace' 
+    {
+    	newLeafNode(otherlv_1, grammarAccess.getStatechartDefinitionAccess().getNamespaceKeyword_1_0());
+    }
+(
 (
 		{ 
-	        newCompositeNode(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_1_0()); 
+	        newCompositeNode(grammarAccess.getStatechartDefinitionAccess().getNamespaceFQNParserRuleCall_1_1_0()); 
 	    }
-		lv_definitionScopes_1_0=ruleStatechartScope		{
+		lv_namespace_2_0=ruleFQN		{
+	        if ($current==null) {
+	            $current = createModelElementForParent(grammarAccess.getStatechartDefinitionRule());
+	        }
+       		set(
+       			$current, 
+       			"namespace",
+        		lv_namespace_2_0, 
+        		"FQN");
+	        afterParserOrEnumRuleCall();
+	    }
+
+)
+))?(
+(
+		{ 
+	        newCompositeNode(grammarAccess.getStatechartDefinitionAccess().getDefinitionScopesStatechartScopeParserRuleCall_2_0()); 
+	    }
+		lv_definitionScopes_3_0=ruleStatechartScope		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStatechartDefinitionRule());
 	        }
        		add(
        			$current, 
        			"definitionScopes",
-        		lv_definitionScopes_1_0, 
+        		lv_definitionScopes_3_0, 
         		"StatechartScope");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1298,6 +1320,47 @@ ruleExitpoint returns [EObject current=null]
 
 
 
+// Entry rule entryRuleFQN
+entryRuleFQN returns [String current=null] 
+	:
+	{ newCompositeNode(grammarAccess.getFQNRule()); } 
+	 iv_ruleFQN=ruleFQN 
+	 { $current=$iv_ruleFQN.current.getText(); }  
+	 EOF 
+;
+
+// Rule FQN
+ruleFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
+    @init { enterRule(); 
+    }
+    @after { leaveRule(); }:
+(    this_ID_0=RULE_ID    {
+		$current.merge(this_ID_0);
+    }
+
+    { 
+    newLeafNode(this_ID_0, grammarAccess.getFQNAccess().getIDTerminalRuleCall_0()); 
+    }
+(
+	kw='.' 
+    {
+        $current.merge(kw);
+        newLeafNode(kw, grammarAccess.getFQNAccess().getFullStopKeyword_1_0()); 
+    }
+    this_ID_2=RULE_ID    {
+		$current.merge(this_ID_2);
+    }
+
+    { 
+    newLeafNode(this_ID_2, grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1()); 
+    }
+)*)
+    ;
+
+
+
+
+
 
 
 // Entry rule entryRuleLocalReaction
@@ -1801,10 +1864,12 @@ ruleEntryPointSpec returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getEntryPointSpecRule());
 	        }
         }
-	otherlv_1=RULE_ID
-	{
-		newLeafNode(otherlv_1, grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointCrossReference_1_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getEntryPointSpecAccess().getEntrypointEntrypointCrossReference_1_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 ))
@@ -1835,10 +1900,12 @@ ruleExitPointSpec returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getExitPointSpecRule());
 	        }
         }
-	otherlv_0=RULE_ID
-	{
-		newLeafNode(otherlv_0, grammarAccess.getExitPointSpecAccess().getExitpointExitpointCrossReference_0_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getExitPointSpecAccess().getExitpointExitpointCrossReference_0_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 )	otherlv_1='>' 
@@ -1923,10 +1990,12 @@ ruleRegularEventSpec returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getRegularEventSpecRule());
 	        }
         }
-	otherlv_0=RULE_ID
-	{
-		newLeafNode(otherlv_0, grammarAccess.getRegularEventSpecAccess().getEventEventCrossReference_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getRegularEventSpecAccess().getEventEventCrossReference_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 )
@@ -2266,10 +2335,12 @@ ruleAssignment returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getAssignmentRule());
 	        }
         }
-	otherlv_0=RULE_ID
-	{
-		newLeafNode(otherlv_0, grammarAccess.getAssignmentAccess().getVarRefVariableCrossReference_0_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getAssignmentAccess().getVarRefVariableCrossReference_0_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 )(
@@ -2340,10 +2411,12 @@ ruleEventRaising returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getEventRaisingRule());
 	        }
         }
-	otherlv_1=RULE_ID
-	{
-		newLeafNode(otherlv_1, grammarAccess.getEventRaisingAccess().getEventEventCrossReference_1_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getEventRaisingAccess().getEventEventCrossReference_1_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 )(	otherlv_2=':' 
@@ -3365,10 +3438,12 @@ ruleElementReferenceExpression returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getElementReferenceExpressionRule());
 	        }
         }
-	otherlv_1=RULE_ID
-	{
-		newLeafNode(otherlv_1, grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationCrossReference_1_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getElementReferenceExpressionAccess().getValueDeclarationCrossReference_1_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 ))
@@ -3405,10 +3480,12 @@ ruleOperationCall returns [EObject current=null]
 	            $current = createModelElement(grammarAccess.getOperationCallRule());
 	        }
         }
-	otherlv_1=RULE_ID
-	{
-		newLeafNode(otherlv_1, grammarAccess.getOperationCallAccess().getOperationOperationCrossReference_1_0()); 
-	}
+		{ 
+	        newCompositeNode(grammarAccess.getOperationCallAccess().getOperationOperationCrossReference_1_0()); 
+	    }
+		ruleFQN		{ 
+	        afterParserOrEnumRuleCall();
+	    }
 
 )
 )	otherlv_2='(' 

+ 156 - 152
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSText.tokens

@@ -1,152 +1,156 @@
-T__68=68
-T__69=69
-RULE_ID=4
-T__66=66
-T__67=67
-T__64=64
-T__29=29
-T__65=65
-T__28=28
-T__62=62
-T__27=27
-T__63=63
-T__26=26
-T__25=25
-T__24=24
-T__23=23
-T__22=22
-RULE_ANY_OTHER=13
-T__21=21
-T__20=20
-RULE_BOOL=6
-T__61=61
-T__60=60
-T__55=55
-T__56=56
-T__19=19
-T__57=57
-RULE_HEX=7
-T__58=58
-T__16=16
-T__51=51
-T__15=15
-T__52=52
-T__18=18
-T__53=53
-T__54=54
-T__17=17
-T__14=14
-T__59=59
-RULE_INT=5
-T__50=50
-T__42=42
-T__43=43
-T__40=40
-T__41=41
-T__80=80
-T__46=46
-T__81=81
-T__47=47
-T__82=82
-T__44=44
-T__83=83
-T__45=45
-T__48=48
-T__49=49
-RULE_FLOAT=9
-RULE_SL_COMMENT=11
-T__84=84
-RULE_ML_COMMENT=10
-T__30=30
-T__31=31
-RULE_STRING=8
-T__32=32
-T__71=71
-T__33=33
-T__72=72
-T__34=34
-T__35=35
-T__70=70
-T__36=36
-T__37=37
-T__38=38
-T__39=39
-RULE_WS=12
-T__76=76
-T__75=75
-T__74=74
-T__73=73
-T__79=79
-T__78=78
-T__77=77
-'>='=74
-'#'=33
-'internal'=19
-'out'=52
-'~'=71
-'=='=75
-'/'=32
-'string'=84
-'/='=56
-'integer'=81
-'%='=57
-'>'=37
-'event'=20
-'||'=44
-'&&'=45
-';'=36
-'raise'=42
-'+'=67
-'^'=47
-'>>'=66
-'^='=63
-'+='=58
-'readonly'=23
-'>>='=61
-'void'=80
-'?'=43
-'var'=22
-'s'=77
-'&='=62
-'('=27
-':'=18
-'-'=68
-'exit'=39
-','=28
-'in'=51
-'-='=59
-']'=35
-'<<='=60
-'real'=82
-'ns'=79
-'!'=46
-'|'=48
-'ms'=78
-'every'=54
-'|='=64
-'@@statechart@@'=14
-'exitpoint'=31
-'@@state@@'=15
-'='=21
-'always'=41
-')'=29
-'oncycle'=40
-'*='=55
-'entry'=38
-'%'=70
-'operation'=26
-'after'=53
-'boolean'=83
-'entrypoint'=30
-'<<'=65
-'<='=73
-'!='=76
-'@@transition@@'=16
-'external'=24
-'<'=72
-'*'=69
-'['=34
-'clock'=25
-'local'=50
-'&'=49
-'interface'=17
+T__68=68
+T__69=69
+RULE_ID=4
+T__66=66
+T__67=67
+T__64=64
+T__29=29
+T__65=65
+T__28=28
+T__62=62
+T__27=27
+T__63=63
+T__26=26
+T__25=25
+T__24=24
+T__23=23
+T__22=22
+RULE_ANY_OTHER=13
+T__21=21
+T__20=20
+RULE_BOOL=6
+T__61=61
+T__60=60
+T__55=55
+T__56=56
+T__19=19
+T__57=57
+RULE_HEX=7
+T__58=58
+T__16=16
+T__51=51
+T__15=15
+T__52=52
+T__18=18
+T__53=53
+T__54=54
+T__17=17
+T__14=14
+T__59=59
+RULE_INT=5
+T__50=50
+T__42=42
+T__43=43
+T__40=40
+T__41=41
+T__80=80
+T__46=46
+T__81=81
+T__47=47
+T__82=82
+T__44=44
+T__83=83
+T__45=45
+T__48=48
+T__49=49
+RULE_FLOAT=9
+T__85=85
+RULE_SL_COMMENT=11
+T__84=84
+T__86=86
+RULE_ML_COMMENT=10
+T__30=30
+T__31=31
+RULE_STRING=8
+T__32=32
+T__71=71
+T__33=33
+T__72=72
+T__34=34
+T__35=35
+T__70=70
+T__36=36
+T__37=37
+T__38=38
+T__39=39
+RULE_WS=12
+T__76=76
+T__75=75
+T__74=74
+T__73=73
+T__79=79
+T__78=78
+T__77=77
+'>='=76
+'#'=35
+'internal'=20
+'out'=54
+'~'=73
+'=='=77
+'/'=34
+'string'=86
+'/='=58
+'integer'=83
+'%='=59
+'event'=21
+'>'=39
+'||'=46
+'&&'=47
+';'=38
+'raise'=44
+'+'=69
+'.'=33
+'^'=49
+'>>'=68
+'^='=65
+'+='=60
+'readonly'=24
+'>>='=63
+'void'=82
+'?'=45
+'var'=23
+'s'=79
+'&='=64
+'('=28
+':'=19
+'-'=70
+'exit'=41
+','=29
+'in'=53
+'-='=61
+']'=37
+'<<='=62
+'real'=84
+'ns'=81
+'!'=48
+'|'=50
+'ms'=80
+'every'=56
+'|='=66
+'@@statechart@@'=14
+'exitpoint'=32
+'@@state@@'=15
+'='=22
+'always'=43
+')'=30
+'oncycle'=42
+'*='=57
+'entry'=40
+'%'=72
+'operation'=27
+'after'=55
+'boolean'=85
+'entrypoint'=31
+'namespace'=17
+'<<'=67
+'<='=75
+'!='=78
+'@@transition@@'=16
+'external'=25
+'<'=74
+'*'=71
+'['=36
+'clock'=26
+'local'=52
+'&'=51
+'interface'=18

File diff suppressed because it is too large
+ 3428 - 3355
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSTextLexer.java


File diff suppressed because it is too large
+ 12570 - 12181
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/parser/antlr/internal/InternalSTextParser.java


+ 117 - 62
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/services/STextGrammarAccess.java

@@ -136,26 +136,42 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StatechartDefinition");
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cStatechartDefinitionAction_0 = (Action)cGroup.eContents().get(0);
-		private final Assignment cDefinitionScopesAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cDefinitionScopesStatechartScopeParserRuleCall_1_0 = (RuleCall)cDefinitionScopesAssignment_1.eContents().get(0);
+		private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+		private final Keyword cNamespaceKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+		private final Assignment cNamespaceAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
+		private final RuleCall cNamespaceFQNParserRuleCall_1_1_0 = (RuleCall)cNamespaceAssignment_1_1.eContents().get(0);
+		private final Assignment cDefinitionScopesAssignment_2 = (Assignment)cGroup.eContents().get(2);
+		private final RuleCall cDefinitionScopesStatechartScopeParserRuleCall_2_0 = (RuleCall)cDefinitionScopesAssignment_2.eContents().get(0);
 		
 		/// * ---- start rules ----
 		//Define the starting points used by the statechart integration. These rules hook in the concrete rules of the specific grammar.
 		// * / StatechartDefinition:
-		//	{StatechartDefinition} definitionScopes+=StatechartScope*;
+		//	{StatechartDefinition} ("namespace" namespace=FQN)? definitionScopes+=StatechartScope*;
 		public ParserRule getRule() { return rule; }
 
-		//{StatechartDefinition} definitionScopes+=StatechartScope*
+		//{StatechartDefinition} ("namespace" namespace=FQN)? definitionScopes+=StatechartScope*
 		public Group getGroup() { return cGroup; }
 
 		//{StatechartDefinition}
 		public Action getStatechartDefinitionAction_0() { return cStatechartDefinitionAction_0; }
 
+		//("namespace" namespace=FQN)?
+		public Group getGroup_1() { return cGroup_1; }
+
+		//"namespace"
+		public Keyword getNamespaceKeyword_1_0() { return cNamespaceKeyword_1_0; }
+
+		//namespace=FQN
+		public Assignment getNamespaceAssignment_1_1() { return cNamespaceAssignment_1_1; }
+
+		//FQN
+		public RuleCall getNamespaceFQNParserRuleCall_1_1_0() { return cNamespaceFQNParserRuleCall_1_1_0; }
+
 		//definitionScopes+=StatechartScope*
-		public Assignment getDefinitionScopesAssignment_1() { return cDefinitionScopesAssignment_1; }
+		public Assignment getDefinitionScopesAssignment_2() { return cDefinitionScopesAssignment_2; }
 
 		//StatechartScope
-		public RuleCall getDefinitionScopesStatechartScopeParserRuleCall_1_0() { return cDefinitionScopesStatechartScopeParserRuleCall_1_0; }
+		public RuleCall getDefinitionScopesStatechartScopeParserRuleCall_2_0() { return cDefinitionScopesStatechartScopeParserRuleCall_2_0; }
 	}
 
 	public class StateDeclarationElements extends AbstractParserRuleElementFinder {
@@ -711,6 +727,34 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
 	}
 
+	public class FQNElements extends AbstractParserRuleElementFinder {
+		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FQN");
+		private final Group cGroup = (Group)rule.eContents().get(1);
+		private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
+		private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+		private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+		private final RuleCall cIDTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1);
+		
+		/// * ---- Datatype rules ---- * / FQN:
+		//	ID ("." ID)*;
+		public ParserRule getRule() { return rule; }
+
+		//ID ("." ID)*
+		public Group getGroup() { return cGroup; }
+
+		//ID
+		public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; }
+
+		//("." ID)*
+		public Group getGroup_1() { return cGroup_1; }
+
+		//"."
+		public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
+
+		//ID
+		public RuleCall getIDTerminalRuleCall_1_1() { return cIDTerminalRuleCall_1_1; }
+	}
+
 	public class ReactionElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Reaction");
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
@@ -1034,26 +1078,26 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cGreaterThanSignKeyword_0 = (Keyword)cGroup.eContents().get(0);
 		private final Assignment cEntrypointAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final CrossReference cEntrypointEntrypointCrossReference_1_0 = (CrossReference)cEntrypointAssignment_1.eContents().get(0);
-		private final RuleCall cEntrypointEntrypointIDTerminalRuleCall_1_0_1 = (RuleCall)cEntrypointEntrypointCrossReference_1_0.eContents().get(1);
+		private final RuleCall cEntrypointEntrypointFQNParserRuleCall_1_0_1 = (RuleCall)cEntrypointEntrypointCrossReference_1_0.eContents().get(1);
 		
 		//EntryPointSpec:
-		//	">" entrypoint=[Entrypoint];
+		//	">" entrypoint=[Entrypoint|FQN];
 		public ParserRule getRule() { return rule; }
 
-		//">" entrypoint=[Entrypoint]
+		//">" entrypoint=[Entrypoint|FQN]
 		public Group getGroup() { return cGroup; }
 
 		//">"
 		public Keyword getGreaterThanSignKeyword_0() { return cGreaterThanSignKeyword_0; }
 
-		//entrypoint=[Entrypoint]
+		//entrypoint=[Entrypoint|FQN]
 		public Assignment getEntrypointAssignment_1() { return cEntrypointAssignment_1; }
 
-		//[Entrypoint]
+		//[Entrypoint|FQN]
 		public CrossReference getEntrypointEntrypointCrossReference_1_0() { return cEntrypointEntrypointCrossReference_1_0; }
 
-		//ID
-		public RuleCall getEntrypointEntrypointIDTerminalRuleCall_1_0_1() { return cEntrypointEntrypointIDTerminalRuleCall_1_0_1; }
+		//FQN
+		public RuleCall getEntrypointEntrypointFQNParserRuleCall_1_0_1() { return cEntrypointEntrypointFQNParserRuleCall_1_0_1; }
 	}
 
 	public class ExitPointSpecElements extends AbstractParserRuleElementFinder {
@@ -1061,24 +1105,24 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Assignment cExitpointAssignment_0 = (Assignment)cGroup.eContents().get(0);
 		private final CrossReference cExitpointExitpointCrossReference_0_0 = (CrossReference)cExitpointAssignment_0.eContents().get(0);
-		private final RuleCall cExitpointExitpointIDTerminalRuleCall_0_0_1 = (RuleCall)cExitpointExitpointCrossReference_0_0.eContents().get(1);
+		private final RuleCall cExitpointExitpointFQNParserRuleCall_0_0_1 = (RuleCall)cExitpointExitpointCrossReference_0_0.eContents().get(1);
 		private final Keyword cGreaterThanSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		
 		//ExitPointSpec:
-		//	exitpoint=[Exitpoint] ">";
+		//	exitpoint=[Exitpoint|FQN] ">";
 		public ParserRule getRule() { return rule; }
 
-		//exitpoint=[Exitpoint] ">"
+		//exitpoint=[Exitpoint|FQN] ">"
 		public Group getGroup() { return cGroup; }
 
-		//exitpoint=[Exitpoint]
+		//exitpoint=[Exitpoint|FQN]
 		public Assignment getExitpointAssignment_0() { return cExitpointAssignment_0; }
 
-		//[Exitpoint]
+		//[Exitpoint|FQN]
 		public CrossReference getExitpointExitpointCrossReference_0_0() { return cExitpointExitpointCrossReference_0_0; }
 
-		//ID
-		public RuleCall getExitpointExitpointIDTerminalRuleCall_0_0_1() { return cExitpointExitpointIDTerminalRuleCall_0_0_1; }
+		//FQN
+		public RuleCall getExitpointExitpointFQNParserRuleCall_0_0_1() { return cExitpointExitpointFQNParserRuleCall_0_0_1; }
 
 		//">"
 		public Keyword getGreaterThanSignKeyword_1() { return cGreaterThanSignKeyword_1; }
@@ -1112,20 +1156,20 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RegularEventSpec");
 		private final Assignment cEventAssignment = (Assignment)rule.eContents().get(1);
 		private final CrossReference cEventEventCrossReference_0 = (CrossReference)cEventAssignment.eContents().get(0);
-		private final RuleCall cEventEventIDTerminalRuleCall_0_1 = (RuleCall)cEventEventCrossReference_0.eContents().get(1);
+		private final RuleCall cEventEventFQNParserRuleCall_0_1 = (RuleCall)cEventEventCrossReference_0.eContents().get(1);
 		
 		//RegularEventSpec:
-		//	event=[sct::Event];
+		//	event=[sct::Event|FQN];
 		public ParserRule getRule() { return rule; }
 
-		//event=[sct::Event]
+		//event=[sct::Event|FQN]
 		public Assignment getEventAssignment() { return cEventAssignment; }
 
-		//[sct::Event]
+		//[sct::Event|FQN]
 		public CrossReference getEventEventCrossReference_0() { return cEventEventCrossReference_0; }
 
-		//ID
-		public RuleCall getEventEventIDTerminalRuleCall_0_1() { return cEventEventIDTerminalRuleCall_0_1; }
+		//FQN
+		public RuleCall getEventEventFQNParserRuleCall_0_1() { return cEventEventFQNParserRuleCall_0_1; }
 	}
 
 	public class TimeEventSpecElements extends AbstractParserRuleElementFinder {
@@ -1304,27 +1348,27 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Assignment cVarRefAssignment_0 = (Assignment)cGroup.eContents().get(0);
 		private final CrossReference cVarRefVariableCrossReference_0_0 = (CrossReference)cVarRefAssignment_0.eContents().get(0);
-		private final RuleCall cVarRefVariableIDTerminalRuleCall_0_0_1 = (RuleCall)cVarRefVariableCrossReference_0_0.eContents().get(1);
+		private final RuleCall cVarRefVariableFQNParserRuleCall_0_0_1 = (RuleCall)cVarRefVariableCrossReference_0_0.eContents().get(1);
 		private final Assignment cOperatorAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOperatorAssignmentOperatorEnumRuleCall_1_0 = (RuleCall)cOperatorAssignment_1.eContents().get(0);
 		private final Assignment cExpressionAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cExpressionExpressionParserRuleCall_2_0 = (RuleCall)cExpressionAssignment_2.eContents().get(0);
 		
 		//Assignment:
-		//	varRef=[sct::Variable] operator=AssignmentOperator expression=Expression;
+		//	varRef=[sct::Variable|FQN] operator=AssignmentOperator expression=Expression;
 		public ParserRule getRule() { return rule; }
 
-		//varRef=[sct::Variable] operator=AssignmentOperator expression=Expression
+		//varRef=[sct::Variable|FQN] operator=AssignmentOperator expression=Expression
 		public Group getGroup() { return cGroup; }
 
-		//varRef=[sct::Variable]
+		//varRef=[sct::Variable|FQN]
 		public Assignment getVarRefAssignment_0() { return cVarRefAssignment_0; }
 
-		//[sct::Variable]
+		//[sct::Variable|FQN]
 		public CrossReference getVarRefVariableCrossReference_0_0() { return cVarRefVariableCrossReference_0_0; }
 
-		//ID
-		public RuleCall getVarRefVariableIDTerminalRuleCall_0_0_1() { return cVarRefVariableIDTerminalRuleCall_0_0_1; }
+		//FQN
+		public RuleCall getVarRefVariableFQNParserRuleCall_0_0_1() { return cVarRefVariableFQNParserRuleCall_0_0_1; }
 
 		//operator=AssignmentOperator
 		public Assignment getOperatorAssignment_1() { return cOperatorAssignment_1; }
@@ -1345,30 +1389,30 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRaiseKeyword_0 = (Keyword)cGroup.eContents().get(0);
 		private final Assignment cEventAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final CrossReference cEventEventCrossReference_1_0 = (CrossReference)cEventAssignment_1.eContents().get(0);
-		private final RuleCall cEventEventIDTerminalRuleCall_1_0_1 = (RuleCall)cEventEventCrossReference_1_0.eContents().get(1);
+		private final RuleCall cEventEventFQNParserRuleCall_1_0_1 = (RuleCall)cEventEventCrossReference_1_0.eContents().get(1);
 		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
 		private final Keyword cColonKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
 		private final Assignment cValueAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
 		private final RuleCall cValueExpressionParserRuleCall_2_1_0 = (RuleCall)cValueAssignment_2_1.eContents().get(0);
 		
 		//EventRaising:
-		//	"raise" event=[sct::Event] (":" value=Expression)?;
+		//	"raise" event=[sct::Event|FQN] (":" value=Expression)?;
 		public ParserRule getRule() { return rule; }
 
-		//"raise" event=[sct::Event] (":" value=Expression)?
+		//"raise" event=[sct::Event|FQN] (":" value=Expression)?
 		public Group getGroup() { return cGroup; }
 
 		//"raise"
 		public Keyword getRaiseKeyword_0() { return cRaiseKeyword_0; }
 
-		//event=[sct::Event]
+		//event=[sct::Event|FQN]
 		public Assignment getEventAssignment_1() { return cEventAssignment_1; }
 
-		//[sct::Event]
+		//[sct::Event|FQN]
 		public CrossReference getEventEventCrossReference_1_0() { return cEventEventCrossReference_1_0; }
 
-		//ID
-		public RuleCall getEventEventIDTerminalRuleCall_1_0_1() { return cEventEventIDTerminalRuleCall_1_0_1; }
+		//FQN
+		public RuleCall getEventEventFQNParserRuleCall_1_0_1() { return cEventEventFQNParserRuleCall_1_0_1; }
 
 		//(":" value=Expression)?
 		public Group getGroup_2() { return cGroup_2; }
@@ -1962,26 +2006,26 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Action cElementReferenceExpressionAction_0 = (Action)cGroup.eContents().get(0);
 		private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final CrossReference cValueDeclarationCrossReference_1_0 = (CrossReference)cValueAssignment_1.eContents().get(0);
-		private final RuleCall cValueDeclarationIDTerminalRuleCall_1_0_1 = (RuleCall)cValueDeclarationCrossReference_1_0.eContents().get(1);
+		private final RuleCall cValueDeclarationFQNParserRuleCall_1_0_1 = (RuleCall)cValueDeclarationCrossReference_1_0.eContents().get(1);
 		
 		//ElementReferenceExpression returns Expression:
-		//	{ElementReferenceExpression} value=[sct::Declaration];
+		//	{ElementReferenceExpression} value=[sct::Declaration|FQN];
 		public ParserRule getRule() { return rule; }
 
-		//{ElementReferenceExpression} value=[sct::Declaration]
+		//{ElementReferenceExpression} value=[sct::Declaration|FQN]
 		public Group getGroup() { return cGroup; }
 
 		//{ElementReferenceExpression}
 		public Action getElementReferenceExpressionAction_0() { return cElementReferenceExpressionAction_0; }
 
-		//value=[sct::Declaration]
+		//value=[sct::Declaration|FQN]
 		public Assignment getValueAssignment_1() { return cValueAssignment_1; }
 
-		//[sct::Declaration]
+		//[sct::Declaration|FQN]
 		public CrossReference getValueDeclarationCrossReference_1_0() { return cValueDeclarationCrossReference_1_0; }
 
-		//ID
-		public RuleCall getValueDeclarationIDTerminalRuleCall_1_0_1() { return cValueDeclarationIDTerminalRuleCall_1_0_1; }
+		//FQN
+		public RuleCall getValueDeclarationFQNParserRuleCall_1_0_1() { return cValueDeclarationFQNParserRuleCall_1_0_1; }
 	}
 
 	public class OperationCallElements extends AbstractParserRuleElementFinder {
@@ -1990,7 +2034,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Action cOperationCallAction_0 = (Action)cGroup.eContents().get(0);
 		private final Assignment cOperationAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final CrossReference cOperationOperationCrossReference_1_0 = (CrossReference)cOperationAssignment_1.eContents().get(0);
-		private final RuleCall cOperationOperationIDTerminalRuleCall_1_0_1 = (RuleCall)cOperationOperationCrossReference_1_0.eContents().get(1);
+		private final RuleCall cOperationOperationFQNParserRuleCall_1_0_1 = (RuleCall)cOperationOperationCrossReference_1_0.eContents().get(1);
 		private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
 		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
 		private final Assignment cArgsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
@@ -2002,23 +2046,23 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
 		
 		//OperationCall returns Expression:
-		//	{OperationCall} operation=[Operation] "(" (args+=Expression ("," args+=Expression)*)? ")";
+		//	{OperationCall} operation=[Operation|FQN] "(" (args+=Expression ("," args+=Expression)*)? ")";
 		public ParserRule getRule() { return rule; }
 
-		//{OperationCall} operation=[Operation] "(" (args+=Expression ("," args+=Expression)*)? ")"
+		//{OperationCall} operation=[Operation|FQN] "(" (args+=Expression ("," args+=Expression)*)? ")"
 		public Group getGroup() { return cGroup; }
 
 		//{OperationCall}
 		public Action getOperationCallAction_0() { return cOperationCallAction_0; }
 
-		//operation=[Operation]
+		//operation=[Operation|FQN]
 		public Assignment getOperationAssignment_1() { return cOperationAssignment_1; }
 
-		//[Operation]
+		//[Operation|FQN]
 		public CrossReference getOperationOperationCrossReference_1_0() { return cOperationOperationCrossReference_1_0; }
 
-		//ID
-		public RuleCall getOperationOperationIDTerminalRuleCall_1_0_1() { return cOperationOperationIDTerminalRuleCall_1_0_1; }
+		//FQN
+		public RuleCall getOperationOperationFQNParserRuleCall_1_0_1() { return cOperationOperationFQNParserRuleCall_1_0_1; }
 
 		//"("
 		public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
@@ -2545,6 +2589,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	private OperationElements pOperation;
 	private EntrypointElements pEntrypoint;
 	private ExitpointElements pExitpoint;
+	private FQNElements pFQN;
 	private ReactionElements pReaction;
 	private LocalReactionElements pLocalReaction;
 	private TransitionReactionElements pTransitionReaction;
@@ -2675,7 +2720,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	/// * ---- start rules ----
 	//Define the starting points used by the statechart integration. These rules hook in the concrete rules of the specific grammar.
 	// * / StatechartDefinition:
-	//	{StatechartDefinition} definitionScopes+=StatechartScope*;
+	//	{StatechartDefinition} ("namespace" namespace=FQN)? definitionScopes+=StatechartScope*;
 	public StatechartDefinitionElements getStatechartDefinitionAccess() {
 		return (pStatechartDefinition != null) ? pStatechartDefinition : (pStatechartDefinition = new StatechartDefinitionElements());
 	}
@@ -2851,6 +2896,16 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 		return getExitpointAccess().getRule();
 	}
 
+	/// * ---- Datatype rules ---- * / FQN:
+	//	ID ("." ID)*;
+	public FQNElements getFQNAccess() {
+		return (pFQN != null) ? pFQN : (pFQN = new FQNElements());
+	}
+	
+	public ParserRule getFQNRule() {
+		return getFQNAccess().getRule();
+	}
+
 	/// * ---- reaction rules ----
 	//Define the structure of reactions that are central for describing the statecharts behavior. 
 	// * / Reaction returns sct::Reaction:
@@ -2935,7 +2990,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//EntryPointSpec:
-	//	">" entrypoint=[Entrypoint];
+	//	">" entrypoint=[Entrypoint|FQN];
 	public EntryPointSpecElements getEntryPointSpecAccess() {
 		return (pEntryPointSpec != null) ? pEntryPointSpec : (pEntryPointSpec = new EntryPointSpecElements());
 	}
@@ -2945,7 +3000,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//ExitPointSpec:
-	//	exitpoint=[Exitpoint] ">";
+	//	exitpoint=[Exitpoint|FQN] ">";
 	public ExitPointSpecElements getExitPointSpecAccess() {
 		return (pExitPointSpec != null) ? pExitPointSpec : (pExitPointSpec = new ExitPointSpecElements());
 	}
@@ -2965,7 +3020,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//RegularEventSpec:
-	//	event=[sct::Event];
+	//	event=[sct::Event|FQN];
 	public RegularEventSpecElements getRegularEventSpecAccess() {
 		return (pRegularEventSpec != null) ? pRegularEventSpec : (pRegularEventSpec = new RegularEventSpecElements());
 	}
@@ -3058,7 +3113,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//Assignment:
-	//	varRef=[sct::Variable] operator=AssignmentOperator expression=Expression;
+	//	varRef=[sct::Variable|FQN] operator=AssignmentOperator expression=Expression;
 	public AssignmentElements getAssignmentAccess() {
 		return (pAssignment != null) ? pAssignment : (pAssignment = new AssignmentElements());
 	}
@@ -3079,7 +3134,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//EventRaising:
-	//	"raise" event=[sct::Event] (":" value=Expression)?;
+	//	"raise" event=[sct::Event|FQN] (":" value=Expression)?;
 	public EventRaisingElements getEventRaisingAccess() {
 		return (pEventRaising != null) ? pEventRaising : (pEventRaising = new EventRaisingElements());
 	}
@@ -3329,7 +3384,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//ElementReferenceExpression returns Expression:
-	//	{ElementReferenceExpression} value=[sct::Declaration];
+	//	{ElementReferenceExpression} value=[sct::Declaration|FQN];
 	public ElementReferenceExpressionElements getElementReferenceExpressionAccess() {
 		return (pElementReferenceExpression != null) ? pElementReferenceExpression : (pElementReferenceExpression = new ElementReferenceExpressionElements());
 	}
@@ -3339,7 +3394,7 @@ public class STextGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//OperationCall returns Expression:
-	//	{OperationCall} operation=[Operation] "(" (args+=Expression ("," args+=Expression)*)? ")";
+	//	{OperationCall} operation=[Operation|FQN] "(" (args+=Expression ("," args+=Expression)*)? ")";
 	public OperationCallElements getOperationCallAccess() {
 		return (pOperationCall != null) ? pOperationCall : (pOperationCall = new OperationCallElements());
 	}

+ 226 - 227
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/AdditiveOperator.java

@@ -1,227 +1,226 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Additive Operator</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getAdditiveOperator()
- * @model
- * @generated
- */
-public enum AdditiveOperator implements Enumerator
-{
-  /**
-   * The '<em><b>Plus</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #PLUS_VALUE
-   * @generated
-   * @ordered
-   */
-  PLUS(0, "plus", "+"),
-
-  /**
-   * The '<em><b>Minus</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #MINUS_VALUE
-   * @generated
-   * @ordered
-   */
-  MINUS(1, "minus", "-");
-
-  /**
-   * The '<em><b>Plus</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Plus</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #PLUS
-   * @model name="plus" literal="+"
-   * @generated
-   * @ordered
-   */
-  public static final int PLUS_VALUE = 0;
-
-  /**
-   * The '<em><b>Minus</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Minus</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #MINUS
-   * @model name="minus" literal="-"
-   * @generated
-   * @ordered
-   */
-  public static final int MINUS_VALUE = 1;
-
-  /**
-   * An array of all the '<em><b>Additive Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final AdditiveOperator[] VALUES_ARRAY =
-    new AdditiveOperator[]
-    {
-      PLUS,
-      MINUS,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Additive Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<AdditiveOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Additive Operator</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static AdditiveOperator get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      AdditiveOperator result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Additive Operator</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static AdditiveOperator getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      AdditiveOperator result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Additive Operator</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static AdditiveOperator get(int value)
-  {
-    switch (value)
-    {
-      case PLUS_VALUE: return PLUS;
-      case MINUS_VALUE: return MINUS;
-    }
-    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 AdditiveOperator(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;
-  }
-  
-} //AdditiveOperator
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Additive Operator</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getAdditiveOperator()
+ * @model
+ * @generated
+ */
+public enum AdditiveOperator implements Enumerator
+{
+  /**
+   * The '<em><b>Plus</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #PLUS_VALUE
+   * @generated
+   * @ordered
+   */
+  PLUS(0, "plus", "+"),
+
+  /**
+   * The '<em><b>Minus</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #MINUS_VALUE
+   * @generated
+   * @ordered
+   */
+  MINUS(1, "minus", "-");
+
+  /**
+   * The '<em><b>Plus</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Plus</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #PLUS
+   * @model name="plus" literal="+"
+   * @generated
+   * @ordered
+   */
+  public static final int PLUS_VALUE = 0;
+
+  /**
+   * The '<em><b>Minus</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Minus</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #MINUS
+   * @model name="minus" literal="-"
+   * @generated
+   * @ordered
+   */
+  public static final int MINUS_VALUE = 1;
+
+  /**
+   * An array of all the '<em><b>Additive Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final AdditiveOperator[] VALUES_ARRAY =
+    new AdditiveOperator[]
+    {
+      PLUS,
+      MINUS,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Additive Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<AdditiveOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Additive Operator</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static AdditiveOperator get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      AdditiveOperator result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Additive Operator</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static AdditiveOperator getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      AdditiveOperator result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Additive Operator</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static AdditiveOperator get(int value)
+  {
+    switch (value)
+    {
+      case PLUS_VALUE: return PLUS;
+      case MINUS_VALUE: return MINUS;
+    }
+    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 AdditiveOperator(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;
+  }
+  
+} //AdditiveOperator

+ 20 - 21
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/AlwaysEvent.java

@@ -1,22 +1,21 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Always Event</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getAlwaysEvent()
- * @model
- * @generated
- */
-public interface AlwaysEvent extends BuiltinEventSpec
-{
-} // AlwaysEvent
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Always Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getAlwaysEvent()
+ * @model
+ * @generated
+ */
+public interface AlwaysEvent extends BuiltinEventSpec
+{
+} // AlwaysEvent

+ 111 - 112
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Assignment.java

@@ -1,113 +1,112 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Statement;
-import org.yakindu.sct.model.sgraph.Variable;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Assignment</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.Assignment#getVarRef <em>Var Ref</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.Assignment#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.Assignment#getExpression <em>Expression</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment()
- * @model
- * @generated
- */
-public interface Assignment extends Statement
-{
-  /**
-   * Returns the value of the '<em><b>Var Ref</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Var Ref</em>' reference isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Var Ref</em>' reference.
-   * @see #setVarRef(Variable)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment_VarRef()
-   * @model
-   * @generated
-   */
-  Variable getVarRef();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Assignment#getVarRef <em>Var Ref</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Var Ref</em>' reference.
-   * @see #getVarRef()
-   * @generated
-   */
-  void setVarRef(Variable value);
-
-  /**
-   * Returns the value of the '<em><b>Operator</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.AssignmentOperator}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.AssignmentOperator
-   * @see #setOperator(AssignmentOperator)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment_Operator()
-   * @model
-   * @generated
-   */
-  AssignmentOperator getOperator();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Assignment#getOperator <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.AssignmentOperator
-   * @see #getOperator()
-   * @generated
-   */
-  void setOperator(AssignmentOperator value);
-
-  /**
-   * Returns the value of the '<em><b>Expression</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Expression</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>Expression</em>' containment reference.
-   * @see #setExpression(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment_Expression()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getExpression();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Assignment#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);
-
-} // Assignment
+import org.yakindu.sct.model.sgraph.Statement;
+import org.yakindu.sct.model.sgraph.Variable;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Assignment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.Assignment#getVarRef <em>Var Ref</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.Assignment#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.Assignment#getExpression <em>Expression</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment()
+ * @model
+ * @generated
+ */
+public interface Assignment extends Statement
+{
+  /**
+   * Returns the value of the '<em><b>Var Ref</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Var Ref</em>' reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Var Ref</em>' reference.
+   * @see #setVarRef(Variable)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment_VarRef()
+   * @model
+   * @generated
+   */
+  Variable getVarRef();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Assignment#getVarRef <em>Var Ref</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Var Ref</em>' reference.
+   * @see #getVarRef()
+   * @generated
+   */
+  void setVarRef(Variable value);
+
+  /**
+   * Returns the value of the '<em><b>Operator</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.AssignmentOperator}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.AssignmentOperator
+   * @see #setOperator(AssignmentOperator)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment_Operator()
+   * @model
+   * @generated
+   */
+  AssignmentOperator getOperator();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Assignment#getOperator <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.AssignmentOperator
+   * @see #getOperator()
+   * @generated
+   */
+  void setOperator(AssignmentOperator value);
+
+  /**
+   * Returns the value of the '<em><b>Expression</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Expression</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>Expression</em>' containment reference.
+   * @see #setExpression(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignment_Expression()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getExpression();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Assignment#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);
+
+} // Assignment

+ 469 - 470
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/AssignmentOperator.java

@@ -1,470 +1,469 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Assignment Operator</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignmentOperator()
- * @model
- * @generated
- */
-public enum AssignmentOperator implements Enumerator
-{
-  /**
-   * The '<em><b>Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  ASSIGN(0, "assign", "="),
-
-  /**
-   * The '<em><b>Mult Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #MULT_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  MULT_ASSIGN(1, "multAssign", "*="),
-
-  /**
-   * The '<em><b>Div Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #DIV_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  DIV_ASSIGN(2, "divAssign", "/="),
-
-  /**
-   * The '<em><b>Mod Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #MOD_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  MOD_ASSIGN(3, "modAssign", "%="),
-
-  /**
-   * The '<em><b>Add Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #ADD_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  ADD_ASSIGN(4, "addAssign", "+="),
-
-  /**
-   * The '<em><b>Sub Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #SUB_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  SUB_ASSIGN(5, "subAssign", "-="),
-
-  /**
-   * The '<em><b>Left Shift Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #LEFT_SHIFT_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  LEFT_SHIFT_ASSIGN(6, "leftShiftAssign", "<<="),
-
-  /**
-   * The '<em><b>Right Shift Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #RIGHT_SHIFT_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  RIGHT_SHIFT_ASSIGN(7, "rightShiftAssign", ">>="),
-
-  /**
-   * The '<em><b>And Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #AND_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  AND_ASSIGN(8, "andAssign", "&="),
-
-  /**
-   * The '<em><b>Xor Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #XOR_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  XOR_ASSIGN(9, "xorAssign", "^="),
-
-  /**
-   * The '<em><b>Or Assign</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #OR_ASSIGN_VALUE
-   * @generated
-   * @ordered
-   */
-  OR_ASSIGN(10, "orAssign", "|=");
-
-  /**
-   * The '<em><b>Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #ASSIGN
-   * @model name="assign" literal="="
-   * @generated
-   * @ordered
-   */
-  public static final int ASSIGN_VALUE = 0;
-
-  /**
-   * The '<em><b>Mult Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Mult Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #MULT_ASSIGN
-   * @model name="multAssign" literal="*="
-   * @generated
-   * @ordered
-   */
-  public static final int MULT_ASSIGN_VALUE = 1;
-
-  /**
-   * The '<em><b>Div Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Div Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #DIV_ASSIGN
-   * @model name="divAssign" literal="/="
-   * @generated
-   * @ordered
-   */
-  public static final int DIV_ASSIGN_VALUE = 2;
-
-  /**
-   * The '<em><b>Mod Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Mod Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #MOD_ASSIGN
-   * @model name="modAssign" literal="%="
-   * @generated
-   * @ordered
-   */
-  public static final int MOD_ASSIGN_VALUE = 3;
-
-  /**
-   * The '<em><b>Add Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Add Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #ADD_ASSIGN
-   * @model name="addAssign" literal="+="
-   * @generated
-   * @ordered
-   */
-  public static final int ADD_ASSIGN_VALUE = 4;
-
-  /**
-   * The '<em><b>Sub Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Sub Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #SUB_ASSIGN
-   * @model name="subAssign" literal="-="
-   * @generated
-   * @ordered
-   */
-  public static final int SUB_ASSIGN_VALUE = 5;
-
-  /**
-   * The '<em><b>Left Shift Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Left Shift Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #LEFT_SHIFT_ASSIGN
-   * @model name="leftShiftAssign" literal="<<="
-   * @generated
-   * @ordered
-   */
-  public static final int LEFT_SHIFT_ASSIGN_VALUE = 6;
-
-  /**
-   * The '<em><b>Right Shift Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Right Shift Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #RIGHT_SHIFT_ASSIGN
-   * @model name="rightShiftAssign" literal=">>="
-   * @generated
-   * @ordered
-   */
-  public static final int RIGHT_SHIFT_ASSIGN_VALUE = 7;
-
-  /**
-   * The '<em><b>And Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>And Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #AND_ASSIGN
-   * @model name="andAssign" literal="&="
-   * @generated
-   * @ordered
-   */
-  public static final int AND_ASSIGN_VALUE = 8;
-
-  /**
-   * The '<em><b>Xor Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Xor Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #XOR_ASSIGN
-   * @model name="xorAssign" literal="^="
-   * @generated
-   * @ordered
-   */
-  public static final int XOR_ASSIGN_VALUE = 9;
-
-  /**
-   * The '<em><b>Or Assign</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Or Assign</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #OR_ASSIGN
-   * @model name="orAssign" literal="|="
-   * @generated
-   * @ordered
-   */
-  public static final int OR_ASSIGN_VALUE = 10;
-
-  /**
-   * An array of all the '<em><b>Assignment Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final AssignmentOperator[] VALUES_ARRAY =
-    new AssignmentOperator[]
-    {
-      ASSIGN,
-      MULT_ASSIGN,
-      DIV_ASSIGN,
-      MOD_ASSIGN,
-      ADD_ASSIGN,
-      SUB_ASSIGN,
-      LEFT_SHIFT_ASSIGN,
-      RIGHT_SHIFT_ASSIGN,
-      AND_ASSIGN,
-      XOR_ASSIGN,
-      OR_ASSIGN,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Assignment Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<AssignmentOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Assignment Operator</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static AssignmentOperator get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      AssignmentOperator result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Assignment Operator</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static AssignmentOperator getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      AssignmentOperator result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Assignment Operator</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static AssignmentOperator get(int value)
-  {
-    switch (value)
-    {
-      case ASSIGN_VALUE: return ASSIGN;
-      case MULT_ASSIGN_VALUE: return MULT_ASSIGN;
-      case DIV_ASSIGN_VALUE: return DIV_ASSIGN;
-      case MOD_ASSIGN_VALUE: return MOD_ASSIGN;
-      case ADD_ASSIGN_VALUE: return ADD_ASSIGN;
-      case SUB_ASSIGN_VALUE: return SUB_ASSIGN;
-      case LEFT_SHIFT_ASSIGN_VALUE: return LEFT_SHIFT_ASSIGN;
-      case RIGHT_SHIFT_ASSIGN_VALUE: return RIGHT_SHIFT_ASSIGN;
-      case AND_ASSIGN_VALUE: return AND_ASSIGN;
-      case XOR_ASSIGN_VALUE: return XOR_ASSIGN;
-      case OR_ASSIGN_VALUE: return OR_ASSIGN;
-    }
-    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 AssignmentOperator(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;
-  }
-  
-} //AssignmentOperator
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Assignment Operator</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getAssignmentOperator()
+ * @model
+ * @generated
+ */
+public enum AssignmentOperator implements Enumerator
+{
+  /**
+   * The '<em><b>Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  ASSIGN(0, "assign", "="),
+
+  /**
+   * The '<em><b>Mult Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #MULT_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  MULT_ASSIGN(1, "multAssign", "*="),
+
+  /**
+   * The '<em><b>Div Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #DIV_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  DIV_ASSIGN(2, "divAssign", "/="),
+
+  /**
+   * The '<em><b>Mod Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #MOD_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  MOD_ASSIGN(3, "modAssign", "%="),
+
+  /**
+   * The '<em><b>Add Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #ADD_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  ADD_ASSIGN(4, "addAssign", "+="),
+
+  /**
+   * The '<em><b>Sub Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #SUB_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  SUB_ASSIGN(5, "subAssign", "-="),
+
+  /**
+   * The '<em><b>Left Shift Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #LEFT_SHIFT_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  LEFT_SHIFT_ASSIGN(6, "leftShiftAssign", "<<="),
+
+  /**
+   * The '<em><b>Right Shift Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #RIGHT_SHIFT_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  RIGHT_SHIFT_ASSIGN(7, "rightShiftAssign", ">>="),
+
+  /**
+   * The '<em><b>And Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #AND_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  AND_ASSIGN(8, "andAssign", "&="),
+
+  /**
+   * The '<em><b>Xor Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #XOR_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  XOR_ASSIGN(9, "xorAssign", "^="),
+
+  /**
+   * The '<em><b>Or Assign</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #OR_ASSIGN_VALUE
+   * @generated
+   * @ordered
+   */
+  OR_ASSIGN(10, "orAssign", "|=");
+
+  /**
+   * The '<em><b>Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #ASSIGN
+   * @model name="assign" literal="="
+   * @generated
+   * @ordered
+   */
+  public static final int ASSIGN_VALUE = 0;
+
+  /**
+   * The '<em><b>Mult Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Mult Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #MULT_ASSIGN
+   * @model name="multAssign" literal="*="
+   * @generated
+   * @ordered
+   */
+  public static final int MULT_ASSIGN_VALUE = 1;
+
+  /**
+   * The '<em><b>Div Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Div Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #DIV_ASSIGN
+   * @model name="divAssign" literal="/="
+   * @generated
+   * @ordered
+   */
+  public static final int DIV_ASSIGN_VALUE = 2;
+
+  /**
+   * The '<em><b>Mod Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Mod Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #MOD_ASSIGN
+   * @model name="modAssign" literal="%="
+   * @generated
+   * @ordered
+   */
+  public static final int MOD_ASSIGN_VALUE = 3;
+
+  /**
+   * The '<em><b>Add Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Add Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #ADD_ASSIGN
+   * @model name="addAssign" literal="+="
+   * @generated
+   * @ordered
+   */
+  public static final int ADD_ASSIGN_VALUE = 4;
+
+  /**
+   * The '<em><b>Sub Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Sub Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #SUB_ASSIGN
+   * @model name="subAssign" literal="-="
+   * @generated
+   * @ordered
+   */
+  public static final int SUB_ASSIGN_VALUE = 5;
+
+  /**
+   * The '<em><b>Left Shift Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Left Shift Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #LEFT_SHIFT_ASSIGN
+   * @model name="leftShiftAssign" literal="<<="
+   * @generated
+   * @ordered
+   */
+  public static final int LEFT_SHIFT_ASSIGN_VALUE = 6;
+
+  /**
+   * The '<em><b>Right Shift Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Right Shift Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #RIGHT_SHIFT_ASSIGN
+   * @model name="rightShiftAssign" literal=">>="
+   * @generated
+   * @ordered
+   */
+  public static final int RIGHT_SHIFT_ASSIGN_VALUE = 7;
+
+  /**
+   * The '<em><b>And Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>And Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #AND_ASSIGN
+   * @model name="andAssign" literal="&="
+   * @generated
+   * @ordered
+   */
+  public static final int AND_ASSIGN_VALUE = 8;
+
+  /**
+   * The '<em><b>Xor Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Xor Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #XOR_ASSIGN
+   * @model name="xorAssign" literal="^="
+   * @generated
+   * @ordered
+   */
+  public static final int XOR_ASSIGN_VALUE = 9;
+
+  /**
+   * The '<em><b>Or Assign</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Or Assign</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #OR_ASSIGN
+   * @model name="orAssign" literal="|="
+   * @generated
+   * @ordered
+   */
+  public static final int OR_ASSIGN_VALUE = 10;
+
+  /**
+   * An array of all the '<em><b>Assignment Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final AssignmentOperator[] VALUES_ARRAY =
+    new AssignmentOperator[]
+    {
+      ASSIGN,
+      MULT_ASSIGN,
+      DIV_ASSIGN,
+      MOD_ASSIGN,
+      ADD_ASSIGN,
+      SUB_ASSIGN,
+      LEFT_SHIFT_ASSIGN,
+      RIGHT_SHIFT_ASSIGN,
+      AND_ASSIGN,
+      XOR_ASSIGN,
+      OR_ASSIGN,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Assignment Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<AssignmentOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Assignment Operator</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static AssignmentOperator get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      AssignmentOperator result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Assignment Operator</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static AssignmentOperator getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      AssignmentOperator result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Assignment Operator</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static AssignmentOperator get(int value)
+  {
+    switch (value)
+    {
+      case ASSIGN_VALUE: return ASSIGN;
+      case MULT_ASSIGN_VALUE: return MULT_ASSIGN;
+      case DIV_ASSIGN_VALUE: return DIV_ASSIGN;
+      case MOD_ASSIGN_VALUE: return MOD_ASSIGN;
+      case ADD_ASSIGN_VALUE: return ADD_ASSIGN;
+      case SUB_ASSIGN_VALUE: return SUB_ASSIGN;
+      case LEFT_SHIFT_ASSIGN_VALUE: return LEFT_SHIFT_ASSIGN;
+      case RIGHT_SHIFT_ASSIGN_VALUE: return RIGHT_SHIFT_ASSIGN;
+      case AND_ASSIGN_VALUE: return AND_ASSIGN;
+      case XOR_ASSIGN_VALUE: return XOR_ASSIGN;
+      case OR_ASSIGN_VALUE: return OR_ASSIGN;
+    }
+    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 AssignmentOperator(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;
+  }
+  
+} //AssignmentOperator

+ 79 - 80
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BitwiseAndExpression.java

@@ -1,81 +1,80 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Bitwise And Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseAndExpression()
- * @model
- * @generated
- */
-public interface BitwiseAndExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseAndExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseAndExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // BitwiseAndExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bitwise And Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseAndExpression()
+ * @model
+ * @generated
+ */
+public interface BitwiseAndExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseAndExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseAndExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseAndExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // BitwiseAndExpression

+ 79 - 80
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BitwiseOrExpression.java

@@ -1,81 +1,80 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Bitwise Or Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseOrExpression()
- * @model
- * @generated
- */
-public interface BitwiseOrExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseOrExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseOrExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // BitwiseOrExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bitwise Or Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseOrExpression()
+ * @model
+ * @generated
+ */
+public interface BitwiseOrExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseOrExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseOrExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseOrExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // BitwiseOrExpression

+ 79 - 80
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BitwiseXorExpression.java

@@ -1,81 +1,80 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Bitwise Xor Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseXorExpression()
- * @model
- * @generated
- */
-public interface BitwiseXorExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseXorExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseXorExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // BitwiseXorExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bitwise Xor Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseXorExpression()
+ * @model
+ * @generated
+ */
+public interface BitwiseXorExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseXorExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getBitwiseXorExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.BitwiseXorExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // BitwiseXorExpression

+ 20 - 21
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/BuiltinEventSpec.java

@@ -1,22 +1,21 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Builtin Event Spec</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getBuiltinEventSpec()
- * @model
- * @generated
- */
-public interface BuiltinEventSpec extends EventSpec
-{
-} // BuiltinEventSpec
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Builtin Event Spec</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getBuiltinEventSpec()
+ * @model
+ * @generated
+ */
+public interface BuiltinEventSpec extends EventSpec
+{
+} // BuiltinEventSpec

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Clock.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Clock</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getClock()
- * @model
- * @generated
- */
-public interface Clock extends Declaration
-{
-} // Clock
+import org.yakindu.sct.model.sgraph.Declaration;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Clock</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getClock()
+ * @model
+ * @generated
+ */
+public interface Clock extends Declaration
+{
+} // Clock

+ 106 - 107
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ConditionalExpression.java

@@ -1,108 +1,107 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Conditional Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getCondition <em>Condition</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getTrueCase <em>True Case</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getFalseCase <em>False Case</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression()
- * @model
- * @generated
- */
-public interface ConditionalExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Condition</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Condition</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>Condition</em>' containment reference.
-   * @see #setCondition(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression_Condition()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getCondition();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#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>True Case</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>True Case</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>True Case</em>' containment reference.
-   * @see #setTrueCase(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression_TrueCase()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getTrueCase();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getTrueCase <em>True Case</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>True Case</em>' containment reference.
-   * @see #getTrueCase()
-   * @generated
-   */
-  void setTrueCase(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>False Case</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>False Case</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>False Case</em>' containment reference.
-   * @see #setFalseCase(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression_FalseCase()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getFalseCase();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getFalseCase <em>False Case</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>False Case</em>' containment reference.
-   * @see #getFalseCase()
-   * @generated
-   */
-  void setFalseCase(Expression value);
-
-} // ConditionalExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conditional Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getCondition <em>Condition</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getTrueCase <em>True Case</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getFalseCase <em>False Case</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression()
+ * @model
+ * @generated
+ */
+public interface ConditionalExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Condition</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Condition</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>Condition</em>' containment reference.
+   * @see #setCondition(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression_Condition()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getCondition();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#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>True Case</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>True Case</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>True Case</em>' containment reference.
+   * @see #setTrueCase(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression_TrueCase()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getTrueCase();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getTrueCase <em>True Case</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>True Case</em>' containment reference.
+   * @see #getTrueCase()
+   * @generated
+   */
+  void setTrueCase(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>False Case</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>False Case</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>False Case</em>' containment reference.
+   * @see #setFalseCase(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getConditionalExpression_FalseCase()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getFalseCase();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ConditionalExpression#getFalseCase <em>False Case</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>False Case</em>' containment reference.
+   * @see #getFalseCase()
+   * @generated
+   */
+  void setFalseCase(Expression value);
+
+} // ConditionalExpression

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/DefRoot.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Def Root</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getDefRoot()
- * @model
- * @generated
- */
-public interface DefRoot extends EObject
-{
-} // DefRoot
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Def Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getDefRoot()
+ * @model
+ * @generated
+ */
+public interface DefRoot extends EObject
+{
+} // DefRoot

+ 253 - 254
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Direction.java

@@ -1,254 +1,253 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Direction</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getDirection()
- * @model
- * @generated
- */
-public enum Direction implements Enumerator
-{
-  /**
-   * The '<em><b>LOCAL</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #LOCAL_VALUE
-   * @generated
-   * @ordered
-   */
-  LOCAL(0, "LOCAL", "local"),
-
-  /**
-   * The '<em><b>IN</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #IN_VALUE
-   * @generated
-   * @ordered
-   */
-  IN(1, "IN", "in"),
-
-  /**
-   * The '<em><b>OUT</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #OUT_VALUE
-   * @generated
-   * @ordered
-   */
-  OUT(2, "OUT", "out");
-
-  /**
-   * The '<em><b>LOCAL</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>LOCAL</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #LOCAL
-   * @model literal="local"
-   * @generated
-   * @ordered
-   */
-  public static final int LOCAL_VALUE = 0;
-
-  /**
-   * The '<em><b>IN</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>IN</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #IN
-   * @model literal="in"
-   * @generated
-   * @ordered
-   */
-  public static final int IN_VALUE = 1;
-
-  /**
-   * The '<em><b>OUT</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>OUT</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #OUT
-   * @model literal="out"
-   * @generated
-   * @ordered
-   */
-  public static final int OUT_VALUE = 2;
-
-  /**
-   * An array of all the '<em><b>Direction</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final Direction[] VALUES_ARRAY =
-    new Direction[]
-    {
-      LOCAL,
-      IN,
-      OUT,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Direction</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<Direction> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Direction</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static Direction get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      Direction result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Direction</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static Direction getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      Direction result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Direction</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static Direction get(int value)
-  {
-    switch (value)
-    {
-      case LOCAL_VALUE: return LOCAL;
-      case IN_VALUE: return IN;
-      case OUT_VALUE: return OUT;
-    }
-    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 Direction(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;
-  }
-  
-} //Direction
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Direction</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getDirection()
+ * @model
+ * @generated
+ */
+public enum Direction implements Enumerator
+{
+  /**
+   * The '<em><b>LOCAL</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #LOCAL_VALUE
+   * @generated
+   * @ordered
+   */
+  LOCAL(0, "LOCAL", "local"),
+
+  /**
+   * The '<em><b>IN</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #IN_VALUE
+   * @generated
+   * @ordered
+   */
+  IN(1, "IN", "in"),
+
+  /**
+   * The '<em><b>OUT</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #OUT_VALUE
+   * @generated
+   * @ordered
+   */
+  OUT(2, "OUT", "out");
+
+  /**
+   * The '<em><b>LOCAL</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>LOCAL</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #LOCAL
+   * @model literal="local"
+   * @generated
+   * @ordered
+   */
+  public static final int LOCAL_VALUE = 0;
+
+  /**
+   * The '<em><b>IN</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>IN</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #IN
+   * @model literal="in"
+   * @generated
+   * @ordered
+   */
+  public static final int IN_VALUE = 1;
+
+  /**
+   * The '<em><b>OUT</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>OUT</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #OUT
+   * @model literal="out"
+   * @generated
+   * @ordered
+   */
+  public static final int OUT_VALUE = 2;
+
+  /**
+   * An array of all the '<em><b>Direction</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final Direction[] VALUES_ARRAY =
+    new Direction[]
+    {
+      LOCAL,
+      IN,
+      OUT,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Direction</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<Direction> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Direction</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static Direction get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      Direction result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Direction</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static Direction getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      Direction result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Direction</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static Direction get(int value)
+  {
+    switch (value)
+    {
+      case LOCAL_VALUE: return LOCAL;
+      case IN_VALUE: return IN;
+      case OUT_VALUE: return OUT;
+    }
+    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 Direction(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;
+  }
+  
+} //Direction

+ 53 - 54
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ElementReferenceExpression.java

@@ -1,55 +1,54 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Element Reference Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ElementReferenceExpression#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getElementReferenceExpression()
- * @model
- * @generated
- */
-public interface ElementReferenceExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Value</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Value</em>' 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>' reference.
-   * @see #setValue(Declaration)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getElementReferenceExpression_Value()
-   * @model
-   * @generated
-   */
-  Declaration getValue();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ElementReferenceExpression#getValue <em>Value</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Value</em>' reference.
-   * @see #getValue()
-   * @generated
-   */
-  void setValue(Declaration value);
-
-} // ElementReferenceExpression
+import org.yakindu.sct.model.sgraph.Declaration;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Element Reference Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ElementReferenceExpression#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getElementReferenceExpression()
+ * @model
+ * @generated
+ */
+public interface ElementReferenceExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Value</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Value</em>' 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>' reference.
+   * @see #setValue(Declaration)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getElementReferenceExpression_Value()
+   * @model
+   * @generated
+   */
+  Declaration getValue();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ElementReferenceExpression#getValue <em>Value</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Value</em>' reference.
+   * @see #getValue()
+   * @generated
+   */
+  void setValue(Declaration value);
+
+} // ElementReferenceExpression

+ 20 - 21
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EntryEvent.java

@@ -1,22 +1,21 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Entry Event</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntryEvent()
- * @model
- * @generated
- */
-public interface EntryEvent extends BuiltinEventSpec
-{
-} // EntryEvent
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Entry Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntryEvent()
+ * @model
+ * @generated
+ */
+public interface EntryEvent extends BuiltinEventSpec
+{
+} // EntryEvent

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EntryPointSpec.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Entry Point Spec</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EntryPointSpec#getEntrypoint <em>Entrypoint</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntryPointSpec()
- * @model
- * @generated
- */
-public interface EntryPointSpec extends ReactionProperty
-{
-  /**
-   * Returns the value of the '<em><b>Entrypoint</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Entrypoint</em>' reference isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Entrypoint</em>' reference.
-   * @see #setEntrypoint(Entrypoint)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntryPointSpec_Entrypoint()
-   * @model
-   * @generated
-   */
-  Entrypoint getEntrypoint();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EntryPointSpec#getEntrypoint <em>Entrypoint</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Entrypoint</em>' reference.
-   * @see #getEntrypoint()
-   * @generated
-   */
-  void setEntrypoint(Entrypoint value);
-
-} // EntryPointSpec
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Entry Point Spec</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EntryPointSpec#getEntrypoint <em>Entrypoint</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntryPointSpec()
+ * @model
+ * @generated
+ */
+public interface EntryPointSpec extends ReactionProperty
+{
+  /**
+   * Returns the value of the '<em><b>Entrypoint</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Entrypoint</em>' reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Entrypoint</em>' reference.
+   * @see #setEntrypoint(Entrypoint)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntryPointSpec_Entrypoint()
+   * @model
+   * @generated
+   */
+  Entrypoint getEntrypoint();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EntryPointSpec#getEntrypoint <em>Entrypoint</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Entrypoint</em>' reference.
+   * @see #getEntrypoint()
+   * @generated
+   */
+  void setEntrypoint(Entrypoint value);
+
+} // EntryPointSpec

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Entrypoint.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Entrypoint</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntrypoint()
- * @model
- * @generated
- */
-public interface Entrypoint extends Declaration
-{
-} // Entrypoint
+import org.yakindu.sct.model.sgraph.Declaration;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Entrypoint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEntrypoint()
+ * @model
+ * @generated
+ */
+public interface Entrypoint extends Declaration
+{
+} // Entrypoint

+ 113 - 114
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventDefinition.java

@@ -1,115 +1,114 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Event;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Event Definition</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getType <em>Type</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDerivation <em>Derivation</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition()
- * @model
- * @generated
- */
-public interface EventDefinition extends Event
-{
-  /**
-   * Returns the value of the '<em><b>Direction</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Direction}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Direction</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Direction</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Direction
-   * @see #setDirection(Direction)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Direction()
-   * @model
-   * @generated
-   */
-  Direction getDirection();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Direction</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Direction
-   * @see #getDirection()
-   * @generated
-   */
-  void setDirection(Direction value);
-
-  /**
-   * Returns the value of the '<em><b>Type</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>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>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see #setType(Type)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Type()
-   * @model
-   * @generated
-   */
-  Type getType();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getType <em>Type</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see #getType()
-   * @generated
-   */
-  void setType(Type value);
-
-  /**
-   * Returns the value of the '<em><b>Derivation</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Derivation</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>Derivation</em>' containment reference.
-   * @see #setDerivation(EventDerivation)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Derivation()
-   * @model containment="true"
-   * @generated
-   */
-  EventDerivation getDerivation();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDerivation <em>Derivation</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Derivation</em>' containment reference.
-   * @see #getDerivation()
-   * @generated
-   */
-  void setDerivation(EventDerivation value);
-
-} // EventDefinition
+import org.yakindu.sct.model.sgraph.Event;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Event Definition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getType <em>Type</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDerivation <em>Derivation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition()
+ * @model
+ * @generated
+ */
+public interface EventDefinition extends Event
+{
+  /**
+   * Returns the value of the '<em><b>Direction</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Direction}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Direction</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Direction</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Direction
+   * @see #setDirection(Direction)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Direction()
+   * @model
+   * @generated
+   */
+  Direction getDirection();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Direction</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Direction
+   * @see #getDirection()
+   * @generated
+   */
+  void setDirection(Direction value);
+
+  /**
+   * Returns the value of the '<em><b>Type</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>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>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see #setType(Type)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Type()
+   * @model
+   * @generated
+   */
+  Type getType();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getType <em>Type</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see #getType()
+   * @generated
+   */
+  void setType(Type value);
+
+  /**
+   * Returns the value of the '<em><b>Derivation</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Derivation</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>Derivation</em>' containment reference.
+   * @see #setDerivation(EventDerivation)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Derivation()
+   * @model containment="true"
+   * @generated
+   */
+  EventDerivation getDerivation();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDerivation <em>Derivation</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Derivation</em>' containment reference.
+   * @see #getDerivation()
+   * @generated
+   */
+  void setDerivation(EventDerivation value);
+
+} // EventDefinition

+ 80 - 81
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventDerivation.java

@@ -1,82 +1,81 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Event Derivation</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventDerivation#getCondition <em>Condition</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventDerivation#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDerivation()
- * @model
- * @generated
- */
-public interface EventDerivation extends EObject
-{
-  /**
-   * Returns the value of the '<em><b>Condition</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Condition</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>Condition</em>' containment reference.
-   * @see #setCondition(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDerivation_Condition()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getCondition();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDerivation#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>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 org.yakindu.sct.model.stext.stext.StextPackage#getEventDerivation_Value()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getValue();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDerivation#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);
-
-} // EventDerivation
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Event Derivation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventDerivation#getCondition <em>Condition</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventDerivation#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDerivation()
+ * @model
+ * @generated
+ */
+public interface EventDerivation extends EObject
+{
+  /**
+   * Returns the value of the '<em><b>Condition</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Condition</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>Condition</em>' containment reference.
+   * @see #setCondition(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDerivation_Condition()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getCondition();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDerivation#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>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 org.yakindu.sct.model.stext.stext.StextPackage#getEventDerivation_Value()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getValue();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDerivation#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);
+
+} // EventDerivation

+ 81 - 82
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventRaising.java

@@ -1,83 +1,82 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Event;
-import org.yakindu.sct.model.sgraph.Statement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Event Raising</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventRaising#getEvent <em>Event</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventRaising#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventRaising()
- * @model
- * @generated
- */
-public interface EventRaising extends Statement
-{
-  /**
-   * Returns the value of the '<em><b>Event</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Event</em>' reference isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Event</em>' reference.
-   * @see #setEvent(Event)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventRaising_Event()
-   * @model
-   * @generated
-   */
-  Event getEvent();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventRaising#getEvent <em>Event</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Event</em>' reference.
-   * @see #getEvent()
-   * @generated
-   */
-  void setEvent(Event value);
-
-  /**
-   * 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 org.yakindu.sct.model.stext.stext.StextPackage#getEventRaising_Value()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getValue();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventRaising#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);
-
-} // EventRaising
+import org.yakindu.sct.model.sgraph.Event;
+import org.yakindu.sct.model.sgraph.Statement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Event Raising</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventRaising#getEvent <em>Event</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.EventRaising#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventRaising()
+ * @model
+ * @generated
+ */
+public interface EventRaising extends Statement
+{
+  /**
+   * Returns the value of the '<em><b>Event</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Event</em>' reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Event</em>' reference.
+   * @see #setEvent(Event)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventRaising_Event()
+   * @model
+   * @generated
+   */
+  Event getEvent();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventRaising#getEvent <em>Event</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Event</em>' reference.
+   * @see #getEvent()
+   * @generated
+   */
+  void setEvent(Event value);
+
+  /**
+   * 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 org.yakindu.sct.model.stext.stext.StextPackage#getEventRaising_Value()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getValue();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventRaising#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);
+
+} // EventRaising

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/EventSpec.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Event Spec</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventSpec()
- * @model
- * @generated
- */
-public interface EventSpec extends EObject
-{
-} // EventSpec
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Event Spec</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventSpec()
+ * @model
+ * @generated
+ */
+public interface EventSpec extends EObject
+{
+} // EventSpec

+ 20 - 21
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ExitEvent.java

@@ -1,22 +1,21 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Exit Event</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitEvent()
- * @model
- * @generated
- */
-public interface ExitEvent extends BuiltinEventSpec
-{
-} // ExitEvent
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Exit Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitEvent()
+ * @model
+ * @generated
+ */
+public interface ExitEvent extends BuiltinEventSpec
+{
+} // ExitEvent

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ExitPointSpec.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Exit Point Spec</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ExitPointSpec#getExitpoint <em>Exitpoint</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitPointSpec()
- * @model
- * @generated
- */
-public interface ExitPointSpec extends ReactionProperty
-{
-  /**
-   * Returns the value of the '<em><b>Exitpoint</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Exitpoint</em>' reference isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Exitpoint</em>' reference.
-   * @see #setExitpoint(Exitpoint)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitPointSpec_Exitpoint()
-   * @model
-   * @generated
-   */
-  Exitpoint getExitpoint();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ExitPointSpec#getExitpoint <em>Exitpoint</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Exitpoint</em>' reference.
-   * @see #getExitpoint()
-   * @generated
-   */
-  void setExitpoint(Exitpoint value);
-
-} // ExitPointSpec
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Exit Point Spec</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ExitPointSpec#getExitpoint <em>Exitpoint</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitPointSpec()
+ * @model
+ * @generated
+ */
+public interface ExitPointSpec extends ReactionProperty
+{
+  /**
+   * Returns the value of the '<em><b>Exitpoint</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Exitpoint</em>' reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Exitpoint</em>' reference.
+   * @see #setExitpoint(Exitpoint)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitPointSpec_Exitpoint()
+   * @model
+   * @generated
+   */
+  Exitpoint getExitpoint();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ExitPointSpec#getExitpoint <em>Exitpoint</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Exitpoint</em>' reference.
+   * @see #getExitpoint()
+   * @generated
+   */
+  void setExitpoint(Exitpoint value);
+
+} // ExitPointSpec

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Exitpoint.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Exitpoint</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitpoint()
- * @model
- * @generated
- */
-public interface Exitpoint extends Declaration
-{
-} // Exitpoint
+import org.yakindu.sct.model.sgraph.Declaration;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Exitpoint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getExitpoint()
+ * @model
+ * @generated
+ */
+public interface Exitpoint extends Declaration
+{
+} // Exitpoint

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Expression.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Statement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getExpression()
- * @model
- * @generated
- */
-public interface Expression extends Statement
-{
-} // Expression
+import org.yakindu.sct.model.sgraph.Statement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getExpression()
+ * @model
+ * @generated
+ */
+public interface Expression extends Statement
+{
+} // Expression

+ 53 - 54
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/InterfaceScope.java

@@ -1,55 +1,54 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Scope;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Interface Scope</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.InterfaceScope#getName <em>Name</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getInterfaceScope()
- * @model
- * @generated
- */
-public interface InterfaceScope extends Scope
-{
-  /**
-   * Returns the value of the '<em><b>Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>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>Name</em>' attribute.
-   * @see #setName(String)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getInterfaceScope_Name()
-   * @model
-   * @generated
-   */
-  String getName();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.InterfaceScope#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);
-
-} // InterfaceScope
+import org.yakindu.sct.model.sgraph.Scope;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Interface Scope</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.InterfaceScope#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getInterfaceScope()
+ * @model
+ * @generated
+ */
+public interface InterfaceScope extends Scope
+{
+  /**
+   * Returns the value of the '<em><b>Name</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>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>Name</em>' attribute.
+   * @see #setName(String)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getInterfaceScope_Name()
+   * @model
+   * @generated
+   */
+  String getName();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.InterfaceScope#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);
+
+} // InterfaceScope

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/InternalScope.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Scope;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Internal Scope</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getInternalScope()
- * @model
- * @generated
- */
-public interface InternalScope extends Scope
-{
-} // InternalScope
+import org.yakindu.sct.model.sgraph.Scope;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Internal Scope</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getInternalScope()
+ * @model
+ * @generated
+ */
+public interface InternalScope extends Scope
+{
+} // InternalScope

+ 54 - 55
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LocalReaction.java

@@ -1,56 +1,55 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-import org.yakindu.sct.model.sgraph.Reaction;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Local Reaction</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LocalReaction#getProperties <em>Properties</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getLocalReaction()
- * @model
- * @generated
- */
-public interface LocalReaction extends Declaration, Reaction
-{
-  /**
-   * Returns the value of the '<em><b>Properties</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Properties</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>Properties</em>' containment reference.
-   * @see #setProperties(ReactionProperties)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLocalReaction_Properties()
-   * @model containment="true"
-   * @generated
-   */
-  ReactionProperties getProperties();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LocalReaction#getProperties <em>Properties</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Properties</em>' containment reference.
-   * @see #getProperties()
-   * @generated
-   */
-  void setProperties(ReactionProperties value);
-
-} // LocalReaction
+import org.yakindu.sct.model.sgraph.Declaration;
+import org.yakindu.sct.model.sgraph.Reaction;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Local Reaction</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LocalReaction#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getLocalReaction()
+ * @model
+ * @generated
+ */
+public interface LocalReaction extends Declaration, Reaction
+{
+  /**
+   * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Properties</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>Properties</em>' containment reference.
+   * @see #setProperties(ReactionProperties)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLocalReaction_Properties()
+   * @model containment="true"
+   * @generated
+   */
+  ReactionProperties getProperties();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LocalReaction#getProperties <em>Properties</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Properties</em>' containment reference.
+   * @see #getProperties()
+   * @generated
+   */
+  void setProperties(ReactionProperties value);
+
+} // LocalReaction

+ 79 - 80
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalAndExpression.java

@@ -1,81 +1,80 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Logical And Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalAndExpression()
- * @model
- * @generated
- */
-public interface LogicalAndExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalAndExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalAndExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // LogicalAndExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Logical And Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalAndExpression()
+ * @model
+ * @generated
+ */
+public interface LogicalAndExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalAndExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalAndExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalAndExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // LogicalAndExpression

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalNotExpression.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Logical Not Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalNotExpression#getOperand <em>Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalNotExpression()
- * @model
- * @generated
- */
-public interface LogicalNotExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operand</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>Operand</em>' containment reference.
-   * @see #setOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalNotExpression_Operand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalNotExpression#getOperand <em>Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operand</em>' containment reference.
-   * @see #getOperand()
-   * @generated
-   */
-  void setOperand(Expression value);
-
-} // LogicalNotExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Logical Not Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalNotExpression#getOperand <em>Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalNotExpression()
+ * @model
+ * @generated
+ */
+public interface LogicalNotExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operand</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>Operand</em>' containment reference.
+   * @see #setOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalNotExpression_Operand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalNotExpression#getOperand <em>Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operand</em>' containment reference.
+   * @see #getOperand()
+   * @generated
+   */
+  void setOperand(Expression value);
+
+} // LogicalNotExpression

+ 79 - 80
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalOrExpression.java

@@ -1,81 +1,80 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Logical Or Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalOrExpression()
- * @model
- * @generated
- */
-public interface LogicalOrExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalOrExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalOrExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // LogicalOrExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Logical Or Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalOrExpression()
+ * @model
+ * @generated
+ */
+public interface LogicalOrExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalOrExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalOrExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalOrExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // LogicalOrExpression

+ 109 - 110
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/LogicalRelationExpression.java

@@ -1,111 +1,110 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Logical Relation Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression()
- * @model
- * @generated
- */
-public interface LogicalRelationExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Operator</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.RelationalOperator}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.RelationalOperator
-   * @see #setOperator(RelationalOperator)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression_Operator()
-   * @model
-   * @generated
-   */
-  RelationalOperator getOperator();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getOperator <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.RelationalOperator
-   * @see #getOperator()
-   * @generated
-   */
-  void setOperator(RelationalOperator value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // LogicalRelationExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Logical Relation Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression()
+ * @model
+ * @generated
+ */
+public interface LogicalRelationExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Operator</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.RelationalOperator}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.RelationalOperator
+   * @see #setOperator(RelationalOperator)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression_Operator()
+   * @model
+   * @generated
+   */
+  RelationalOperator getOperator();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getOperator <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.RelationalOperator
+   * @see #getOperator()
+   * @generated
+   */
+  void setOperator(RelationalOperator value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getLogicalRelationExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.LogicalRelationExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // LogicalRelationExpression

+ 253 - 254
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/MultiplicativeOperator.java

@@ -1,254 +1,253 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Multiplicative Operator</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getMultiplicativeOperator()
- * @model
- * @generated
- */
-public enum MultiplicativeOperator implements Enumerator
-{
-  /**
-   * The '<em><b>Mul</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #MUL_VALUE
-   * @generated
-   * @ordered
-   */
-  MUL(0, "mul", "*"),
-
-  /**
-   * The '<em><b>Div</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #DIV_VALUE
-   * @generated
-   * @ordered
-   */
-  DIV(1, "div", "/"),
-
-  /**
-   * The '<em><b>Mod</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #MOD_VALUE
-   * @generated
-   * @ordered
-   */
-  MOD(2, "mod", "%");
-
-  /**
-   * The '<em><b>Mul</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Mul</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #MUL
-   * @model name="mul" literal="*"
-   * @generated
-   * @ordered
-   */
-  public static final int MUL_VALUE = 0;
-
-  /**
-   * The '<em><b>Div</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Div</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #DIV
-   * @model name="div" literal="/"
-   * @generated
-   * @ordered
-   */
-  public static final int DIV_VALUE = 1;
-
-  /**
-   * The '<em><b>Mod</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Mod</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #MOD
-   * @model name="mod" literal="%"
-   * @generated
-   * @ordered
-   */
-  public static final int MOD_VALUE = 2;
-
-  /**
-   * An array of all the '<em><b>Multiplicative Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final MultiplicativeOperator[] VALUES_ARRAY =
-    new MultiplicativeOperator[]
-    {
-      MUL,
-      DIV,
-      MOD,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Multiplicative Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<MultiplicativeOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Multiplicative Operator</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static MultiplicativeOperator get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      MultiplicativeOperator result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Multiplicative Operator</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static MultiplicativeOperator getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      MultiplicativeOperator result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Multiplicative Operator</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static MultiplicativeOperator get(int value)
-  {
-    switch (value)
-    {
-      case MUL_VALUE: return MUL;
-      case DIV_VALUE: return DIV;
-      case MOD_VALUE: return MOD;
-    }
-    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 MultiplicativeOperator(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;
-  }
-  
-} //MultiplicativeOperator
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Multiplicative Operator</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getMultiplicativeOperator()
+ * @model
+ * @generated
+ */
+public enum MultiplicativeOperator implements Enumerator
+{
+  /**
+   * The '<em><b>Mul</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #MUL_VALUE
+   * @generated
+   * @ordered
+   */
+  MUL(0, "mul", "*"),
+
+  /**
+   * The '<em><b>Div</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #DIV_VALUE
+   * @generated
+   * @ordered
+   */
+  DIV(1, "div", "/"),
+
+  /**
+   * The '<em><b>Mod</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #MOD_VALUE
+   * @generated
+   * @ordered
+   */
+  MOD(2, "mod", "%");
+
+  /**
+   * The '<em><b>Mul</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Mul</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #MUL
+   * @model name="mul" literal="*"
+   * @generated
+   * @ordered
+   */
+  public static final int MUL_VALUE = 0;
+
+  /**
+   * The '<em><b>Div</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Div</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #DIV
+   * @model name="div" literal="/"
+   * @generated
+   * @ordered
+   */
+  public static final int DIV_VALUE = 1;
+
+  /**
+   * The '<em><b>Mod</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Mod</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #MOD
+   * @model name="mod" literal="%"
+   * @generated
+   * @ordered
+   */
+  public static final int MOD_VALUE = 2;
+
+  /**
+   * An array of all the '<em><b>Multiplicative Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final MultiplicativeOperator[] VALUES_ARRAY =
+    new MultiplicativeOperator[]
+    {
+      MUL,
+      DIV,
+      MOD,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Multiplicative Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<MultiplicativeOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Multiplicative Operator</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static MultiplicativeOperator get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      MultiplicativeOperator result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Multiplicative Operator</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static MultiplicativeOperator getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      MultiplicativeOperator result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Multiplicative Operator</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static MultiplicativeOperator get(int value)
+  {
+    switch (value)
+    {
+      case MUL_VALUE: return MUL;
+      case DIV_VALUE: return DIV;
+      case MOD_VALUE: return MOD;
+    }
+    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 MultiplicativeOperator(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;
+  }
+  
+} //MultiplicativeOperator

+ 109 - 110
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/NumericalAddSubtractExpression.java

@@ -1,111 +1,110 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Numerical Add Subtract Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression()
- * @model
- * @generated
- */
-public interface NumericalAddSubtractExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Operator</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.AdditiveOperator}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.AdditiveOperator
-   * @see #setOperator(AdditiveOperator)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression_Operator()
-   * @model
-   * @generated
-   */
-  AdditiveOperator getOperator();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getOperator <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.AdditiveOperator
-   * @see #getOperator()
-   * @generated
-   */
-  void setOperator(AdditiveOperator value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // NumericalAddSubtractExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Numerical Add Subtract Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression()
+ * @model
+ * @generated
+ */
+public interface NumericalAddSubtractExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Operator</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.AdditiveOperator}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.AdditiveOperator
+   * @see #setOperator(AdditiveOperator)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression_Operator()
+   * @model
+   * @generated
+   */
+  AdditiveOperator getOperator();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getOperator <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.AdditiveOperator
+   * @see #getOperator()
+   * @generated
+   */
+  void setOperator(AdditiveOperator value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalAddSubtractExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalAddSubtractExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // NumericalAddSubtractExpression

+ 109 - 110
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/NumericalMultiplyDivideExpression.java

@@ -1,111 +1,110 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Numerical Multiply Divide Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression()
- * @model
- * @generated
- */
-public interface NumericalMultiplyDivideExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Operator</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.MultiplicativeOperator}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.MultiplicativeOperator
-   * @see #setOperator(MultiplicativeOperator)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression_Operator()
-   * @model
-   * @generated
-   */
-  MultiplicativeOperator getOperator();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getOperator <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.MultiplicativeOperator
-   * @see #getOperator()
-   * @generated
-   */
-  void setOperator(MultiplicativeOperator value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // NumericalMultiplyDivideExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Numerical Multiply Divide Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression()
+ * @model
+ * @generated
+ */
+public interface NumericalMultiplyDivideExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Operator</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.MultiplicativeOperator}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.MultiplicativeOperator
+   * @see #setOperator(MultiplicativeOperator)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression_Operator()
+   * @model
+   * @generated
+   */
+  MultiplicativeOperator getOperator();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getOperator <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.MultiplicativeOperator
+   * @see #getOperator()
+   * @generated
+   */
+  void setOperator(MultiplicativeOperator value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalMultiplyDivideExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalMultiplyDivideExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // NumericalMultiplyDivideExpression

+ 82 - 83
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/NumericalUnaryExpression.java

@@ -1,84 +1,83 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Numerical Unary Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperand <em>Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalUnaryExpression()
- * @model
- * @generated
- */
-public interface NumericalUnaryExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Operator</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.UnaryOperator}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.UnaryOperator
-   * @see #setOperator(UnaryOperator)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalUnaryExpression_Operator()
-   * @model
-   * @generated
-   */
-  UnaryOperator getOperator();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperator <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.UnaryOperator
-   * @see #getOperator()
-   * @generated
-   */
-  void setOperator(UnaryOperator value);
-
-  /**
-   * Returns the value of the '<em><b>Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operand</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>Operand</em>' containment reference.
-   * @see #setOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalUnaryExpression_Operand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperand <em>Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operand</em>' containment reference.
-   * @see #getOperand()
-   * @generated
-   */
-  void setOperand(Expression value);
-
-} // NumericalUnaryExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Numerical Unary Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperand <em>Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalUnaryExpression()
+ * @model
+ * @generated
+ */
+public interface NumericalUnaryExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Operator</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.UnaryOperator}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.UnaryOperator
+   * @see #setOperator(UnaryOperator)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalUnaryExpression_Operator()
+   * @model
+   * @generated
+   */
+  UnaryOperator getOperator();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperator <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.UnaryOperator
+   * @see #getOperator()
+   * @generated
+   */
+  void setOperator(UnaryOperator value);
+
+  /**
+   * Returns the value of the '<em><b>Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operand</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>Operand</em>' containment reference.
+   * @see #setOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getNumericalUnaryExpression_Operand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.NumericalUnaryExpression#getOperand <em>Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operand</em>' containment reference.
+   * @see #getOperand()
+   * @generated
+   */
+  void setOperand(Expression value);
+
+} // NumericalUnaryExpression

+ 20 - 21
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/OnCycleEvent.java

@@ -1,22 +1,21 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>On Cycle Event</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getOnCycleEvent()
- * @model
- * @generated
- */
-public interface OnCycleEvent extends BuiltinEventSpec
-{
-} // OnCycleEvent
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>On Cycle Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getOnCycleEvent()
+ * @model
+ * @generated
+ */
+public interface OnCycleEvent extends BuiltinEventSpec
+{
+} // OnCycleEvent

+ 77 - 78
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Operation.java

@@ -1,79 +1,78 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Operation</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.Operation#getParamTypes <em>Param Types</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.Operation#getType <em>Type</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperation()
- * @model
- * @generated
- */
-public interface Operation extends Declaration
-{
-  /**
-   * Returns the value of the '<em><b>Param Types</b></em>' attribute list.
-   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.Type}.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Param Types</em>' attribute list isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Param Types</em>' attribute list.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperation_ParamTypes()
-   * @model unique="false"
-   * @generated
-   */
-  EList<Type> getParamTypes();
-
-  /**
-   * Returns the value of the '<em><b>Type</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>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>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see #setType(Type)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperation_Type()
-   * @model
-   * @generated
-   */
-  Type getType();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Operation#getType <em>Type</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see #getType()
-   * @generated
-   */
-  void setType(Type value);
-
-} // Operation
+import org.eclipse.emf.common.util.EList;
+
+import org.yakindu.sct.model.sgraph.Declaration;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.Operation#getParamTypes <em>Param Types</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.Operation#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperation()
+ * @model
+ * @generated
+ */
+public interface Operation extends Declaration
+{
+  /**
+   * Returns the value of the '<em><b>Param Types</b></em>' attribute list.
+   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.Type}.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Param Types</em>' attribute list isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Param Types</em>' attribute list.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperation_ParamTypes()
+   * @model unique="false"
+   * @generated
+   */
+  EList<Type> getParamTypes();
+
+  /**
+   * Returns the value of the '<em><b>Type</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>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>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see #setType(Type)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperation_Type()
+   * @model
+   * @generated
+   */
+  Type getType();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.Operation#getType <em>Type</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see #getType()
+   * @generated
+   */
+  void setType(Type value);
+
+} // Operation

+ 70 - 71
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/OperationCall.java

@@ -1,72 +1,71 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Operation Call</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.OperationCall#getOperation <em>Operation</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.OperationCall#getArgs <em>Args</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperationCall()
- * @model
- * @generated
- */
-public interface OperationCall extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Operation</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operation</em>' reference isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operation</em>' reference.
-   * @see #setOperation(Operation)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperationCall_Operation()
-   * @model
-   * @generated
-   */
-  Operation getOperation();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.OperationCall#getOperation <em>Operation</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operation</em>' reference.
-   * @see #getOperation()
-   * @generated
-   */
-  void setOperation(Operation value);
-
-  /**
-   * Returns the value of the '<em><b>Args</b></em>' containment reference list.
-   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.Expression}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Args</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>Args</em>' containment reference list.
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperationCall_Args()
-   * @model containment="true"
-   * @generated
-   */
-  EList<Expression> getArgs();
-
-} // OperationCall
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operation Call</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.OperationCall#getOperation <em>Operation</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.OperationCall#getArgs <em>Args</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperationCall()
+ * @model
+ * @generated
+ */
+public interface OperationCall extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Operation</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operation</em>' reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operation</em>' reference.
+   * @see #setOperation(Operation)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperationCall_Operation()
+   * @model
+   * @generated
+   */
+  Operation getOperation();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.OperationCall#getOperation <em>Operation</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operation</em>' reference.
+   * @see #getOperation()
+   * @generated
+   */
+  void setOperation(Operation value);
+
+  /**
+   * Returns the value of the '<em><b>Args</b></em>' containment reference list.
+   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.Expression}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Args</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>Args</em>' containment reference list.
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getOperationCall_Args()
+   * @model containment="true"
+   * @generated
+   */
+  EList<Expression> getArgs();
+
+} // OperationCall

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/PrimitiveValueExpression.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Primitive Value Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.PrimitiveValueExpression#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getPrimitiveValueExpression()
- * @model
- * @generated
- */
-public interface PrimitiveValueExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Value</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Value</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Value</em>' attribute.
-   * @see #setValue(String)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getPrimitiveValueExpression_Value()
-   * @model
-   * @generated
-   */
-  String getValue();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.PrimitiveValueExpression#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(String value);
-
-} // PrimitiveValueExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Primitive Value Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.PrimitiveValueExpression#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getPrimitiveValueExpression()
+ * @model
+ * @generated
+ */
+public interface PrimitiveValueExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Value</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Value</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Value</em>' attribute.
+   * @see #setValue(String)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getPrimitiveValueExpression_Value()
+   * @model
+   * @generated
+   */
+  String getValue();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.PrimitiveValueExpression#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(String value);
+
+} // PrimitiveValueExpression

+ 46 - 47
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionEffect.java

@@ -1,48 +1,47 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.yakindu.sct.model.sgraph.Effect;
-import org.yakindu.sct.model.sgraph.Statement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Reaction Effect</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionEffect#getActions <em>Actions</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionEffect()
- * @model
- * @generated
- */
-public interface ReactionEffect extends Effect
-{
-  /**
-   * Returns the value of the '<em><b>Actions</b></em>' containment reference list.
-   * The list contents are of type {@link org.yakindu.sct.model.sgraph.Statement}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Actions</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>Actions</em>' containment reference list.
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionEffect_Actions()
-   * @model containment="true"
-   * @generated
-   */
-  EList<Statement> getActions();
-
-} // ReactionEffect
+import org.eclipse.emf.common.util.EList;
+
+import org.yakindu.sct.model.sgraph.Effect;
+import org.yakindu.sct.model.sgraph.Statement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reaction Effect</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionEffect#getActions <em>Actions</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionEffect()
+ * @model
+ * @generated
+ */
+public interface ReactionEffect extends Effect
+{
+  /**
+   * Returns the value of the '<em><b>Actions</b></em>' containment reference list.
+   * The list contents are of type {@link org.yakindu.sct.model.sgraph.Statement}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Actions</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>Actions</em>' containment reference list.
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionEffect_Actions()
+   * @model containment="true"
+   * @generated
+   */
+  EList<Statement> getActions();
+
+} // ReactionEffect

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionPriority.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Reaction Priority</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionPriority#getPriority <em>Priority</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionPriority()
- * @model
- * @generated
- */
-public interface ReactionPriority extends ReactionProperty
-{
-  /**
-   * Returns the value of the '<em><b>Priority</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Priority</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Priority</em>' attribute.
-   * @see #setPriority(int)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionPriority_Priority()
-   * @model
-   * @generated
-   */
-  int getPriority();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ReactionPriority#getPriority <em>Priority</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Priority</em>' attribute.
-   * @see #getPriority()
-   * @generated
-   */
-  void setPriority(int value);
-
-} // ReactionPriority
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reaction Priority</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionPriority#getPriority <em>Priority</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionPriority()
+ * @model
+ * @generated
+ */
+public interface ReactionPriority extends ReactionProperty
+{
+  /**
+   * Returns the value of the '<em><b>Priority</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Priority</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Priority</em>' attribute.
+   * @see #setPriority(int)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionPriority_Priority()
+   * @model
+   * @generated
+   */
+  int getPriority();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ReactionPriority#getPriority <em>Priority</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Priority</em>' attribute.
+   * @see #getPriority()
+   * @generated
+   */
+  void setPriority(int value);
+
+} // ReactionPriority

+ 45 - 46
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionProperties.java

@@ -1,47 +1,46 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Reaction Properties</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionProperties#getProperties <em>Properties</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionProperties()
- * @model
- * @generated
- */
-public interface ReactionProperties extends EObject
-{
-  /**
-   * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
-   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.ReactionProperty}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Properties</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>Properties</em>' containment reference list.
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionProperties_Properties()
-   * @model containment="true"
-   * @generated
-   */
-  EList<ReactionProperty> getProperties();
-
-} // ReactionProperties
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reaction Properties</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionProperties#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionProperties()
+ * @model
+ * @generated
+ */
+public interface ReactionProperties extends EObject
+{
+  /**
+   * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
+   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.ReactionProperty}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Properties</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>Properties</em>' containment reference list.
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionProperties_Properties()
+   * @model containment="true"
+   * @generated
+   */
+  EList<ReactionProperty> getProperties();
+
+} // ReactionProperties

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionProperty.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Reaction Property</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionProperty()
- * @model
- * @generated
- */
-public interface ReactionProperty extends EObject
-{
-} // ReactionProperty
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reaction Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionProperty()
+ * @model
+ * @generated
+ */
+public interface ReactionProperty extends EObject
+{
+} // ReactionProperty

+ 72 - 73
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ReactionTrigger.java

@@ -1,74 +1,73 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.yakindu.sct.model.sgraph.Trigger;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Reaction Trigger</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionTrigger#getTriggers <em>Triggers</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionTrigger#getGuardExpression <em>Guard Expression</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionTrigger()
- * @model
- * @generated
- */
-public interface ReactionTrigger extends Trigger
-{
-  /**
-   * Returns the value of the '<em><b>Triggers</b></em>' containment reference list.
-   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.EventSpec}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Triggers</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>Triggers</em>' containment reference list.
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionTrigger_Triggers()
-   * @model containment="true"
-   * @generated
-   */
-  EList<EventSpec> getTriggers();
-
-  /**
-   * Returns the value of the '<em><b>Guard Expression</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Guard Expression</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>Guard Expression</em>' containment reference.
-   * @see #setGuardExpression(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionTrigger_GuardExpression()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getGuardExpression();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ReactionTrigger#getGuardExpression <em>Guard Expression</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Guard Expression</em>' containment reference.
-   * @see #getGuardExpression()
-   * @generated
-   */
-  void setGuardExpression(Expression value);
-
-} // ReactionTrigger
+import org.eclipse.emf.common.util.EList;
+
+import org.yakindu.sct.model.sgraph.Trigger;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reaction Trigger</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionTrigger#getTriggers <em>Triggers</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ReactionTrigger#getGuardExpression <em>Guard Expression</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionTrigger()
+ * @model
+ * @generated
+ */
+public interface ReactionTrigger extends Trigger
+{
+  /**
+   * Returns the value of the '<em><b>Triggers</b></em>' containment reference list.
+   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.EventSpec}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Triggers</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>Triggers</em>' containment reference list.
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionTrigger_Triggers()
+   * @model containment="true"
+   * @generated
+   */
+  EList<EventSpec> getTriggers();
+
+  /**
+   * Returns the value of the '<em><b>Guard Expression</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Guard Expression</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>Guard Expression</em>' containment reference.
+   * @see #setGuardExpression(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getReactionTrigger_GuardExpression()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getGuardExpression();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ReactionTrigger#getGuardExpression <em>Guard Expression</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Guard Expression</em>' containment reference.
+   * @see #getGuardExpression()
+   * @generated
+   */
+  void setGuardExpression(Expression value);
+
+} // ReactionTrigger

+ 53 - 54
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/RegularEventSpec.java

@@ -1,55 +1,54 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Event;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Regular Event Spec</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.RegularEventSpec#getEvent <em>Event</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getRegularEventSpec()
- * @model
- * @generated
- */
-public interface RegularEventSpec extends EventSpec
-{
-  /**
-   * Returns the value of the '<em><b>Event</b></em>' reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Event</em>' reference isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Event</em>' reference.
-   * @see #setEvent(Event)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getRegularEventSpec_Event()
-   * @model
-   * @generated
-   */
-  Event getEvent();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.RegularEventSpec#getEvent <em>Event</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Event</em>' reference.
-   * @see #getEvent()
-   * @generated
-   */
-  void setEvent(Event value);
-
-} // RegularEventSpec
+import org.yakindu.sct.model.sgraph.Event;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Regular Event Spec</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.RegularEventSpec#getEvent <em>Event</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getRegularEventSpec()
+ * @model
+ * @generated
+ */
+public interface RegularEventSpec extends EventSpec
+{
+  /**
+   * Returns the value of the '<em><b>Event</b></em>' reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Event</em>' reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Event</em>' reference.
+   * @see #setEvent(Event)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getRegularEventSpec_Event()
+   * @model
+   * @generated
+   */
+  Event getEvent();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.RegularEventSpec#getEvent <em>Event</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Event</em>' reference.
+   * @see #getEvent()
+   * @generated
+   */
+  void setEvent(Event value);
+
+} // RegularEventSpec

+ 333 - 334
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/RelationalOperator.java

@@ -1,335 +1,334 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Relational Operator</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getRelationalOperator()
- * @model
- * @generated
- */
-public enum RelationalOperator implements Enumerator
-{
-  /**
-   * The '<em><b>Smaller</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #SMALLER_VALUE
-   * @generated
-   * @ordered
-   */
-  SMALLER(0, "smaller", "<"),
-
-  /**
-   * The '<em><b>Smaller Equal</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #SMALLER_EQUAL_VALUE
-   * @generated
-   * @ordered
-   */
-  SMALLER_EQUAL(1, "smallerEqual", "<="),
-
-  /**
-   * The '<em><b>Greater</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #GREATER_VALUE
-   * @generated
-   * @ordered
-   */
-  GREATER(2, "greater", ">"),
-
-  /**
-   * The '<em><b>Greater Equal</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #GREATER_EQUAL_VALUE
-   * @generated
-   * @ordered
-   */
-  GREATER_EQUAL(3, "greaterEqual", ">="),
-
-  /**
-   * The '<em><b>Equals</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #EQUALS_VALUE
-   * @generated
-   * @ordered
-   */
-  EQUALS(4, "equals", "=="),
-
-  /**
-   * The '<em><b>Not Equals</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #NOT_EQUALS_VALUE
-   * @generated
-   * @ordered
-   */
-  NOT_EQUALS(5, "notEquals", "!=");
-
-  /**
-   * The '<em><b>Smaller</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Smaller</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #SMALLER
-   * @model name="smaller" literal="<"
-   * @generated
-   * @ordered
-   */
-  public static final int SMALLER_VALUE = 0;
-
-  /**
-   * The '<em><b>Smaller Equal</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Smaller Equal</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #SMALLER_EQUAL
-   * @model name="smallerEqual" literal="<="
-   * @generated
-   * @ordered
-   */
-  public static final int SMALLER_EQUAL_VALUE = 1;
-
-  /**
-   * The '<em><b>Greater</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Greater</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #GREATER
-   * @model name="greater" literal=">"
-   * @generated
-   * @ordered
-   */
-  public static final int GREATER_VALUE = 2;
-
-  /**
-   * The '<em><b>Greater Equal</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Greater Equal</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #GREATER_EQUAL
-   * @model name="greaterEqual" literal=">="
-   * @generated
-   * @ordered
-   */
-  public static final int GREATER_EQUAL_VALUE = 3;
-
-  /**
-   * The '<em><b>Equals</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Equals</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #EQUALS
-   * @model name="equals" literal="=="
-   * @generated
-   * @ordered
-   */
-  public static final int EQUALS_VALUE = 4;
-
-  /**
-   * The '<em><b>Not Equals</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Not Equals</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #NOT_EQUALS
-   * @model name="notEquals" literal="!="
-   * @generated
-   * @ordered
-   */
-  public static final int NOT_EQUALS_VALUE = 5;
-
-  /**
-   * An array of all the '<em><b>Relational Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final RelationalOperator[] VALUES_ARRAY =
-    new RelationalOperator[]
-    {
-      SMALLER,
-      SMALLER_EQUAL,
-      GREATER,
-      GREATER_EQUAL,
-      EQUALS,
-      NOT_EQUALS,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Relational Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<RelationalOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Relational Operator</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static RelationalOperator get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      RelationalOperator result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Relational Operator</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static RelationalOperator getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      RelationalOperator result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Relational Operator</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static RelationalOperator get(int value)
-  {
-    switch (value)
-    {
-      case SMALLER_VALUE: return SMALLER;
-      case SMALLER_EQUAL_VALUE: return SMALLER_EQUAL;
-      case GREATER_VALUE: return GREATER;
-      case GREATER_EQUAL_VALUE: return GREATER_EQUAL;
-      case EQUALS_VALUE: return EQUALS;
-      case NOT_EQUALS_VALUE: return NOT_EQUALS;
-    }
-    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 RelationalOperator(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;
-  }
-  
-} //RelationalOperator
+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>Relational Operator</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getRelationalOperator()
+ * @model
+ * @generated
+ */
+public enum RelationalOperator implements Enumerator
+{
+  /**
+   * The '<em><b>Smaller</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #SMALLER_VALUE
+   * @generated
+   * @ordered
+   */
+  SMALLER(0, "smaller", "<"),
+
+  /**
+   * The '<em><b>Smaller Equal</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #SMALLER_EQUAL_VALUE
+   * @generated
+   * @ordered
+   */
+  SMALLER_EQUAL(1, "smallerEqual", "<="),
+
+  /**
+   * The '<em><b>Greater</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #GREATER_VALUE
+   * @generated
+   * @ordered
+   */
+  GREATER(2, "greater", ">"),
+
+  /**
+   * The '<em><b>Greater Equal</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #GREATER_EQUAL_VALUE
+   * @generated
+   * @ordered
+   */
+  GREATER_EQUAL(3, "greaterEqual", ">="),
+
+  /**
+   * The '<em><b>Equals</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #EQUALS_VALUE
+   * @generated
+   * @ordered
+   */
+  EQUALS(4, "equals", "=="),
+
+  /**
+   * The '<em><b>Not Equals</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #NOT_EQUALS_VALUE
+   * @generated
+   * @ordered
+   */
+  NOT_EQUALS(5, "notEquals", "!=");
+
+  /**
+   * The '<em><b>Smaller</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Smaller</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #SMALLER
+   * @model name="smaller" literal="<"
+   * @generated
+   * @ordered
+   */
+  public static final int SMALLER_VALUE = 0;
+
+  /**
+   * The '<em><b>Smaller Equal</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Smaller Equal</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #SMALLER_EQUAL
+   * @model name="smallerEqual" literal="<="
+   * @generated
+   * @ordered
+   */
+  public static final int SMALLER_EQUAL_VALUE = 1;
+
+  /**
+   * The '<em><b>Greater</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Greater</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #GREATER
+   * @model name="greater" literal=">"
+   * @generated
+   * @ordered
+   */
+  public static final int GREATER_VALUE = 2;
+
+  /**
+   * The '<em><b>Greater Equal</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Greater Equal</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #GREATER_EQUAL
+   * @model name="greaterEqual" literal=">="
+   * @generated
+   * @ordered
+   */
+  public static final int GREATER_EQUAL_VALUE = 3;
+
+  /**
+   * The '<em><b>Equals</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Equals</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #EQUALS
+   * @model name="equals" literal="=="
+   * @generated
+   * @ordered
+   */
+  public static final int EQUALS_VALUE = 4;
+
+  /**
+   * The '<em><b>Not Equals</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Not Equals</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #NOT_EQUALS
+   * @model name="notEquals" literal="!="
+   * @generated
+   * @ordered
+   */
+  public static final int NOT_EQUALS_VALUE = 5;
+
+  /**
+   * An array of all the '<em><b>Relational Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final RelationalOperator[] VALUES_ARRAY =
+    new RelationalOperator[]
+    {
+      SMALLER,
+      SMALLER_EQUAL,
+      GREATER,
+      GREATER_EQUAL,
+      EQUALS,
+      NOT_EQUALS,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Relational Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<RelationalOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Relational Operator</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static RelationalOperator get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      RelationalOperator result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Relational Operator</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static RelationalOperator getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      RelationalOperator result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Relational Operator</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static RelationalOperator get(int value)
+  {
+    switch (value)
+    {
+      case SMALLER_VALUE: return SMALLER;
+      case SMALLER_EQUAL_VALUE: return SMALLER_EQUAL;
+      case GREATER_VALUE: return GREATER;
+      case GREATER_EQUAL_VALUE: return GREATER_EQUAL;
+      case EQUALS_VALUE: return EQUALS;
+      case NOT_EQUALS_VALUE: return NOT_EQUALS;
+    }
+    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 RelationalOperator(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;
+  }
+  
+} //RelationalOperator

+ 45 - 46
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Root.java

@@ -1,47 +1,46 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Root</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.Root#getRoots <em>Roots</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getRoot()
- * @model
- * @generated
- */
-public interface Root extends EObject
-{
-  /**
-   * Returns the value of the '<em><b>Roots</b></em>' containment reference list.
-   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.DefRoot}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Roots</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>Roots</em>' containment reference list.
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getRoot_Roots()
-   * @model containment="true"
-   * @generated
-   */
-  EList<DefRoot> getRoots();
-
-} // Root
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.Root#getRoots <em>Roots</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getRoot()
+ * @model
+ * @generated
+ */
+public interface Root extends EObject
+{
+  /**
+   * Returns the value of the '<em><b>Roots</b></em>' containment reference list.
+   * The list contents are of type {@link org.yakindu.sct.model.stext.stext.DefRoot}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Roots</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>Roots</em>' containment reference list.
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getRoot_Roots()
+   * @model containment="true"
+   * @generated
+   */
+  EList<DefRoot> getRoots();
+
+} // Root

+ 109 - 110
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ShiftExpression.java

@@ -1,111 +1,110 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Shift Expression</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression()
- * @model
- * @generated
- */
-public interface ShiftExpression extends Expression
-{
-  /**
-   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
-   * @see #setLeftOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression_LeftOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getLeftOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Left Operand</em>' containment reference.
-   * @see #getLeftOperand()
-   * @generated
-   */
-  void setLeftOperand(Expression value);
-
-  /**
-   * Returns the value of the '<em><b>Operator</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.ShiftOperator}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.ShiftOperator
-   * @see #setOperator(ShiftOperator)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression_Operator()
-   * @model
-   * @generated
-   */
-  ShiftOperator getOperator();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getOperator <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Operator</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.ShiftOperator
-   * @see #getOperator()
-   * @generated
-   */
-  void setOperator(ShiftOperator value);
-
-  /**
-   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
-   * @see #setRightOperand(Expression)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression_RightOperand()
-   * @model containment="true"
-   * @generated
-   */
-  Expression getRightOperand();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getRightOperand <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Right Operand</em>' containment reference.
-   * @see #getRightOperand()
-   * @generated
-   */
-  void setRightOperand(Expression value);
-
-} // ShiftExpression
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Shift Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression()
+ * @model
+ * @generated
+ */
+public interface ShiftExpression extends Expression
+{
+  /**
+   * Returns the value of the '<em><b>Left Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Left Operand</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>Left Operand</em>' containment reference.
+   * @see #setLeftOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression_LeftOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getLeftOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getLeftOperand <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Left Operand</em>' containment reference.
+   * @see #getLeftOperand()
+   * @generated
+   */
+  void setLeftOperand(Expression value);
+
+  /**
+   * Returns the value of the '<em><b>Operator</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.ShiftOperator}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Operator</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.ShiftOperator
+   * @see #setOperator(ShiftOperator)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression_Operator()
+   * @model
+   * @generated
+   */
+  ShiftOperator getOperator();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getOperator <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Operator</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.ShiftOperator
+   * @see #getOperator()
+   * @generated
+   */
+  void setOperator(ShiftOperator value);
+
+  /**
+   * Returns the value of the '<em><b>Right Operand</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Right Operand</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>Right Operand</em>' containment reference.
+   * @see #setRightOperand(Expression)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftExpression_RightOperand()
+   * @model containment="true"
+   * @generated
+   */
+  Expression getRightOperand();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.ShiftExpression#getRightOperand <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Right Operand</em>' containment reference.
+   * @see #getRightOperand()
+   * @generated
+   */
+  void setRightOperand(Expression value);
+
+} // ShiftExpression

+ 226 - 227
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/ShiftOperator.java

@@ -1,227 +1,226 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Shift Operator</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftOperator()
- * @model
- * @generated
- */
-public enum ShiftOperator implements Enumerator
-{
-  /**
-   * The '<em><b>Left</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #LEFT_VALUE
-   * @generated
-   * @ordered
-   */
-  LEFT(0, "left", "<<"),
-
-  /**
-   * The '<em><b>Right</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #RIGHT_VALUE
-   * @generated
-   * @ordered
-   */
-  RIGHT(1, "right", ">>");
-
-  /**
-   * The '<em><b>Left</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Left</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #LEFT
-   * @model name="left" literal="<<"
-   * @generated
-   * @ordered
-   */
-  public static final int LEFT_VALUE = 0;
-
-  /**
-   * The '<em><b>Right</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Right</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #RIGHT
-   * @model name="right" literal=">>"
-   * @generated
-   * @ordered
-   */
-  public static final int RIGHT_VALUE = 1;
-
-  /**
-   * An array of all the '<em><b>Shift Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final ShiftOperator[] VALUES_ARRAY =
-    new ShiftOperator[]
-    {
-      LEFT,
-      RIGHT,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Shift Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<ShiftOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Shift Operator</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static ShiftOperator get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      ShiftOperator result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Shift Operator</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static ShiftOperator getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      ShiftOperator result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Shift Operator</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static ShiftOperator get(int value)
-  {
-    switch (value)
-    {
-      case LEFT_VALUE: return LEFT;
-      case RIGHT_VALUE: return RIGHT;
-    }
-    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 ShiftOperator(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;
-  }
-  
-} //ShiftOperator
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Shift Operator</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getShiftOperator()
+ * @model
+ * @generated
+ */
+public enum ShiftOperator implements Enumerator
+{
+  /**
+   * The '<em><b>Left</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #LEFT_VALUE
+   * @generated
+   * @ordered
+   */
+  LEFT(0, "left", "<<"),
+
+  /**
+   * The '<em><b>Right</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #RIGHT_VALUE
+   * @generated
+   * @ordered
+   */
+  RIGHT(1, "right", ">>");
+
+  /**
+   * The '<em><b>Left</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Left</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #LEFT
+   * @model name="left" literal="<<"
+   * @generated
+   * @ordered
+   */
+  public static final int LEFT_VALUE = 0;
+
+  /**
+   * The '<em><b>Right</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Right</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #RIGHT
+   * @model name="right" literal=">>"
+   * @generated
+   * @ordered
+   */
+  public static final int RIGHT_VALUE = 1;
+
+  /**
+   * An array of all the '<em><b>Shift Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final ShiftOperator[] VALUES_ARRAY =
+    new ShiftOperator[]
+    {
+      LEFT,
+      RIGHT,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Shift Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<ShiftOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Shift Operator</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static ShiftOperator get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      ShiftOperator result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Shift Operator</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static ShiftOperator getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      ShiftOperator result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Shift Operator</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static ShiftOperator get(int value)
+  {
+    switch (value)
+    {
+      case LEFT_VALUE: return LEFT;
+      case RIGHT_VALUE: return RIGHT;
+    }
+    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 ShiftOperator(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;
+  }
+  
+} //ShiftOperator

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/SimpleScope.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Scope;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Simple Scope</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getSimpleScope()
- * @model
- * @generated
- */
-public interface SimpleScope extends Scope
-{
-} // SimpleScope
+import org.yakindu.sct.model.sgraph.Scope;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Simple Scope</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getSimpleScope()
+ * @model
+ * @generated
+ */
+public interface SimpleScope extends Scope
+{
+} // SimpleScope

+ 55 - 56
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StateDeclaration.java

@@ -1,57 +1,56 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.ecore.EObject;
-
-import org.yakindu.sct.model.sgraph.Scope;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>State Declaration</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.StateDeclaration#getScope <em>Scope</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateDeclaration()
- * @model
- * @generated
- */
-public interface StateDeclaration extends EObject
-{
-  /**
-   * Returns the value of the '<em><b>Scope</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Scope</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>Scope</em>' containment reference.
-   * @see #setScope(Scope)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateDeclaration_Scope()
-   * @model containment="true"
-   * @generated
-   */
-  Scope getScope();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StateDeclaration#getScope <em>Scope</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Scope</em>' containment reference.
-   * @see #getScope()
-   * @generated
-   */
-  void setScope(Scope value);
-
-} // StateDeclaration
+import org.eclipse.emf.ecore.EObject;
+
+import org.yakindu.sct.model.sgraph.Scope;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>State Declaration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.StateDeclaration#getScope <em>Scope</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateDeclaration()
+ * @model
+ * @generated
+ */
+public interface StateDeclaration extends EObject
+{
+  /**
+   * Returns the value of the '<em><b>Scope</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Scope</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>Scope</em>' containment reference.
+   * @see #setScope(Scope)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateDeclaration_Scope()
+   * @model containment="true"
+   * @generated
+   */
+  Scope getScope();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StateDeclaration#getScope <em>Scope</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Scope</em>' containment reference.
+   * @see #getScope()
+   * @generated
+   */
+  void setScope(Scope value);
+
+} // StateDeclaration

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StateRoot.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>State Root</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.StateRoot#getDef <em>Def</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateRoot()
- * @model
- * @generated
- */
-public interface StateRoot extends DefRoot
-{
-  /**
-   * Returns the value of the '<em><b>Def</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Def</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>Def</em>' containment reference.
-   * @see #setDef(StateDeclaration)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateRoot_Def()
-   * @model containment="true"
-   * @generated
-   */
-  StateDeclaration getDef();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StateRoot#getDef <em>Def</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Def</em>' containment reference.
-   * @see #getDef()
-   * @generated
-   */
-  void setDef(StateDeclaration value);
-
-} // StateRoot
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>State Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.StateRoot#getDef <em>Def</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateRoot()
+ * @model
+ * @generated
+ */
+public interface StateRoot extends DefRoot
+{
+  /**
+   * Returns the value of the '<em><b>Def</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Def</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>Def</em>' containment reference.
+   * @see #setDef(StateDeclaration)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStateRoot_Def()
+   * @model containment="true"
+   * @generated
+   */
+  StateDeclaration getDef();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StateRoot#getDef <em>Def</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Def</em>' containment reference.
+   * @see #getDef()
+   * @generated
+   */
+  void setDef(StateDeclaration value);
+
+} // StateRoot

+ 74 - 48
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StatechartDefinition.java

@@ -1,49 +1,75 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.ecore.EObject;
-
-import org.yakindu.sct.model.sgraph.Scope;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Statechart Definition</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.StatechartDefinition#getDefinitionScopes <em>Definition Scopes</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartDefinition()
- * @model
- * @generated
- */
-public interface StatechartDefinition extends EObject
-{
-  /**
-   * Returns the value of the '<em><b>Definition Scopes</b></em>' containment reference list.
-   * The list contents are of type {@link org.yakindu.sct.model.sgraph.Scope}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Definition Scopes</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>Definition Scopes</em>' containment reference list.
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartDefinition_DefinitionScopes()
-   * @model containment="true"
-   * @generated
-   */
-  EList<Scope> getDefinitionScopes();
-
-} // StatechartDefinition
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.yakindu.sct.model.sgraph.Scope;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Statechart Definition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.StatechartDefinition#getNamespace <em>Namespace</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.StatechartDefinition#getDefinitionScopes <em>Definition Scopes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartDefinition()
+ * @model
+ * @generated
+ */
+public interface StatechartDefinition extends EObject
+{
+  /**
+   * Returns the value of the '<em><b>Namespace</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Namespace</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Namespace</em>' attribute.
+   * @see #setNamespace(String)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartDefinition_Namespace()
+   * @model
+   * @generated
+   */
+  String getNamespace();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StatechartDefinition#getNamespace <em>Namespace</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Namespace</em>' attribute.
+   * @see #getNamespace()
+   * @generated
+   */
+  void setNamespace(String value);
+
+  /**
+   * Returns the value of the '<em><b>Definition Scopes</b></em>' containment reference list.
+   * The list contents are of type {@link org.yakindu.sct.model.sgraph.Scope}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Definition Scopes</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>Definition Scopes</em>' containment reference list.
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartDefinition_DefinitionScopes()
+   * @model containment="true"
+   * @generated
+   */
+  EList<Scope> getDefinitionScopes();
+
+} // StatechartDefinition

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StatechartRoot.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Statechart Root</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.StatechartRoot#getDef <em>Def</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartRoot()
- * @model
- * @generated
- */
-public interface StatechartRoot extends DefRoot
-{
-  /**
-   * Returns the value of the '<em><b>Def</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Def</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>Def</em>' containment reference.
-   * @see #setDef(StatechartDefinition)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartRoot_Def()
-   * @model containment="true"
-   * @generated
-   */
-  StatechartDefinition getDef();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StatechartRoot#getDef <em>Def</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Def</em>' containment reference.
-   * @see #getDef()
-   * @generated
-   */
-  void setDef(StatechartDefinition value);
-
-} // StatechartRoot
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Statechart Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.StatechartRoot#getDef <em>Def</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartRoot()
+ * @model
+ * @generated
+ */
+public interface StatechartRoot extends DefRoot
+{
+  /**
+   * Returns the value of the '<em><b>Def</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Def</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>Def</em>' containment reference.
+   * @see #setDef(StatechartDefinition)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getStatechartRoot_Def()
+   * @model containment="true"
+   * @generated
+   */
+  StatechartDefinition getDef();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.StatechartRoot#getDef <em>Def</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Def</em>' containment reference.
+   * @see #getDef()
+   * @generated
+   */
+  void setDef(StatechartDefinition value);
+
+} // StatechartRoot

File diff suppressed because it is too large
+ 514 - 515
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StextFactory.java


File diff suppressed because it is too large
+ 4570 - 4543
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/StextPackage.java


+ 112 - 113
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TimeEventSpec.java

@@ -1,114 +1,113 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Time Event Spec</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getType <em>Type</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getValue <em>Value</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getUnit <em>Unit</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec()
- * @model
- * @generated
- */
-public interface TimeEventSpec extends EventSpec
-{
-  /**
-   * Returns the value of the '<em><b>Type</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.TimeEventType}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>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>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.TimeEventType
-   * @see #setType(TimeEventType)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec_Type()
-   * @model
-   * @generated
-   */
-  TimeEventType getType();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getType <em>Type</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.TimeEventType
-   * @see #getType()
-   * @generated
-   */
-  void setType(TimeEventType value);
-
-  /**
-   * Returns the value of the '<em><b>Value</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Value</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Value</em>' attribute.
-   * @see #setValue(int)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec_Value()
-   * @model
-   * @generated
-   */
-  int getValue();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#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);
-
-  /**
-   * Returns the value of the '<em><b>Unit</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.TimeUnit}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Unit</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Unit</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.TimeUnit
-   * @see #setUnit(TimeUnit)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec_Unit()
-   * @model
-   * @generated
-   */
-  TimeUnit getUnit();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getUnit <em>Unit</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Unit</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.TimeUnit
-   * @see #getUnit()
-   * @generated
-   */
-  void setUnit(TimeUnit value);
-
-} // TimeEventSpec
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Time Event Spec</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getType <em>Type</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getValue <em>Value</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getUnit <em>Unit</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec()
+ * @model
+ * @generated
+ */
+public interface TimeEventSpec extends EventSpec
+{
+  /**
+   * Returns the value of the '<em><b>Type</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.TimeEventType}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>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>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.TimeEventType
+   * @see #setType(TimeEventType)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec_Type()
+   * @model
+   * @generated
+   */
+  TimeEventType getType();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getType <em>Type</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.TimeEventType
+   * @see #getType()
+   * @generated
+   */
+  void setType(TimeEventType value);
+
+  /**
+   * Returns the value of the '<em><b>Value</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Value</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Value</em>' attribute.
+   * @see #setValue(int)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec_Value()
+   * @model
+   * @generated
+   */
+  int getValue();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#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);
+
+  /**
+   * Returns the value of the '<em><b>Unit</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.TimeUnit}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Unit</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Unit</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.TimeUnit
+   * @see #setUnit(TimeUnit)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventSpec_Unit()
+   * @model
+   * @generated
+   */
+  TimeUnit getUnit();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TimeEventSpec#getUnit <em>Unit</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Unit</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.TimeUnit
+   * @see #getUnit()
+   * @generated
+   */
+  void setUnit(TimeUnit value);
+
+} // TimeEventSpec

+ 226 - 227
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TimeEventType.java

@@ -1,227 +1,226 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Time Event Type</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventType()
- * @model
- * @generated
- */
-public enum TimeEventType implements Enumerator
-{
-  /**
-   * The '<em><b>After</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #AFTER_VALUE
-   * @generated
-   * @ordered
-   */
-  AFTER(0, "after", "after"),
-
-  /**
-   * The '<em><b>Every</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #EVERY_VALUE
-   * @generated
-   * @ordered
-   */
-  EVERY(1, "every", "every");
-
-  /**
-   * The '<em><b>After</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>After</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #AFTER
-   * @model name="after"
-   * @generated
-   * @ordered
-   */
-  public static final int AFTER_VALUE = 0;
-
-  /**
-   * The '<em><b>Every</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Every</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #EVERY
-   * @model name="every"
-   * @generated
-   * @ordered
-   */
-  public static final int EVERY_VALUE = 1;
-
-  /**
-   * An array of all the '<em><b>Time Event Type</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final TimeEventType[] VALUES_ARRAY =
-    new TimeEventType[]
-    {
-      AFTER,
-      EVERY,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Time Event Type</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<TimeEventType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Time Event Type</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static TimeEventType get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      TimeEventType result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Time Event Type</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static TimeEventType getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      TimeEventType result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Time Event Type</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static TimeEventType get(int value)
-  {
-    switch (value)
-    {
-      case AFTER_VALUE: return AFTER;
-      case EVERY_VALUE: return EVERY;
-    }
-    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 TimeEventType(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;
-  }
-  
-} //TimeEventType
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Time Event Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeEventType()
+ * @model
+ * @generated
+ */
+public enum TimeEventType implements Enumerator
+{
+  /**
+   * The '<em><b>After</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #AFTER_VALUE
+   * @generated
+   * @ordered
+   */
+  AFTER(0, "after", "after"),
+
+  /**
+   * The '<em><b>Every</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #EVERY_VALUE
+   * @generated
+   * @ordered
+   */
+  EVERY(1, "every", "every");
+
+  /**
+   * The '<em><b>After</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>After</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #AFTER
+   * @model name="after"
+   * @generated
+   * @ordered
+   */
+  public static final int AFTER_VALUE = 0;
+
+  /**
+   * The '<em><b>Every</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Every</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #EVERY
+   * @model name="every"
+   * @generated
+   * @ordered
+   */
+  public static final int EVERY_VALUE = 1;
+
+  /**
+   * An array of all the '<em><b>Time Event Type</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final TimeEventType[] VALUES_ARRAY =
+    new TimeEventType[]
+    {
+      AFTER,
+      EVERY,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Time Event Type</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<TimeEventType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Time Event Type</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static TimeEventType get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      TimeEventType result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Time Event Type</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static TimeEventType getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      TimeEventType result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Time Event Type</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static TimeEventType get(int value)
+  {
+    switch (value)
+    {
+      case AFTER_VALUE: return AFTER;
+      case EVERY_VALUE: return EVERY;
+    }
+    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 TimeEventType(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;
+  }
+  
+} //TimeEventType

+ 253 - 254
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TimeUnit.java

@@ -1,254 +1,253 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Time Unit</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeUnit()
- * @model
- * @generated
- */
-public enum TimeUnit implements Enumerator
-{
-  /**
-   * The '<em><b>Second</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #SECOND_VALUE
-   * @generated
-   * @ordered
-   */
-  SECOND(0, "second", "s"),
-
-  /**
-   * The '<em><b>Millisecond</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #MILLISECOND_VALUE
-   * @generated
-   * @ordered
-   */
-  MILLISECOND(1, "millisecond", "ms"),
-
-  /**
-   * The '<em><b>Nanosecond</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #NANOSECOND_VALUE
-   * @generated
-   * @ordered
-   */
-  NANOSECOND(2, "nanosecond", "ns");
-
-  /**
-   * The '<em><b>Second</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Second</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #SECOND
-   * @model name="second" literal="s"
-   * @generated
-   * @ordered
-   */
-  public static final int SECOND_VALUE = 0;
-
-  /**
-   * The '<em><b>Millisecond</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Millisecond</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #MILLISECOND
-   * @model name="millisecond" literal="ms"
-   * @generated
-   * @ordered
-   */
-  public static final int MILLISECOND_VALUE = 1;
-
-  /**
-   * The '<em><b>Nanosecond</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Nanosecond</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #NANOSECOND
-   * @model name="nanosecond" literal="ns"
-   * @generated
-   * @ordered
-   */
-  public static final int NANOSECOND_VALUE = 2;
-
-  /**
-   * An array of all the '<em><b>Time Unit</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final TimeUnit[] VALUES_ARRAY =
-    new TimeUnit[]
-    {
-      SECOND,
-      MILLISECOND,
-      NANOSECOND,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Time Unit</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<TimeUnit> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Time Unit</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static TimeUnit get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      TimeUnit result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Time Unit</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static TimeUnit getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      TimeUnit result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Time Unit</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static TimeUnit get(int value)
-  {
-    switch (value)
-    {
-      case SECOND_VALUE: return SECOND;
-      case MILLISECOND_VALUE: return MILLISECOND;
-      case NANOSECOND_VALUE: return NANOSECOND;
-    }
-    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 TimeUnit(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;
-  }
-  
-} //TimeUnit
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Time Unit</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getTimeUnit()
+ * @model
+ * @generated
+ */
+public enum TimeUnit implements Enumerator
+{
+  /**
+   * The '<em><b>Second</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #SECOND_VALUE
+   * @generated
+   * @ordered
+   */
+  SECOND(0, "second", "s"),
+
+  /**
+   * The '<em><b>Millisecond</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #MILLISECOND_VALUE
+   * @generated
+   * @ordered
+   */
+  MILLISECOND(1, "millisecond", "ms"),
+
+  /**
+   * The '<em><b>Nanosecond</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #NANOSECOND_VALUE
+   * @generated
+   * @ordered
+   */
+  NANOSECOND(2, "nanosecond", "ns");
+
+  /**
+   * The '<em><b>Second</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Second</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #SECOND
+   * @model name="second" literal="s"
+   * @generated
+   * @ordered
+   */
+  public static final int SECOND_VALUE = 0;
+
+  /**
+   * The '<em><b>Millisecond</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Millisecond</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #MILLISECOND
+   * @model name="millisecond" literal="ms"
+   * @generated
+   * @ordered
+   */
+  public static final int MILLISECOND_VALUE = 1;
+
+  /**
+   * The '<em><b>Nanosecond</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Nanosecond</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #NANOSECOND
+   * @model name="nanosecond" literal="ns"
+   * @generated
+   * @ordered
+   */
+  public static final int NANOSECOND_VALUE = 2;
+
+  /**
+   * An array of all the '<em><b>Time Unit</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final TimeUnit[] VALUES_ARRAY =
+    new TimeUnit[]
+    {
+      SECOND,
+      MILLISECOND,
+      NANOSECOND,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Time Unit</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<TimeUnit> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Time Unit</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static TimeUnit get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      TimeUnit result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Time Unit</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static TimeUnit getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      TimeUnit result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Time Unit</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static TimeUnit get(int value)
+  {
+    switch (value)
+    {
+      case SECOND_VALUE: return SECOND;
+      case MILLISECOND_VALUE: return MILLISECOND;
+      case NANOSECOND_VALUE: return NANOSECOND;
+    }
+    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 TimeUnit(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;
+  }
+  
+} //TimeUnit

+ 53 - 54
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TransitionReaction.java

@@ -1,55 +1,54 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Reaction;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Transition Reaction</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.TransitionReaction#getProperties <em>Properties</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionReaction()
- * @model
- * @generated
- */
-public interface TransitionReaction extends TransitionStatement, Reaction
-{
-  /**
-   * Returns the value of the '<em><b>Properties</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Properties</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>Properties</em>' containment reference.
-   * @see #setProperties(ReactionProperties)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionReaction_Properties()
-   * @model containment="true"
-   * @generated
-   */
-  ReactionProperties getProperties();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TransitionReaction#getProperties <em>Properties</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Properties</em>' containment reference.
-   * @see #getProperties()
-   * @generated
-   */
-  void setProperties(ReactionProperties value);
-
-} // TransitionReaction
+import org.yakindu.sct.model.sgraph.Reaction;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Transition Reaction</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.TransitionReaction#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionReaction()
+ * @model
+ * @generated
+ */
+public interface TransitionReaction extends TransitionStatement, Reaction
+{
+  /**
+   * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Properties</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>Properties</em>' containment reference.
+   * @see #setProperties(ReactionProperties)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionReaction_Properties()
+   * @model containment="true"
+   * @generated
+   */
+  ReactionProperties getProperties();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TransitionReaction#getProperties <em>Properties</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Properties</em>' containment reference.
+   * @see #getProperties()
+   * @generated
+   */
+  void setProperties(ReactionProperties value);
+
+} // TransitionReaction

+ 52 - 53
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TransitionRoot.java

@@ -1,54 +1,53 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Transition Root</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.TransitionRoot#getDef <em>Def</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionRoot()
- * @model
- * @generated
- */
-public interface TransitionRoot extends DefRoot
-{
-  /**
-   * Returns the value of the '<em><b>Def</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Def</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>Def</em>' containment reference.
-   * @see #setDef(TransitionStatement)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionRoot_Def()
-   * @model containment="true"
-   * @generated
-   */
-  TransitionStatement getDef();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TransitionRoot#getDef <em>Def</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Def</em>' containment reference.
-   * @see #getDef()
-   * @generated
-   */
-  void setDef(TransitionStatement value);
-
-} // TransitionRoot
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Transition Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.TransitionRoot#getDef <em>Def</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionRoot()
+ * @model
+ * @generated
+ */
+public interface TransitionRoot extends DefRoot
+{
+  /**
+   * Returns the value of the '<em><b>Def</b></em>' containment reference.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Def</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>Def</em>' containment reference.
+   * @see #setDef(TransitionStatement)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionRoot_Def()
+   * @model containment="true"
+   * @generated
+   */
+  TransitionStatement getDef();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.TransitionRoot#getDef <em>Def</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Def</em>' containment reference.
+   * @see #getDef()
+   * @generated
+   */
+  void setDef(TransitionStatement value);
+
+} // TransitionRoot

+ 21 - 22
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/TransitionStatement.java

@@ -1,23 +1,22 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Transition Statement</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionStatement()
- * @model
- * @generated
- */
-public interface TransitionStatement extends EObject
-{
-} // TransitionStatement
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Transition Statement</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getTransitionStatement()
+ * @model
+ * @generated
+ */
+public interface TransitionStatement extends EObject
+{
+} // TransitionStatement

+ 306 - 307
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/Type.java

@@ -1,308 +1,307 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Type</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getType()
- * @model
- * @generated
- */
-public enum Type implements Enumerator
-{
-  /**
-   * The '<em><b>Void</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #VOID_VALUE
-   * @generated
-   * @ordered
-   */
-  VOID(0, "void", "void"),
-
-  /**
-   * The '<em><b>Integer</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #INTEGER_VALUE
-   * @generated
-   * @ordered
-   */
-  INTEGER(1, "integer", "integer"),
-
-  /**
-   * The '<em><b>Real</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #REAL_VALUE
-   * @generated
-   * @ordered
-   */
-  REAL(2, "real", "real"),
-
-  /**
-   * The '<em><b>Boolean</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #BOOLEAN_VALUE
-   * @generated
-   * @ordered
-   */
-  BOOLEAN(3, "boolean", "boolean"),
-
-  /**
-   * The '<em><b>String</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #STRING_VALUE
-   * @generated
-   * @ordered
-   */
-  STRING(4, "string", "string");
-
-  /**
-   * The '<em><b>Void</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Void</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #VOID
-   * @model name="void"
-   * @generated
-   * @ordered
-   */
-  public static final int VOID_VALUE = 0;
-
-  /**
-   * The '<em><b>Integer</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Integer</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #INTEGER
-   * @model name="integer"
-   * @generated
-   * @ordered
-   */
-  public static final int INTEGER_VALUE = 1;
-
-  /**
-   * The '<em><b>Real</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Real</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #REAL
-   * @model name="real"
-   * @generated
-   * @ordered
-   */
-  public static final int REAL_VALUE = 2;
-
-  /**
-   * 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 name="boolean"
-   * @generated
-   * @ordered
-   */
-  public static final int BOOLEAN_VALUE = 3;
-
-  /**
-   * The '<em><b>String</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>String</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #STRING
-   * @model name="string"
-   * @generated
-   * @ordered
-   */
-  public static final int STRING_VALUE = 4;
-
-  /**
-   * An array of all the '<em><b>Type</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final Type[] VALUES_ARRAY =
-    new Type[]
-    {
-      VOID,
-      INTEGER,
-      REAL,
-      BOOLEAN,
-      STRING,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Type</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<Type> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Type</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static Type get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      Type result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Type</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static Type getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      Type result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Type</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static Type get(int value)
-  {
-    switch (value)
-    {
-      case VOID_VALUE: return VOID;
-      case INTEGER_VALUE: return INTEGER;
-      case REAL_VALUE: return REAL;
-      case BOOLEAN_VALUE: return BOOLEAN;
-      case STRING_VALUE: return STRING;
-    }
-    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 Type(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;
-  }
-  
-} //Type
+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>Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getType()
+ * @model
+ * @generated
+ */
+public enum Type implements Enumerator
+{
+  /**
+   * The '<em><b>Void</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #VOID_VALUE
+   * @generated
+   * @ordered
+   */
+  VOID(0, "void", "void"),
+
+  /**
+   * The '<em><b>Integer</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #INTEGER_VALUE
+   * @generated
+   * @ordered
+   */
+  INTEGER(1, "integer", "integer"),
+
+  /**
+   * The '<em><b>Real</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #REAL_VALUE
+   * @generated
+   * @ordered
+   */
+  REAL(2, "real", "real"),
+
+  /**
+   * The '<em><b>Boolean</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #BOOLEAN_VALUE
+   * @generated
+   * @ordered
+   */
+  BOOLEAN(3, "boolean", "boolean"),
+
+  /**
+   * The '<em><b>String</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #STRING_VALUE
+   * @generated
+   * @ordered
+   */
+  STRING(4, "string", "string");
+
+  /**
+   * The '<em><b>Void</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Void</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #VOID
+   * @model name="void"
+   * @generated
+   * @ordered
+   */
+  public static final int VOID_VALUE = 0;
+
+  /**
+   * The '<em><b>Integer</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Integer</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #INTEGER
+   * @model name="integer"
+   * @generated
+   * @ordered
+   */
+  public static final int INTEGER_VALUE = 1;
+
+  /**
+   * The '<em><b>Real</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Real</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #REAL
+   * @model name="real"
+   * @generated
+   * @ordered
+   */
+  public static final int REAL_VALUE = 2;
+
+  /**
+   * 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 name="boolean"
+   * @generated
+   * @ordered
+   */
+  public static final int BOOLEAN_VALUE = 3;
+
+  /**
+   * The '<em><b>String</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>String</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #STRING
+   * @model name="string"
+   * @generated
+   * @ordered
+   */
+  public static final int STRING_VALUE = 4;
+
+  /**
+   * An array of all the '<em><b>Type</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final Type[] VALUES_ARRAY =
+    new Type[]
+    {
+      VOID,
+      INTEGER,
+      REAL,
+      BOOLEAN,
+      STRING,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Type</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<Type> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Type</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static Type get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      Type result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Type</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static Type getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      Type result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Type</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static Type get(int value)
+  {
+    switch (value)
+    {
+      case VOID_VALUE: return VOID;
+      case INTEGER_VALUE: return INTEGER;
+      case REAL_VALUE: return REAL;
+      case BOOLEAN_VALUE: return BOOLEAN;
+      case STRING_VALUE: return STRING;
+    }
+    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 Type(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;
+  }
+  
+} //Type

+ 253 - 254
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/UnaryOperator.java

@@ -1,254 +1,253 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext;
-
-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>Unary Operator</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getUnaryOperator()
- * @model
- * @generated
- */
-public enum UnaryOperator implements Enumerator
-{
-  /**
-   * The '<em><b>Positive</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #POSITIVE_VALUE
-   * @generated
-   * @ordered
-   */
-  POSITIVE(0, "positive", "+"),
-
-  /**
-   * The '<em><b>Negative</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #NEGATIVE_VALUE
-   * @generated
-   * @ordered
-   */
-  NEGATIVE(1, "negative", "-"),
-
-  /**
-   * The '<em><b>Complement</b></em>' literal object.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #COMPLEMENT_VALUE
-   * @generated
-   * @ordered
-   */
-  COMPLEMENT(2, "complement", "~");
-
-  /**
-   * The '<em><b>Positive</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Positive</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #POSITIVE
-   * @model name="positive" literal="+"
-   * @generated
-   * @ordered
-   */
-  public static final int POSITIVE_VALUE = 0;
-
-  /**
-   * The '<em><b>Negative</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Negative</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #NEGATIVE
-   * @model name="negative" literal="-"
-   * @generated
-   * @ordered
-   */
-  public static final int NEGATIVE_VALUE = 1;
-
-  /**
-   * The '<em><b>Complement</b></em>' literal value.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of '<em><b>Complement</b></em>' literal object isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @see #COMPLEMENT
-   * @model name="complement" literal="~"
-   * @generated
-   * @ordered
-   */
-  public static final int COMPLEMENT_VALUE = 2;
-
-  /**
-   * An array of all the '<em><b>Unary Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  private static final UnaryOperator[] VALUES_ARRAY =
-    new UnaryOperator[]
-    {
-      POSITIVE,
-      NEGATIVE,
-      COMPLEMENT,
-    };
-
-  /**
-   * A public read-only list of all the '<em><b>Unary Operator</b></em>' enumerators.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static final List<UnaryOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-  /**
-   * Returns the '<em><b>Unary Operator</b></em>' literal with the specified literal value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static UnaryOperator get(String literal)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      UnaryOperator result = VALUES_ARRAY[i];
-      if (result.toString().equals(literal))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Unary Operator</b></em>' literal with the specified name.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static UnaryOperator getByName(String name)
-  {
-    for (int i = 0; i < VALUES_ARRAY.length; ++i)
-    {
-      UnaryOperator result = VALUES_ARRAY[i];
-      if (result.getName().equals(name))
-      {
-        return result;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Returns the '<em><b>Unary Operator</b></em>' literal with the specified integer value.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public static UnaryOperator get(int value)
-  {
-    switch (value)
-    {
-      case POSITIVE_VALUE: return POSITIVE;
-      case NEGATIVE_VALUE: return NEGATIVE;
-      case COMPLEMENT_VALUE: return COMPLEMENT;
-    }
-    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 UnaryOperator(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;
-  }
-  
-} //UnaryOperator
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
+
+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>Unary Operator</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getUnaryOperator()
+ * @model
+ * @generated
+ */
+public enum UnaryOperator implements Enumerator
+{
+  /**
+   * The '<em><b>Positive</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #POSITIVE_VALUE
+   * @generated
+   * @ordered
+   */
+  POSITIVE(0, "positive", "+"),
+
+  /**
+   * The '<em><b>Negative</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #NEGATIVE_VALUE
+   * @generated
+   * @ordered
+   */
+  NEGATIVE(1, "negative", "-"),
+
+  /**
+   * The '<em><b>Complement</b></em>' literal object.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #COMPLEMENT_VALUE
+   * @generated
+   * @ordered
+   */
+  COMPLEMENT(2, "complement", "~");
+
+  /**
+   * The '<em><b>Positive</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Positive</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #POSITIVE
+   * @model name="positive" literal="+"
+   * @generated
+   * @ordered
+   */
+  public static final int POSITIVE_VALUE = 0;
+
+  /**
+   * The '<em><b>Negative</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Negative</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #NEGATIVE
+   * @model name="negative" literal="-"
+   * @generated
+   * @ordered
+   */
+  public static final int NEGATIVE_VALUE = 1;
+
+  /**
+   * The '<em><b>Complement</b></em>' literal value.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of '<em><b>Complement</b></em>' literal object isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @see #COMPLEMENT
+   * @model name="complement" literal="~"
+   * @generated
+   * @ordered
+   */
+  public static final int COMPLEMENT_VALUE = 2;
+
+  /**
+   * An array of all the '<em><b>Unary Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  private static final UnaryOperator[] VALUES_ARRAY =
+    new UnaryOperator[]
+    {
+      POSITIVE,
+      NEGATIVE,
+      COMPLEMENT,
+    };
+
+  /**
+   * A public read-only list of all the '<em><b>Unary Operator</b></em>' enumerators.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static final List<UnaryOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+  /**
+   * Returns the '<em><b>Unary Operator</b></em>' literal with the specified literal value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static UnaryOperator get(String literal)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      UnaryOperator result = VALUES_ARRAY[i];
+      if (result.toString().equals(literal))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Unary Operator</b></em>' literal with the specified name.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static UnaryOperator getByName(String name)
+  {
+    for (int i = 0; i < VALUES_ARRAY.length; ++i)
+    {
+      UnaryOperator result = VALUES_ARRAY[i];
+      if (result.getName().equals(name))
+      {
+        return result;
+      }
+    }
+    return null;
+  }
+
+  /**
+   * Returns the '<em><b>Unary Operator</b></em>' literal with the specified integer value.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public static UnaryOperator get(int value)
+  {
+    switch (value)
+    {
+      case POSITIVE_VALUE: return POSITIVE;
+      case NEGATIVE_VALUE: return NEGATIVE;
+      case COMPLEMENT_VALUE: return COMPLEMENT;
+    }
+    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 UnaryOperator(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;
+  }
+  
+} //UnaryOperator

+ 137 - 138
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/VariableDefinition.java

@@ -1,139 +1,138 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext;
 
- */
-package org.yakindu.sct.model.stext.stext;
-
-import org.yakindu.sct.model.sgraph.Variable;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Variable Definition</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getType <em>Type</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getInitialValue <em>Initial Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition()
- * @model
- * @generated
- */
-public interface VariableDefinition extends Variable
-{
-  /**
-   * Returns the value of the '<em><b>Readonly</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Readonly</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Readonly</em>' attribute.
-   * @see #setReadonly(boolean)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_Readonly()
-   * @model
-   * @generated
-   */
-  boolean isReadonly();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Readonly</em>' attribute.
-   * @see #isReadonly()
-   * @generated
-   */
-  void setReadonly(boolean value);
-
-  /**
-   * Returns the value of the '<em><b>External</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>External</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>External</em>' attribute.
-   * @see #setExternal(boolean)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_External()
-   * @model
-   * @generated
-   */
-  boolean isExternal();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>External</em>' attribute.
-   * @see #isExternal()
-   * @generated
-   */
-  void setExternal(boolean value);
-
-  /**
-   * Returns the value of the '<em><b>Type</b></em>' attribute.
-   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>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>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see #setType(Type)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_Type()
-   * @model
-   * @generated
-   */
-  Type getType();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getType <em>Type</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Type</em>' attribute.
-   * @see org.yakindu.sct.model.stext.stext.Type
-   * @see #getType()
-   * @generated
-   */
-  void setType(Type value);
-
-  /**
-   * Returns the value of the '<em><b>Initial Value</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Initial Value</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Initial Value</em>' attribute.
-   * @see #setInitialValue(String)
-   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_InitialValue()
-   * @model
-   * @generated
-   */
-  String getInitialValue();
-
-  /**
-   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getInitialValue <em>Initial Value</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Initial Value</em>' attribute.
-   * @see #getInitialValue()
-   * @generated
-   */
-  void setInitialValue(String value);
-
-} // VariableDefinition
+import org.yakindu.sct.model.sgraph.Variable;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Variable Definition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getType <em>Type</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getInitialValue <em>Initial Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition()
+ * @model
+ * @generated
+ */
+public interface VariableDefinition extends Variable
+{
+  /**
+   * Returns the value of the '<em><b>Readonly</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Readonly</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Readonly</em>' attribute.
+   * @see #setReadonly(boolean)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_Readonly()
+   * @model
+   * @generated
+   */
+  boolean isReadonly();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Readonly</em>' attribute.
+   * @see #isReadonly()
+   * @generated
+   */
+  void setReadonly(boolean value);
+
+  /**
+   * Returns the value of the '<em><b>External</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>External</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>External</em>' attribute.
+   * @see #setExternal(boolean)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_External()
+   * @model
+   * @generated
+   */
+  boolean isExternal();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>External</em>' attribute.
+   * @see #isExternal()
+   * @generated
+   */
+  void setExternal(boolean value);
+
+  /**
+   * Returns the value of the '<em><b>Type</b></em>' attribute.
+   * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Type}.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>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>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see #setType(Type)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_Type()
+   * @model
+   * @generated
+   */
+  Type getType();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getType <em>Type</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Type</em>' attribute.
+   * @see org.yakindu.sct.model.stext.stext.Type
+   * @see #getType()
+   * @generated
+   */
+  void setType(Type value);
+
+  /**
+   * Returns the value of the '<em><b>Initial Value</b></em>' attribute.
+   * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Initial Value</em>' attribute isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+   * @return the value of the '<em>Initial Value</em>' attribute.
+   * @see #setInitialValue(String)
+   * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_InitialValue()
+   * @model
+   * @generated
+   */
+  String getInitialValue();
+
+  /**
+   * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getInitialValue <em>Initial Value</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @param value the new value of the '<em>Initial Value</em>' attribute.
+   * @see #getInitialValue()
+   * @generated
+   */
+  void setInitialValue(String value);
+
+} // VariableDefinition

+ 44 - 45
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/AlwaysEventImpl.java

@@ -1,46 +1,45 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.yakindu.sct.model.stext.stext.AlwaysEvent;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Always Event</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class AlwaysEventImpl extends BuiltinEventSpecImpl implements AlwaysEvent
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected AlwaysEventImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.ALWAYS_EVENT;
-  }
-
-} //AlwaysEventImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.yakindu.sct.model.stext.stext.AlwaysEvent;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Always Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class AlwaysEventImpl extends BuiltinEventSpecImpl implements AlwaysEvent
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected AlwaysEventImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.ALWAYS_EVENT;
+  }
+
+} //AlwaysEventImpl

+ 336 - 337
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/AssignmentImpl.java

@@ -1,338 +1,337 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.sgraph.Variable;
-
-import org.yakindu.sct.model.sgraph.impl.StatementImpl;
-
-import org.yakindu.sct.model.stext.stext.Assignment;
-import org.yakindu.sct.model.stext.stext.AssignmentOperator;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Assignment</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.AssignmentImpl#getVarRef <em>Var Ref</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.AssignmentImpl#getOperator <em>Operator</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.AssignmentImpl#getExpression <em>Expression</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class AssignmentImpl extends StatementImpl implements Assignment
-{
-  /**
-   * The cached value of the '{@link #getVarRef() <em>Var Ref</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getVarRef()
-   * @generated
-   * @ordered
-   */
-  protected Variable varRef;
-
-  /**
-   * The default value of the '{@link #getOperator() <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getOperator()
-   * @generated
-   * @ordered
-   */
-  protected static final AssignmentOperator OPERATOR_EDEFAULT = AssignmentOperator.ASSIGN;
-
-  /**
-   * The cached value of the '{@link #getOperator() <em>Operator</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getOperator()
-   * @generated
-   * @ordered
-   */
-  protected AssignmentOperator operator = OPERATOR_EDEFAULT;
-
-  /**
-   * 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 AssignmentImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.ASSIGNMENT;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Variable getVarRef()
-  {
-    if (varRef != null && varRef.eIsProxy())
-    {
-      InternalEObject oldVarRef = (InternalEObject)varRef;
-      varRef = (Variable)eResolveProxy(oldVarRef);
-      if (varRef != oldVarRef)
-      {
-        if (eNotificationRequired())
-          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.ASSIGNMENT__VAR_REF, oldVarRef, varRef));
-      }
-    }
-    return varRef;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Variable basicGetVarRef()
-  {
-    return varRef;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setVarRef(Variable newVarRef)
-  {
-    Variable oldVarRef = varRef;
-    varRef = newVarRef;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ASSIGNMENT__VAR_REF, oldVarRef, varRef));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public AssignmentOperator getOperator()
-  {
-    return operator;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setOperator(AssignmentOperator newOperator)
-  {
-    AssignmentOperator oldOperator = operator;
-    operator = newOperator == null ? OPERATOR_EDEFAULT : newOperator;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ASSIGNMENT__OPERATOR, oldOperator, operator));
-  }
-
-  /**
-   * <!-- 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, StextPackage.ASSIGNMENT__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 - StextPackage.ASSIGNMENT__EXPRESSION, null, msgs);
-      if (newExpression != null)
-        msgs = ((InternalEObject)newExpression).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.ASSIGNMENT__EXPRESSION, null, msgs);
-      msgs = basicSetExpression(newExpression, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ASSIGNMENT__EXPRESSION, newExpression, newExpression));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ASSIGNMENT__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 StextPackage.ASSIGNMENT__VAR_REF:
-        if (resolve) return getVarRef();
-        return basicGetVarRef();
-      case StextPackage.ASSIGNMENT__OPERATOR:
-        return getOperator();
-      case StextPackage.ASSIGNMENT__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 StextPackage.ASSIGNMENT__VAR_REF:
-        setVarRef((Variable)newValue);
-        return;
-      case StextPackage.ASSIGNMENT__OPERATOR:
-        setOperator((AssignmentOperator)newValue);
-        return;
-      case StextPackage.ASSIGNMENT__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 StextPackage.ASSIGNMENT__VAR_REF:
-        setVarRef((Variable)null);
-        return;
-      case StextPackage.ASSIGNMENT__OPERATOR:
-        setOperator(OPERATOR_EDEFAULT);
-        return;
-      case StextPackage.ASSIGNMENT__EXPRESSION:
-        setExpression((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ASSIGNMENT__VAR_REF:
-        return varRef != null;
-      case StextPackage.ASSIGNMENT__OPERATOR:
-        return operator != OPERATOR_EDEFAULT;
-      case StextPackage.ASSIGNMENT__EXPRESSION:
-        return expression != null;
-    }
-    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(" (operator: ");
-    result.append(operator);
-    result.append(')');
-    return result.toString();
-  }
-
-} //AssignmentImpl
+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.yakindu.sct.model.sgraph.Variable;
+
+import org.yakindu.sct.model.sgraph.impl.StatementImpl;
+
+import org.yakindu.sct.model.stext.stext.Assignment;
+import org.yakindu.sct.model.stext.stext.AssignmentOperator;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Assignment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.AssignmentImpl#getVarRef <em>Var Ref</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.AssignmentImpl#getOperator <em>Operator</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.AssignmentImpl#getExpression <em>Expression</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AssignmentImpl extends StatementImpl implements Assignment
+{
+  /**
+   * The cached value of the '{@link #getVarRef() <em>Var Ref</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getVarRef()
+   * @generated
+   * @ordered
+   */
+  protected Variable varRef;
+
+  /**
+   * The default value of the '{@link #getOperator() <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getOperator()
+   * @generated
+   * @ordered
+   */
+  protected static final AssignmentOperator OPERATOR_EDEFAULT = AssignmentOperator.ASSIGN;
+
+  /**
+   * The cached value of the '{@link #getOperator() <em>Operator</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getOperator()
+   * @generated
+   * @ordered
+   */
+  protected AssignmentOperator operator = OPERATOR_EDEFAULT;
+
+  /**
+   * 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 AssignmentImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.ASSIGNMENT;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Variable getVarRef()
+  {
+    if (varRef != null && varRef.eIsProxy())
+    {
+      InternalEObject oldVarRef = (InternalEObject)varRef;
+      varRef = (Variable)eResolveProxy(oldVarRef);
+      if (varRef != oldVarRef)
+      {
+        if (eNotificationRequired())
+          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.ASSIGNMENT__VAR_REF, oldVarRef, varRef));
+      }
+    }
+    return varRef;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Variable basicGetVarRef()
+  {
+    return varRef;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setVarRef(Variable newVarRef)
+  {
+    Variable oldVarRef = varRef;
+    varRef = newVarRef;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ASSIGNMENT__VAR_REF, oldVarRef, varRef));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public AssignmentOperator getOperator()
+  {
+    return operator;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setOperator(AssignmentOperator newOperator)
+  {
+    AssignmentOperator oldOperator = operator;
+    operator = newOperator == null ? OPERATOR_EDEFAULT : newOperator;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ASSIGNMENT__OPERATOR, oldOperator, operator));
+  }
+
+  /**
+   * <!-- 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, StextPackage.ASSIGNMENT__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 - StextPackage.ASSIGNMENT__EXPRESSION, null, msgs);
+      if (newExpression != null)
+        msgs = ((InternalEObject)newExpression).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.ASSIGNMENT__EXPRESSION, null, msgs);
+      msgs = basicSetExpression(newExpression, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ASSIGNMENT__EXPRESSION, newExpression, newExpression));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ASSIGNMENT__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 StextPackage.ASSIGNMENT__VAR_REF:
+        if (resolve) return getVarRef();
+        return basicGetVarRef();
+      case StextPackage.ASSIGNMENT__OPERATOR:
+        return getOperator();
+      case StextPackage.ASSIGNMENT__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 StextPackage.ASSIGNMENT__VAR_REF:
+        setVarRef((Variable)newValue);
+        return;
+      case StextPackage.ASSIGNMENT__OPERATOR:
+        setOperator((AssignmentOperator)newValue);
+        return;
+      case StextPackage.ASSIGNMENT__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 StextPackage.ASSIGNMENT__VAR_REF:
+        setVarRef((Variable)null);
+        return;
+      case StextPackage.ASSIGNMENT__OPERATOR:
+        setOperator(OPERATOR_EDEFAULT);
+        return;
+      case StextPackage.ASSIGNMENT__EXPRESSION:
+        setExpression((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ASSIGNMENT__VAR_REF:
+        return varRef != null;
+      case StextPackage.ASSIGNMENT__OPERATOR:
+        return operator != OPERATOR_EDEFAULT;
+      case StextPackage.ASSIGNMENT__EXPRESSION:
+        return expression != null;
+    }
+    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(" (operator: ");
+    result.append(operator);
+    result.append(')');
+    return result.toString();
+  }
+
+} //AssignmentImpl

+ 266 - 267
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BitwiseAndExpressionImpl.java

@@ -1,268 +1,267 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.stext.stext.BitwiseAndExpression;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Bitwise And Expression</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseAndExpressionImpl#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseAndExpressionImpl#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class BitwiseAndExpressionImpl extends ExpressionImpl implements BitwiseAndExpression
-{
-  /**
-   * The cached value of the '{@link #getLeftOperand() <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getLeftOperand()
-   * @generated
-   * @ordered
-   */
-  protected Expression leftOperand;
-
-  /**
-   * The cached value of the '{@link #getRightOperand() <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getRightOperand()
-   * @generated
-   * @ordered
-   */
-  protected Expression rightOperand;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected BitwiseAndExpressionImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.BITWISE_AND_EXPRESSION;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getLeftOperand()
-  {
-    return leftOperand;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetLeftOperand(Expression newLeftOperand, NotificationChain msgs)
-  {
-    Expression oldLeftOperand = leftOperand;
-    leftOperand = newLeftOperand;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, oldLeftOperand, newLeftOperand);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setLeftOperand(Expression newLeftOperand)
-  {
-    if (newLeftOperand != leftOperand)
-    {
-      NotificationChain msgs = null;
-      if (leftOperand != null)
-        msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, null, msgs);
-      if (newLeftOperand != null)
-        msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, null, msgs);
-      msgs = basicSetLeftOperand(newLeftOperand, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, newLeftOperand, newLeftOperand));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getRightOperand()
-  {
-    return rightOperand;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetRightOperand(Expression newRightOperand, NotificationChain msgs)
-  {
-    Expression oldRightOperand = rightOperand;
-    rightOperand = newRightOperand;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, oldRightOperand, newRightOperand);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setRightOperand(Expression newRightOperand)
-  {
-    if (newRightOperand != rightOperand)
-    {
-      NotificationChain msgs = null;
-      if (rightOperand != null)
-        msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, null, msgs);
-      if (newRightOperand != null)
-        msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, null, msgs);
-      msgs = basicSetRightOperand(newRightOperand, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, newRightOperand, newRightOperand));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
-        return basicSetLeftOperand(null, msgs);
-      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
-        return basicSetRightOperand(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 StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
-        return getLeftOperand();
-      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
-        return getRightOperand();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
-        setLeftOperand((Expression)newValue);
-        return;
-      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
-        setRightOperand((Expression)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
-        setLeftOperand((Expression)null);
-        return;
-      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
-        setRightOperand((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
-        return leftOperand != null;
-      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
-        return rightOperand != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //BitwiseAndExpressionImpl
+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.yakindu.sct.model.stext.stext.BitwiseAndExpression;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bitwise And Expression</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseAndExpressionImpl#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseAndExpressionImpl#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BitwiseAndExpressionImpl extends ExpressionImpl implements BitwiseAndExpression
+{
+  /**
+   * The cached value of the '{@link #getLeftOperand() <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getLeftOperand()
+   * @generated
+   * @ordered
+   */
+  protected Expression leftOperand;
+
+  /**
+   * The cached value of the '{@link #getRightOperand() <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getRightOperand()
+   * @generated
+   * @ordered
+   */
+  protected Expression rightOperand;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected BitwiseAndExpressionImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.BITWISE_AND_EXPRESSION;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getLeftOperand()
+  {
+    return leftOperand;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetLeftOperand(Expression newLeftOperand, NotificationChain msgs)
+  {
+    Expression oldLeftOperand = leftOperand;
+    leftOperand = newLeftOperand;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, oldLeftOperand, newLeftOperand);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setLeftOperand(Expression newLeftOperand)
+  {
+    if (newLeftOperand != leftOperand)
+    {
+      NotificationChain msgs = null;
+      if (leftOperand != null)
+        msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, null, msgs);
+      if (newLeftOperand != null)
+        msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, null, msgs);
+      msgs = basicSetLeftOperand(newLeftOperand, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND, newLeftOperand, newLeftOperand));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getRightOperand()
+  {
+    return rightOperand;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetRightOperand(Expression newRightOperand, NotificationChain msgs)
+  {
+    Expression oldRightOperand = rightOperand;
+    rightOperand = newRightOperand;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, oldRightOperand, newRightOperand);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setRightOperand(Expression newRightOperand)
+  {
+    if (newRightOperand != rightOperand)
+    {
+      NotificationChain msgs = null;
+      if (rightOperand != null)
+        msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, null, msgs);
+      if (newRightOperand != null)
+        msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, null, msgs);
+      msgs = basicSetRightOperand(newRightOperand, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND, newRightOperand, newRightOperand));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
+        return basicSetLeftOperand(null, msgs);
+      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
+        return basicSetRightOperand(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 StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
+        return getLeftOperand();
+      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
+        return getRightOperand();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
+        setLeftOperand((Expression)newValue);
+        return;
+      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
+        setRightOperand((Expression)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
+        setLeftOperand((Expression)null);
+        return;
+      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
+        setRightOperand((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_AND_EXPRESSION__LEFT_OPERAND:
+        return leftOperand != null;
+      case StextPackage.BITWISE_AND_EXPRESSION__RIGHT_OPERAND:
+        return rightOperand != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //BitwiseAndExpressionImpl

+ 266 - 267
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BitwiseOrExpressionImpl.java

@@ -1,268 +1,267 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.stext.stext.BitwiseOrExpression;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Bitwise Or Expression</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseOrExpressionImpl#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseOrExpressionImpl#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class BitwiseOrExpressionImpl extends ExpressionImpl implements BitwiseOrExpression
-{
-  /**
-   * The cached value of the '{@link #getLeftOperand() <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getLeftOperand()
-   * @generated
-   * @ordered
-   */
-  protected Expression leftOperand;
-
-  /**
-   * The cached value of the '{@link #getRightOperand() <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getRightOperand()
-   * @generated
-   * @ordered
-   */
-  protected Expression rightOperand;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected BitwiseOrExpressionImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.BITWISE_OR_EXPRESSION;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getLeftOperand()
-  {
-    return leftOperand;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetLeftOperand(Expression newLeftOperand, NotificationChain msgs)
-  {
-    Expression oldLeftOperand = leftOperand;
-    leftOperand = newLeftOperand;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, oldLeftOperand, newLeftOperand);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setLeftOperand(Expression newLeftOperand)
-  {
-    if (newLeftOperand != leftOperand)
-    {
-      NotificationChain msgs = null;
-      if (leftOperand != null)
-        msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, null, msgs);
-      if (newLeftOperand != null)
-        msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, null, msgs);
-      msgs = basicSetLeftOperand(newLeftOperand, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, newLeftOperand, newLeftOperand));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getRightOperand()
-  {
-    return rightOperand;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetRightOperand(Expression newRightOperand, NotificationChain msgs)
-  {
-    Expression oldRightOperand = rightOperand;
-    rightOperand = newRightOperand;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, oldRightOperand, newRightOperand);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setRightOperand(Expression newRightOperand)
-  {
-    if (newRightOperand != rightOperand)
-    {
-      NotificationChain msgs = null;
-      if (rightOperand != null)
-        msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, null, msgs);
-      if (newRightOperand != null)
-        msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, null, msgs);
-      msgs = basicSetRightOperand(newRightOperand, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, newRightOperand, newRightOperand));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
-        return basicSetLeftOperand(null, msgs);
-      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
-        return basicSetRightOperand(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 StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
-        return getLeftOperand();
-      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
-        return getRightOperand();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
-        setLeftOperand((Expression)newValue);
-        return;
-      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
-        setRightOperand((Expression)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
-        setLeftOperand((Expression)null);
-        return;
-      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
-        setRightOperand((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
-        return leftOperand != null;
-      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
-        return rightOperand != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //BitwiseOrExpressionImpl
+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.yakindu.sct.model.stext.stext.BitwiseOrExpression;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bitwise Or Expression</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseOrExpressionImpl#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseOrExpressionImpl#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BitwiseOrExpressionImpl extends ExpressionImpl implements BitwiseOrExpression
+{
+  /**
+   * The cached value of the '{@link #getLeftOperand() <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getLeftOperand()
+   * @generated
+   * @ordered
+   */
+  protected Expression leftOperand;
+
+  /**
+   * The cached value of the '{@link #getRightOperand() <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getRightOperand()
+   * @generated
+   * @ordered
+   */
+  protected Expression rightOperand;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected BitwiseOrExpressionImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.BITWISE_OR_EXPRESSION;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getLeftOperand()
+  {
+    return leftOperand;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetLeftOperand(Expression newLeftOperand, NotificationChain msgs)
+  {
+    Expression oldLeftOperand = leftOperand;
+    leftOperand = newLeftOperand;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, oldLeftOperand, newLeftOperand);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setLeftOperand(Expression newLeftOperand)
+  {
+    if (newLeftOperand != leftOperand)
+    {
+      NotificationChain msgs = null;
+      if (leftOperand != null)
+        msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, null, msgs);
+      if (newLeftOperand != null)
+        msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, null, msgs);
+      msgs = basicSetLeftOperand(newLeftOperand, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND, newLeftOperand, newLeftOperand));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getRightOperand()
+  {
+    return rightOperand;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetRightOperand(Expression newRightOperand, NotificationChain msgs)
+  {
+    Expression oldRightOperand = rightOperand;
+    rightOperand = newRightOperand;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, oldRightOperand, newRightOperand);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setRightOperand(Expression newRightOperand)
+  {
+    if (newRightOperand != rightOperand)
+    {
+      NotificationChain msgs = null;
+      if (rightOperand != null)
+        msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, null, msgs);
+      if (newRightOperand != null)
+        msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, null, msgs);
+      msgs = basicSetRightOperand(newRightOperand, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND, newRightOperand, newRightOperand));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
+        return basicSetLeftOperand(null, msgs);
+      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
+        return basicSetRightOperand(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 StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
+        return getLeftOperand();
+      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
+        return getRightOperand();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
+        setLeftOperand((Expression)newValue);
+        return;
+      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
+        setRightOperand((Expression)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
+        setLeftOperand((Expression)null);
+        return;
+      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
+        setRightOperand((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_OR_EXPRESSION__LEFT_OPERAND:
+        return leftOperand != null;
+      case StextPackage.BITWISE_OR_EXPRESSION__RIGHT_OPERAND:
+        return rightOperand != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //BitwiseOrExpressionImpl

+ 266 - 267
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BitwiseXorExpressionImpl.java

@@ -1,268 +1,267 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.stext.stext.BitwiseXorExpression;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Bitwise Xor Expression</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseXorExpressionImpl#getLeftOperand <em>Left Operand</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseXorExpressionImpl#getRightOperand <em>Right Operand</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class BitwiseXorExpressionImpl extends ExpressionImpl implements BitwiseXorExpression
-{
-  /**
-   * The cached value of the '{@link #getLeftOperand() <em>Left Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getLeftOperand()
-   * @generated
-   * @ordered
-   */
-  protected Expression leftOperand;
-
-  /**
-   * The cached value of the '{@link #getRightOperand() <em>Right Operand</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getRightOperand()
-   * @generated
-   * @ordered
-   */
-  protected Expression rightOperand;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected BitwiseXorExpressionImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.BITWISE_XOR_EXPRESSION;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getLeftOperand()
-  {
-    return leftOperand;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetLeftOperand(Expression newLeftOperand, NotificationChain msgs)
-  {
-    Expression oldLeftOperand = leftOperand;
-    leftOperand = newLeftOperand;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, oldLeftOperand, newLeftOperand);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setLeftOperand(Expression newLeftOperand)
-  {
-    if (newLeftOperand != leftOperand)
-    {
-      NotificationChain msgs = null;
-      if (leftOperand != null)
-        msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, null, msgs);
-      if (newLeftOperand != null)
-        msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, null, msgs);
-      msgs = basicSetLeftOperand(newLeftOperand, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, newLeftOperand, newLeftOperand));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getRightOperand()
-  {
-    return rightOperand;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetRightOperand(Expression newRightOperand, NotificationChain msgs)
-  {
-    Expression oldRightOperand = rightOperand;
-    rightOperand = newRightOperand;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, oldRightOperand, newRightOperand);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setRightOperand(Expression newRightOperand)
-  {
-    if (newRightOperand != rightOperand)
-    {
-      NotificationChain msgs = null;
-      if (rightOperand != null)
-        msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, null, msgs);
-      if (newRightOperand != null)
-        msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, null, msgs);
-      msgs = basicSetRightOperand(newRightOperand, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, newRightOperand, newRightOperand));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
-        return basicSetLeftOperand(null, msgs);
-      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
-        return basicSetRightOperand(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 StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
-        return getLeftOperand();
-      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
-        return getRightOperand();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
-        setLeftOperand((Expression)newValue);
-        return;
-      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
-        setRightOperand((Expression)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
-        setLeftOperand((Expression)null);
-        return;
-      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
-        setRightOperand((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
-        return leftOperand != null;
-      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
-        return rightOperand != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //BitwiseXorExpressionImpl
+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.yakindu.sct.model.stext.stext.BitwiseXorExpression;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bitwise Xor Expression</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseXorExpressionImpl#getLeftOperand <em>Left Operand</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.BitwiseXorExpressionImpl#getRightOperand <em>Right Operand</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BitwiseXorExpressionImpl extends ExpressionImpl implements BitwiseXorExpression
+{
+  /**
+   * The cached value of the '{@link #getLeftOperand() <em>Left Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getLeftOperand()
+   * @generated
+   * @ordered
+   */
+  protected Expression leftOperand;
+
+  /**
+   * The cached value of the '{@link #getRightOperand() <em>Right Operand</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getRightOperand()
+   * @generated
+   * @ordered
+   */
+  protected Expression rightOperand;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected BitwiseXorExpressionImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.BITWISE_XOR_EXPRESSION;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getLeftOperand()
+  {
+    return leftOperand;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetLeftOperand(Expression newLeftOperand, NotificationChain msgs)
+  {
+    Expression oldLeftOperand = leftOperand;
+    leftOperand = newLeftOperand;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, oldLeftOperand, newLeftOperand);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setLeftOperand(Expression newLeftOperand)
+  {
+    if (newLeftOperand != leftOperand)
+    {
+      NotificationChain msgs = null;
+      if (leftOperand != null)
+        msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, null, msgs);
+      if (newLeftOperand != null)
+        msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, null, msgs);
+      msgs = basicSetLeftOperand(newLeftOperand, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND, newLeftOperand, newLeftOperand));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getRightOperand()
+  {
+    return rightOperand;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetRightOperand(Expression newRightOperand, NotificationChain msgs)
+  {
+    Expression oldRightOperand = rightOperand;
+    rightOperand = newRightOperand;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, oldRightOperand, newRightOperand);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setRightOperand(Expression newRightOperand)
+  {
+    if (newRightOperand != rightOperand)
+    {
+      NotificationChain msgs = null;
+      if (rightOperand != null)
+        msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, null, msgs);
+      if (newRightOperand != null)
+        msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, null, msgs);
+      msgs = basicSetRightOperand(newRightOperand, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND, newRightOperand, newRightOperand));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
+        return basicSetLeftOperand(null, msgs);
+      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
+        return basicSetRightOperand(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 StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
+        return getLeftOperand();
+      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
+        return getRightOperand();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
+        setLeftOperand((Expression)newValue);
+        return;
+      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
+        setRightOperand((Expression)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
+        setLeftOperand((Expression)null);
+        return;
+      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
+        setRightOperand((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.BITWISE_XOR_EXPRESSION__LEFT_OPERAND:
+        return leftOperand != null;
+      case StextPackage.BITWISE_XOR_EXPRESSION__RIGHT_OPERAND:
+        return rightOperand != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //BitwiseXorExpressionImpl

+ 44 - 45
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/BuiltinEventSpecImpl.java

@@ -1,46 +1,45 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Builtin Event Spec</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class BuiltinEventSpecImpl extends EventSpecImpl implements BuiltinEventSpec
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected BuiltinEventSpecImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.BUILTIN_EVENT_SPEC;
-  }
-
-} //BuiltinEventSpecImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Builtin Event Spec</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class BuiltinEventSpecImpl extends EventSpecImpl implements BuiltinEventSpec
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected BuiltinEventSpecImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.BUILTIN_EVENT_SPEC;
+  }
+
+} //BuiltinEventSpecImpl

+ 46 - 47
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ClockImpl.java

@@ -1,48 +1,47 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.yakindu.sct.model.sgraph.impl.DeclarationImpl;
-
-import org.yakindu.sct.model.stext.stext.Clock;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Clock</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class ClockImpl extends DeclarationImpl implements Clock
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected ClockImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.CLOCK;
-  }
-
-} //ClockImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.yakindu.sct.model.sgraph.impl.DeclarationImpl;
+
+import org.yakindu.sct.model.stext.stext.Clock;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Clock</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class ClockImpl extends DeclarationImpl implements Clock
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected ClockImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.CLOCK;
+  }
+
+} //ClockImpl

+ 337 - 338
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ConditionalExpressionImpl.java

@@ -1,339 +1,338 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.stext.stext.ConditionalExpression;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Conditional Expression</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ConditionalExpressionImpl#getCondition <em>Condition</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ConditionalExpressionImpl#getTrueCase <em>True Case</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ConditionalExpressionImpl#getFalseCase <em>False Case</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ConditionalExpressionImpl extends ExpressionImpl implements ConditionalExpression
-{
-  /**
-   * 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 #getTrueCase() <em>True Case</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getTrueCase()
-   * @generated
-   * @ordered
-   */
-  protected Expression trueCase;
-
-  /**
-   * The cached value of the '{@link #getFalseCase() <em>False Case</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getFalseCase()
-   * @generated
-   * @ordered
-   */
-  protected Expression falseCase;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected ConditionalExpressionImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.CONDITIONAL_EXPRESSION;
-  }
-
-  /**
-   * <!-- 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, StextPackage.CONDITIONAL_EXPRESSION__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 - StextPackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs);
-      if (newCondition != null)
-        msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs);
-      msgs = basicSetCondition(newCondition, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__CONDITION, newCondition, newCondition));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getTrueCase()
-  {
-    return trueCase;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetTrueCase(Expression newTrueCase, NotificationChain msgs)
-  {
-    Expression oldTrueCase = trueCase;
-    trueCase = newTrueCase;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, oldTrueCase, newTrueCase);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setTrueCase(Expression newTrueCase)
-  {
-    if (newTrueCase != trueCase)
-    {
-      NotificationChain msgs = null;
-      if (trueCase != null)
-        msgs = ((InternalEObject)trueCase).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, null, msgs);
-      if (newTrueCase != null)
-        msgs = ((InternalEObject)newTrueCase).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, null, msgs);
-      msgs = basicSetTrueCase(newTrueCase, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, newTrueCase, newTrueCase));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Expression getFalseCase()
-  {
-    return falseCase;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetFalseCase(Expression newFalseCase, NotificationChain msgs)
-  {
-    Expression oldFalseCase = falseCase;
-    falseCase = newFalseCase;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, oldFalseCase, newFalseCase);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setFalseCase(Expression newFalseCase)
-  {
-    if (newFalseCase != falseCase)
-    {
-      NotificationChain msgs = null;
-      if (falseCase != null)
-        msgs = ((InternalEObject)falseCase).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, null, msgs);
-      if (newFalseCase != null)
-        msgs = ((InternalEObject)newFalseCase).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, null, msgs);
-      msgs = basicSetFalseCase(newFalseCase, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, newFalseCase, newFalseCase));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
-        return basicSetCondition(null, msgs);
-      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
-        return basicSetTrueCase(null, msgs);
-      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
-        return basicSetFalseCase(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 StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
-        return getCondition();
-      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
-        return getTrueCase();
-      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
-        return getFalseCase();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
-        setCondition((Expression)newValue);
-        return;
-      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
-        setTrueCase((Expression)newValue);
-        return;
-      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
-        setFalseCase((Expression)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
-        setCondition((Expression)null);
-        return;
-      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
-        setTrueCase((Expression)null);
-        return;
-      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
-        setFalseCase((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
-        return condition != null;
-      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
-        return trueCase != null;
-      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
-        return falseCase != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //ConditionalExpressionImpl
+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.yakindu.sct.model.stext.stext.ConditionalExpression;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conditional Expression</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ConditionalExpressionImpl#getCondition <em>Condition</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ConditionalExpressionImpl#getTrueCase <em>True Case</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ConditionalExpressionImpl#getFalseCase <em>False Case</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ConditionalExpressionImpl extends ExpressionImpl implements ConditionalExpression
+{
+  /**
+   * 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 #getTrueCase() <em>True Case</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getTrueCase()
+   * @generated
+   * @ordered
+   */
+  protected Expression trueCase;
+
+  /**
+   * The cached value of the '{@link #getFalseCase() <em>False Case</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getFalseCase()
+   * @generated
+   * @ordered
+   */
+  protected Expression falseCase;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected ConditionalExpressionImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.CONDITIONAL_EXPRESSION;
+  }
+
+  /**
+   * <!-- 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, StextPackage.CONDITIONAL_EXPRESSION__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 - StextPackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs);
+      if (newCondition != null)
+        msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs);
+      msgs = basicSetCondition(newCondition, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__CONDITION, newCondition, newCondition));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getTrueCase()
+  {
+    return trueCase;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetTrueCase(Expression newTrueCase, NotificationChain msgs)
+  {
+    Expression oldTrueCase = trueCase;
+    trueCase = newTrueCase;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, oldTrueCase, newTrueCase);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setTrueCase(Expression newTrueCase)
+  {
+    if (newTrueCase != trueCase)
+    {
+      NotificationChain msgs = null;
+      if (trueCase != null)
+        msgs = ((InternalEObject)trueCase).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, null, msgs);
+      if (newTrueCase != null)
+        msgs = ((InternalEObject)newTrueCase).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, null, msgs);
+      msgs = basicSetTrueCase(newTrueCase, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE, newTrueCase, newTrueCase));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Expression getFalseCase()
+  {
+    return falseCase;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetFalseCase(Expression newFalseCase, NotificationChain msgs)
+  {
+    Expression oldFalseCase = falseCase;
+    falseCase = newFalseCase;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, oldFalseCase, newFalseCase);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setFalseCase(Expression newFalseCase)
+  {
+    if (newFalseCase != falseCase)
+    {
+      NotificationChain msgs = null;
+      if (falseCase != null)
+        msgs = ((InternalEObject)falseCase).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, null, msgs);
+      if (newFalseCase != null)
+        msgs = ((InternalEObject)newFalseCase).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, null, msgs);
+      msgs = basicSetFalseCase(newFalseCase, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE, newFalseCase, newFalseCase));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
+        return basicSetCondition(null, msgs);
+      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
+        return basicSetTrueCase(null, msgs);
+      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
+        return basicSetFalseCase(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 StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
+        return getCondition();
+      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
+        return getTrueCase();
+      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
+        return getFalseCase();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
+        setCondition((Expression)newValue);
+        return;
+      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
+        setTrueCase((Expression)newValue);
+        return;
+      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
+        setFalseCase((Expression)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
+        setCondition((Expression)null);
+        return;
+      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
+        setTrueCase((Expression)null);
+        return;
+      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
+        setFalseCase((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.CONDITIONAL_EXPRESSION__CONDITION:
+        return condition != null;
+      case StextPackage.CONDITIONAL_EXPRESSION__TRUE_CASE:
+        return trueCase != null;
+      case StextPackage.CONDITIONAL_EXPRESSION__FALSE_CASE:
+        return falseCase != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //ConditionalExpressionImpl

+ 46 - 47
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/DefRootImpl.java

@@ -1,48 +1,47 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
-
-import org.yakindu.sct.model.stext.stext.DefRoot;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Def Root</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class DefRootImpl extends MinimalEObjectImpl.Container implements DefRoot
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected DefRootImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.DEF_ROOT;
-  }
-
-} //DefRootImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.yakindu.sct.model.stext.stext.DefRoot;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Def Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class DefRootImpl extends MinimalEObjectImpl.Container implements DefRoot
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected DefRootImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.DEF_ROOT;
+  }
+
+} //DefRootImpl

+ 176 - 177
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ElementReferenceExpressionImpl.java

@@ -1,177 +1,176 @@
-/**
- * <copyright>
- * </copyright>
- *
-
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-
-import org.yakindu.sct.model.sgraph.Declaration;
-
-import org.yakindu.sct.model.stext.stext.ElementReferenceExpression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Element Reference Expression</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ElementReferenceExpressionImpl#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ElementReferenceExpressionImpl extends ExpressionImpl implements ElementReferenceExpression
-{
-  /**
-   * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getValue()
-   * @generated
-   * @ordered
-   */
-  protected Declaration value;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected ElementReferenceExpressionImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.ELEMENT_REFERENCE_EXPRESSION;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Declaration getValue()
-  {
-    if (value != null && value.eIsProxy())
-    {
-      InternalEObject oldValue = (InternalEObject)value;
-      value = (Declaration)eResolveProxy(oldValue);
-      if (value != oldValue)
-      {
-        if (eNotificationRequired())
-          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE, oldValue, value));
-      }
-    }
-    return value;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Declaration basicGetValue()
-  {
-    return value;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setValue(Declaration newValue)
-  {
-    Declaration oldValue = value;
-    value = newValue;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE, oldValue, value));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public Object eGet(int featureID, boolean resolve, boolean coreType)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
-        if (resolve) return getValue();
-        return basicGetValue();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
-        setValue((Declaration)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
-        setValue((Declaration)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
-        return value != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //ElementReferenceExpressionImpl
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.yakindu.sct.model.sgraph.Declaration;
+
+import org.yakindu.sct.model.stext.stext.ElementReferenceExpression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Element Reference Expression</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.ElementReferenceExpressionImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ElementReferenceExpressionImpl extends ExpressionImpl implements ElementReferenceExpression
+{
+  /**
+   * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getValue()
+   * @generated
+   * @ordered
+   */
+  protected Declaration value;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected ElementReferenceExpressionImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.ELEMENT_REFERENCE_EXPRESSION;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Declaration getValue()
+  {
+    if (value != null && value.eIsProxy())
+    {
+      InternalEObject oldValue = (InternalEObject)value;
+      value = (Declaration)eResolveProxy(oldValue);
+      if (value != oldValue)
+      {
+        if (eNotificationRequired())
+          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE, oldValue, value));
+      }
+    }
+    return value;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Declaration basicGetValue()
+  {
+    return value;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setValue(Declaration newValue)
+  {
+    Declaration oldValue = value;
+    value = newValue;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE, oldValue, value));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public Object eGet(int featureID, boolean resolve, boolean coreType)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
+        if (resolve) return getValue();
+        return basicGetValue();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
+        setValue((Declaration)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
+        setValue((Declaration)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ELEMENT_REFERENCE_EXPRESSION__VALUE:
+        return value != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //ElementReferenceExpressionImpl

+ 44 - 45
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EntryEventImpl.java

@@ -1,46 +1,45 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.yakindu.sct.model.stext.stext.EntryEvent;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Entry Event</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class EntryEventImpl extends BuiltinEventSpecImpl implements EntryEvent
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected EntryEventImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.ENTRY_EVENT;
-  }
-
-} //EntryEventImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.yakindu.sct.model.stext.stext.EntryEvent;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Entry Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class EntryEventImpl extends BuiltinEventSpecImpl implements EntryEvent
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected EntryEventImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.ENTRY_EVENT;
+  }
+
+} //EntryEventImpl

+ 174 - 175
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EntryPointSpecImpl.java

@@ -1,176 +1,175 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-
-import org.yakindu.sct.model.stext.stext.EntryPointSpec;
-import org.yakindu.sct.model.stext.stext.Entrypoint;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Entry Point Spec</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EntryPointSpecImpl#getEntrypoint <em>Entrypoint</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class EntryPointSpecImpl extends ReactionPropertyImpl implements EntryPointSpec
-{
-  /**
-   * The cached value of the '{@link #getEntrypoint() <em>Entrypoint</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getEntrypoint()
-   * @generated
-   * @ordered
-   */
-  protected Entrypoint entrypoint;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected EntryPointSpecImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.ENTRY_POINT_SPEC;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Entrypoint getEntrypoint()
-  {
-    if (entrypoint != null && entrypoint.eIsProxy())
-    {
-      InternalEObject oldEntrypoint = (InternalEObject)entrypoint;
-      entrypoint = (Entrypoint)eResolveProxy(oldEntrypoint);
-      if (entrypoint != oldEntrypoint)
-      {
-        if (eNotificationRequired())
-          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT, oldEntrypoint, entrypoint));
-      }
-    }
-    return entrypoint;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Entrypoint basicGetEntrypoint()
-  {
-    return entrypoint;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setEntrypoint(Entrypoint newEntrypoint)
-  {
-    Entrypoint oldEntrypoint = entrypoint;
-    entrypoint = newEntrypoint;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT, oldEntrypoint, entrypoint));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public Object eGet(int featureID, boolean resolve, boolean coreType)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
-        if (resolve) return getEntrypoint();
-        return basicGetEntrypoint();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
-        setEntrypoint((Entrypoint)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
-        setEntrypoint((Entrypoint)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
-        return entrypoint != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //EntryPointSpecImpl
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.yakindu.sct.model.stext.stext.EntryPointSpec;
+import org.yakindu.sct.model.stext.stext.Entrypoint;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Entry Point Spec</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EntryPointSpecImpl#getEntrypoint <em>Entrypoint</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EntryPointSpecImpl extends ReactionPropertyImpl implements EntryPointSpec
+{
+  /**
+   * The cached value of the '{@link #getEntrypoint() <em>Entrypoint</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getEntrypoint()
+   * @generated
+   * @ordered
+   */
+  protected Entrypoint entrypoint;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected EntryPointSpecImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.ENTRY_POINT_SPEC;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Entrypoint getEntrypoint()
+  {
+    if (entrypoint != null && entrypoint.eIsProxy())
+    {
+      InternalEObject oldEntrypoint = (InternalEObject)entrypoint;
+      entrypoint = (Entrypoint)eResolveProxy(oldEntrypoint);
+      if (entrypoint != oldEntrypoint)
+      {
+        if (eNotificationRequired())
+          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT, oldEntrypoint, entrypoint));
+      }
+    }
+    return entrypoint;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Entrypoint basicGetEntrypoint()
+  {
+    return entrypoint;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setEntrypoint(Entrypoint newEntrypoint)
+  {
+    Entrypoint oldEntrypoint = entrypoint;
+    entrypoint = newEntrypoint;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT, oldEntrypoint, entrypoint));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public Object eGet(int featureID, boolean resolve, boolean coreType)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
+        if (resolve) return getEntrypoint();
+        return basicGetEntrypoint();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
+        setEntrypoint((Entrypoint)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
+        setEntrypoint((Entrypoint)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.ENTRY_POINT_SPEC__ENTRYPOINT:
+        return entrypoint != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //EntryPointSpecImpl

+ 46 - 47
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EntrypointImpl.java

@@ -1,48 +1,47 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.yakindu.sct.model.sgraph.impl.DeclarationImpl;
-
-import org.yakindu.sct.model.stext.stext.Entrypoint;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Entrypoint</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class EntrypointImpl extends DeclarationImpl implements Entrypoint
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected EntrypointImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.ENTRYPOINT;
-  }
-
-} //EntrypointImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.yakindu.sct.model.sgraph.impl.DeclarationImpl;
+
+import org.yakindu.sct.model.stext.stext.Entrypoint;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Entrypoint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class EntrypointImpl extends DeclarationImpl implements Entrypoint
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected EntrypointImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.ENTRYPOINT;
+  }
+
+} //EntrypointImpl

+ 326 - 327
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventDefinitionImpl.java

@@ -1,328 +1,327 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.sgraph.impl.EventImpl;
-
-import org.yakindu.sct.model.stext.stext.Direction;
-import org.yakindu.sct.model.stext.stext.EventDefinition;
-import org.yakindu.sct.model.stext.stext.EventDerivation;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-import org.yakindu.sct.model.stext.stext.Type;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Event Definition</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getDirection <em>Direction</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getType <em>Type</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getDerivation <em>Derivation</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class EventDefinitionImpl extends EventImpl implements EventDefinition
-{
-  /**
-   * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDirection()
-   * @generated
-   * @ordered
-   */
-  protected static final Direction DIRECTION_EDEFAULT = Direction.LOCAL;
-
-  /**
-   * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDirection()
-   * @generated
-   * @ordered
-   */
-  protected Direction direction = DIRECTION_EDEFAULT;
-
-  /**
-   * The default value of the '{@link #getType() <em>Type</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getType()
-   * @generated
-   * @ordered
-   */
-  protected static final Type TYPE_EDEFAULT = Type.VOID;
-
-  /**
-   * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getType()
-   * @generated
-   * @ordered
-   */
-  protected Type type = TYPE_EDEFAULT;
-
-  /**
-   * The cached value of the '{@link #getDerivation() <em>Derivation</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDerivation()
-   * @generated
-   * @ordered
-   */
-  protected EventDerivation derivation;
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected EventDefinitionImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.EVENT_DEFINITION;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Direction getDirection()
-  {
-    return direction;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setDirection(Direction newDirection)
-  {
-    Direction oldDirection = direction;
-    direction = newDirection == null ? DIRECTION_EDEFAULT : newDirection;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DIRECTION, oldDirection, direction));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Type getType()
-  {
-    return type;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setType(Type newType)
-  {
-    Type oldType = type;
-    type = newType == null ? TYPE_EDEFAULT : newType;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__TYPE, oldType, type));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public EventDerivation getDerivation()
-  {
-    return derivation;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetDerivation(EventDerivation newDerivation, NotificationChain msgs)
-  {
-    EventDerivation oldDerivation = derivation;
-    derivation = newDerivation;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DERIVATION, oldDerivation, newDerivation);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setDerivation(EventDerivation newDerivation)
-  {
-    if (newDerivation != derivation)
-    {
-      NotificationChain msgs = null;
-      if (derivation != null)
-        msgs = ((InternalEObject)derivation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DEFINITION__DERIVATION, null, msgs);
-      if (newDerivation != null)
-        msgs = ((InternalEObject)newDerivation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DEFINITION__DERIVATION, null, msgs);
-      msgs = basicSetDerivation(newDerivation, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DERIVATION, newDerivation, newDerivation));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_DEFINITION__DERIVATION:
-        return basicSetDerivation(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 StextPackage.EVENT_DEFINITION__DIRECTION:
-        return getDirection();
-      case StextPackage.EVENT_DEFINITION__TYPE:
-        return getType();
-      case StextPackage.EVENT_DEFINITION__DERIVATION:
-        return getDerivation();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_DEFINITION__DIRECTION:
-        setDirection((Direction)newValue);
-        return;
-      case StextPackage.EVENT_DEFINITION__TYPE:
-        setType((Type)newValue);
-        return;
-      case StextPackage.EVENT_DEFINITION__DERIVATION:
-        setDerivation((EventDerivation)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_DEFINITION__DIRECTION:
-        setDirection(DIRECTION_EDEFAULT);
-        return;
-      case StextPackage.EVENT_DEFINITION__TYPE:
-        setType(TYPE_EDEFAULT);
-        return;
-      case StextPackage.EVENT_DEFINITION__DERIVATION:
-        setDerivation((EventDerivation)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_DEFINITION__DIRECTION:
-        return direction != DIRECTION_EDEFAULT;
-      case StextPackage.EVENT_DEFINITION__TYPE:
-        return type != TYPE_EDEFAULT;
-      case StextPackage.EVENT_DEFINITION__DERIVATION:
-        return derivation != null;
-    }
-    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(" (direction: ");
-    result.append(direction);
-    result.append(", type: ");
-    result.append(type);
-    result.append(')');
-    return result.toString();
-  }
-
-} //EventDefinitionImpl
+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.yakindu.sct.model.sgraph.impl.EventImpl;
+
+import org.yakindu.sct.model.stext.stext.Direction;
+import org.yakindu.sct.model.stext.stext.EventDefinition;
+import org.yakindu.sct.model.stext.stext.EventDerivation;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+import org.yakindu.sct.model.stext.stext.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Event Definition</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getDirection <em>Direction</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getType <em>Type</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getDerivation <em>Derivation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EventDefinitionImpl extends EventImpl implements EventDefinition
+{
+  /**
+   * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getDirection()
+   * @generated
+   * @ordered
+   */
+  protected static final Direction DIRECTION_EDEFAULT = Direction.LOCAL;
+
+  /**
+   * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getDirection()
+   * @generated
+   * @ordered
+   */
+  protected Direction direction = DIRECTION_EDEFAULT;
+
+  /**
+   * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getType()
+   * @generated
+   * @ordered
+   */
+  protected static final Type TYPE_EDEFAULT = Type.VOID;
+
+  /**
+   * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getType()
+   * @generated
+   * @ordered
+   */
+  protected Type type = TYPE_EDEFAULT;
+
+  /**
+   * The cached value of the '{@link #getDerivation() <em>Derivation</em>}' containment reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getDerivation()
+   * @generated
+   * @ordered
+   */
+  protected EventDerivation derivation;
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected EventDefinitionImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.EVENT_DEFINITION;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Direction getDirection()
+  {
+    return direction;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setDirection(Direction newDirection)
+  {
+    Direction oldDirection = direction;
+    direction = newDirection == null ? DIRECTION_EDEFAULT : newDirection;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DIRECTION, oldDirection, direction));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Type getType()
+  {
+    return type;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setType(Type newType)
+  {
+    Type oldType = type;
+    type = newType == null ? TYPE_EDEFAULT : newType;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__TYPE, oldType, type));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public EventDerivation getDerivation()
+  {
+    return derivation;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public NotificationChain basicSetDerivation(EventDerivation newDerivation, NotificationChain msgs)
+  {
+    EventDerivation oldDerivation = derivation;
+    derivation = newDerivation;
+    if (eNotificationRequired())
+    {
+      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DERIVATION, oldDerivation, newDerivation);
+      if (msgs == null) msgs = notification; else msgs.add(notification);
+    }
+    return msgs;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setDerivation(EventDerivation newDerivation)
+  {
+    if (newDerivation != derivation)
+    {
+      NotificationChain msgs = null;
+      if (derivation != null)
+        msgs = ((InternalEObject)derivation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DEFINITION__DERIVATION, null, msgs);
+      if (newDerivation != null)
+        msgs = ((InternalEObject)newDerivation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DEFINITION__DERIVATION, null, msgs);
+      msgs = basicSetDerivation(newDerivation, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DERIVATION, newDerivation, newDerivation));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_DEFINITION__DERIVATION:
+        return basicSetDerivation(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 StextPackage.EVENT_DEFINITION__DIRECTION:
+        return getDirection();
+      case StextPackage.EVENT_DEFINITION__TYPE:
+        return getType();
+      case StextPackage.EVENT_DEFINITION__DERIVATION:
+        return getDerivation();
+    }
+    return super.eGet(featureID, resolve, coreType);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_DEFINITION__DIRECTION:
+        setDirection((Direction)newValue);
+        return;
+      case StextPackage.EVENT_DEFINITION__TYPE:
+        setType((Type)newValue);
+        return;
+      case StextPackage.EVENT_DEFINITION__DERIVATION:
+        setDerivation((EventDerivation)newValue);
+        return;
+    }
+    super.eSet(featureID, newValue);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public void eUnset(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_DEFINITION__DIRECTION:
+        setDirection(DIRECTION_EDEFAULT);
+        return;
+      case StextPackage.EVENT_DEFINITION__TYPE:
+        setType(TYPE_EDEFAULT);
+        return;
+      case StextPackage.EVENT_DEFINITION__DERIVATION:
+        setDerivation((EventDerivation)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_DEFINITION__DIRECTION:
+        return direction != DIRECTION_EDEFAULT;
+      case StextPackage.EVENT_DEFINITION__TYPE:
+        return type != TYPE_EDEFAULT;
+      case StextPackage.EVENT_DEFINITION__DERIVATION:
+        return derivation != null;
+    }
+    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(" (direction: ");
+    result.append(direction);
+    result.append(", type: ");
+    result.append(type);
+    result.append(')');
+    return result.toString();
+  }
+
+} //EventDefinitionImpl

+ 267 - 268
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventDerivationImpl.java

@@ -1,269 +1,268 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.impl.MinimalEObjectImpl;
-
-import org.yakindu.sct.model.stext.stext.EventDerivation;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Event Derivation</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDerivationImpl#getCondition <em>Condition</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDerivationImpl#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class EventDerivationImpl extends MinimalEObjectImpl.Container implements EventDerivation
-{
-  /**
-   * 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 #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 EventDerivationImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.EVENT_DERIVATION;
-  }
-
-  /**
-   * <!-- 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, StextPackage.EVENT_DERIVATION__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 - StextPackage.EVENT_DERIVATION__CONDITION, null, msgs);
-      if (newCondition != null)
-        msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DERIVATION__CONDITION, null, msgs);
-      msgs = basicSetCondition(newCondition, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DERIVATION__CONDITION, newCondition, newCondition));
-  }
-
-  /**
-   * <!-- 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, StextPackage.EVENT_DERIVATION__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 - StextPackage.EVENT_DERIVATION__VALUE, null, msgs);
-      if (newValue != null)
-        msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DERIVATION__VALUE, null, msgs);
-      msgs = basicSetValue(newValue, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DERIVATION__VALUE, newValue, newValue));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_DERIVATION__CONDITION:
-        return basicSetCondition(null, msgs);
-      case StextPackage.EVENT_DERIVATION__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 StextPackage.EVENT_DERIVATION__CONDITION:
-        return getCondition();
-      case StextPackage.EVENT_DERIVATION__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 StextPackage.EVENT_DERIVATION__CONDITION:
-        setCondition((Expression)newValue);
-        return;
-      case StextPackage.EVENT_DERIVATION__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 StextPackage.EVENT_DERIVATION__CONDITION:
-        setCondition((Expression)null);
-        return;
-      case StextPackage.EVENT_DERIVATION__VALUE:
-        setValue((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_DERIVATION__CONDITION:
-        return condition != null;
-      case StextPackage.EVENT_DERIVATION__VALUE:
-        return value != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //EventDerivationImpl
+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.impl.MinimalEObjectImpl;
+
+import org.yakindu.sct.model.stext.stext.EventDerivation;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Event Derivation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDerivationImpl#getCondition <em>Condition</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDerivationImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EventDerivationImpl extends MinimalEObjectImpl.Container implements EventDerivation
+{
+  /**
+   * 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 #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 EventDerivationImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.EVENT_DERIVATION;
+  }
+
+  /**
+   * <!-- 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, StextPackage.EVENT_DERIVATION__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 - StextPackage.EVENT_DERIVATION__CONDITION, null, msgs);
+      if (newCondition != null)
+        msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DERIVATION__CONDITION, null, msgs);
+      msgs = basicSetCondition(newCondition, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DERIVATION__CONDITION, newCondition, newCondition));
+  }
+
+  /**
+   * <!-- 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, StextPackage.EVENT_DERIVATION__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 - StextPackage.EVENT_DERIVATION__VALUE, null, msgs);
+      if (newValue != null)
+        msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_DERIVATION__VALUE, null, msgs);
+      msgs = basicSetValue(newValue, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DERIVATION__VALUE, newValue, newValue));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_DERIVATION__CONDITION:
+        return basicSetCondition(null, msgs);
+      case StextPackage.EVENT_DERIVATION__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 StextPackage.EVENT_DERIVATION__CONDITION:
+        return getCondition();
+      case StextPackage.EVENT_DERIVATION__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 StextPackage.EVENT_DERIVATION__CONDITION:
+        setCondition((Expression)newValue);
+        return;
+      case StextPackage.EVENT_DERIVATION__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 StextPackage.EVENT_DERIVATION__CONDITION:
+        setCondition((Expression)null);
+        return;
+      case StextPackage.EVENT_DERIVATION__VALUE:
+        setValue((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_DERIVATION__CONDITION:
+        return condition != null;
+      case StextPackage.EVENT_DERIVATION__VALUE:
+        return value != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //EventDerivationImpl

+ 264 - 265
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventRaisingImpl.java

@@ -1,266 +1,265 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.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.yakindu.sct.model.sgraph.Event;
-
-import org.yakindu.sct.model.sgraph.impl.StatementImpl;
-
-import org.yakindu.sct.model.stext.stext.EventRaising;
-import org.yakindu.sct.model.stext.stext.Expression;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Event Raising</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventRaisingImpl#getEvent <em>Event</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventRaisingImpl#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class EventRaisingImpl extends StatementImpl implements EventRaising
-{
-  /**
-   * The cached value of the '{@link #getEvent() <em>Event</em>}' reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getEvent()
-   * @generated
-   * @ordered
-   */
-  protected Event event;
-
-  /**
-   * 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 EventRaisingImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.EVENT_RAISING;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Event getEvent()
-  {
-    if (event != null && event.eIsProxy())
-    {
-      InternalEObject oldEvent = (InternalEObject)event;
-      event = (Event)eResolveProxy(oldEvent);
-      if (event != oldEvent)
-      {
-        if (eNotificationRequired())
-          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.EVENT_RAISING__EVENT, oldEvent, event));
-      }
-    }
-    return event;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Event basicGetEvent()
-  {
-    return event;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setEvent(Event newEvent)
-  {
-    Event oldEvent = event;
-    event = newEvent;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_RAISING__EVENT, oldEvent, event));
-  }
-
-  /**
-   * <!-- 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, StextPackage.EVENT_RAISING__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 - StextPackage.EVENT_RAISING__VALUE, null, msgs);
-      if (newValue != null)
-        msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_RAISING__VALUE, null, msgs);
-      msgs = basicSetValue(newValue, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_RAISING__VALUE, newValue, newValue));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_RAISING__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 StextPackage.EVENT_RAISING__EVENT:
-        if (resolve) return getEvent();
-        return basicGetEvent();
-      case StextPackage.EVENT_RAISING__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 StextPackage.EVENT_RAISING__EVENT:
-        setEvent((Event)newValue);
-        return;
-      case StextPackage.EVENT_RAISING__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 StextPackage.EVENT_RAISING__EVENT:
-        setEvent((Event)null);
-        return;
-      case StextPackage.EVENT_RAISING__VALUE:
-        setValue((Expression)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case StextPackage.EVENT_RAISING__EVENT:
-        return event != null;
-      case StextPackage.EVENT_RAISING__VALUE:
-        return value != null;
-    }
-    return super.eIsSet(featureID);
-  }
-
-} //EventRaisingImpl
+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.yakindu.sct.model.sgraph.Event;
+
+import org.yakindu.sct.model.sgraph.impl.StatementImpl;
+
+import org.yakindu.sct.model.stext.stext.EventRaising;
+import org.yakindu.sct.model.stext.stext.Expression;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Event Raising</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventRaisingImpl#getEvent <em>Event</em>}</li>
+ *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventRaisingImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EventRaisingImpl extends StatementImpl implements EventRaising
+{
+  /**
+   * The cached value of the '{@link #getEvent() <em>Event</em>}' reference.
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @see #getEvent()
+   * @generated
+   * @ordered
+   */
+  protected Event event;
+
+  /**
+   * 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 EventRaisingImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.EVENT_RAISING;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Event getEvent()
+  {
+    if (event != null && event.eIsProxy())
+    {
+      InternalEObject oldEvent = (InternalEObject)event;
+      event = (Event)eResolveProxy(oldEvent);
+      if (event != oldEvent)
+      {
+        if (eNotificationRequired())
+          eNotify(new ENotificationImpl(this, Notification.RESOLVE, StextPackage.EVENT_RAISING__EVENT, oldEvent, event));
+      }
+    }
+    return event;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public Event basicGetEvent()
+  {
+    return event;
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  public void setEvent(Event newEvent)
+  {
+    Event oldEvent = event;
+    event = newEvent;
+    if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_RAISING__EVENT, oldEvent, event));
+  }
+
+  /**
+   * <!-- 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, StextPackage.EVENT_RAISING__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 - StextPackage.EVENT_RAISING__VALUE, null, msgs);
+      if (newValue != null)
+        msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - StextPackage.EVENT_RAISING__VALUE, null, msgs);
+      msgs = basicSetValue(newValue, msgs);
+      if (msgs != null) msgs.dispatch();
+    }
+    else if (eNotificationRequired())
+      eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_RAISING__VALUE, newValue, newValue));
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_RAISING__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 StextPackage.EVENT_RAISING__EVENT:
+        if (resolve) return getEvent();
+        return basicGetEvent();
+      case StextPackage.EVENT_RAISING__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 StextPackage.EVENT_RAISING__EVENT:
+        setEvent((Event)newValue);
+        return;
+      case StextPackage.EVENT_RAISING__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 StextPackage.EVENT_RAISING__EVENT:
+        setEvent((Event)null);
+        return;
+      case StextPackage.EVENT_RAISING__VALUE:
+        setValue((Expression)null);
+        return;
+    }
+    super.eUnset(featureID);
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+    switch (featureID)
+    {
+      case StextPackage.EVENT_RAISING__EVENT:
+        return event != null;
+      case StextPackage.EVENT_RAISING__VALUE:
+        return value != null;
+    }
+    return super.eIsSet(featureID);
+  }
+
+} //EventRaisingImpl

+ 46 - 47
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/EventSpecImpl.java

@@ -1,48 +1,47 @@
-/**
- * <copyright>
- * </copyright>
- *
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.yakindu.sct.model.stext.stext.impl;
 
- */
-package org.yakindu.sct.model.stext.stext.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
-
-import org.yakindu.sct.model.stext.stext.EventSpec;
-import org.yakindu.sct.model.stext.stext.StextPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Event Spec</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class EventSpecImpl extends MinimalEObjectImpl.Container implements EventSpec
-{
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  protected EventSpecImpl()
-  {
-    super();
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  protected EClass eStaticClass()
-  {
-    return StextPackage.Literals.EVENT_SPEC;
-  }
-
-} //EventSpecImpl
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.yakindu.sct.model.stext.stext.EventSpec;
+import org.yakindu.sct.model.stext.stext.StextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Event Spec</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class EventSpecImpl extends MinimalEObjectImpl.Container implements EventSpec
+{
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  protected EventSpecImpl()
+  {
+    super();
+  }
+
+  /**
+   * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+   * @generated
+   */
+  @Override
+  protected EClass eStaticClass()
+  {
+    return StextPackage.Literals.EVENT_SPEC;
+  }
+
+} //EventSpecImpl

+ 0 - 0
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/stext/impl/ExitEventImpl.java


Some files were not shown because too many files changed in this diff