Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenrik Rentz-Reichert2011-03-01 08:34:53 +0000
committerHenrik Rentz-Reichert2011-03-01 08:34:53 +0000
commite7aca9068c8ceeac4e366af16cfd70b1b6f3639e (patch)
tree237c3c226c514cec8a70a376d35cedcc15f46e76
parent679713127b2e683d8aeebbf68d6ebcf67eafbc3a (diff)
parentac04515810b806b8e4abdbc7c93c709111e31885 (diff)
downloadorg.eclipse.etrice-e7aca9068c8ceeac4e366af16cfd70b1b6f3639e.tar.gz
org.eclipse.etrice-e7aca9068c8ceeac4e366af16cfd70b1b6f3639e.tar.xz
org.eclipse.etrice-e7aca9068c8ceeac4e366af16cfd70b1b6f3639e.zip
Merge branch 'refs/heads/master' of
https://hrentzreich@git.eclipse.org/gitroot/etrice/org.eclipse.etrice.git into HEAD
-rw-r--r--examples/org.eclipse.etrice.example/models/Example_1.room55
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/plugin.xml_gen366
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/AbstractRoomUiModule.java244
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/RoomExecutableExtensionFactory.java54
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.g32398
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/internal/RoomActivator.java204
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditBehaviorHandler.java109
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditStructureHandler.java14
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/RoomOutlineTreeProvider.java298
-rw-r--r--plugins/org.eclipse.etrice.core.room/plugin.xml_gen34
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/AbstractRoomRuntimeModule.java274
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/RoomStandaloneSetupGenerated.java86
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/RoomParser.java78
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.g10526
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/services/RoomGrammarAccess.java8802
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/validation/AbstractRoomJavaValidator.java40
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/etricegen/impl/ExpandedActorClassImpl.java19
-rw-r--r--plugins/org.eclipse.etrice.ui.behavior/.gitignore2
-rw-r--r--plugins/org.eclipse.etrice.ui.behavior/META-INF/MANIFEST.MF52
-rw-r--r--plugins/org.eclipse.etrice.ui.common/.gitignore2
-rw-r--r--plugins/org.eclipse.etrice.ui.common/META-INF/MANIFEST.MF46
-rw-r--r--tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch7
-rw-r--r--tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java154
-rw-r--r--tests/org.eclipse.etrice.ui.behavior.tests/.classpath14
-rw-r--r--tests/org.eclipse.etrice.ui.behavior.tests/.gitignore2
-rw-r--r--tests/org.eclipse.etrice.ui.behavior.tests/.project68
-rw-r--r--tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF36
-rw-r--r--tests/org.eclipse.etrice.ui.behavior.tests/build.properties8
-rw-r--r--tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room174
-rw-r--r--tests/org.eclipse.etrice.ui.structure.tests/.gitignore2
-rw-r--r--tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF36
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/.classpath14
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/.gitignore2
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/.project56
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs16
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF28
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/build.properties8
-rw-r--r--tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java178
38 files changed, 27299 insertions, 27207 deletions
diff --git a/examples/org.eclipse.etrice.example/models/Example_1.room b/examples/org.eclipse.etrice.example/models/Example_1.room
deleted file mode 100644
index eb32f18a3..000000000
--- a/examples/org.eclipse.etrice.example/models/Example_1.room
+++ /dev/null
@@ -1,55 +0,0 @@
-RoomModel Example_1 {
-
- ProtocolClass MyProtocol {
- incoming {
- Message in1 ()
- Message in2 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- LogicalSystem SystemMain {
- SubSystemRef subsystem : SubSystemMain
- }
-
- SubSystemClass SubSystemMain {
- ActorRef application : App_SubSystemMain
- }
-
- // automatically inserted App_SubSystemMain
- ActorClass App_SubSystemMain {
- Structure {
- ActorRef actor : MyActor
- }
- }
-
- ActorClass MyActor {
- Interface {
- Port p2 : MyProtocol
- }
- Structure {
- conjugated Port p1 : MyProtocol
- ActorRef sub : SubActor
- Binding p1 and sub.p1
- Binding p2 and sub.p2
- }
- Behavior {
- }
- }
-
- ActorClass SubActor {
- Interface {
- Port p1 : MyProtocol
- Port p2 : MyProtocol
- }
- Structure {
- external Port p1
- external Port p2
- }
- Behavior {
- }
- }
-
-}
diff --git a/plugins/org.eclipse.etrice.core.room.ui/plugin.xml_gen b/plugins/org.eclipse.etrice.core.room.ui/plugin.xml_gen
index 3ebe2dd26..70eedda92 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/plugin.xml_gen
+++ b/plugins/org.eclipse.etrice.core.room.ui/plugin.xml_gen
@@ -1,183 +1,183 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension
- point="org.eclipse.ui.editors">
- <editor
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
- contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
- default="true"
- extensions="room"
- id="org.eclipse.etrice.core.Room"
- name="Room Editor">
- </editor>
- </extension>
- <extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
- commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Room.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- <handler
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
- commandId="org.eclipse.etrice.core.Room.validate">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Room.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
- <extension point="org.eclipse.core.expressions.definitions">
- <definition id="org.eclipse.etrice.core.Room.Editor.opened">
- <and>
- <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
- <with variable="activeEditor">
- <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
- value="org.eclipse.etrice.core.Room"
- forcePluginActivation="true"/>
- </with>
- </and>
- </definition>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
- id="org.eclipse.etrice.core.Room"
- name="Room">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Room"/>
- </page>
- <page
- category="org.eclipse.etrice.core.Room"
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
- id="org.eclipse.etrice.core.Room.coloring"
- name="Syntax Coloring">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Room"/>
- </page>
- <page
- category="org.eclipse.etrice.core.Room"
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
- id="org.eclipse.etrice.core.Room.templates"
- name="Templates">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Room"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.keywords">
- <keyword
- id="org.eclipse.etrice.core.ui.keyword_Room"
- label="Room"/>
- </extension>
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Trigger expensive validation"
- id="org.eclipse.etrice.core.Room.validate"
- name="Validate">
- </command>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution
- locationURI="popup:#TextEditorContext?after=group.edit">
- <command
- commandId="org.eclipse.etrice.core.Room.validate"
- style="push"
- tooltip="Trigger expensive validation">
- <visibleWhen checkEnabled="false">
- <reference
- definitionId="org.eclipse.etrice.core.Room.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
- <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.eclipse.etrice.core.Room.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
- commandId="org.eclipse.xtext.ui.editor.FindReferences">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Room.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
-
-<!-- adding resource factories -->
-
- <extension
- point="org.eclipse.emf.ecore.extension_parser">
- <parser
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
- type="room">
- </parser>
- </extension>
- <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
- <resourceServiceProvider
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
- uriExtension="room">
- </resourceServiceProvider>
- </extension>
-
-
-
- <!-- Quick Outline -->
- <extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
- commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Room.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Open the quick outline."
- id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
- name="Quick Outline">
- </command>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution
- locationURI="popup:#TextEditorContext?after=group.open">
- <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
- style="push"
- tooltip="Open Quick Outline">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.eclipse.etrice.core.Room.Editor.opened"/>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <!-- quickfix marker resolution generator -->
- <extension
- point="org.eclipse.ui.ide.markerResolution">
- <markerResolutionGenerator
- class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator">
- </markerResolutionGenerator>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
+ contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
+ default="true"
+ extensions="room"
+ id="org.eclipse.etrice.core.Room"
+ name="Room Editor">
+ </editor>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
+ commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Room.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
+ commandId="org.eclipse.etrice.core.Room.validate">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Room.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.core.expressions.definitions">
+ <definition id="org.eclipse.etrice.core.Room.Editor.opened">
+ <and>
+ <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.eclipse.etrice.core.Room"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.Room"
+ name="Room">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Room"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.Room"
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
+ id="org.eclipse.etrice.core.Room.coloring"
+ name="Syntax Coloring">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Room"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.Room"
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
+ id="org.eclipse.etrice.core.Room.templates"
+ name="Templates">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Room"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.keywords">
+ <keyword
+ id="org.eclipse.etrice.core.ui.keyword_Room"
+ label="Room"/>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Trigger expensive validation"
+ id="org.eclipse.etrice.core.Room.validate"
+ name="Validate">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command
+ commandId="org.eclipse.etrice.core.Room.validate"
+ style="push"
+ tooltip="Trigger expensive validation">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.eclipse.etrice.core.Room.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
+ <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.Room.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
+ commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Room.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+
+<!-- adding resource factories -->
+
+ <extension
+ point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
+ type="room">
+ </parser>
+ </extension>
+ <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
+ <resourceServiceProvider
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
+ uriExtension="room">
+ </resourceServiceProvider>
+ </extension>
+
+
+
+ <!-- Quick Outline -->
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
+ commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Room.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Open the quick outline."
+ id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
+ name="Quick Outline">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.open">
+ <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
+ style="push"
+ tooltip="Open Quick Outline">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.Room.Editor.opened"/>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <!-- quickfix marker resolution generator -->
+ <extension
+ point="org.eclipse.ui.ide.markerResolution">
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.ui.RoomExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator">
+ </markerResolutionGenerator>
+ </extension>
+
+</plugin>
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/AbstractRoomUiModule.java b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/AbstractRoomUiModule.java
index 254757e2f..a0750a756 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/AbstractRoomUiModule.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/AbstractRoomUiModule.java
@@ -1,122 +1,122 @@
-
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core.ui;
-
-import org.eclipse.xtext.ui.DefaultUiModule;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * Manual modifications go to {org.eclipse.etrice.core.ui.RoomUiModule}
- */
-@SuppressWarnings("all")
-public abstract class AbstractRoomUiModule extends DefaultUiModule {
-
- public AbstractRoomUiModule(AbstractUIPlugin plugin) {
- super(plugin);
- }
-
-
- // contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
- public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
- return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper> bindIProposalConflictHelper() {
- return org.eclipse.xtext.ui.editor.contentassist.antlr.AntlrProposalConflictHelper.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public void configureHighlightingLexer(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.HIGHLIGHTING)).to(org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class);
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public void configureHighlightingTokenDefProvider(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.parser.antlr.ITokenDefProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.HIGHLIGHTING)).to(org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class);
- }
-
- // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
- public Class<? extends org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher> bindPrefixMatcher() {
- return org.eclipse.xtext.ui.editor.contentassist.FQNPrefixMatcher.class;
- }
-
- // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
- public Class<? extends org.eclipse.xtext.ui.refactoring.IDependentElementsCalculator> bindIDependentElementsCalculator() {
- return org.eclipse.xtext.ui.refactoring.impl.DefaultDependentElementsCalculator.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.builder.clustering.CurrentDescriptions.ResourceSetAware.class);
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public Class<? extends org.eclipse.xtext.ui.editor.IXtextEditorCallback> bindIXtextEditorCallback() {
- return org.eclipse.xtext.builder.nature.NatureAddingEditorCallback.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public void configureIResourceDescriptionsPersisted(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource.PERSISTED_DESCRIPTIONS)).to(org.eclipse.xtext.builder.builderState.IBuilderState.class);
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public Class<? extends org.eclipse.xtext.ui.editor.DocumentBasedDirtyResource> bindDocumentBasedDirtyResource() {
- return org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource.class;
- }
-
- // contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
- public Class<? extends org.eclipse.jface.viewers.ILabelProvider> bindILabelProvider() {
- return org.eclipse.etrice.core.ui.labeling.RoomLabelProvider.class;
- }
-
- // contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
- public void configureResourceUIServiceLabelProvider(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.jface.viewers.ILabelProvider.class).annotatedWith(org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider.class).to(org.eclipse.etrice.core.ui.labeling.RoomDescriptionLabelProvider.class);
- }
-
- // contributed by org.eclipse.xtext.ui.generator.outline.OutlineTreeProviderFragment
- public Class<? extends org.eclipse.xtext.ui.editor.outline.IOutlineTreeProvider> bindIOutlineTreeProvider() {
- return org.eclipse.etrice.core.ui.outline.RoomOutlineTreeProvider.class;
- }
-
- // contributed by org.eclipse.xtext.ui.generator.outline.OutlineTreeProviderFragment
- public Class<? extends org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider> bindIOutlineTreeStructureProvider() {
- return org.eclipse.etrice.core.ui.outline.RoomOutlineTreeProvider.class;
- }
-
- // contributed by org.eclipse.xtext.ui.generator.quickfix.QuickfixProviderFragment
- public Class<? extends org.eclipse.xtext.ui.editor.quickfix.IssueResolutionProvider> bindIssueResolutionProvider() {
- return org.eclipse.etrice.core.ui.quickfix.RoomQuickfixProvider.class;
- }
-
- // contributed by org.eclipse.xtext.ui.generator.contentAssist.JavaBasedContentAssistFragment
- public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider> bindIContentProposalProvider() {
- return org.eclipse.etrice.core.ui.contentassist.RoomProposalProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
- public Class<? extends org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext.Factory> bindContentAssistContext$Factory() {
- return org.eclipse.xtext.ui.editor.contentassist.antlr.ParserBasedContentAssistContextFactory.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
- public Class<? extends org.eclipse.xtext.ui.editor.contentassist.antlr.IContentAssistParser> bindIContentAssistParser() {
- return org.eclipse.etrice.core.ui.contentassist.antlr.RoomParser.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
- public void configureContentAssistLexerProvider(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.etrice.core.ui.contentassist.antlr.internal.InternalRoomLexer.class).toProvider(org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.ui.contentassist.antlr.internal.InternalRoomLexer.class));
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
- public void configureContentAssistLexer(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.CONTENT_ASSIST)).to(org.eclipse.etrice.core.ui.contentassist.antlr.internal.InternalRoomLexer.class);
- }
-
-
-}
+
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.ui;
+
+import org.eclipse.xtext.ui.DefaultUiModule;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
+/**
+ * Manual modifications go to {org.eclipse.etrice.core.ui.RoomUiModule}
+ */
+@SuppressWarnings("all")
+public abstract class AbstractRoomUiModule extends DefaultUiModule {
+
+ public AbstractRoomUiModule(AbstractUIPlugin plugin) {
+ super(plugin);
+ }
+
+
+ // contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
+ public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
+ return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper> bindIProposalConflictHelper() {
+ return org.eclipse.xtext.ui.editor.contentassist.antlr.AntlrProposalConflictHelper.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public void configureHighlightingLexer(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.HIGHLIGHTING)).to(org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public void configureHighlightingTokenDefProvider(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.parser.antlr.ITokenDefProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.HIGHLIGHTING)).to(org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher> bindPrefixMatcher() {
+ return org.eclipse.xtext.ui.editor.contentassist.FQNPrefixMatcher.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
+ public Class<? extends org.eclipse.xtext.ui.refactoring.IDependentElementsCalculator> bindIDependentElementsCalculator() {
+ return org.eclipse.xtext.ui.refactoring.impl.DefaultDependentElementsCalculator.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.builder.clustering.CurrentDescriptions.ResourceSetAware.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.IXtextEditorCallback> bindIXtextEditorCallback() {
+ return org.eclipse.xtext.builder.nature.NatureAddingEditorCallback.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public void configureIResourceDescriptionsPersisted(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource.PERSISTED_DESCRIPTIONS)).to(org.eclipse.xtext.builder.builderState.IBuilderState.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.DocumentBasedDirtyResource> bindDocumentBasedDirtyResource() {
+ return org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
+ public Class<? extends org.eclipse.jface.viewers.ILabelProvider> bindILabelProvider() {
+ return org.eclipse.etrice.core.ui.labeling.RoomLabelProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
+ public void configureResourceUIServiceLabelProvider(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.jface.viewers.ILabelProvider.class).annotatedWith(org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider.class).to(org.eclipse.etrice.core.ui.labeling.RoomDescriptionLabelProvider.class);
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.outline.OutlineTreeProviderFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.outline.IOutlineTreeProvider> bindIOutlineTreeProvider() {
+ return org.eclipse.etrice.core.ui.outline.RoomOutlineTreeProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.outline.OutlineTreeProviderFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider> bindIOutlineTreeStructureProvider() {
+ return org.eclipse.etrice.core.ui.outline.RoomOutlineTreeProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.quickfix.QuickfixProviderFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.quickfix.IssueResolutionProvider> bindIssueResolutionProvider() {
+ return org.eclipse.etrice.core.ui.quickfix.RoomQuickfixProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.contentAssist.JavaBasedContentAssistFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider> bindIContentProposalProvider() {
+ return org.eclipse.etrice.core.ui.contentassist.RoomProposalProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext.Factory> bindContentAssistContext$Factory() {
+ return org.eclipse.xtext.ui.editor.contentassist.antlr.ParserBasedContentAssistContextFactory.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.contentassist.antlr.IContentAssistParser> bindIContentAssistParser() {
+ return org.eclipse.etrice.core.ui.contentassist.antlr.RoomParser.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
+ public void configureContentAssistLexerProvider(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.etrice.core.ui.contentassist.antlr.internal.InternalRoomLexer.class).toProvider(org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.ui.contentassist.antlr.internal.InternalRoomLexer.class));
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
+ public void configureContentAssistLexer(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.CONTENT_ASSIST)).to(org.eclipse.etrice.core.ui.contentassist.antlr.internal.InternalRoomLexer.class);
+ }
+
+
+}
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/RoomExecutableExtensionFactory.java b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/RoomExecutableExtensionFactory.java
index 682c2e3c8..94ec9b465 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/RoomExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/RoomExecutableExtensionFactory.java
@@ -1,27 +1,27 @@
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core.ui;
-
-import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
-import org.osgi.framework.Bundle;
-
-import com.google.inject.Injector;
-
-/**
- * This class was generated. Customizations should only happen in a newly
- * introduced subclass.
- */
-public class RoomExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
-
- @Override
- protected Bundle getBundle() {
- return org.eclipse.etrice.core.ui.internal.RoomActivator.getInstance().getBundle();
- }
-
- @Override
- protected Injector getInjector() {
- return org.eclipse.etrice.core.ui.internal.RoomActivator.getInstance().getInjector("org.eclipse.etrice.core.Room");
- }
-
-}
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.ui;
+
+import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
+import org.osgi.framework.Bundle;
+
+import com.google.inject.Injector;
+
+/**
+ * This class was generated. Customizations should only happen in a newly
+ * introduced subclass.
+ */
+public class RoomExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
+
+ @Override
+ protected Bundle getBundle() {
+ return org.eclipse.etrice.core.ui.internal.RoomActivator.getInstance().getBundle();
+ }
+
+ @Override
+ protected Injector getInjector() {
+ return org.eclipse.etrice.core.ui.internal.RoomActivator.getInstance().getInjector("org.eclipse.etrice.core.Room");
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.g b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.g
index 0af2dfa62..92f5f7b50 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.g
+++ b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.g
@@ -1,16199 +1,16199 @@
-/*
-* generated by Xtext
-*/
-grammar InternalRoom;
-
-options {
- superClass=AbstractInternalContentAssistParser;
-
-}
-
-@lexer::header {
-package org.eclipse.etrice.core.ui.contentassist.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import.
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
-}
-
-@parser::header {
-package org.eclipse.etrice.core.ui.contentassist.antlr.internal;
-
-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;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
-import org.eclipse.etrice.core.services.RoomGrammarAccess;
-
-}
-
-@parser::members {
-
- private RoomGrammarAccess grammarAccess;
-
- public void setGrammarAccess(RoomGrammarAccess grammarAccess) {
- this.grammarAccess = grammarAccess;
- }
-
- @Override
- protected Grammar getGrammar() {
- return grammarAccess.getGrammar();
- }
-
- @Override
- protected String getValueForTokenName(String tokenName) {
- return tokenName;
- }
-
-}
-
-
-
-
-// Entry rule entryRuleRoomModel
-entryRuleRoomModel
-:
-{ before(grammarAccess.getRoomModelRule()); }
- ruleRoomModel
-{ after(grammarAccess.getRoomModelRule()); }
- EOF
-;
-
-// Rule RoomModel
-ruleRoomModel
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getRoomModelAccess().getGroup()); }
-(rule__RoomModel__Group__0)
-{ after(grammarAccess.getRoomModelAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-// Entry rule entryRuleStructureClass
-entryRuleStructureClass
-:
-{ before(grammarAccess.getStructureClassRule()); }
- ruleStructureClass
-{ after(grammarAccess.getStructureClassRule()); }
- EOF
-;
-
-// Rule StructureClass
-ruleStructureClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getStructureClassAccess().getAlternatives()); }
-(rule__StructureClass__Alternatives)
-{ after(grammarAccess.getStructureClassAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleActorContainerClass
-entryRuleActorContainerClass
-:
-{ before(grammarAccess.getActorContainerClassRule()); }
- ruleActorContainerClass
-{ after(grammarAccess.getActorContainerClassRule()); }
- EOF
-;
-
-// Rule ActorContainerClass
-ruleActorContainerClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getActorContainerClassAccess().getAlternatives()); }
-(rule__ActorContainerClass__Alternatives)
-{ after(grammarAccess.getActorContainerClassAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTypedID
-entryRuleTypedID
-:
-{ before(grammarAccess.getTypedIDRule()); }
- ruleTypedID
-{ after(grammarAccess.getTypedIDRule()); }
- EOF
-;
-
-// Rule TypedID
-ruleTypedID
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTypedIDAccess().getGroup()); }
-(rule__TypedID__Group__0)
-{ after(grammarAccess.getTypedIDAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleFreeTypedID
-entryRuleFreeTypedID
-:
-{ before(grammarAccess.getFreeTypedIDRule()); }
- ruleFreeTypedID
-{ after(grammarAccess.getFreeTypedIDRule()); }
- EOF
-;
-
-// Rule FreeTypedID
-ruleFreeTypedID
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getFreeTypedIDAccess().getGroup()); }
-(rule__FreeTypedID__Group__0)
-{ after(grammarAccess.getFreeTypedIDAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleType
-entryRuleType
-:
-{ before(grammarAccess.getTypeRule()); }
- ruleType
-{ after(grammarAccess.getTypeRule()); }
- EOF
-;
-
-// Rule Type
-ruleType
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTypeAccess().getAlternatives()); }
-(rule__Type__Alternatives)
-{ after(grammarAccess.getTypeAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleFreeType
-entryRuleFreeType
-:
-{ before(grammarAccess.getFreeTypeRule()); }
- ruleFreeType
-{ after(grammarAccess.getFreeTypeRule()); }
- EOF
-;
-
-// Rule FreeType
-ruleFreeType
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getFreeTypeAccess().getAlternatives()); }
-(rule__FreeType__Alternatives)
-{ after(grammarAccess.getFreeTypeAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleDataClass
-entryRuleDataClass
-:
-{ before(grammarAccess.getDataClassRule()); }
- ruleDataClass
-{ after(grammarAccess.getDataClassRule()); }
- EOF
-;
-
-// Rule DataClass
-ruleDataClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getDataClassAccess().getGroup()); }
-(rule__DataClass__Group__0)
-{ after(grammarAccess.getDataClassAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleAttribute
-entryRuleAttribute
-:
-{ before(grammarAccess.getAttributeRule()); }
- ruleAttribute
-{ after(grammarAccess.getAttributeRule()); }
- EOF
-;
-
-// Rule Attribute
-ruleAttribute
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getAttributeAccess().getGroup()); }
-(rule__Attribute__Group__0)
-{ after(grammarAccess.getAttributeAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleOperation
-entryRuleOperation
-:
-{ before(grammarAccess.getOperationRule()); }
- ruleOperation
-{ after(grammarAccess.getOperationRule()); }
- EOF
-;
-
-// Rule Operation
-ruleOperation
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getOperationAccess().getGroup()); }
-(rule__Operation__Group__0)
-{ after(grammarAccess.getOperationAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleProtocolClass
-entryRuleProtocolClass
-:
-{ before(grammarAccess.getProtocolClassRule()); }
- ruleProtocolClass
-{ after(grammarAccess.getProtocolClassRule()); }
- EOF
-;
-
-// Rule ProtocolClass
-ruleProtocolClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getProtocolClassAccess().getGroup()); }
-(rule__ProtocolClass__Group__0)
-{ after(grammarAccess.getProtocolClassAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleMessage
-entryRuleMessage
-:
-{ before(grammarAccess.getMessageRule()); }
- ruleMessage
-{ after(grammarAccess.getMessageRule()); }
- EOF
-;
-
-// Rule Message
-ruleMessage
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getMessageAccess().getGroup()); }
-(rule__Message__Group__0)
-{ after(grammarAccess.getMessageAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRulePortClass
-entryRulePortClass
-:
-{ before(grammarAccess.getPortClassRule()); }
- rulePortClass
-{ after(grammarAccess.getPortClassRule()); }
- EOF
-;
-
-// Rule PortClass
-rulePortClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getPortClassAccess().getGroup()); }
-(rule__PortClass__Group__0)
-{ after(grammarAccess.getPortClassAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleMessageHandler
-entryRuleMessageHandler
-:
-{ before(grammarAccess.getMessageHandlerRule()); }
- ruleMessageHandler
-{ after(grammarAccess.getMessageHandlerRule()); }
- EOF
-;
-
-// Rule MessageHandler
-ruleMessageHandler
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getMessageHandlerAccess().getGroup()); }
-(rule__MessageHandler__Group__0)
-{ after(grammarAccess.getMessageHandlerAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleProtocolSemantics
-entryRuleProtocolSemantics
-:
-{ before(grammarAccess.getProtocolSemanticsRule()); }
- ruleProtocolSemantics
-{ after(grammarAccess.getProtocolSemanticsRule()); }
- EOF
-;
-
-// Rule ProtocolSemantics
-ruleProtocolSemantics
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getGroup()); }
-(rule__ProtocolSemantics__Group__0)
-{ after(grammarAccess.getProtocolSemanticsAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSemanticsRule
-entryRuleSemanticsRule
-:
-{ before(grammarAccess.getSemanticsRuleRule()); }
- ruleSemanticsRule
-{ after(grammarAccess.getSemanticsRuleRule()); }
- EOF
-;
-
-// Rule SemanticsRule
-ruleSemanticsRule
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSemanticsRuleAccess().getAlternatives()); }
-(rule__SemanticsRule__Alternatives)
-{ after(grammarAccess.getSemanticsRuleAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSemanticsInRule
-entryRuleSemanticsInRule
-:
-{ before(grammarAccess.getSemanticsInRuleRule()); }
- ruleSemanticsInRule
-{ after(grammarAccess.getSemanticsInRuleRule()); }
- EOF
-;
-
-// Rule SemanticsInRule
-ruleSemanticsInRule
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getGroup()); }
-(rule__SemanticsInRule__Group__0)
-{ after(grammarAccess.getSemanticsInRuleAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSemanticsOutRule
-entryRuleSemanticsOutRule
-:
-{ before(grammarAccess.getSemanticsOutRuleRule()); }
- ruleSemanticsOutRule
-{ after(grammarAccess.getSemanticsOutRuleRule()); }
- EOF
-;
-
-// Rule SemanticsOutRule
-ruleSemanticsOutRule
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getGroup()); }
-(rule__SemanticsOutRule__Group__0)
-{ after(grammarAccess.getSemanticsOutRuleAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleActorClass
-entryRuleActorClass
-:
-{ before(grammarAccess.getActorClassRule()); }
- ruleActorClass
-{ after(grammarAccess.getActorClassRule()); }
- EOF
-;
-
-// Rule ActorClass
-ruleActorClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getActorClassAccess().getGroup()); }
-(rule__ActorClass__Group__0)
-{ after(grammarAccess.getActorClassAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-// Entry rule entryRulePort
-entryRulePort
-:
-{ before(grammarAccess.getPortRule()); }
- rulePort
-{ after(grammarAccess.getPortRule()); }
- EOF
-;
-
-// Rule Port
-rulePort
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getPortAccess().getGroup()); }
-(rule__Port__Group__0)
-{ after(grammarAccess.getPortAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleExternalPort
-entryRuleExternalPort
-:
-{ before(grammarAccess.getExternalPortRule()); }
- ruleExternalPort
-{ after(grammarAccess.getExternalPortRule()); }
- EOF
-;
-
-// Rule ExternalPort
-ruleExternalPort
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getExternalPortAccess().getGroup()); }
-(rule__ExternalPort__Group__0)
-{ after(grammarAccess.getExternalPortAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSAPRef
-entryRuleSAPRef
-:
-{ before(grammarAccess.getSAPRefRule()); }
- ruleSAPRef
-{ after(grammarAccess.getSAPRefRule()); }
- EOF
-;
-
-// Rule SAPRef
-ruleSAPRef
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSAPRefAccess().getGroup()); }
-(rule__SAPRef__Group__0)
-{ after(grammarAccess.getSAPRefAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSPPRef
-entryRuleSPPRef
-:
-{ before(grammarAccess.getSPPRefRule()); }
- ruleSPPRef
-{ after(grammarAccess.getSPPRefRule()); }
- EOF
-;
-
-// Rule SPPRef
-ruleSPPRef
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSPPRefAccess().getGroup()); }
-(rule__SPPRef__Group__0)
-{ after(grammarAccess.getSPPRefAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleServiceImplementation
-entryRuleServiceImplementation
-:
-{ before(grammarAccess.getServiceImplementationRule()); }
- ruleServiceImplementation
-{ after(grammarAccess.getServiceImplementationRule()); }
- EOF
-;
-
-// Rule ServiceImplementation
-ruleServiceImplementation
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getServiceImplementationAccess().getGroup()); }
-(rule__ServiceImplementation__Group__0)
-{ after(grammarAccess.getServiceImplementationAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleLogicalSystem
-entryRuleLogicalSystem
-:
-{ before(grammarAccess.getLogicalSystemRule()); }
- ruleLogicalSystem
-{ after(grammarAccess.getLogicalSystemRule()); }
- EOF
-;
-
-// Rule LogicalSystem
-ruleLogicalSystem
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getLogicalSystemAccess().getGroup()); }
-(rule__LogicalSystem__Group__0)
-{ after(grammarAccess.getLogicalSystemAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-// Entry rule entryRuleSubSystemRef
-entryRuleSubSystemRef
-:
-{ before(grammarAccess.getSubSystemRefRule()); }
- ruleSubSystemRef
-{ after(grammarAccess.getSubSystemRefRule()); }
- EOF
-;
-
-// Rule SubSystemRef
-ruleSubSystemRef
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSubSystemRefAccess().getGroup()); }
-(rule__SubSystemRef__Group__0)
-{ after(grammarAccess.getSubSystemRefAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSubSystemClass
-entryRuleSubSystemClass
-:
-{ before(grammarAccess.getSubSystemClassRule()); }
- ruleSubSystemClass
-{ after(grammarAccess.getSubSystemClassRule()); }
- EOF
-;
-
-// Rule SubSystemClass
-ruleSubSystemClass
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSubSystemClassAccess().getGroup()); }
-(rule__SubSystemClass__Group__0)
-{ after(grammarAccess.getSubSystemClassAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleLogicalThread
-entryRuleLogicalThread
-:
-{ before(grammarAccess.getLogicalThreadRule()); }
- ruleLogicalThread
-{ after(grammarAccess.getLogicalThreadRule()); }
- EOF
-;
-
-// Rule LogicalThread
-ruleLogicalThread
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getLogicalThreadAccess().getGroup()); }
-(rule__LogicalThread__Group__0)
-{ after(grammarAccess.getLogicalThreadAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleActorInstancePath
-entryRuleActorInstancePath
-:
-{ before(grammarAccess.getActorInstancePathRule()); }
- ruleActorInstancePath
-{ after(grammarAccess.getActorInstancePathRule()); }
- EOF
-;
-
-// Rule ActorInstancePath
-ruleActorInstancePath
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getActorInstancePathAccess().getGroup()); }
-(rule__ActorInstancePath__Group__0)
-{ after(grammarAccess.getActorInstancePathAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleBinding
-entryRuleBinding
-:
-{ before(grammarAccess.getBindingRule()); }
- ruleBinding
-{ after(grammarAccess.getBindingRule()); }
- EOF
-;
-
-// Rule Binding
-ruleBinding
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getBindingAccess().getGroup()); }
-(rule__Binding__Group__0)
-{ after(grammarAccess.getBindingAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleBindingEndPoint
-entryRuleBindingEndPoint
-:
-{ before(grammarAccess.getBindingEndPointRule()); }
- ruleBindingEndPoint
-{ after(grammarAccess.getBindingEndPointRule()); }
- EOF
-;
-
-// Rule BindingEndPoint
-ruleBindingEndPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getBindingEndPointAccess().getGroup()); }
-(rule__BindingEndPoint__Group__0)
-{ after(grammarAccess.getBindingEndPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleLayerConnection
-entryRuleLayerConnection
-:
-{ before(grammarAccess.getLayerConnectionRule()); }
- ruleLayerConnection
-{ after(grammarAccess.getLayerConnectionRule()); }
- EOF
-;
-
-// Rule LayerConnection
-ruleLayerConnection
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getLayerConnectionAccess().getGroup()); }
-(rule__LayerConnection__Group__0)
-{ after(grammarAccess.getLayerConnectionAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSAPoint
-entryRuleSAPoint
-:
-{ before(grammarAccess.getSAPointRule()); }
- ruleSAPoint
-{ after(grammarAccess.getSAPointRule()); }
- EOF
-;
-
-// Rule SAPoint
-ruleSAPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSAPointAccess().getAlternatives()); }
-(rule__SAPoint__Alternatives)
-{ after(grammarAccess.getSAPointAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRefSAPoint
-entryRuleRefSAPoint
-:
-{ before(grammarAccess.getRefSAPointRule()); }
- ruleRefSAPoint
-{ after(grammarAccess.getRefSAPointRule()); }
- EOF
-;
-
-// Rule RefSAPoint
-ruleRefSAPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getRefSAPointAccess().getGroup()); }
-(rule__RefSAPoint__Group__0)
-{ after(grammarAccess.getRefSAPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRelaySAPoint
-entryRuleRelaySAPoint
-:
-{ before(grammarAccess.getRelaySAPointRule()); }
- ruleRelaySAPoint
-{ after(grammarAccess.getRelaySAPointRule()); }
- EOF
-;
-
-// Rule RelaySAPoint
-ruleRelaySAPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getRelaySAPointAccess().getGroup()); }
-(rule__RelaySAPoint__Group__0)
-{ after(grammarAccess.getRelaySAPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSPPoint
-entryRuleSPPoint
-:
-{ before(grammarAccess.getSPPointRule()); }
- ruleSPPoint
-{ after(grammarAccess.getSPPointRule()); }
- EOF
-;
-
-// Rule SPPoint
-ruleSPPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSPPointAccess().getGroup()); }
-(rule__SPPoint__Group__0)
-{ after(grammarAccess.getSPPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleActorRef
-entryRuleActorRef
-:
-{ before(grammarAccess.getActorRefRule()); }
- ruleActorRef
-{ after(grammarAccess.getActorRefRule()); }
- EOF
-;
-
-// Rule ActorRef
-ruleActorRef
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getActorRefAccess().getGroup()); }
-(rule__ActorRef__Group__0)
-{ after(grammarAccess.getActorRefAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleStateGraphNode
-entryRuleStateGraphNode
-:
-{ before(grammarAccess.getStateGraphNodeRule()); }
- ruleStateGraphNode
-{ after(grammarAccess.getStateGraphNodeRule()); }
- EOF
-;
-
-// Rule StateGraphNode
-ruleStateGraphNode
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getStateGraphNodeAccess().getAlternatives()); }
-(rule__StateGraphNode__Alternatives)
-{ after(grammarAccess.getStateGraphNodeAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-// Entry rule entryRuleState
-entryRuleState
-:
-{ before(grammarAccess.getStateRule()); }
- ruleState
-{ after(grammarAccess.getStateRule()); }
- EOF
-;
-
-// Rule State
-ruleState
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getStateAccess().getAlternatives()); }
-(rule__State__Alternatives)
-{ after(grammarAccess.getStateAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleStateGraph
-entryRuleStateGraph
-:
-{ before(grammarAccess.getStateGraphRule()); }
- ruleStateGraph
-{ after(grammarAccess.getStateGraphRule()); }
- EOF
-;
-
-// Rule StateGraph
-ruleStateGraph
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getStateGraphAccess().getGroup()); }
-(rule__StateGraph__Group__0)
-{ after(grammarAccess.getStateGraphAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleStateMachine
-entryRuleStateMachine
-:
-{ before(grammarAccess.getStateMachineRule()); }
- ruleStateMachine
-{ after(grammarAccess.getStateMachineRule()); }
- EOF
-;
-
-// Rule StateMachine
-ruleStateMachine
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getStateMachineAccess().getGroup()); }
-(rule__StateMachine__Group__0)
-{ after(grammarAccess.getStateMachineAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleBaseState
-entryRuleBaseState
-:
-{ before(grammarAccess.getBaseStateRule()); }
- ruleBaseState
-{ after(grammarAccess.getBaseStateRule()); }
- EOF
-;
-
-// Rule BaseState
-ruleBaseState
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getBaseStateAccess().getGroup()); }
-(rule__BaseState__Group__0)
-{ after(grammarAccess.getBaseStateAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRefinedState
-entryRuleRefinedState
-:
-{ before(grammarAccess.getRefinedStateRule()); }
- ruleRefinedState
-{ after(grammarAccess.getRefinedStateRule()); }
- EOF
-;
-
-// Rule RefinedState
-ruleRefinedState
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getRefinedStateAccess().getGroup()); }
-(rule__RefinedState__Group__0)
-{ after(grammarAccess.getRefinedStateAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleDetailCode
-entryRuleDetailCode
-:
-{ before(grammarAccess.getDetailCodeRule()); }
- ruleDetailCode
-{ after(grammarAccess.getDetailCodeRule()); }
- EOF
-;
-
-// Rule DetailCode
-ruleDetailCode
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getDetailCodeAccess().getGroup()); }
-(rule__DetailCode__Group__0)
-{ after(grammarAccess.getDetailCodeAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTrPoint
-entryRuleTrPoint
-:
-{ before(grammarAccess.getTrPointRule()); }
- ruleTrPoint
-{ after(grammarAccess.getTrPointRule()); }
- EOF
-;
-
-// Rule TrPoint
-ruleTrPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTrPointAccess().getAlternatives()); }
-(rule__TrPoint__Alternatives)
-{ after(grammarAccess.getTrPointAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTransitionPoint
-entryRuleTransitionPoint
-:
-{ before(grammarAccess.getTransitionPointRule()); }
- ruleTransitionPoint
-{ after(grammarAccess.getTransitionPointRule()); }
- EOF
-;
-
-// Rule TransitionPoint
-ruleTransitionPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTransitionPointAccess().getGroup()); }
-(rule__TransitionPoint__Group__0)
-{ after(grammarAccess.getTransitionPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleEntryPoint
-entryRuleEntryPoint
-:
-{ before(grammarAccess.getEntryPointRule()); }
- ruleEntryPoint
-{ after(grammarAccess.getEntryPointRule()); }
- EOF
-;
-
-// Rule EntryPoint
-ruleEntryPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getEntryPointAccess().getGroup()); }
-(rule__EntryPoint__Group__0)
-{ after(grammarAccess.getEntryPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleExitPoint
-entryRuleExitPoint
-:
-{ before(grammarAccess.getExitPointRule()); }
- ruleExitPoint
-{ after(grammarAccess.getExitPointRule()); }
- EOF
-;
-
-// Rule ExitPoint
-ruleExitPoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getExitPointAccess().getGroup()); }
-(rule__ExitPoint__Group__0)
-{ after(grammarAccess.getExitPointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleChoicePoint
-entryRuleChoicePoint
-:
-{ before(grammarAccess.getChoicePointRule()); }
- ruleChoicePoint
-{ after(grammarAccess.getChoicePointRule()); }
- EOF
-;
-
-// Rule ChoicePoint
-ruleChoicePoint
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getChoicePointAccess().getGroup()); }
-(rule__ChoicePoint__Group__0)
-{ after(grammarAccess.getChoicePointAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTransition
-entryRuleTransition
-:
-{ before(grammarAccess.getTransitionRule()); }
- ruleTransition
-{ after(grammarAccess.getTransitionRule()); }
- EOF
-;
-
-// Rule Transition
-ruleTransition
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTransitionAccess().getAlternatives()); }
-(rule__Transition__Alternatives)
-{ after(grammarAccess.getTransitionAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleNonInitialTransition
-entryRuleNonInitialTransition
-:
-{ before(grammarAccess.getNonInitialTransitionRule()); }
- ruleNonInitialTransition
-{ after(grammarAccess.getNonInitialTransitionRule()); }
- EOF
-;
-
-// Rule NonInitialTransition
-ruleNonInitialTransition
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getNonInitialTransitionAccess().getAlternatives()); }
-(rule__NonInitialTransition__Alternatives)
-{ after(grammarAccess.getNonInitialTransitionAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleInitialTransition
-entryRuleInitialTransition
-:
-{ before(grammarAccess.getInitialTransitionRule()); }
- ruleInitialTransition
-{ after(grammarAccess.getInitialTransitionRule()); }
- EOF
-;
-
-// Rule InitialTransition
-ruleInitialTransition
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getInitialTransitionAccess().getGroup()); }
-(rule__InitialTransition__Group__0)
-{ after(grammarAccess.getInitialTransitionAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleContinuationTransition
-entryRuleContinuationTransition
-:
-{ before(grammarAccess.getContinuationTransitionRule()); }
- ruleContinuationTransition
-{ after(grammarAccess.getContinuationTransitionRule()); }
- EOF
-;
-
-// Rule ContinuationTransition
-ruleContinuationTransition
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getGroup()); }
-(rule__ContinuationTransition__Group__0)
-{ after(grammarAccess.getContinuationTransitionAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTriggeredTransition
-entryRuleTriggeredTransition
-:
-{ before(grammarAccess.getTriggeredTransitionRule()); }
- ruleTriggeredTransition
-{ after(grammarAccess.getTriggeredTransitionRule()); }
- EOF
-;
-
-// Rule TriggeredTransition
-ruleTriggeredTransition
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getGroup()); }
-(rule__TriggeredTransition__Group__0)
-{ after(grammarAccess.getTriggeredTransitionAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleCPBranchTransition
-entryRuleCPBranchTransition
-:
-{ before(grammarAccess.getCPBranchTransitionRule()); }
- ruleCPBranchTransition
-{ after(grammarAccess.getCPBranchTransitionRule()); }
- EOF
-;
-
-// Rule CPBranchTransition
-ruleCPBranchTransition
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getGroup()); }
-(rule__CPBranchTransition__Group__0)
-{ after(grammarAccess.getCPBranchTransitionAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTransitionTerminal
-entryRuleTransitionTerminal
-:
-{ before(grammarAccess.getTransitionTerminalRule()); }
- ruleTransitionTerminal
-{ after(grammarAccess.getTransitionTerminalRule()); }
- EOF
-;
-
-// Rule TransitionTerminal
-ruleTransitionTerminal
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTransitionTerminalAccess().getAlternatives()); }
-(rule__TransitionTerminal__Alternatives)
-{ after(grammarAccess.getTransitionTerminalAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleStateTerminal
-entryRuleStateTerminal
-:
-{ before(grammarAccess.getStateTerminalRule()); }
- ruleStateTerminal
-{ after(grammarAccess.getStateTerminalRule()); }
- EOF
-;
-
-// Rule StateTerminal
-ruleStateTerminal
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getStateTerminalAccess().getStateAssignment()); }
-(rule__StateTerminal__StateAssignment)
-{ after(grammarAccess.getStateTerminalAccess().getStateAssignment()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTrPointTerminal
-entryRuleTrPointTerminal
-:
-{ before(grammarAccess.getTrPointTerminalRule()); }
- ruleTrPointTerminal
-{ after(grammarAccess.getTrPointTerminalRule()); }
- EOF
-;
-
-// Rule TrPointTerminal
-ruleTrPointTerminal
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTrPointTerminalAccess().getGroup()); }
-(rule__TrPointTerminal__Group__0)
-{ after(grammarAccess.getTrPointTerminalAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSubStateTrPointTerminal
-entryRuleSubStateTrPointTerminal
-:
-{ before(grammarAccess.getSubStateTrPointTerminalRule()); }
- ruleSubStateTrPointTerminal
-{ after(grammarAccess.getSubStateTrPointTerminalRule()); }
- EOF
-;
-
-// Rule SubStateTrPointTerminal
-ruleSubStateTrPointTerminal
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getGroup()); }
-(rule__SubStateTrPointTerminal__Group__0)
-{ after(grammarAccess.getSubStateTrPointTerminalAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleChoicepointTerminal
-entryRuleChoicepointTerminal
-:
-{ before(grammarAccess.getChoicepointTerminalRule()); }
- ruleChoicepointTerminal
-{ after(grammarAccess.getChoicepointTerminalRule()); }
- EOF
-;
-
-// Rule ChoicepointTerminal
-ruleChoicepointTerminal
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getChoicepointTerminalAccess().getGroup()); }
-(rule__ChoicepointTerminal__Group__0)
-{ after(grammarAccess.getChoicepointTerminalAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleTrigger
-entryRuleTrigger
-:
-{ before(grammarAccess.getTriggerRule()); }
- ruleTrigger
-{ after(grammarAccess.getTriggerRule()); }
- EOF
-;
-
-// Rule Trigger
-ruleTrigger
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getTriggerAccess().getGroup()); }
-(rule__Trigger__Group__0)
-{ after(grammarAccess.getTriggerAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleMessageFromIf
-entryRuleMessageFromIf
-:
-{ before(grammarAccess.getMessageFromIfRule()); }
- ruleMessageFromIf
-{ after(grammarAccess.getMessageFromIfRule()); }
- EOF
-;
-
-// Rule MessageFromIf
-ruleMessageFromIf
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getMessageFromIfAccess().getGroup()); }
-(rule__MessageFromIf__Group__0)
-{ after(grammarAccess.getMessageFromIfAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleGuard
-entryRuleGuard
-:
-{ before(grammarAccess.getGuardRule()); }
- ruleGuard
-{ after(grammarAccess.getGuardRule()); }
- EOF
-;
-
-// Rule Guard
-ruleGuard
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getGuardAccess().getGroup()); }
-(rule__Guard__Group__0)
-{ after(grammarAccess.getGuardAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleImport
-entryRuleImport
-:
-{ before(grammarAccess.getImportRule()); }
- ruleImport
-{ after(grammarAccess.getImportRule()); }
- EOF
-;
-
-// Rule Import
-ruleImport
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getImportAccess().getGroup()); }
-(rule__Import__Group__0)
-{ after(grammarAccess.getImportAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleImportedFQN
-entryRuleImportedFQN
-:
-{ before(grammarAccess.getImportedFQNRule()); }
- ruleImportedFQN
-{ after(grammarAccess.getImportedFQNRule()); }
- EOF
-;
-
-// Rule ImportedFQN
-ruleImportedFQN
- @init {
- int stackSize = keepStackSize();
- }
- :
-(
-{ before(grammarAccess.getImportedFQNAccess().getGroup()); }
-(rule__ImportedFQN__Group__0)
-{ after(grammarAccess.getImportedFQNAccess().getGroup()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-// 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);
-}
-
-
-
-
-// Rule PrimitiveType
-rulePrimitiveType
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPrimitiveTypeAccess().getAlternatives()); }
-(rule__PrimitiveType__Alternatives)
-{ after(grammarAccess.getPrimitiveTypeAccess().getAlternatives()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-rule__RoomModel__Alternatives_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getDataClassesAssignment_4_0()); }
-(rule__RoomModel__DataClassesAssignment_4_0)
-{ after(grammarAccess.getRoomModelAccess().getDataClassesAssignment_4_0()); }
-)
-
- |(
-{ before(grammarAccess.getRoomModelAccess().getProtocolClassesAssignment_4_1()); }
-(rule__RoomModel__ProtocolClassesAssignment_4_1)
-{ after(grammarAccess.getRoomModelAccess().getProtocolClassesAssignment_4_1()); }
-)
-
- |(
-{ before(grammarAccess.getRoomModelAccess().getActorClassesAssignment_4_2()); }
-(rule__RoomModel__ActorClassesAssignment_4_2)
-{ after(grammarAccess.getRoomModelAccess().getActorClassesAssignment_4_2()); }
-)
-
- |(
-{ before(grammarAccess.getRoomModelAccess().getSubSystemClassesAssignment_4_3()); }
-(rule__RoomModel__SubSystemClassesAssignment_4_3)
-{ after(grammarAccess.getRoomModelAccess().getSubSystemClassesAssignment_4_3()); }
-)
-
- |(
-{ before(grammarAccess.getRoomModelAccess().getSystemsAssignment_4_4()); }
-(rule__RoomModel__SystemsAssignment_4_4)
-{ after(grammarAccess.getRoomModelAccess().getSystemsAssignment_4_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__StructureClass__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStructureClassAccess().getActorContainerClassParserRuleCall_0()); }
- ruleActorContainerClass
-{ after(grammarAccess.getStructureClassAccess().getActorContainerClassParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getStructureClassAccess().getLogicalSystemParserRuleCall_1()); }
- ruleLogicalSystem
-{ after(grammarAccess.getStructureClassAccess().getLogicalSystemParserRuleCall_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorContainerClass__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorContainerClassAccess().getActorClassParserRuleCall_0()); }
- ruleActorClass
-{ after(grammarAccess.getActorContainerClassAccess().getActorClassParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getActorContainerClassAccess().getSubSystemClassParserRuleCall_1()); }
- ruleSubSystemClass
-{ after(grammarAccess.getActorContainerClassAccess().getSubSystemClassParserRuleCall_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Type__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypeAccess().getPrimAssignment_0()); }
-(rule__Type__PrimAssignment_0)
-{ after(grammarAccess.getTypeAccess().getPrimAssignment_0()); }
-)
-
- |(
-{ before(grammarAccess.getTypeAccess().getTypeAssignment_1()); }
-(rule__Type__TypeAssignment_1)
-{ after(grammarAccess.getTypeAccess().getTypeAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeType__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypeAccess().getPrimAssignment_0()); }
-(rule__FreeType__PrimAssignment_0)
-{ after(grammarAccess.getFreeTypeAccess().getPrimAssignment_0()); }
-)
-
- |(
-{ before(grammarAccess.getFreeTypeAccess().getTypeAssignment_1()); }
-(rule__FreeType__TypeAssignment_1)
-{ after(grammarAccess.getFreeTypeAccess().getTypeAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Alternatives_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getAttributesAssignment_2_0()); }
-(rule__PortClass__AttributesAssignment_2_0)
-{ after(grammarAccess.getPortClassAccess().getAttributesAssignment_2_0()); }
-)
-
- |(
-{ before(grammarAccess.getPortClassAccess().getOperationsAssignment_2_1()); }
-(rule__PortClass__OperationsAssignment_2_1)
-{ after(grammarAccess.getPortClassAccess().getOperationsAssignment_2_1()); }
-)
-
- |(
-{ before(grammarAccess.getPortClassAccess().getMsgHandlersAssignment_2_2()); }
-(rule__PortClass__MsgHandlersAssignment_2_2)
-{ after(grammarAccess.getPortClassAccess().getMsgHandlersAssignment_2_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsRule__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsRuleAccess().getSemanticsInRuleParserRuleCall_0()); }
- ruleSemanticsInRule
-{ after(grammarAccess.getSemanticsRuleAccess().getSemanticsInRuleParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getSemanticsRuleAccess().getSemanticsOutRuleParserRuleCall_1()); }
- ruleSemanticsOutRule
-{ after(grammarAccess.getSemanticsRuleAccess().getSemanticsOutRuleParserRuleCall_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Alternatives_6_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getIntPortsAssignment_6_4_0()); }
-(rule__ActorClass__IntPortsAssignment_6_4_0)
-{ after(grammarAccess.getActorClassAccess().getIntPortsAssignment_6_4_0()); }
-)
-
- |(
-{ before(grammarAccess.getActorClassAccess().getExtPortsAssignment_6_4_1()); }
-(rule__ActorClass__ExtPortsAssignment_6_4_1)
-{ after(grammarAccess.getActorClassAccess().getExtPortsAssignment_6_4_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-rule__SAPoint__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPointAccess().getRefSAPointParserRuleCall_0()); }
- ruleRefSAPoint
-{ after(grammarAccess.getSAPointAccess().getRefSAPointParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getSAPointAccess().getRelaySAPointParserRuleCall_1()); }
- ruleRelaySAPoint
-{ after(grammarAccess.getSAPointAccess().getRelaySAPointParserRuleCall_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraphNode__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphNodeAccess().getStateParserRuleCall_0()); }
- ruleState
-{ after(grammarAccess.getStateGraphNodeAccess().getStateParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getStateGraphNodeAccess().getChoicePointParserRuleCall_1()); }
- ruleChoicePoint
-{ after(grammarAccess.getStateGraphNodeAccess().getChoicePointParserRuleCall_1()); }
-)
-
- |(
-{ before(grammarAccess.getStateGraphNodeAccess().getTrPointParserRuleCall_2()); }
- ruleTrPoint
-{ after(grammarAccess.getStateGraphNodeAccess().getTrPointParserRuleCall_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__State__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateAccess().getBaseStateParserRuleCall_0()); }
- ruleBaseState
-{ after(grammarAccess.getStateAccess().getBaseStateParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getStateAccess().getRefinedStateParserRuleCall_1()); }
- ruleRefinedState
-{ after(grammarAccess.getStateAccess().getRefinedStateParserRuleCall_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__Alternatives_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getStatesAssignment_1_0()); }
-(rule__StateGraph__StatesAssignment_1_0)
-{ after(grammarAccess.getStateGraphAccess().getStatesAssignment_1_0()); }
-)
-
- |(
-{ before(grammarAccess.getStateGraphAccess().getTrPointsAssignment_1_1()); }
-(rule__StateGraph__TrPointsAssignment_1_1)
-{ after(grammarAccess.getStateGraphAccess().getTrPointsAssignment_1_1()); }
-)
-
- |(
-{ before(grammarAccess.getStateGraphAccess().getChPointsAssignment_1_2()); }
-(rule__StateGraph__ChPointsAssignment_1_2)
-{ after(grammarAccess.getStateGraphAccess().getChPointsAssignment_1_2()); }
-)
-
- |(
-{ before(grammarAccess.getStateGraphAccess().getTransitionsAssignment_1_3()); }
-(rule__StateGraph__TransitionsAssignment_1_3)
-{ after(grammarAccess.getStateGraphAccess().getTransitionsAssignment_1_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__Alternatives_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getStatesAssignment_2_0()); }
-(rule__StateMachine__StatesAssignment_2_0)
-{ after(grammarAccess.getStateMachineAccess().getStatesAssignment_2_0()); }
-)
-
- |(
-{ before(grammarAccess.getStateMachineAccess().getTrPointsAssignment_2_1()); }
-(rule__StateMachine__TrPointsAssignment_2_1)
-{ after(grammarAccess.getStateMachineAccess().getTrPointsAssignment_2_1()); }
-)
-
- |(
-{ before(grammarAccess.getStateMachineAccess().getChPointsAssignment_2_2()); }
-(rule__StateMachine__ChPointsAssignment_2_2)
-{ after(grammarAccess.getStateMachineAccess().getChPointsAssignment_2_2()); }
-)
-
- |(
-{ before(grammarAccess.getStateMachineAccess().getTransitionsAssignment_2_3()); }
-(rule__StateMachine__TransitionsAssignment_2_3)
-{ after(grammarAccess.getStateMachineAccess().getTransitionsAssignment_2_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TrPoint__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTrPointAccess().getTransitionPointParserRuleCall_0()); }
- ruleTransitionPoint
-{ after(grammarAccess.getTrPointAccess().getTransitionPointParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getTrPointAccess().getEntryPointParserRuleCall_1()); }
- ruleEntryPoint
-{ after(grammarAccess.getTrPointAccess().getEntryPointParserRuleCall_1()); }
-)
-
- |(
-{ before(grammarAccess.getTrPointAccess().getExitPointParserRuleCall_2()); }
- ruleExitPoint
-{ after(grammarAccess.getTrPointAccess().getExitPointParserRuleCall_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Transition__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionAccess().getInitialTransitionParserRuleCall_0()); }
- ruleInitialTransition
-{ after(grammarAccess.getTransitionAccess().getInitialTransitionParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getTransitionAccess().getNonInitialTransitionParserRuleCall_1()); }
- ruleNonInitialTransition
-{ after(grammarAccess.getTransitionAccess().getNonInitialTransitionParserRuleCall_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__NonInitialTransition__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getNonInitialTransitionAccess().getTriggeredTransitionParserRuleCall_0()); }
- ruleTriggeredTransition
-{ after(grammarAccess.getNonInitialTransitionAccess().getTriggeredTransitionParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getNonInitialTransitionAccess().getContinuationTransitionParserRuleCall_1()); }
- ruleContinuationTransition
-{ after(grammarAccess.getNonInitialTransitionAccess().getContinuationTransitionParserRuleCall_1()); }
-)
-
- |(
-{ before(grammarAccess.getNonInitialTransitionAccess().getCPBranchTransitionParserRuleCall_2()); }
- ruleCPBranchTransition
-{ after(grammarAccess.getNonInitialTransitionAccess().getCPBranchTransitionParserRuleCall_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TransitionTerminal__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionTerminalAccess().getStateTerminalParserRuleCall_0()); }
- ruleStateTerminal
-{ after(grammarAccess.getTransitionTerminalAccess().getStateTerminalParserRuleCall_0()); }
-)
-
- |(
-{ before(grammarAccess.getTransitionTerminalAccess().getTrPointTerminalParserRuleCall_1()); }
- ruleTrPointTerminal
-{ after(grammarAccess.getTransitionTerminalAccess().getTrPointTerminalParserRuleCall_1()); }
-)
-
- |(
-{ before(grammarAccess.getTransitionTerminalAccess().getSubStateTrPointTerminalParserRuleCall_2()); }
- ruleSubStateTrPointTerminal
-{ after(grammarAccess.getTransitionTerminalAccess().getSubStateTrPointTerminalParserRuleCall_2()); }
-)
-
- |(
-{ before(grammarAccess.getTransitionTerminalAccess().getChoicepointTerminalParserRuleCall_3()); }
- ruleChoicepointTerminal
-{ after(grammarAccess.getTransitionTerminalAccess().getChoicepointTerminalParserRuleCall_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PrimitiveType__Alternatives
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0()); }
-( 'void'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1()); }
-( 'int8'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2()); }
-( 'int16'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3()); }
-( 'int32'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4()); }
-( 'uint8'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5()); }
-( 'uint16'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6()); }
-( 'uint32'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7()); }
-( 'float32'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8()); }
-( 'float64'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9()); }
-( 'boolean'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10()); }
-( 'string'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10()); }
-)
-
- |(
-{ before(grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11()); }
-( 'char'
-)
-{ after(grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-rule__RoomModel__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RoomModel__Group__0__Impl
- rule__RoomModel__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getRoomModelKeyword_0()); }
-
- 'RoomModel'
-
-{ after(grammarAccess.getRoomModelAccess().getRoomModelKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RoomModel__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RoomModel__Group__1__Impl
- rule__RoomModel__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getNameAssignment_1()); }
-(rule__RoomModel__NameAssignment_1)
-{ after(grammarAccess.getRoomModelAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RoomModel__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RoomModel__Group__2__Impl
- rule__RoomModel__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getLeftCurlyBracketKeyword_2()); }
-
- '{'
-
-{ after(grammarAccess.getRoomModelAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RoomModel__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RoomModel__Group__3__Impl
- rule__RoomModel__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getImportsAssignment_3()); }
-(rule__RoomModel__ImportsAssignment_3)*
-{ after(grammarAccess.getRoomModelAccess().getImportsAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RoomModel__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RoomModel__Group__4__Impl
- rule__RoomModel__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
-(rule__RoomModel__Alternatives_4)
-{ after(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
-)
-(
-{ before(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
-(rule__RoomModel__Alternatives_4)*
-{ after(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RoomModel__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RoomModel__Group__5__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getRightCurlyBracketKeyword_5()); }
-
- '}'
-
-{ after(grammarAccess.getRoomModelAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__TypedID__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TypedID__Group__0__Impl
- rule__TypedID__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TypedID__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypedIDAccess().getNameAssignment_0()); }
-(rule__TypedID__NameAssignment_0)
-{ after(grammarAccess.getTypedIDAccess().getNameAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TypedID__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TypedID__Group__1__Impl
- rule__TypedID__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TypedID__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypedIDAccess().getColonKeyword_1()); }
-
- ':'
-
-{ after(grammarAccess.getTypedIDAccess().getColonKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TypedID__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TypedID__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TypedID__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypedIDAccess().getTypeAssignment_2()); }
-(rule__TypedID__TypeAssignment_2)
-{ after(grammarAccess.getTypedIDAccess().getTypeAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__FreeTypedID__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__FreeTypedID__Group__0__Impl
- rule__FreeTypedID__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeTypedID__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypedIDAccess().getNameAssignment_0()); }
-(rule__FreeTypedID__NameAssignment_0)
-{ after(grammarAccess.getFreeTypedIDAccess().getNameAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__FreeTypedID__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__FreeTypedID__Group__1__Impl
- rule__FreeTypedID__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeTypedID__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypedIDAccess().getColonKeyword_1()); }
-
- ':'
-
-{ after(grammarAccess.getFreeTypedIDAccess().getColonKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__FreeTypedID__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__FreeTypedID__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeTypedID__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypedIDAccess().getTypeAssignment_2()); }
-(rule__FreeTypedID__TypeAssignment_2)
-{ after(grammarAccess.getFreeTypedIDAccess().getTypeAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__DataClass__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__0__Impl
- rule__DataClass__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getDataClassKeyword_0()); }
-
- 'DataClass'
-
-{ after(grammarAccess.getDataClassAccess().getDataClassKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__1__Impl
- rule__DataClass__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getNameAssignment_1()); }
-(rule__DataClass__NameAssignment_1)
-{ after(grammarAccess.getDataClassAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__2__Impl
- rule__DataClass__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getGroup_2()); }
-(rule__DataClass__Group_2__0)?
-{ after(grammarAccess.getDataClassAccess().getGroup_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__3__Impl
- rule__DataClass__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getLeftCurlyBracketKeyword_3()); }
-
- '{'
-
-{ after(grammarAccess.getDataClassAccess().getLeftCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__4__Impl
- rule__DataClass__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getImportsAssignment_4()); }
-(rule__DataClass__ImportsAssignment_4)*
-{ after(grammarAccess.getDataClassAccess().getImportsAssignment_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__5__Impl
- rule__DataClass__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
-(rule__DataClass__AttributesAssignment_5)
-{ after(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
-)
-(
-{ before(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
-(rule__DataClass__AttributesAssignment_5)*
-{ after(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__6__Impl
- rule__DataClass__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getOperationsAssignment_6()); }
-(rule__DataClass__OperationsAssignment_6)*
-{ after(grammarAccess.getDataClassAccess().getOperationsAssignment_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group__7__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getRightCurlyBracketKeyword_7()); }
-
- '}'
-
-{ after(grammarAccess.getDataClassAccess().getRightCurlyBracketKeyword_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__DataClass__Group_2__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group_2__0__Impl
- rule__DataClass__Group_2__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group_2__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getExtendsKeyword_2_0()); }
-
- 'extends'
-
-{ after(grammarAccess.getDataClassAccess().getExtendsKeyword_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DataClass__Group_2__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DataClass__Group_2__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__Group_2__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getBaseAssignment_2_1()); }
-(rule__DataClass__BaseAssignment_2_1)
-{ after(grammarAccess.getDataClassAccess().getBaseAssignment_2_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Attribute__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group__0__Impl
- rule__Attribute__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getAttributeKeyword_0()); }
-
- 'Attribute'
-
-{ after(grammarAccess.getAttributeAccess().getAttributeKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Attribute__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group__1__Impl
- rule__Attribute__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getNameAssignment_1()); }
-(rule__Attribute__NameAssignment_1)
-{ after(grammarAccess.getAttributeAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Attribute__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group__2__Impl
- rule__Attribute__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getGroup_2()); }
-(rule__Attribute__Group_2__0)?
-{ after(grammarAccess.getAttributeAccess().getGroup_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Attribute__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group__3__Impl
- rule__Attribute__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getColonKeyword_3()); }
-
- ':'
-
-{ after(grammarAccess.getAttributeAccess().getColonKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Attribute__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group__4__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getTypeAssignment_4()); }
-(rule__Attribute__TypeAssignment_4)
-{ after(grammarAccess.getAttributeAccess().getTypeAssignment_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Attribute__Group_2__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group_2__0__Impl
- rule__Attribute__Group_2__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group_2__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getLeftSquareBracketKeyword_2_0()); }
-
- '['
-
-{ after(grammarAccess.getAttributeAccess().getLeftSquareBracketKeyword_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Attribute__Group_2__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group_2__1__Impl
- rule__Attribute__Group_2__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group_2__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getSizeAssignment_2_1()); }
-(rule__Attribute__SizeAssignment_2_1)
-{ after(grammarAccess.getAttributeAccess().getSizeAssignment_2_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Attribute__Group_2__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Attribute__Group_2__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__Group_2__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getRightSquareBracketKeyword_2_2()); }
-
- ']'
-
-{ after(grammarAccess.getAttributeAccess().getRightSquareBracketKeyword_2_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__Operation__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__0__Impl
- rule__Operation__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getOperationKeyword_0()); }
-
- 'Operation'
-
-{ after(grammarAccess.getOperationAccess().getOperationKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__1__Impl
- rule__Operation__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getNameAssignment_1()); }
-(rule__Operation__NameAssignment_1)
-{ after(grammarAccess.getOperationAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__2__Impl
- rule__Operation__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getLeftParenthesisKeyword_2()); }
-
- '('
-
-{ after(grammarAccess.getOperationAccess().getLeftParenthesisKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__3__Impl
- rule__Operation__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getGroup_3()); }
-(rule__Operation__Group_3__0)?
-{ after(grammarAccess.getOperationAccess().getGroup_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__4__Impl
- rule__Operation__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getRightParenthesisKeyword_4()); }
-
- ')'
-
-{ after(grammarAccess.getOperationAccess().getRightParenthesisKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__5__Impl
- rule__Operation__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getGroup_5()); }
-(rule__Operation__Group_5__0)?
-{ after(grammarAccess.getOperationAccess().getGroup_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group__6__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getDetailCodeAssignment_6()); }
-(rule__Operation__DetailCodeAssignment_6)
-{ after(grammarAccess.getOperationAccess().getDetailCodeAssignment_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Operation__Group_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group_3__0__Impl
- rule__Operation__Group_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getArgumentsAssignment_3_0()); }
-(rule__Operation__ArgumentsAssignment_3_0)
-{ after(grammarAccess.getOperationAccess().getArgumentsAssignment_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group_3__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getGroup_3_1()); }
-(rule__Operation__Group_3_1__0)*
-{ after(grammarAccess.getOperationAccess().getGroup_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Operation__Group_3_1__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group_3_1__0__Impl
- rule__Operation__Group_3_1__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group_3_1__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getCommaKeyword_3_1_0()); }
-
- ','
-
-{ after(grammarAccess.getOperationAccess().getCommaKeyword_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group_3_1__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group_3_1__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group_3_1__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getArgumentsAssignment_3_1_1()); }
-(rule__Operation__ArgumentsAssignment_3_1_1)
-{ after(grammarAccess.getOperationAccess().getArgumentsAssignment_3_1_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Operation__Group_5__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group_5__0__Impl
- rule__Operation__Group_5__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group_5__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getColonKeyword_5_0()); }
-
- ':'
-
-{ after(grammarAccess.getOperationAccess().getColonKeyword_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Operation__Group_5__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Operation__Group_5__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__Group_5__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getReturntypeAssignment_5_1()); }
-(rule__Operation__ReturntypeAssignment_5_1)
-{ after(grammarAccess.getOperationAccess().getReturntypeAssignment_5_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ProtocolClass__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__0__Impl
- rule__ProtocolClass__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getProtocolClassKeyword_0()); }
-
- 'ProtocolClass'
-
-{ after(grammarAccess.getProtocolClassAccess().getProtocolClassKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__1__Impl
- rule__ProtocolClass__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getNameAssignment_1()); }
-(rule__ProtocolClass__NameAssignment_1)
-{ after(grammarAccess.getProtocolClassAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__2__Impl
- rule__ProtocolClass__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getGroup_2()); }
-(rule__ProtocolClass__Group_2__0)?
-{ after(grammarAccess.getProtocolClassAccess().getGroup_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__3__Impl
- rule__ProtocolClass__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_3()); }
-
- '{'
-
-{ after(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__4__Impl
- rule__ProtocolClass__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getGroup_4()); }
-(rule__ProtocolClass__Group_4__0)?
-{ after(grammarAccess.getProtocolClassAccess().getGroup_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__5__Impl
- rule__ProtocolClass__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getGroup_5()); }
-(rule__ProtocolClass__Group_5__0)?
-{ after(grammarAccess.getProtocolClassAccess().getGroup_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__6__Impl
- rule__ProtocolClass__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getIncomingKeyword_6()); }
-
- 'incoming'
-
-{ after(grammarAccess.getProtocolClassAccess().getIncomingKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__7__Impl
- rule__ProtocolClass__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_7()); }
-
- '{'
-
-{ after(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__8__Impl
- rule__ProtocolClass__Group__9
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getIncomingMessagesAssignment_8()); }
-(rule__ProtocolClass__IncomingMessagesAssignment_8)*
-{ after(grammarAccess.getProtocolClassAccess().getIncomingMessagesAssignment_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__9
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__9__Impl
- rule__ProtocolClass__Group__10
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__9__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_9()); }
-
- '}'
-
-{ after(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_9()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__10
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__10__Impl
- rule__ProtocolClass__Group__11
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__10__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getOutgoingKeyword_10()); }
-
- 'outgoing'
-
-{ after(grammarAccess.getProtocolClassAccess().getOutgoingKeyword_10()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__11
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__11__Impl
- rule__ProtocolClass__Group__12
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__11__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_11()); }
-
- '{'
-
-{ after(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_11()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__12
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__12__Impl
- rule__ProtocolClass__Group__13
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__12__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getOutgoingMessagesAssignment_12()); }
-(rule__ProtocolClass__OutgoingMessagesAssignment_12)*
-{ after(grammarAccess.getProtocolClassAccess().getOutgoingMessagesAssignment_12()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__13
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__13__Impl
- rule__ProtocolClass__Group__14
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__13__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_13()); }
-
- '}'
-
-{ after(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_13()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__14
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__14__Impl
- rule__ProtocolClass__Group__15
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__14__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getGroup_14()); }
-(rule__ProtocolClass__Group_14__0)?
-{ after(grammarAccess.getProtocolClassAccess().getGroup_14()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__15
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__15__Impl
- rule__ProtocolClass__Group__16
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__15__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getGroup_15()); }
-(rule__ProtocolClass__Group_15__0)?
-{ after(grammarAccess.getProtocolClassAccess().getGroup_15()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__16
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__16__Impl
- rule__ProtocolClass__Group__17
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__16__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getSemanticsAssignment_16()); }
-(rule__ProtocolClass__SemanticsAssignment_16)?
-{ after(grammarAccess.getProtocolClassAccess().getSemanticsAssignment_16()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group__17
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group__17__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group__17__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_17()); }
-
- '}'
-
-{ after(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_17()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ProtocolClass__Group_2__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_2__0__Impl
- rule__ProtocolClass__Group_2__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_2__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getExtendsKeyword_2_0()); }
-
- 'extends'
-
-{ after(grammarAccess.getProtocolClassAccess().getExtendsKeyword_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_2__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_2__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_2__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getBaseAssignment_2_1()); }
-(rule__ProtocolClass__BaseAssignment_2_1)
-{ after(grammarAccess.getProtocolClassAccess().getBaseAssignment_2_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ProtocolClass__Group_4__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_4__0__Impl
- rule__ProtocolClass__Group_4__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_4__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getUsercode1Keyword_4_0()); }
-
- 'usercode1'
-
-{ after(grammarAccess.getProtocolClassAccess().getUsercode1Keyword_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_4__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_4__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_4__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getUserCode1Assignment_4_1()); }
-(rule__ProtocolClass__UserCode1Assignment_4_1)
-{ after(grammarAccess.getProtocolClassAccess().getUserCode1Assignment_4_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ProtocolClass__Group_5__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_5__0__Impl
- rule__ProtocolClass__Group_5__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_5__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getUsercode2Keyword_5_0()); }
-
- 'usercode2'
-
-{ after(grammarAccess.getProtocolClassAccess().getUsercode2Keyword_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_5__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_5__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_5__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getUserCode2Assignment_5_1()); }
-(rule__ProtocolClass__UserCode2Assignment_5_1)
-{ after(grammarAccess.getProtocolClassAccess().getUserCode2Assignment_5_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ProtocolClass__Group_14__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_14__0__Impl
- rule__ProtocolClass__Group_14__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_14__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getRegularKeyword_14_0()); }
-
- 'regular'
-
-{ after(grammarAccess.getProtocolClassAccess().getRegularKeyword_14_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_14__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_14__1__Impl
- rule__ProtocolClass__Group_14__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_14__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getPortClassKeyword_14_1()); }
-
- 'PortClass'
-
-{ after(grammarAccess.getProtocolClassAccess().getPortClassKeyword_14_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_14__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_14__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_14__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getRegularAssignment_14_2()); }
-(rule__ProtocolClass__RegularAssignment_14_2)
-{ after(grammarAccess.getProtocolClassAccess().getRegularAssignment_14_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__ProtocolClass__Group_15__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_15__0__Impl
- rule__ProtocolClass__Group_15__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_15__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getConjugateKeyword_15_0()); }
-
- 'conjugate'
-
-{ after(grammarAccess.getProtocolClassAccess().getConjugateKeyword_15_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_15__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_15__1__Impl
- rule__ProtocolClass__Group_15__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_15__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getPortClassKeyword_15_1()); }
-
- 'PortClass'
-
-{ after(grammarAccess.getProtocolClassAccess().getPortClassKeyword_15_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolClass__Group_15__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolClass__Group_15__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__Group_15__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getConjugateAssignment_15_2()); }
-(rule__ProtocolClass__ConjugateAssignment_15_2)
-{ after(grammarAccess.getProtocolClassAccess().getConjugateAssignment_15_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__Message__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group__0__Impl
- rule__Message__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getMessageKeyword_0()); }
-
- 'Message'
-
-{ after(grammarAccess.getMessageAccess().getMessageKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Message__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group__1__Impl
- rule__Message__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getNameAssignment_1()); }
-(rule__Message__NameAssignment_1)
-{ after(grammarAccess.getMessageAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Message__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group__2__Impl
- rule__Message__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getLeftParenthesisKeyword_2()); }
-
- '('
-
-{ after(grammarAccess.getMessageAccess().getLeftParenthesisKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Message__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group__3__Impl
- rule__Message__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getGroup_3()); }
-(rule__Message__Group_3__0)?
-{ after(grammarAccess.getMessageAccess().getGroup_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Message__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group__4__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getRightParenthesisKeyword_4()); }
-
- ')'
-
-{ after(grammarAccess.getMessageAccess().getRightParenthesisKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Message__Group_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group_3__0__Impl
- rule__Message__Group_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getArgumentsAssignment_3_0()); }
-(rule__Message__ArgumentsAssignment_3_0)
-{ after(grammarAccess.getMessageAccess().getArgumentsAssignment_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Message__Group_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group_3__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getGroup_3_1()); }
-(rule__Message__Group_3_1__0)*
-{ after(grammarAccess.getMessageAccess().getGroup_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Message__Group_3_1__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group_3_1__0__Impl
- rule__Message__Group_3_1__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group_3_1__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getCommaKeyword_3_1_0()); }
-
- ','
-
-{ after(grammarAccess.getMessageAccess().getCommaKeyword_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Message__Group_3_1__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Message__Group_3_1__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__Group_3_1__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getArgumentsAssignment_3_1_1()); }
-(rule__Message__ArgumentsAssignment_3_1_1)
-{ after(grammarAccess.getMessageAccess().getArgumentsAssignment_3_1_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__PortClass__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__PortClass__Group__0__Impl
- rule__PortClass__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getLeftCurlyBracketKeyword_0()); }
-
- '{'
-
-{ after(grammarAccess.getPortClassAccess().getLeftCurlyBracketKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__PortClass__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__PortClass__Group__1__Impl
- rule__PortClass__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getGroup_1()); }
-(rule__PortClass__Group_1__0)?
-{ after(grammarAccess.getPortClassAccess().getGroup_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__PortClass__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__PortClass__Group__2__Impl
- rule__PortClass__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getPortClassAccess().getAlternatives_2()); }
-(rule__PortClass__Alternatives_2)
-{ after(grammarAccess.getPortClassAccess().getAlternatives_2()); }
-)
-(
-{ before(grammarAccess.getPortClassAccess().getAlternatives_2()); }
-(rule__PortClass__Alternatives_2)*
-{ after(grammarAccess.getPortClassAccess().getAlternatives_2()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__PortClass__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__PortClass__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getRightCurlyBracketKeyword_3()); }
-
- '}'
-
-{ after(grammarAccess.getPortClassAccess().getRightCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__PortClass__Group_1__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__PortClass__Group_1__0__Impl
- rule__PortClass__Group_1__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Group_1__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getUsercodeKeyword_1_0()); }
-
- 'usercode'
-
-{ after(grammarAccess.getPortClassAccess().getUsercodeKeyword_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__PortClass__Group_1__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__PortClass__Group_1__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__Group_1__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getUserCodeAssignment_1_1()); }
-(rule__PortClass__UserCodeAssignment_1_1)
-{ after(grammarAccess.getPortClassAccess().getUserCodeAssignment_1_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__MessageHandler__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__MessageHandler__Group__0__Impl
- rule__MessageHandler__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageHandler__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageHandlerAccess().getHandleKeyword_0()); }
-
- 'handle'
-
-{ after(grammarAccess.getMessageHandlerAccess().getHandleKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__MessageHandler__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__MessageHandler__Group__1__Impl
- rule__MessageHandler__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageHandler__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageHandlerAccess().getMsgAssignment_1()); }
-(rule__MessageHandler__MsgAssignment_1)
-{ after(grammarAccess.getMessageHandlerAccess().getMsgAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__MessageHandler__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__MessageHandler__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageHandler__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageHandlerAccess().getDetailCodeAssignment_2()); }
-(rule__MessageHandler__DetailCodeAssignment_2)
-{ after(grammarAccess.getMessageHandlerAccess().getDetailCodeAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__ProtocolSemantics__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolSemantics__Group__0__Impl
- rule__ProtocolSemantics__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolSemantics__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getSemanticsKeyword_0()); }
-
- 'semantics'
-
-{ after(grammarAccess.getProtocolSemanticsAccess().getSemanticsKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolSemantics__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolSemantics__Group__1__Impl
- rule__ProtocolSemantics__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolSemantics__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getLeftCurlyBracketKeyword_1()); }
-
- '{'
-
-{ after(grammarAccess.getProtocolSemanticsAccess().getLeftCurlyBracketKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolSemantics__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolSemantics__Group__2__Impl
- rule__ProtocolSemantics__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolSemantics__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
-(rule__ProtocolSemantics__RulesAssignment_2)
-{ after(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
-)
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
-(rule__ProtocolSemantics__RulesAssignment_2)*
-{ after(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ProtocolSemantics__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ProtocolSemantics__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolSemantics__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getRightCurlyBracketKeyword_3()); }
-
- '}'
-
-{ after(grammarAccess.getProtocolSemanticsAccess().getRightCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__SemanticsInRule__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsInRule__Group__0__Impl
- rule__SemanticsInRule__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getInKeyword_0()); }
-
- 'in'
-
-{ after(grammarAccess.getSemanticsInRuleAccess().getInKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsInRule__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsInRule__Group__1__Impl
- rule__SemanticsInRule__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getMsgAssignment_1()); }
-(rule__SemanticsInRule__MsgAssignment_1)
-{ after(grammarAccess.getSemanticsInRuleAccess().getMsgAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsInRule__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsInRule__Group__2__Impl
- rule__SemanticsInRule__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
-
- '->'
-
-{ after(grammarAccess.getSemanticsInRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsInRule__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsInRule__Group__3__Impl
- rule__SemanticsInRule__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getLeftCurlyBracketKeyword_3()); }
-
- '{'
-
-{ after(grammarAccess.getSemanticsInRuleAccess().getLeftCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsInRule__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsInRule__Group__4__Impl
- rule__SemanticsInRule__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getFollowUpsAssignment_4()); }
-(rule__SemanticsInRule__FollowUpsAssignment_4)*
-{ after(grammarAccess.getSemanticsInRuleAccess().getFollowUpsAssignment_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsInRule__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsInRule__Group__5__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getRightCurlyBracketKeyword_5()); }
-
- '}'
-
-{ after(grammarAccess.getSemanticsInRuleAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__SemanticsOutRule__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsOutRule__Group__0__Impl
- rule__SemanticsOutRule__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getOutKeyword_0()); }
-
- 'out'
-
-{ after(grammarAccess.getSemanticsOutRuleAccess().getOutKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsOutRule__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsOutRule__Group__1__Impl
- rule__SemanticsOutRule__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getMsgAssignment_1()); }
-(rule__SemanticsOutRule__MsgAssignment_1)
-{ after(grammarAccess.getSemanticsOutRuleAccess().getMsgAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsOutRule__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsOutRule__Group__2__Impl
- rule__SemanticsOutRule__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
-
- '->'
-
-{ after(grammarAccess.getSemanticsOutRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsOutRule__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsOutRule__Group__3__Impl
- rule__SemanticsOutRule__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getLeftCurlyBracketKeyword_3()); }
-
- '{'
-
-{ after(grammarAccess.getSemanticsOutRuleAccess().getLeftCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsOutRule__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsOutRule__Group__4__Impl
- rule__SemanticsOutRule__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsAssignment_4()); }
-(rule__SemanticsOutRule__FollowUpsAssignment_4)*
-{ after(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsAssignment_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SemanticsOutRule__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SemanticsOutRule__Group__5__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getRightCurlyBracketKeyword_5()); }
-
- '}'
-
-{ after(grammarAccess.getSemanticsOutRuleAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ActorClass__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__0__Impl
- rule__ActorClass__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getAbstractAssignment_0()); }
-(rule__ActorClass__AbstractAssignment_0)?
-{ after(grammarAccess.getActorClassAccess().getAbstractAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__1__Impl
- rule__ActorClass__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getActorClassKeyword_1()); }
-
- 'ActorClass'
-
-{ after(grammarAccess.getActorClassAccess().getActorClassKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__2__Impl
- rule__ActorClass__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getNameAssignment_2()); }
-(rule__ActorClass__NameAssignment_2)
-{ after(grammarAccess.getActorClassAccess().getNameAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__3__Impl
- rule__ActorClass__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getGroup_3()); }
-(rule__ActorClass__Group_3__0)?
-{ after(grammarAccess.getActorClassAccess().getGroup_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__4__Impl
- rule__ActorClass__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_4()); }
-
- '{'
-
-{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__5__Impl
- rule__ActorClass__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getGroup_5()); }
-(rule__ActorClass__Group_5__0)?
-{ after(grammarAccess.getActorClassAccess().getGroup_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__6__Impl
- rule__ActorClass__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getGroup_6()); }
-(rule__ActorClass__Group_6__0)?
-{ after(grammarAccess.getActorClassAccess().getGroup_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__7__Impl
- rule__ActorClass__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getGroup_7()); }
-(rule__ActorClass__Group_7__0)?
-{ after(grammarAccess.getActorClassAccess().getGroup_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group__8__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_8()); }
-
- '}'
-
-{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ActorClass__Group_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_3__0__Impl
- rule__ActorClass__Group_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getExtendsKeyword_3_0()); }
-
- 'extends'
-
-{ after(grammarAccess.getActorClassAccess().getExtendsKeyword_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_3__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getBaseAssignment_3_1()); }
-(rule__ActorClass__BaseAssignment_3_1)
-{ after(grammarAccess.getActorClassAccess().getBaseAssignment_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ActorClass__Group_5__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_5__0__Impl
- rule__ActorClass__Group_5__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_5__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getInterfaceKeyword_5_0()); }
-
- 'Interface'
-
-{ after(grammarAccess.getActorClassAccess().getInterfaceKeyword_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_5__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_5__1__Impl
- rule__ActorClass__Group_5__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_5__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_5_1()); }
-
- '{'
-
-{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_5_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_5__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_5__2__Impl
- rule__ActorClass__Group_5__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_5__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getIfPortsAssignment_5_2()); }
-(rule__ActorClass__IfPortsAssignment_5_2)*
-{ after(grammarAccess.getActorClassAccess().getIfPortsAssignment_5_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_5__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_5__3__Impl
- rule__ActorClass__Group_5__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_5__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getIfSPPsAssignment_5_3()); }
-(rule__ActorClass__IfSPPsAssignment_5_3)*
-{ after(grammarAccess.getActorClassAccess().getIfSPPsAssignment_5_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_5__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_5__4__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_5__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_5_4()); }
-
- '}'
-
-{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_5_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ActorClass__Group_6__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__0__Impl
- rule__ActorClass__Group_6__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getStructureKeyword_6_0()); }
-
- 'Structure'
-
-{ after(grammarAccess.getActorClassAccess().getStructureKeyword_6_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__1__Impl
- rule__ActorClass__Group_6__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_6_1()); }
-
- '{'
-
-{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_6_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__2__Impl
- rule__ActorClass__Group_6__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getGroup_6_2()); }
-(rule__ActorClass__Group_6_2__0)?
-{ after(grammarAccess.getActorClassAccess().getGroup_6_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__3__Impl
- rule__ActorClass__Group_6__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getGroup_6_3()); }
-(rule__ActorClass__Group_6_3__0)?
-{ after(grammarAccess.getActorClassAccess().getGroup_6_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__4__Impl
- rule__ActorClass__Group_6__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getAlternatives_6_4()); }
-(rule__ActorClass__Alternatives_6_4)*
-{ after(grammarAccess.getActorClassAccess().getAlternatives_6_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__5__Impl
- rule__ActorClass__Group_6__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getServiceImplementationsAssignment_6_5()); }
-(rule__ActorClass__ServiceImplementationsAssignment_6_5)*
-{ after(grammarAccess.getActorClassAccess().getServiceImplementationsAssignment_6_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__6__Impl
- rule__ActorClass__Group_6__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getStrSAPsAssignment_6_6()); }
-(rule__ActorClass__StrSAPsAssignment_6_6)*
-{ after(grammarAccess.getActorClassAccess().getStrSAPsAssignment_6_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__7__Impl
- rule__ActorClass__Group_6__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getAttributesAssignment_6_7()); }
-(rule__ActorClass__AttributesAssignment_6_7)*
-{ after(grammarAccess.getActorClassAccess().getAttributesAssignment_6_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__8__Impl
- rule__ActorClass__Group_6__9
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getActorRefsAssignment_6_8()); }
-(rule__ActorClass__ActorRefsAssignment_6_8)*
-{ after(grammarAccess.getActorClassAccess().getActorRefsAssignment_6_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__9
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__9__Impl
- rule__ActorClass__Group_6__10
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__9__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getBindingsAssignment_6_9()); }
-(rule__ActorClass__BindingsAssignment_6_9)*
-{ after(grammarAccess.getActorClassAccess().getBindingsAssignment_6_9()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__10
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__10__Impl
- rule__ActorClass__Group_6__11
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__10__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getConnectionsAssignment_6_10()); }
-(rule__ActorClass__ConnectionsAssignment_6_10)*
-{ after(grammarAccess.getActorClassAccess().getConnectionsAssignment_6_10()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6__11
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6__11__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6__11__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_6_11()); }
-
- '}'
-
-{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_6_11()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ActorClass__Group_6_2__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6_2__0__Impl
- rule__ActorClass__Group_6_2__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6_2__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getUsercode1Keyword_6_2_0()); }
-
- 'usercode1'
-
-{ after(grammarAccess.getActorClassAccess().getUsercode1Keyword_6_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6_2__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6_2__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6_2__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getUserCode1Assignment_6_2_1()); }
-(rule__ActorClass__UserCode1Assignment_6_2_1)
-{ after(grammarAccess.getActorClassAccess().getUserCode1Assignment_6_2_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ActorClass__Group_6_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6_3__0__Impl
- rule__ActorClass__Group_6_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getUsercode2Keyword_6_3_0()); }
-
- 'usercode2'
-
-{ after(grammarAccess.getActorClassAccess().getUsercode2Keyword_6_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_6_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_6_3__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_6_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getUserCode2Assignment_6_3_1()); }
-(rule__ActorClass__UserCode2Assignment_6_3_1)
-{ after(grammarAccess.getActorClassAccess().getUserCode2Assignment_6_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ActorClass__Group_7__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_7__0__Impl
- rule__ActorClass__Group_7__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_7__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getBehaviorKeyword_7_0()); }
-
- 'Behavior'
-
-{ after(grammarAccess.getActorClassAccess().getBehaviorKeyword_7_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_7__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_7__1__Impl
- rule__ActorClass__Group_7__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_7__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_7_1()); }
-
- '{'
-
-{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_7_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_7__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_7__2__Impl
- rule__ActorClass__Group_7__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_7__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getOperationsAssignment_7_2()); }
-(rule__ActorClass__OperationsAssignment_7_2)*
-{ after(grammarAccess.getActorClassAccess().getOperationsAssignment_7_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_7__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_7__3__Impl
- rule__ActorClass__Group_7__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_7__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getStateMachineAssignment_7_3()); }
-(rule__ActorClass__StateMachineAssignment_7_3)?
-{ after(grammarAccess.getActorClassAccess().getStateMachineAssignment_7_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorClass__Group_7__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorClass__Group_7__4__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__Group_7__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_7_4()); }
-
- '}'
-
-{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_7_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Port__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group__0__Impl
- rule__Port__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getConjugatedAssignment_0()); }
-(rule__Port__ConjugatedAssignment_0)?
-{ after(grammarAccess.getPortAccess().getConjugatedAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group__1__Impl
- rule__Port__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getPortKeyword_1()); }
-
- 'Port'
-
-{ after(grammarAccess.getPortAccess().getPortKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group__2__Impl
- rule__Port__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getNameAssignment_2()); }
-(rule__Port__NameAssignment_2)
-{ after(grammarAccess.getPortAccess().getNameAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group__3__Impl
- rule__Port__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getGroup_3()); }
-(rule__Port__Group_3__0)?
-{ after(grammarAccess.getPortAccess().getGroup_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group__4__Impl
- rule__Port__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getColonKeyword_4()); }
-
- ':'
-
-{ after(grammarAccess.getPortAccess().getColonKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group__5__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getProtocolAssignment_5()); }
-(rule__Port__ProtocolAssignment_5)
-{ after(grammarAccess.getPortAccess().getProtocolAssignment_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Port__Group_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group_3__0__Impl
- rule__Port__Group_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getLeftSquareBracketKeyword_3_0()); }
-
- '['
-
-{ after(grammarAccess.getPortAccess().getLeftSquareBracketKeyword_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group_3__1__Impl
- rule__Port__Group_3__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getMultiplicityAssignment_3_1()); }
-(rule__Port__MultiplicityAssignment_3_1)
-{ after(grammarAccess.getPortAccess().getMultiplicityAssignment_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Port__Group_3__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Port__Group_3__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__Group_3__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getRightSquareBracketKeyword_3_2()); }
-
- ']'
-
-{ after(grammarAccess.getPortAccess().getRightSquareBracketKeyword_3_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__ExternalPort__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ExternalPort__Group__0__Impl
- rule__ExternalPort__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExternalPort__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExternalPortAccess().getExternalKeyword_0()); }
-
- 'external'
-
-{ after(grammarAccess.getExternalPortAccess().getExternalKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ExternalPort__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ExternalPort__Group__1__Impl
- rule__ExternalPort__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExternalPort__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExternalPortAccess().getPortKeyword_1()); }
-
- 'Port'
-
-{ after(grammarAccess.getExternalPortAccess().getPortKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ExternalPort__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ExternalPort__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExternalPort__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExternalPortAccess().getIfportAssignment_2()); }
-(rule__ExternalPort__IfportAssignment_2)
-{ after(grammarAccess.getExternalPortAccess().getIfportAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__SAPRef__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SAPRef__Group__0__Impl
- rule__SAPRef__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SAPRef__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPRefAccess().getSAPKeyword_0()); }
-
- 'SAP'
-
-{ after(grammarAccess.getSAPRefAccess().getSAPKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SAPRef__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SAPRef__Group__1__Impl
- rule__SAPRef__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SAPRef__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPRefAccess().getNameAssignment_1()); }
-(rule__SAPRef__NameAssignment_1)
-{ after(grammarAccess.getSAPRefAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SAPRef__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SAPRef__Group__2__Impl
- rule__SAPRef__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SAPRef__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPRefAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getSAPRefAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SAPRef__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SAPRef__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SAPRef__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPRefAccess().getProtocolAssignment_3()); }
-(rule__SAPRef__ProtocolAssignment_3)
-{ after(grammarAccess.getSAPRefAccess().getProtocolAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__SPPRef__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPRef__Group__0__Impl
- rule__SPPRef__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPRef__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPRefAccess().getSPPKeyword_0()); }
-
- 'SPP'
-
-{ after(grammarAccess.getSPPRefAccess().getSPPKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SPPRef__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPRef__Group__1__Impl
- rule__SPPRef__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPRef__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPRefAccess().getNameAssignment_1()); }
-(rule__SPPRef__NameAssignment_1)
-{ after(grammarAccess.getSPPRefAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SPPRef__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPRef__Group__2__Impl
- rule__SPPRef__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPRef__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPRefAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getSPPRefAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SPPRef__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPRef__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPRef__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPRefAccess().getProtocolAssignment_3()); }
-(rule__SPPRef__ProtocolAssignment_3)
-{ after(grammarAccess.getSPPRefAccess().getProtocolAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__ServiceImplementation__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ServiceImplementation__Group__0__Impl
- rule__ServiceImplementation__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ServiceImplementation__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getServiceImplementationAccess().getServiceImplementationKeyword_0()); }
-
- 'ServiceImplementation'
-
-{ after(grammarAccess.getServiceImplementationAccess().getServiceImplementationKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ServiceImplementation__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ServiceImplementation__Group__1__Impl
- rule__ServiceImplementation__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ServiceImplementation__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getServiceImplementationAccess().getOfKeyword_1()); }
-
- 'of'
-
-{ after(grammarAccess.getServiceImplementationAccess().getOfKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ServiceImplementation__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ServiceImplementation__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ServiceImplementation__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getServiceImplementationAccess().getSppAssignment_2()); }
-(rule__ServiceImplementation__SppAssignment_2)
-{ after(grammarAccess.getServiceImplementationAccess().getSppAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__LogicalSystem__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__0__Impl
- rule__LogicalSystem__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getLogicalSystemKeyword_0()); }
-
- 'LogicalSystem'
-
-{ after(grammarAccess.getLogicalSystemAccess().getLogicalSystemKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalSystem__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__1__Impl
- rule__LogicalSystem__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getNameAssignment_1()); }
-(rule__LogicalSystem__NameAssignment_1)
-{ after(grammarAccess.getLogicalSystemAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalSystem__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__2__Impl
- rule__LogicalSystem__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getLeftCurlyBracketKeyword_2()); }
-
- '{'
-
-{ after(grammarAccess.getLogicalSystemAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalSystem__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__3__Impl
- rule__LogicalSystem__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
-(rule__LogicalSystem__SubSystemsAssignment_3)
-{ after(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
-)
-(
-{ before(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
-(rule__LogicalSystem__SubSystemsAssignment_3)*
-{ after(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalSystem__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__4__Impl
- rule__LogicalSystem__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getBindingsAssignment_4()); }
-(rule__LogicalSystem__BindingsAssignment_4)*
-{ after(grammarAccess.getLogicalSystemAccess().getBindingsAssignment_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalSystem__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__5__Impl
- rule__LogicalSystem__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getConnectionsAssignment_5()); }
-(rule__LogicalSystem__ConnectionsAssignment_5)*
-{ after(grammarAccess.getLogicalSystemAccess().getConnectionsAssignment_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalSystem__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalSystem__Group__6__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getRightCurlyBracketKeyword_6()); }
-
- '}'
-
-{ after(grammarAccess.getLogicalSystemAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__SubSystemRef__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemRef__Group__0__Impl
- rule__SubSystemRef__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemRef__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemRefAccess().getSubSystemRefKeyword_0()); }
-
- 'SubSystemRef'
-
-{ after(grammarAccess.getSubSystemRefAccess().getSubSystemRefKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemRef__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemRef__Group__1__Impl
- rule__SubSystemRef__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemRef__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemRefAccess().getNameAssignment_1()); }
-(rule__SubSystemRef__NameAssignment_1)
-{ after(grammarAccess.getSubSystemRefAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemRef__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemRef__Group__2__Impl
- rule__SubSystemRef__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemRef__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemRefAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getSubSystemRefAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemRef__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemRef__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemRef__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemRefAccess().getTypeAssignment_3()); }
-(rule__SubSystemRef__TypeAssignment_3)
-{ after(grammarAccess.getSubSystemRefAccess().getTypeAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__SubSystemClass__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__0__Impl
- rule__SubSystemClass__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getSubSystemClassKeyword_0()); }
-
- 'SubSystemClass'
-
-{ after(grammarAccess.getSubSystemClassAccess().getSubSystemClassKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__1__Impl
- rule__SubSystemClass__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getNameAssignment_1()); }
-(rule__SubSystemClass__NameAssignment_1)
-{ after(grammarAccess.getSubSystemClassAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__2__Impl
- rule__SubSystemClass__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getLeftCurlyBracketKeyword_2()); }
-
- '{'
-
-{ after(grammarAccess.getSubSystemClassAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__3__Impl
- rule__SubSystemClass__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getRelayPortsAssignment_3()); }
-(rule__SubSystemClass__RelayPortsAssignment_3)*
-{ after(grammarAccess.getSubSystemClassAccess().getRelayPortsAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__4__Impl
- rule__SubSystemClass__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getIfSPPsAssignment_4()); }
-(rule__SubSystemClass__IfSPPsAssignment_4)*
-{ after(grammarAccess.getSubSystemClassAccess().getIfSPPsAssignment_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__5__Impl
- rule__SubSystemClass__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
-(rule__SubSystemClass__ActorRefsAssignment_5)
-{ after(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
-)
-(
-{ before(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
-(rule__SubSystemClass__ActorRefsAssignment_5)*
-{ after(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__6__Impl
- rule__SubSystemClass__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getBindingsAssignment_6()); }
-(rule__SubSystemClass__BindingsAssignment_6)*
-{ after(grammarAccess.getSubSystemClassAccess().getBindingsAssignment_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__7__Impl
- rule__SubSystemClass__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getConnectionsAssignment_7()); }
-(rule__SubSystemClass__ConnectionsAssignment_7)*
-{ after(grammarAccess.getSubSystemClassAccess().getConnectionsAssignment_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__8__Impl
- rule__SubSystemClass__Group__9
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getThreadsAssignment_8()); }
-(rule__SubSystemClass__ThreadsAssignment_8)*
-{ after(grammarAccess.getSubSystemClassAccess().getThreadsAssignment_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubSystemClass__Group__9
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubSystemClass__Group__9__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__Group__9__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getRightCurlyBracketKeyword_9()); }
-
- '}'
-
-{ after(grammarAccess.getSubSystemClassAccess().getRightCurlyBracketKeyword_9()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__LogicalThread__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group__0__Impl
- rule__LogicalThread__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getLogicalThreadKeyword_0()); }
-
- 'LogicalThread'
-
-{ after(grammarAccess.getLogicalThreadAccess().getLogicalThreadKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalThread__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group__1__Impl
- rule__LogicalThread__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getNameAssignment_1()); }
-(rule__LogicalThread__NameAssignment_1)
-{ after(grammarAccess.getLogicalThreadAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalThread__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group__2__Impl
- rule__LogicalThread__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getLeftCurlyBracketKeyword_2()); }
-
- '{'
-
-{ after(grammarAccess.getLogicalThreadAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalThread__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group__3__Impl
- rule__LogicalThread__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_3()); }
-(rule__LogicalThread__InstancesAssignment_3)
-{ after(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalThread__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group__4__Impl
- rule__LogicalThread__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getGroup_4()); }
-(rule__LogicalThread__Group_4__0)*
-{ after(grammarAccess.getLogicalThreadAccess().getGroup_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalThread__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group__5__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getRightCurlyBracketKeyword_5()); }
-
- '}'
-
-{ after(grammarAccess.getLogicalThreadAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__LogicalThread__Group_4__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group_4__0__Impl
- rule__LogicalThread__Group_4__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group_4__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getCommaKeyword_4_0()); }
-
- ','
-
-{ after(grammarAccess.getLogicalThreadAccess().getCommaKeyword_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LogicalThread__Group_4__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LogicalThread__Group_4__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__Group_4__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_4_1()); }
-(rule__LogicalThread__InstancesAssignment_4_1)
-{ after(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_4_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ActorInstancePath__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorInstancePath__Group__0__Impl
- rule__ActorInstancePath__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstancePath__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_0()); }
-(rule__ActorInstancePath__SegmentsAssignment_0)
-{ after(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorInstancePath__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorInstancePath__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstancePath__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstancePathAccess().getGroup_1()); }
-(rule__ActorInstancePath__Group_1__0)*
-{ after(grammarAccess.getActorInstancePathAccess().getGroup_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ActorInstancePath__Group_1__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorInstancePath__Group_1__0__Impl
- rule__ActorInstancePath__Group_1__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstancePath__Group_1__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstancePathAccess().getFullStopKeyword_1_0()); }
-
- '.'
-
-{ after(grammarAccess.getActorInstancePathAccess().getFullStopKeyword_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorInstancePath__Group_1__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorInstancePath__Group_1__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstancePath__Group_1__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_1_1()); }
-(rule__ActorInstancePath__SegmentsAssignment_1_1)
-{ after(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_1_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Binding__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Binding__Group__0__Impl
- rule__Binding__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Binding__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingAccess().getBindingKeyword_0()); }
-
- 'Binding'
-
-{ after(grammarAccess.getBindingAccess().getBindingKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Binding__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Binding__Group__1__Impl
- rule__Binding__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Binding__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingAccess().getEndpoint1Assignment_1()); }
-(rule__Binding__Endpoint1Assignment_1)
-{ after(grammarAccess.getBindingAccess().getEndpoint1Assignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Binding__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Binding__Group__2__Impl
- rule__Binding__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Binding__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingAccess().getAndKeyword_2()); }
-
- 'and'
-
-{ after(grammarAccess.getBindingAccess().getAndKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Binding__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Binding__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Binding__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingAccess().getEndpoint2Assignment_3()); }
-(rule__Binding__Endpoint2Assignment_3)
-{ after(grammarAccess.getBindingAccess().getEndpoint2Assignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__BindingEndPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BindingEndPoint__Group__0__Impl
- rule__BindingEndPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BindingEndPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingEndPointAccess().getGroup_0()); }
-(rule__BindingEndPoint__Group_0__0)?
-{ after(grammarAccess.getBindingEndPointAccess().getGroup_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BindingEndPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BindingEndPoint__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BindingEndPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingEndPointAccess().getPortAssignment_1()); }
-(rule__BindingEndPoint__PortAssignment_1)
-{ after(grammarAccess.getBindingEndPointAccess().getPortAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BindingEndPoint__Group_0__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BindingEndPoint__Group_0__0__Impl
- rule__BindingEndPoint__Group_0__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BindingEndPoint__Group_0__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingEndPointAccess().getActorRefAssignment_0_0()); }
-(rule__BindingEndPoint__ActorRefAssignment_0_0)
-{ after(grammarAccess.getBindingEndPointAccess().getActorRefAssignment_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BindingEndPoint__Group_0__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BindingEndPoint__Group_0__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BindingEndPoint__Group_0__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingEndPointAccess().getFullStopKeyword_0_1()); }
-
- '.'
-
-{ after(grammarAccess.getBindingEndPointAccess().getFullStopKeyword_0_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__LayerConnection__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LayerConnection__Group__0__Impl
- rule__LayerConnection__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LayerConnection__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLayerConnectionAccess().getLayerConnectionKeyword_0()); }
-
- 'LayerConnection'
-
-{ after(grammarAccess.getLayerConnectionAccess().getLayerConnectionKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LayerConnection__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LayerConnection__Group__1__Impl
- rule__LayerConnection__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LayerConnection__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLayerConnectionAccess().getFromAssignment_1()); }
-(rule__LayerConnection__FromAssignment_1)
-{ after(grammarAccess.getLayerConnectionAccess().getFromAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LayerConnection__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LayerConnection__Group__2__Impl
- rule__LayerConnection__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LayerConnection__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLayerConnectionAccess().getSatisfied_byKeyword_2()); }
-
- 'satisfied_by'
-
-{ after(grammarAccess.getLayerConnectionAccess().getSatisfied_byKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__LayerConnection__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__LayerConnection__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LayerConnection__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLayerConnectionAccess().getToAssignment_3()); }
-(rule__LayerConnection__ToAssignment_3)
-{ after(grammarAccess.getLayerConnectionAccess().getToAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__RefSAPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefSAPoint__Group__0__Impl
- rule__RefSAPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefSAPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefSAPointAccess().getRefKeyword_0()); }
-
- 'ref'
-
-{ after(grammarAccess.getRefSAPointAccess().getRefKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefSAPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefSAPoint__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefSAPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefSAPointAccess().getRefAssignment_1()); }
-(rule__RefSAPoint__RefAssignment_1)
-{ after(grammarAccess.getRefSAPointAccess().getRefAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RelaySAPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RelaySAPoint__Group__0__Impl
- rule__RelaySAPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RelaySAPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRelaySAPointAccess().getRelay_sapKeyword_0()); }
-
- 'relay_sap'
-
-{ after(grammarAccess.getRelaySAPointAccess().getRelay_sapKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RelaySAPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RelaySAPoint__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RelaySAPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRelaySAPointAccess().getRelayAssignment_1()); }
-(rule__RelaySAPoint__RelayAssignment_1)
-{ after(grammarAccess.getRelaySAPointAccess().getRelayAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__SPPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPoint__Group__0__Impl
- rule__SPPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPointAccess().getRefAssignment_0()); }
-(rule__SPPoint__RefAssignment_0)
-{ after(grammarAccess.getSPPointAccess().getRefAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SPPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPoint__Group__1__Impl
- rule__SPPoint__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPointAccess().getFullStopKeyword_1()); }
-
- '.'
-
-{ after(grammarAccess.getSPPointAccess().getFullStopKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SPPoint__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SPPoint__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPoint__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPointAccess().getServiceAssignment_2()); }
-(rule__SPPoint__ServiceAssignment_2)
-{ after(grammarAccess.getSPPointAccess().getServiceAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__ActorRef__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorRef__Group__0__Impl
- rule__ActorRef__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorRef__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorRefAccess().getActorRefKeyword_0()); }
-
- 'ActorRef'
-
-{ after(grammarAccess.getActorRefAccess().getActorRefKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorRef__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorRef__Group__1__Impl
- rule__ActorRef__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorRef__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorRefAccess().getNameAssignment_1()); }
-(rule__ActorRef__NameAssignment_1)
-{ after(grammarAccess.getActorRefAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorRef__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorRef__Group__2__Impl
- rule__ActorRef__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorRef__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorRefAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getActorRefAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorRef__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorRef__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorRef__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorRefAccess().getTypeAssignment_3()); }
-(rule__ActorRef__TypeAssignment_3)
-{ after(grammarAccess.getActorRefAccess().getTypeAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__StateGraph__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateGraph__Group__0__Impl
- rule__StateGraph__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getLeftCurlyBracketKeyword_0()); }
-
- '{'
-
-{ after(grammarAccess.getStateGraphAccess().getLeftCurlyBracketKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__StateGraph__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateGraph__Group__1__Impl
- rule__StateGraph__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
-(rule__StateGraph__Alternatives_1)
-{ after(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
-)
-(
-{ before(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
-(rule__StateGraph__Alternatives_1)*
-{ after(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__StateGraph__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateGraph__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getRightCurlyBracketKeyword_2()); }
-
- '}'
-
-{ after(grammarAccess.getStateGraphAccess().getRightCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__StateMachine__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateMachine__Group__0__Impl
- rule__StateMachine__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getStateMachineKeyword_0()); }
-
- 'StateMachine'
-
-{ after(grammarAccess.getStateMachineAccess().getStateMachineKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__StateMachine__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateMachine__Group__1__Impl
- rule__StateMachine__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getLeftCurlyBracketKeyword_1()); }
-
- '{'
-
-{ after(grammarAccess.getStateMachineAccess().getLeftCurlyBracketKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__StateMachine__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateMachine__Group__2__Impl
- rule__StateMachine__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
-(rule__StateMachine__Alternatives_2)
-{ after(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
-)
-(
-{ before(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
-(rule__StateMachine__Alternatives_2)*
-{ after(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__StateMachine__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__StateMachine__Group__3__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getRightCurlyBracketKeyword_3()); }
-
- '}'
-
-{ after(grammarAccess.getStateMachineAccess().getRightCurlyBracketKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__BaseState__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__0__Impl
- rule__BaseState__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getStateKeyword_0()); }
-
- 'State'
-
-{ after(grammarAccess.getBaseStateAccess().getStateKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__1__Impl
- rule__BaseState__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getNameAssignment_1()); }
-(rule__BaseState__NameAssignment_1)
-{ after(grammarAccess.getBaseStateAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__2__Impl
- rule__BaseState__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getLeftCurlyBracketKeyword_2()); }
-
- '{'
-
-{ after(grammarAccess.getBaseStateAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__3__Impl
- rule__BaseState__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getGroup_3()); }
-(rule__BaseState__Group_3__0)?
-{ after(grammarAccess.getBaseStateAccess().getGroup_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__4__Impl
- rule__BaseState__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getGroup_4()); }
-(rule__BaseState__Group_4__0)?
-{ after(grammarAccess.getBaseStateAccess().getGroup_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__5__Impl
- rule__BaseState__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getGroup_5()); }
-(rule__BaseState__Group_5__0)?
-{ after(grammarAccess.getBaseStateAccess().getGroup_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group__6__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getRightCurlyBracketKeyword_6()); }
-
- '}'
-
-{ after(grammarAccess.getBaseStateAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__BaseState__Group_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group_3__0__Impl
- rule__BaseState__Group_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getEntryKeyword_3_0()); }
-
- 'entry'
-
-{ after(grammarAccess.getBaseStateAccess().getEntryKeyword_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group_3__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getEntryCodeAssignment_3_1()); }
-(rule__BaseState__EntryCodeAssignment_3_1)
-{ after(grammarAccess.getBaseStateAccess().getEntryCodeAssignment_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BaseState__Group_4__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group_4__0__Impl
- rule__BaseState__Group_4__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group_4__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getExitKeyword_4_0()); }
-
- 'exit'
-
-{ after(grammarAccess.getBaseStateAccess().getExitKeyword_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group_4__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group_4__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group_4__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getExitCodeAssignment_4_1()); }
-(rule__BaseState__ExitCodeAssignment_4_1)
-{ after(grammarAccess.getBaseStateAccess().getExitCodeAssignment_4_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BaseState__Group_5__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group_5__0__Impl
- rule__BaseState__Group_5__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group_5__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getSubgraphKeyword_5_0()); }
-
- 'subgraph'
-
-{ after(grammarAccess.getBaseStateAccess().getSubgraphKeyword_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__BaseState__Group_5__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__BaseState__Group_5__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__Group_5__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getSubgraphAssignment_5_1()); }
-(rule__BaseState__SubgraphAssignment_5_1)
-{ after(grammarAccess.getBaseStateAccess().getSubgraphAssignment_5_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RefinedState__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__0__Impl
- rule__RefinedState__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getRefinedStateKeyword_0()); }
-
- 'RefinedState'
-
-{ after(grammarAccess.getRefinedStateAccess().getRefinedStateKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__1__Impl
- rule__RefinedState__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getBaseAssignment_1()); }
-(rule__RefinedState__BaseAssignment_1)
-{ after(grammarAccess.getRefinedStateAccess().getBaseAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__2__Impl
- rule__RefinedState__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getLeftCurlyBracketKeyword_2()); }
-
- '{'
-
-{ after(grammarAccess.getRefinedStateAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__3__Impl
- rule__RefinedState__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getGroup_3()); }
-(rule__RefinedState__Group_3__0)?
-{ after(grammarAccess.getRefinedStateAccess().getGroup_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__4__Impl
- rule__RefinedState__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getGroup_4()); }
-(rule__RefinedState__Group_4__0)?
-{ after(grammarAccess.getRefinedStateAccess().getGroup_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__5__Impl
- rule__RefinedState__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getGroup_5()); }
-(rule__RefinedState__Group_5__0)?
-{ after(grammarAccess.getRefinedStateAccess().getGroup_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group__6__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getRightCurlyBracketKeyword_6()); }
-
- '}'
-
-{ after(grammarAccess.getRefinedStateAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__RefinedState__Group_3__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group_3__0__Impl
- rule__RefinedState__Group_3__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group_3__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getEntryKeyword_3_0()); }
-
- 'entry'
-
-{ after(grammarAccess.getRefinedStateAccess().getEntryKeyword_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group_3__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group_3__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group_3__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getEntryCodeAssignment_3_1()); }
-(rule__RefinedState__EntryCodeAssignment_3_1)
-{ after(grammarAccess.getRefinedStateAccess().getEntryCodeAssignment_3_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RefinedState__Group_4__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group_4__0__Impl
- rule__RefinedState__Group_4__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group_4__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getExitKeyword_4_0()); }
-
- 'exit'
-
-{ after(grammarAccess.getRefinedStateAccess().getExitKeyword_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group_4__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group_4__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group_4__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getExitCodeAssignment_4_1()); }
-(rule__RefinedState__ExitCodeAssignment_4_1)
-{ after(grammarAccess.getRefinedStateAccess().getExitCodeAssignment_4_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RefinedState__Group_5__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group_5__0__Impl
- rule__RefinedState__Group_5__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group_5__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getSubgraphKeyword_5_0()); }
-
- 'subgraph'
-
-{ after(grammarAccess.getRefinedStateAccess().getSubgraphKeyword_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__RefinedState__Group_5__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__RefinedState__Group_5__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__Group_5__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getSubgraphAssignment_5_1()); }
-(rule__RefinedState__SubgraphAssignment_5_1)
-{ after(grammarAccess.getRefinedStateAccess().getSubgraphAssignment_5_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__DetailCode__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DetailCode__Group__0__Impl
- rule__DetailCode__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DetailCode__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDetailCodeAccess().getLeftCurlyBracketKeyword_0()); }
-
- '{'
-
-{ after(grammarAccess.getDetailCodeAccess().getLeftCurlyBracketKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DetailCode__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DetailCode__Group__1__Impl
- rule__DetailCode__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DetailCode__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-(
-{ before(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
-(rule__DetailCode__CommandsAssignment_1)
-{ after(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
-)
-(
-{ before(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
-(rule__DetailCode__CommandsAssignment_1)*
-{ after(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
-)
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__DetailCode__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__DetailCode__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DetailCode__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDetailCodeAccess().getRightCurlyBracketKeyword_2()); }
-
- '}'
-
-{ after(grammarAccess.getDetailCodeAccess().getRightCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__TransitionPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TransitionPoint__Group__0__Impl
- rule__TransitionPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TransitionPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionPointAccess().getHandlerAssignment_0()); }
-(rule__TransitionPoint__HandlerAssignment_0)?
-{ after(grammarAccess.getTransitionPointAccess().getHandlerAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TransitionPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TransitionPoint__Group__1__Impl
- rule__TransitionPoint__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TransitionPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionPointAccess().getTransitionPointKeyword_1()); }
-
- 'TransitionPoint'
-
-{ after(grammarAccess.getTransitionPointAccess().getTransitionPointKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TransitionPoint__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TransitionPoint__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TransitionPoint__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionPointAccess().getNameAssignment_2()); }
-(rule__TransitionPoint__NameAssignment_2)
-{ after(grammarAccess.getTransitionPointAccess().getNameAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__EntryPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__EntryPoint__Group__0__Impl
- rule__EntryPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__EntryPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getEntryPointAccess().getEntryPointKeyword_0()); }
-
- 'EntryPoint'
-
-{ after(grammarAccess.getEntryPointAccess().getEntryPointKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__EntryPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__EntryPoint__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__EntryPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getEntryPointAccess().getNameAssignment_1()); }
-(rule__EntryPoint__NameAssignment_1)
-{ after(grammarAccess.getEntryPointAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ExitPoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ExitPoint__Group__0__Impl
- rule__ExitPoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExitPoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExitPointAccess().getExitPointKeyword_0()); }
-
- 'ExitPoint'
-
-{ after(grammarAccess.getExitPointAccess().getExitPointKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ExitPoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ExitPoint__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExitPoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExitPointAccess().getNameAssignment_1()); }
-(rule__ExitPoint__NameAssignment_1)
-{ after(grammarAccess.getExitPointAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ChoicePoint__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ChoicePoint__Group__0__Impl
- rule__ChoicePoint__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ChoicePoint__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getChoicePointAccess().getChoicePointKeyword_0()); }
-
- 'ChoicePoint'
-
-{ after(grammarAccess.getChoicePointAccess().getChoicePointKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ChoicePoint__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ChoicePoint__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ChoicePoint__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getChoicePointAccess().getNameAssignment_1()); }
-(rule__ChoicePoint__NameAssignment_1)
-{ after(grammarAccess.getChoicePointAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__InitialTransition__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__0__Impl
- rule__InitialTransition__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getTransitionKeyword_0()); }
-
- 'Transition'
-
-{ after(grammarAccess.getInitialTransitionAccess().getTransitionKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__1__Impl
- rule__InitialTransition__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getNameAssignment_1()); }
-(rule__InitialTransition__NameAssignment_1)?
-{ after(grammarAccess.getInitialTransitionAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__2__Impl
- rule__InitialTransition__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getInitialTransitionAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__3__Impl
- rule__InitialTransition__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getInitialKeyword_3()); }
-
- 'initial'
-
-{ after(grammarAccess.getInitialTransitionAccess().getInitialKeyword_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__4__Impl
- rule__InitialTransition__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-
- '->'
-
-{ after(grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__5__Impl
- rule__InitialTransition__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getToAssignment_5()); }
-(rule__InitialTransition__ToAssignment_5)
-{ after(grammarAccess.getInitialTransitionAccess().getToAssignment_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__6__Impl
- rule__InitialTransition__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-
- '{'
-
-{ after(grammarAccess.getInitialTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__7__Impl
- rule__InitialTransition__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getGroup_7()); }
-(rule__InitialTransition__Group_7__0)?
-{ after(grammarAccess.getInitialTransitionAccess().getGroup_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group__8__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getRightCurlyBracketKeyword_8()); }
-
- '}'
-
-{ after(grammarAccess.getInitialTransitionAccess().getRightCurlyBracketKeyword_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__InitialTransition__Group_7__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group_7__0__Impl
- rule__InitialTransition__Group_7__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group_7__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getActionKeyword_7_0()); }
-
- 'action'
-
-{ after(grammarAccess.getInitialTransitionAccess().getActionKeyword_7_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__InitialTransition__Group_7__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__InitialTransition__Group_7__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__Group_7__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getActionAssignment_7_1()); }
-(rule__InitialTransition__ActionAssignment_7_1)
-{ after(grammarAccess.getInitialTransitionAccess().getActionAssignment_7_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ContinuationTransition__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__0__Impl
- rule__ContinuationTransition__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getTransitionKeyword_0()); }
-
- 'Transition'
-
-{ after(grammarAccess.getContinuationTransitionAccess().getTransitionKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__1__Impl
- rule__ContinuationTransition__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getNameAssignment_1()); }
-(rule__ContinuationTransition__NameAssignment_1)?
-{ after(grammarAccess.getContinuationTransitionAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__2__Impl
- rule__ContinuationTransition__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getContinuationTransitionAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__3__Impl
- rule__ContinuationTransition__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getFromAssignment_3()); }
-(rule__ContinuationTransition__FromAssignment_3)
-{ after(grammarAccess.getContinuationTransitionAccess().getFromAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__4__Impl
- rule__ContinuationTransition__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-
- '->'
-
-{ after(grammarAccess.getContinuationTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__5__Impl
- rule__ContinuationTransition__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getToAssignment_5()); }
-(rule__ContinuationTransition__ToAssignment_5)
-{ after(grammarAccess.getContinuationTransitionAccess().getToAssignment_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__6__Impl
- rule__ContinuationTransition__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-
- '{'
-
-{ after(grammarAccess.getContinuationTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__7__Impl
- rule__ContinuationTransition__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getGroup_7()); }
-(rule__ContinuationTransition__Group_7__0)?
-{ after(grammarAccess.getContinuationTransitionAccess().getGroup_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group__8__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getRightCurlyBracketKeyword_8()); }
-
- '}'
-
-{ after(grammarAccess.getContinuationTransitionAccess().getRightCurlyBracketKeyword_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ContinuationTransition__Group_7__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group_7__0__Impl
- rule__ContinuationTransition__Group_7__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group_7__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getActionKeyword_7_0()); }
-
- 'action'
-
-{ after(grammarAccess.getContinuationTransitionAccess().getActionKeyword_7_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ContinuationTransition__Group_7__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ContinuationTransition__Group_7__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__Group_7__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getActionAssignment_7_1()); }
-(rule__ContinuationTransition__ActionAssignment_7_1)
-{ after(grammarAccess.getContinuationTransitionAccess().getActionAssignment_7_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__TriggeredTransition__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__0__Impl
- rule__TriggeredTransition__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getTransitionKeyword_0()); }
-
- 'Transition'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getTransitionKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__1__Impl
- rule__TriggeredTransition__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getNameAssignment_1()); }
-(rule__TriggeredTransition__NameAssignment_1)?
-{ after(grammarAccess.getTriggeredTransitionAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__2__Impl
- rule__TriggeredTransition__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__3__Impl
- rule__TriggeredTransition__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getFromAssignment_3()); }
-(rule__TriggeredTransition__FromAssignment_3)
-{ after(grammarAccess.getTriggeredTransitionAccess().getFromAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__4__Impl
- rule__TriggeredTransition__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-
- '->'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__5__Impl
- rule__TriggeredTransition__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getToAssignment_5()); }
-(rule__TriggeredTransition__ToAssignment_5)
-{ after(grammarAccess.getTriggeredTransitionAccess().getToAssignment_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__6__Impl
- rule__TriggeredTransition__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-
- '{'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__7__Impl
- rule__TriggeredTransition__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersKeyword_7()); }
-
- 'triggers'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersKeyword_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__8__Impl
- rule__TriggeredTransition__Group__9
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_8()); }
-
- '{'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__9
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__9__Impl
- rule__TriggeredTransition__Group__10
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__9__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_9()); }
-(rule__TriggeredTransition__TriggersAssignment_9)
-{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_9()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__10
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__10__Impl
- rule__TriggeredTransition__Group__11
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__10__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getGroup_10()); }
-(rule__TriggeredTransition__Group_10__0)*
-{ after(grammarAccess.getTriggeredTransitionAccess().getGroup_10()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__11
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__11__Impl
- rule__TriggeredTransition__Group__12
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__11__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_11()); }
-
- '}'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_11()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__12
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__12__Impl
- rule__TriggeredTransition__Group__13
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__12__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getGroup_12()); }
-(rule__TriggeredTransition__Group_12__0)?
-{ after(grammarAccess.getTriggeredTransitionAccess().getGroup_12()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group__13
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group__13__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group__13__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_13()); }
-
- '}'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_13()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__TriggeredTransition__Group_10__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group_10__0__Impl
- rule__TriggeredTransition__Group_10__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group_10__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getOrKeyword_10_0()); }
-
- 'or'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getOrKeyword_10_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group_10__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group_10__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group_10__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_10_1()); }
-(rule__TriggeredTransition__TriggersAssignment_10_1)
-{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_10_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__TriggeredTransition__Group_12__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group_12__0__Impl
- rule__TriggeredTransition__Group_12__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group_12__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getActionKeyword_12_0()); }
-
- 'action'
-
-{ after(grammarAccess.getTriggeredTransitionAccess().getActionKeyword_12_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TriggeredTransition__Group_12__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TriggeredTransition__Group_12__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__Group_12__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getActionAssignment_12_1()); }
-(rule__TriggeredTransition__ActionAssignment_12_1)
-{ after(grammarAccess.getTriggeredTransitionAccess().getActionAssignment_12_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CPBranchTransition__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__0__Impl
- rule__CPBranchTransition__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getTransitionKeyword_0()); }
-
- 'Transition'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getTransitionKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__1__Impl
- rule__CPBranchTransition__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getNameAssignment_1()); }
-(rule__CPBranchTransition__NameAssignment_1)?
-{ after(grammarAccess.getCPBranchTransitionAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__2__Impl
- rule__CPBranchTransition__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getColonKeyword_2()); }
-
- ':'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getColonKeyword_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__3__Impl
- rule__CPBranchTransition__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getFromAssignment_3()); }
-(rule__CPBranchTransition__FromAssignment_3)
-{ after(grammarAccess.getCPBranchTransitionAccess().getFromAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__4__Impl
- rule__CPBranchTransition__Group__5
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-
- '->'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__5
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__5__Impl
- rule__CPBranchTransition__Group__6
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__5__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getToAssignment_5()); }
-(rule__CPBranchTransition__ToAssignment_5)
-{ after(grammarAccess.getCPBranchTransitionAccess().getToAssignment_5()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__6
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__6__Impl
- rule__CPBranchTransition__Group__7
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__6__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-
- '{'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getLeftCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__7__Impl
- rule__CPBranchTransition__Group__8
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getCondKeyword_7()); }
-
- 'cond'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getCondKeyword_7()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__8
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__8__Impl
- rule__CPBranchTransition__Group__9
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__8__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getConditionAssignment_8()); }
-(rule__CPBranchTransition__ConditionAssignment_8)
-{ after(grammarAccess.getCPBranchTransitionAccess().getConditionAssignment_8()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__9
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__9__Impl
- rule__CPBranchTransition__Group__10
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__9__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getGroup_9()); }
-(rule__CPBranchTransition__Group_9__0)?
-{ after(grammarAccess.getCPBranchTransitionAccess().getGroup_9()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group__10
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group__10__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group__10__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getRightCurlyBracketKeyword_10()); }
-
- '}'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getRightCurlyBracketKeyword_10()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CPBranchTransition__Group_9__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group_9__0__Impl
- rule__CPBranchTransition__Group_9__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group_9__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getActionKeyword_9_0()); }
-
- 'action'
-
-{ after(grammarAccess.getCPBranchTransitionAccess().getActionKeyword_9_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__CPBranchTransition__Group_9__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__CPBranchTransition__Group_9__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__Group_9__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getActionAssignment_9_1()); }
-(rule__CPBranchTransition__ActionAssignment_9_1)
-{ after(grammarAccess.getCPBranchTransitionAccess().getActionAssignment_9_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__TrPointTerminal__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TrPointTerminal__Group__0__Impl
- rule__TrPointTerminal__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TrPointTerminal__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTrPointTerminalAccess().getMyKeyword_0()); }
-
- 'my'
-
-{ after(grammarAccess.getTrPointTerminalAccess().getMyKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__TrPointTerminal__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__TrPointTerminal__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TrPointTerminal__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTrPointTerminalAccess().getTrPointAssignment_1()); }
-(rule__TrPointTerminal__TrPointAssignment_1)
-{ after(grammarAccess.getTrPointTerminalAccess().getTrPointAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__SubStateTrPointTerminal__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubStateTrPointTerminal__Group__0__Impl
- rule__SubStateTrPointTerminal__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubStateTrPointTerminal__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointAssignment_0()); }
-(rule__SubStateTrPointTerminal__TrPointAssignment_0)
-{ after(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubStateTrPointTerminal__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubStateTrPointTerminal__Group__1__Impl
- rule__SubStateTrPointTerminal__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubStateTrPointTerminal__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getOfKeyword_1()); }
-
- 'of'
-
-{ after(grammarAccess.getSubStateTrPointTerminalAccess().getOfKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__SubStateTrPointTerminal__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__SubStateTrPointTerminal__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubStateTrPointTerminal__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getStateAssignment_2()); }
-(rule__SubStateTrPointTerminal__StateAssignment_2)
-{ after(grammarAccess.getSubStateTrPointTerminalAccess().getStateAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__ChoicepointTerminal__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ChoicepointTerminal__Group__0__Impl
- rule__ChoicepointTerminal__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ChoicepointTerminal__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getChoicepointTerminalAccess().getCpKeyword_0()); }
-
- 'cp'
-
-{ after(grammarAccess.getChoicepointTerminalAccess().getCpKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ChoicepointTerminal__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ChoicepointTerminal__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ChoicepointTerminal__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getChoicepointTerminalAccess().getCpAssignment_1()); }
-(rule__ChoicepointTerminal__CpAssignment_1)
-{ after(grammarAccess.getChoicepointTerminalAccess().getCpAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Trigger__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group__0__Impl
- rule__Trigger__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getLessThanSignKeyword_0()); }
-
- '<'
-
-{ after(grammarAccess.getTriggerAccess().getLessThanSignKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Trigger__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group__1__Impl
- rule__Trigger__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_1()); }
-(rule__Trigger__MsgFromIfPairsAssignment_1)
-{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Trigger__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group__2__Impl
- rule__Trigger__Group__3
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getGroup_2()); }
-(rule__Trigger__Group_2__0)*
-{ after(grammarAccess.getTriggerAccess().getGroup_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Trigger__Group__3
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group__3__Impl
- rule__Trigger__Group__4
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group__3__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getGuardAssignment_3()); }
-(rule__Trigger__GuardAssignment_3)?
-{ after(grammarAccess.getTriggerAccess().getGuardAssignment_3()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Trigger__Group__4
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group__4__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group__4__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getGreaterThanSignKeyword_4()); }
-
- '>'
-
-{ after(grammarAccess.getTriggerAccess().getGreaterThanSignKeyword_4()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Trigger__Group_2__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group_2__0__Impl
- rule__Trigger__Group_2__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group_2__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getVerticalLineKeyword_2_0()); }
-
- '|'
-
-{ after(grammarAccess.getTriggerAccess().getVerticalLineKeyword_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Trigger__Group_2__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Trigger__Group_2__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__Group_2__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_2_1()); }
-(rule__Trigger__MsgFromIfPairsAssignment_2_1)
-{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_2_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__MessageFromIf__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__MessageFromIf__Group__0__Impl
- rule__MessageFromIf__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageFromIf__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageFromIfAccess().getMessageAssignment_0()); }
-(rule__MessageFromIf__MessageAssignment_0)
-{ after(grammarAccess.getMessageFromIfAccess().getMessageAssignment_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__MessageFromIf__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__MessageFromIf__Group__1__Impl
- rule__MessageFromIf__Group__2
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageFromIf__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageFromIfAccess().getColonKeyword_1()); }
-
- ':'
-
-{ after(grammarAccess.getMessageFromIfAccess().getColonKeyword_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__MessageFromIf__Group__2
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__MessageFromIf__Group__2__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageFromIf__Group__2__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageFromIfAccess().getFromAssignment_2()); }
-(rule__MessageFromIf__FromAssignment_2)
-{ after(grammarAccess.getMessageFromIfAccess().getFromAssignment_2()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__Guard__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Guard__Group__0__Impl
- rule__Guard__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Guard__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getGuardAccess().getGuardKeyword_0()); }
-
- 'guard'
-
-{ after(grammarAccess.getGuardAccess().getGuardKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Guard__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Guard__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Guard__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getGuardAccess().getGuardAssignment_1()); }
-(rule__Guard__GuardAssignment_1)
-{ after(grammarAccess.getGuardAccess().getGuardAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Import__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Import__Group__0__Impl
- rule__Import__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Import__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportAccess().getImportKeyword_0()); }
-
- 'import'
-
-{ after(grammarAccess.getImportAccess().getImportKeyword_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__Import__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__Import__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Import__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); }
-(rule__Import__ImportedNamespaceAssignment_1)
-{ after(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ImportedFQN__Group__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ImportedFQN__Group__0__Impl
- rule__ImportedFQN__Group__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ImportedFQN__Group__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0()); }
- ruleFQN
-{ after(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ImportedFQN__Group__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ImportedFQN__Group__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ImportedFQN__Group__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportedFQNAccess().getGroup_1()); }
-(rule__ImportedFQN__Group_1__0)?
-{ after(grammarAccess.getImportedFQNAccess().getGroup_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ImportedFQN__Group_1__0
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ImportedFQN__Group_1__0__Impl
- rule__ImportedFQN__Group_1__1
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ImportedFQN__Group_1__0__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportedFQNAccess().getFullStopKeyword_1_0()); }
-
- '.'
-
-{ after(grammarAccess.getImportedFQNAccess().getFullStopKeyword_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ImportedFQN__Group_1__1
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ImportedFQN__Group_1__1__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ImportedFQN__Group_1__1__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportedFQNAccess().getAsteriskKeyword_1_1()); }
-
- '*'
-
-{ after(grammarAccess.getImportedFQNAccess().getAsteriskKeyword_1_1()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-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__RoomModel__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getNameFQNParserRuleCall_1_0()); }
- ruleFQN{ after(grammarAccess.getRoomModelAccess().getNameFQNParserRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__ImportsAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getImportsImportParserRuleCall_3_0()); }
- ruleImport{ after(grammarAccess.getRoomModelAccess().getImportsImportParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__DataClassesAssignment_4_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getDataClassesDataClassParserRuleCall_4_0_0()); }
- ruleDataClass{ after(grammarAccess.getRoomModelAccess().getDataClassesDataClassParserRuleCall_4_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__ProtocolClassesAssignment_4_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getProtocolClassesProtocolClassParserRuleCall_4_1_0()); }
- ruleProtocolClass{ after(grammarAccess.getRoomModelAccess().getProtocolClassesProtocolClassParserRuleCall_4_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__ActorClassesAssignment_4_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getActorClassesActorClassParserRuleCall_4_2_0()); }
- ruleActorClass{ after(grammarAccess.getRoomModelAccess().getActorClassesActorClassParserRuleCall_4_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__SubSystemClassesAssignment_4_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getSubSystemClassesSubSystemClassParserRuleCall_4_3_0()); }
- ruleSubSystemClass{ after(grammarAccess.getRoomModelAccess().getSubSystemClassesSubSystemClassParserRuleCall_4_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RoomModel__SystemsAssignment_4_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRoomModelAccess().getSystemsLogicalSystemParserRuleCall_4_4_0()); }
- ruleLogicalSystem{ after(grammarAccess.getRoomModelAccess().getSystemsLogicalSystemParserRuleCall_4_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TypedID__NameAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
- RULE_ID{ after(grammarAccess.getTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TypedID__TypeAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypedIDAccess().getTypeTypeParserRuleCall_2_0()); }
- ruleType{ after(grammarAccess.getTypedIDAccess().getTypeTypeParserRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeTypedID__NameAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
- RULE_ID{ after(grammarAccess.getFreeTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeTypedID__TypeAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypedIDAccess().getTypeFreeTypeParserRuleCall_2_0()); }
- ruleFreeType{ after(grammarAccess.getFreeTypedIDAccess().getTypeFreeTypeParserRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Type__PrimAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
- rulePrimitiveType{ after(grammarAccess.getTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Type__TypeAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTypeAccess().getTypeDataClassCrossReference_1_0()); }
-(
-{ before(grammarAccess.getTypeAccess().getTypeDataClassFQNParserRuleCall_1_0_1()); }
- ruleFQN{ after(grammarAccess.getTypeAccess().getTypeDataClassFQNParserRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getTypeAccess().getTypeDataClassCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeType__PrimAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
- rulePrimitiveType{ after(grammarAccess.getFreeTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__FreeType__TypeAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getFreeTypeAccess().getTypeIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getFreeTypeAccess().getTypeIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getDataClassAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__BaseAssignment_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getBaseDataClassCrossReference_2_1_0()); }
-(
-{ before(grammarAccess.getDataClassAccess().getBaseDataClassFQNParserRuleCall_2_1_0_1()); }
- ruleFQN{ after(grammarAccess.getDataClassAccess().getBaseDataClassFQNParserRuleCall_2_1_0_1()); }
-)
-{ after(grammarAccess.getDataClassAccess().getBaseDataClassCrossReference_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__ImportsAssignment_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getImportsImportParserRuleCall_4_0()); }
- ruleImport{ after(grammarAccess.getDataClassAccess().getImportsImportParserRuleCall_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__AttributesAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getAttributesAttributeParserRuleCall_5_0()); }
- ruleAttribute{ after(grammarAccess.getDataClassAccess().getAttributesAttributeParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DataClass__OperationsAssignment_6
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDataClassAccess().getOperationsOperationParserRuleCall_6_0()); }
- ruleOperation{ after(grammarAccess.getDataClassAccess().getOperationsOperationParserRuleCall_6_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getAttributeAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__SizeAssignment_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getSizeINTTerminalRuleCall_2_1_0()); }
- RULE_INT{ after(grammarAccess.getAttributeAccess().getSizeINTTerminalRuleCall_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Attribute__TypeAssignment_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getAttributeAccess().getTypeTypeParserRuleCall_4_0()); }
- ruleType{ after(grammarAccess.getAttributeAccess().getTypeTypeParserRuleCall_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getOperationAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__ArgumentsAssignment_3_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_0_0()); }
- ruleFreeTypedID{ after(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__ArgumentsAssignment_3_1_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_1_1_0()); }
- ruleFreeTypedID{ after(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_1_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__ReturntypeAssignment_5_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getReturntypeFreeTypeParserRuleCall_5_1_0()); }
- ruleFreeType{ after(grammarAccess.getOperationAccess().getReturntypeFreeTypeParserRuleCall_5_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Operation__DetailCodeAssignment_6
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getOperationAccess().getDetailCodeDetailCodeParserRuleCall_6_0()); }
- ruleDetailCode{ after(grammarAccess.getOperationAccess().getDetailCodeDetailCodeParserRuleCall_6_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getProtocolClassAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__BaseAssignment_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getBaseProtocolClassCrossReference_2_1_0()); }
-(
-{ before(grammarAccess.getProtocolClassAccess().getBaseProtocolClassFQNParserRuleCall_2_1_0_1()); }
- ruleFQN{ after(grammarAccess.getProtocolClassAccess().getBaseProtocolClassFQNParserRuleCall_2_1_0_1()); }
-)
-{ after(grammarAccess.getProtocolClassAccess().getBaseProtocolClassCrossReference_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__UserCode1Assignment_4_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getUserCode1DetailCodeParserRuleCall_4_1_0()); }
- ruleDetailCode{ after(grammarAccess.getProtocolClassAccess().getUserCode1DetailCodeParserRuleCall_4_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__UserCode2Assignment_5_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getUserCode2DetailCodeParserRuleCall_5_1_0()); }
- ruleDetailCode{ after(grammarAccess.getProtocolClassAccess().getUserCode2DetailCodeParserRuleCall_5_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__IncomingMessagesAssignment_8
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getIncomingMessagesMessageParserRuleCall_8_0()); }
- ruleMessage{ after(grammarAccess.getProtocolClassAccess().getIncomingMessagesMessageParserRuleCall_8_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__OutgoingMessagesAssignment_12
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getOutgoingMessagesMessageParserRuleCall_12_0()); }
- ruleMessage{ after(grammarAccess.getProtocolClassAccess().getOutgoingMessagesMessageParserRuleCall_12_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__RegularAssignment_14_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getRegularPortClassParserRuleCall_14_2_0()); }
- rulePortClass{ after(grammarAccess.getProtocolClassAccess().getRegularPortClassParserRuleCall_14_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__ConjugateAssignment_15_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getConjugatePortClassParserRuleCall_15_2_0()); }
- rulePortClass{ after(grammarAccess.getProtocolClassAccess().getConjugatePortClassParserRuleCall_15_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolClass__SemanticsAssignment_16
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolClassAccess().getSemanticsProtocolSemanticsParserRuleCall_16_0()); }
- ruleProtocolSemantics{ after(grammarAccess.getProtocolClassAccess().getSemanticsProtocolSemanticsParserRuleCall_16_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getMessageAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__ArgumentsAssignment_3_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_0_0()); }
- ruleTypedID{ after(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Message__ArgumentsAssignment_3_1_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_1_1_0()); }
- ruleTypedID{ after(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_1_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__UserCodeAssignment_1_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getUserCodeDetailCodeParserRuleCall_1_1_0()); }
- ruleDetailCode{ after(grammarAccess.getPortClassAccess().getUserCodeDetailCodeParserRuleCall_1_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__AttributesAssignment_2_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getAttributesAttributeParserRuleCall_2_0_0()); }
- ruleAttribute{ after(grammarAccess.getPortClassAccess().getAttributesAttributeParserRuleCall_2_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__OperationsAssignment_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getOperationsOperationParserRuleCall_2_1_0()); }
- ruleOperation{ after(grammarAccess.getPortClassAccess().getOperationsOperationParserRuleCall_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__PortClass__MsgHandlersAssignment_2_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortClassAccess().getMsgHandlersMessageHandlerParserRuleCall_2_2_0()); }
- ruleMessageHandler{ after(grammarAccess.getPortClassAccess().getMsgHandlersMessageHandlerParserRuleCall_2_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageHandler__MsgAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageHandlerAccess().getMsgMessageCrossReference_1_0()); }
-(
-{ before(grammarAccess.getMessageHandlerAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getMessageHandlerAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getMessageHandlerAccess().getMsgMessageCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageHandler__DetailCodeAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageHandlerAccess().getDetailCodeDetailCodeParserRuleCall_2_0()); }
- ruleDetailCode{ after(grammarAccess.getMessageHandlerAccess().getDetailCodeDetailCodeParserRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ProtocolSemantics__RulesAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getProtocolSemanticsAccess().getRulesSemanticsRuleParserRuleCall_2_0()); }
- ruleSemanticsRule{ after(grammarAccess.getProtocolSemanticsAccess().getRulesSemanticsRuleParserRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__MsgAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getMsgMessageCrossReference_1_0()); }
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getSemanticsInRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getSemanticsInRuleAccess().getMsgMessageCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsInRule__FollowUpsAssignment_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsInRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
- ruleSemanticsRule{ after(grammarAccess.getSemanticsInRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__MsgAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageCrossReference_1_0()); }
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SemanticsOutRule__FollowUpsAssignment_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
- ruleSemanticsRule{ after(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__AbstractAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
-(
-{ before(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
-
- 'abstract'
-
-{ after(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
-)
-
-{ after(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__NameAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getNameIDTerminalRuleCall_2_0()); }
- RULE_ID{ after(grammarAccess.getActorClassAccess().getNameIDTerminalRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__BaseAssignment_3_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getBaseActorClassCrossReference_3_1_0()); }
-(
-{ before(grammarAccess.getActorClassAccess().getBaseActorClassFQNParserRuleCall_3_1_0_1()); }
- ruleFQN{ after(grammarAccess.getActorClassAccess().getBaseActorClassFQNParserRuleCall_3_1_0_1()); }
-)
-{ after(grammarAccess.getActorClassAccess().getBaseActorClassCrossReference_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__IfPortsAssignment_5_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getIfPortsPortParserRuleCall_5_2_0()); }
- rulePort{ after(grammarAccess.getActorClassAccess().getIfPortsPortParserRuleCall_5_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__IfSPPsAssignment_5_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getIfSPPsSPPRefParserRuleCall_5_3_0()); }
- ruleSPPRef{ after(grammarAccess.getActorClassAccess().getIfSPPsSPPRefParserRuleCall_5_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__UserCode1Assignment_6_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getUserCode1DetailCodeParserRuleCall_6_2_1_0()); }
- ruleDetailCode{ after(grammarAccess.getActorClassAccess().getUserCode1DetailCodeParserRuleCall_6_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__UserCode2Assignment_6_3_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getUserCode2DetailCodeParserRuleCall_6_3_1_0()); }
- ruleDetailCode{ after(grammarAccess.getActorClassAccess().getUserCode2DetailCodeParserRuleCall_6_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__IntPortsAssignment_6_4_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getIntPortsPortParserRuleCall_6_4_0_0()); }
- rulePort{ after(grammarAccess.getActorClassAccess().getIntPortsPortParserRuleCall_6_4_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__ExtPortsAssignment_6_4_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getExtPortsExternalPortParserRuleCall_6_4_1_0()); }
- ruleExternalPort{ after(grammarAccess.getActorClassAccess().getExtPortsExternalPortParserRuleCall_6_4_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__ServiceImplementationsAssignment_6_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getServiceImplementationsServiceImplementationParserRuleCall_6_5_0()); }
- ruleServiceImplementation{ after(grammarAccess.getActorClassAccess().getServiceImplementationsServiceImplementationParserRuleCall_6_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__StrSAPsAssignment_6_6
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getStrSAPsSAPRefParserRuleCall_6_6_0()); }
- ruleSAPRef{ after(grammarAccess.getActorClassAccess().getStrSAPsSAPRefParserRuleCall_6_6_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__AttributesAssignment_6_7
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getAttributesAttributeParserRuleCall_6_7_0()); }
- ruleAttribute{ after(grammarAccess.getActorClassAccess().getAttributesAttributeParserRuleCall_6_7_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__ActorRefsAssignment_6_8
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getActorRefsActorRefParserRuleCall_6_8_0()); }
- ruleActorRef{ after(grammarAccess.getActorClassAccess().getActorRefsActorRefParserRuleCall_6_8_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__BindingsAssignment_6_9
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getBindingsBindingParserRuleCall_6_9_0()); }
- ruleBinding{ after(grammarAccess.getActorClassAccess().getBindingsBindingParserRuleCall_6_9_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__ConnectionsAssignment_6_10
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getConnectionsLayerConnectionParserRuleCall_6_10_0()); }
- ruleLayerConnection{ after(grammarAccess.getActorClassAccess().getConnectionsLayerConnectionParserRuleCall_6_10_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__OperationsAssignment_7_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getOperationsOperationParserRuleCall_7_2_0()); }
- ruleOperation{ after(grammarAccess.getActorClassAccess().getOperationsOperationParserRuleCall_7_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorClass__StateMachineAssignment_7_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorClassAccess().getStateMachineStateMachineParserRuleCall_7_3_0()); }
- ruleStateMachine{ after(grammarAccess.getActorClassAccess().getStateMachineStateMachineParserRuleCall_7_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__ConjugatedAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
-(
-{ before(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
-
- 'conjugated'
-
-{ after(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
-)
-
-{ after(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__NameAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getNameIDTerminalRuleCall_2_0()); }
- RULE_ID{ after(grammarAccess.getPortAccess().getNameIDTerminalRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__MultiplicityAssignment_3_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getMultiplicityINTTerminalRuleCall_3_1_0()); }
- RULE_INT{ after(grammarAccess.getPortAccess().getMultiplicityINTTerminalRuleCall_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Port__ProtocolAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getPortAccess().getProtocolProtocolClassCrossReference_5_0()); }
-(
-{ before(grammarAccess.getPortAccess().getProtocolProtocolClassFQNParserRuleCall_5_0_1()); }
- ruleFQN{ after(grammarAccess.getPortAccess().getProtocolProtocolClassFQNParserRuleCall_5_0_1()); }
-)
-{ after(grammarAccess.getPortAccess().getProtocolProtocolClassCrossReference_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExternalPort__IfportAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExternalPortAccess().getIfportPortCrossReference_2_0()); }
-(
-{ before(grammarAccess.getExternalPortAccess().getIfportPortIDTerminalRuleCall_2_0_1()); }
- RULE_ID{ after(grammarAccess.getExternalPortAccess().getIfportPortIDTerminalRuleCall_2_0_1()); }
-)
-{ after(grammarAccess.getExternalPortAccess().getIfportPortCrossReference_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SAPRef__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPRefAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getSAPRefAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SAPRef__ProtocolAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSAPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
-(
-{ before(grammarAccess.getSAPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
- ruleFQN{ after(grammarAccess.getSAPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
-)
-{ after(grammarAccess.getSAPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPRef__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPRefAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getSPPRefAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPRef__ProtocolAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
-(
-{ before(grammarAccess.getSPPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
- ruleFQN{ after(grammarAccess.getSPPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
-)
-{ after(grammarAccess.getSPPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ServiceImplementation__SppAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getServiceImplementationAccess().getSppSPPRefCrossReference_2_0()); }
-(
-{ before(grammarAccess.getServiceImplementationAccess().getSppSPPRefIDTerminalRuleCall_2_0_1()); }
- RULE_ID{ after(grammarAccess.getServiceImplementationAccess().getSppSPPRefIDTerminalRuleCall_2_0_1()); }
-)
-{ after(grammarAccess.getServiceImplementationAccess().getSppSPPRefCrossReference_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getLogicalSystemAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__SubSystemsAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getSubSystemsSubSystemRefParserRuleCall_3_0()); }
- ruleSubSystemRef{ after(grammarAccess.getLogicalSystemAccess().getSubSystemsSubSystemRefParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__BindingsAssignment_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getBindingsBindingParserRuleCall_4_0()); }
- ruleBinding{ after(grammarAccess.getLogicalSystemAccess().getBindingsBindingParserRuleCall_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalSystem__ConnectionsAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalSystemAccess().getConnectionsLayerConnectionParserRuleCall_5_0()); }
- ruleLayerConnection{ after(grammarAccess.getLogicalSystemAccess().getConnectionsLayerConnectionParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemRef__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemRefAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getSubSystemRefAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemRef__TypeAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassCrossReference_3_0()); }
-(
-{ before(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassFQNParserRuleCall_3_0_1()); }
- ruleFQN{ after(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassFQNParserRuleCall_3_0_1()); }
-)
-{ after(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassCrossReference_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getSubSystemClassAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__RelayPortsAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getRelayPortsPortParserRuleCall_3_0()); }
- rulePort{ after(grammarAccess.getSubSystemClassAccess().getRelayPortsPortParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__IfSPPsAssignment_4
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getIfSPPsSPPRefParserRuleCall_4_0()); }
- ruleSPPRef{ after(grammarAccess.getSubSystemClassAccess().getIfSPPsSPPRefParserRuleCall_4_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__ActorRefsAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getActorRefsActorRefParserRuleCall_5_0()); }
- ruleActorRef{ after(grammarAccess.getSubSystemClassAccess().getActorRefsActorRefParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__BindingsAssignment_6
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getBindingsBindingParserRuleCall_6_0()); }
- ruleBinding{ after(grammarAccess.getSubSystemClassAccess().getBindingsBindingParserRuleCall_6_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__ConnectionsAssignment_7
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getConnectionsLayerConnectionParserRuleCall_7_0()); }
- ruleLayerConnection{ after(grammarAccess.getSubSystemClassAccess().getConnectionsLayerConnectionParserRuleCall_7_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubSystemClass__ThreadsAssignment_8
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubSystemClassAccess().getThreadsLogicalThreadParserRuleCall_8_0()); }
- ruleLogicalThread{ after(grammarAccess.getSubSystemClassAccess().getThreadsLogicalThreadParserRuleCall_8_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getLogicalThreadAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__InstancesAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_3_0()); }
- ruleActorInstancePath{ after(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LogicalThread__InstancesAssignment_4_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_4_1_0()); }
- ruleActorInstancePath{ after(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_4_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstancePath__SegmentsAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_0_0()); }
- RULE_ID{ after(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstancePath__SegmentsAssignment_1_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_1_1_0()); }
- RULE_ID{ after(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_1_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Binding__Endpoint1Assignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingAccess().getEndpoint1BindingEndPointParserRuleCall_1_0()); }
- ruleBindingEndPoint{ after(grammarAccess.getBindingAccess().getEndpoint1BindingEndPointParserRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Binding__Endpoint2Assignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingAccess().getEndpoint2BindingEndPointParserRuleCall_3_0()); }
- ruleBindingEndPoint{ after(grammarAccess.getBindingAccess().getEndpoint2BindingEndPointParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BindingEndPoint__ActorRefAssignment_0_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefCrossReference_0_0_0()); }
-(
-{ before(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1()); }
- RULE_ID{ after(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1()); }
-)
-{ after(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefCrossReference_0_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BindingEndPoint__PortAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBindingEndPointAccess().getPortPortCrossReference_1_0()); }
-(
-{ before(grammarAccess.getBindingEndPointAccess().getPortPortIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getBindingEndPointAccess().getPortPortIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getBindingEndPointAccess().getPortPortCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LayerConnection__FromAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLayerConnectionAccess().getFromSAPointParserRuleCall_1_0()); }
- ruleSAPoint{ after(grammarAccess.getLayerConnectionAccess().getFromSAPointParserRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__LayerConnection__ToAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getLayerConnectionAccess().getToSPPointParserRuleCall_3_0()); }
- ruleSPPoint{ after(grammarAccess.getLayerConnectionAccess().getToSPPointParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefSAPoint__RefAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefSAPointAccess().getRefActorContainerRefCrossReference_1_0()); }
-(
-{ before(grammarAccess.getRefSAPointAccess().getRefActorContainerRefIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getRefSAPointAccess().getRefActorContainerRefIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getRefSAPointAccess().getRefActorContainerRefCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RelaySAPoint__RelayAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRelaySAPointAccess().getRelaySPPRefCrossReference_1_0()); }
-(
-{ before(grammarAccess.getRelaySAPointAccess().getRelaySPPRefIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getRelaySAPointAccess().getRelaySPPRefIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getRelaySAPointAccess().getRelaySPPRefCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPoint__RefAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPointAccess().getRefActorContainerRefCrossReference_0_0()); }
-(
-{ before(grammarAccess.getSPPointAccess().getRefActorContainerRefIDTerminalRuleCall_0_0_1()); }
- RULE_ID{ after(grammarAccess.getSPPointAccess().getRefActorContainerRefIDTerminalRuleCall_0_0_1()); }
-)
-{ after(grammarAccess.getSPPointAccess().getRefActorContainerRefCrossReference_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SPPoint__ServiceAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSPPointAccess().getServiceSPPRefCrossReference_2_0()); }
-(
-{ before(grammarAccess.getSPPointAccess().getServiceSPPRefIDTerminalRuleCall_2_0_1()); }
- RULE_ID{ after(grammarAccess.getSPPointAccess().getServiceSPPRefIDTerminalRuleCall_2_0_1()); }
-)
-{ after(grammarAccess.getSPPointAccess().getServiceSPPRefCrossReference_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorRef__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorRefAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getActorRefAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorRef__TypeAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorRefAccess().getTypeActorClassCrossReference_3_0()); }
-(
-{ before(grammarAccess.getActorRefAccess().getTypeActorClassFQNParserRuleCall_3_0_1()); }
- ruleFQN{ after(grammarAccess.getActorRefAccess().getTypeActorClassFQNParserRuleCall_3_0_1()); }
-)
-{ after(grammarAccess.getActorRefAccess().getTypeActorClassCrossReference_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__StatesAssignment_1_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getStatesStateParserRuleCall_1_0_0()); }
- ruleState{ after(grammarAccess.getStateGraphAccess().getStatesStateParserRuleCall_1_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__TrPointsAssignment_1_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getTrPointsTrPointParserRuleCall_1_1_0()); }
- ruleTrPoint{ after(grammarAccess.getStateGraphAccess().getTrPointsTrPointParserRuleCall_1_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__ChPointsAssignment_1_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getChPointsChoicePointParserRuleCall_1_2_0()); }
- ruleChoicePoint{ after(grammarAccess.getStateGraphAccess().getChPointsChoicePointParserRuleCall_1_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateGraph__TransitionsAssignment_1_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateGraphAccess().getTransitionsTransitionParserRuleCall_1_3_0()); }
- ruleTransition{ after(grammarAccess.getStateGraphAccess().getTransitionsTransitionParserRuleCall_1_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__StatesAssignment_2_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_2_0_0()); }
- ruleState{ after(grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_2_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__TrPointsAssignment_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getTrPointsTrPointParserRuleCall_2_1_0()); }
- ruleTrPoint{ after(grammarAccess.getStateMachineAccess().getTrPointsTrPointParserRuleCall_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__ChPointsAssignment_2_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getChPointsChoicePointParserRuleCall_2_2_0()); }
- ruleChoicePoint{ after(grammarAccess.getStateMachineAccess().getChPointsChoicePointParserRuleCall_2_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateMachine__TransitionsAssignment_2_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateMachineAccess().getTransitionsTransitionParserRuleCall_2_3_0()); }
- ruleTransition{ after(grammarAccess.getStateMachineAccess().getTransitionsTransitionParserRuleCall_2_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getBaseStateAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__EntryCodeAssignment_3_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
- ruleDetailCode{ after(grammarAccess.getBaseStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__ExitCodeAssignment_4_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
- ruleDetailCode{ after(grammarAccess.getBaseStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__BaseState__SubgraphAssignment_5_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getBaseStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
- ruleStateGraph{ after(grammarAccess.getBaseStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__BaseAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getBaseBaseStateCrossReference_1_0()); }
-(
-{ before(grammarAccess.getRefinedStateAccess().getBaseBaseStateFQNParserRuleCall_1_0_1()); }
- ruleFQN{ after(grammarAccess.getRefinedStateAccess().getBaseBaseStateFQNParserRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getRefinedStateAccess().getBaseBaseStateCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__EntryCodeAssignment_3_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
- ruleDetailCode{ after(grammarAccess.getRefinedStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__ExitCodeAssignment_4_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
- ruleDetailCode{ after(grammarAccess.getRefinedStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__RefinedState__SubgraphAssignment_5_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getRefinedStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
- ruleStateGraph{ after(grammarAccess.getRefinedStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__DetailCode__CommandsAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getDetailCodeAccess().getCommandsSTRINGTerminalRuleCall_1_0()); }
- RULE_STRING{ after(grammarAccess.getDetailCodeAccess().getCommandsSTRINGTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TransitionPoint__HandlerAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
-(
-{ before(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
-
- 'handler'
-
-{ after(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
-)
-
-{ after(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TransitionPoint__NameAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTransitionPointAccess().getNameIDTerminalRuleCall_2_0()); }
- RULE_ID{ after(grammarAccess.getTransitionPointAccess().getNameIDTerminalRuleCall_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__EntryPoint__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getEntryPointAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getEntryPointAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ExitPoint__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getExitPointAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getExitPointAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ChoicePoint__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getChoicePointAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getChoicePointAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getInitialTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__ToAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getInitialTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__InitialTransition__ActionAssignment_7_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getInitialTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
- ruleDetailCode{ after(grammarAccess.getInitialTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getContinuationTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__FromAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getContinuationTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__ToAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getContinuationTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ContinuationTransition__ActionAssignment_7_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getContinuationTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
- ruleDetailCode{ after(grammarAccess.getContinuationTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getTriggeredTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__FromAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getTriggeredTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__ToAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getTriggeredTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__TriggersAssignment_9
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_9_0()); }
- ruleTrigger{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_9_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__TriggersAssignment_10_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_10_1_0()); }
- ruleTrigger{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_10_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TriggeredTransition__ActionAssignment_12_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggeredTransitionAccess().getActionDetailCodeParserRuleCall_12_1_0()); }
- ruleDetailCode{ after(grammarAccess.getTriggeredTransitionAccess().getActionDetailCodeParserRuleCall_12_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__NameAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
- RULE_ID{ after(grammarAccess.getCPBranchTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__FromAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getCPBranchTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__ToAssignment_5
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
- ruleTransitionTerminal{ after(grammarAccess.getCPBranchTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__ConditionAssignment_8
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getConditionDetailCodeParserRuleCall_8_0()); }
- ruleDetailCode{ after(grammarAccess.getCPBranchTransitionAccess().getConditionDetailCodeParserRuleCall_8_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__CPBranchTransition__ActionAssignment_9_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getCPBranchTransitionAccess().getActionDetailCodeParserRuleCall_9_1_0()); }
- ruleDetailCode{ after(grammarAccess.getCPBranchTransitionAccess().getActionDetailCodeParserRuleCall_9_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__StateTerminal__StateAssignment
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getStateTerminalAccess().getStateBaseStateCrossReference_0()); }
-(
-{ before(grammarAccess.getStateTerminalAccess().getStateBaseStateIDTerminalRuleCall_0_1()); }
- RULE_ID{ after(grammarAccess.getStateTerminalAccess().getStateBaseStateIDTerminalRuleCall_0_1()); }
-)
-{ after(grammarAccess.getStateTerminalAccess().getStateBaseStateCrossReference_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__TrPointTerminal__TrPointAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointCrossReference_1_0()); }
-(
-{ before(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubStateTrPointTerminal__TrPointAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointCrossReference_0_0()); }
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_0_0_1()); }
- RULE_ID{ after(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_0_0_1()); }
-)
-{ after(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointCrossReference_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__SubStateTrPointTerminal__StateAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateCrossReference_2_0()); }
-(
-{ before(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateIDTerminalRuleCall_2_0_1()); }
- RULE_ID{ after(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateIDTerminalRuleCall_2_0_1()); }
-)
-{ after(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateCrossReference_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ChoicepointTerminal__CpAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointCrossReference_1_0()); }
-(
-{ before(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointIDTerminalRuleCall_1_0_1()); }
- RULE_ID{ after(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointIDTerminalRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointCrossReference_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__MsgFromIfPairsAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_1_0()); }
- ruleMessageFromIf{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__MsgFromIfPairsAssignment_2_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0()); }
- ruleMessageFromIf{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Trigger__GuardAssignment_3
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getTriggerAccess().getGuardGuardParserRuleCall_3_0()); }
- ruleGuard{ after(grammarAccess.getTriggerAccess().getGuardGuardParserRuleCall_3_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageFromIf__MessageAssignment_0
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageFromIfAccess().getMessageMessageCrossReference_0_0()); }
-(
-{ before(grammarAccess.getMessageFromIfAccess().getMessageMessageIDTerminalRuleCall_0_0_1()); }
- RULE_ID{ after(grammarAccess.getMessageFromIfAccess().getMessageMessageIDTerminalRuleCall_0_0_1()); }
-)
-{ after(grammarAccess.getMessageFromIfAccess().getMessageMessageCrossReference_0_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__MessageFromIf__FromAssignment_2
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemCrossReference_2_0()); }
-(
-{ before(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemIDTerminalRuleCall_2_0_1()); }
- RULE_ID{ after(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemIDTerminalRuleCall_2_0_1()); }
-)
-{ after(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemCrossReference_2_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Guard__GuardAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getGuardAccess().getGuardDetailCodeParserRuleCall_1_0()); }
- ruleDetailCode{ after(grammarAccess.getGuardAccess().getGuardDetailCodeParserRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__Import__ImportedNamespaceAssignment_1
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0()); }
- ruleImportedFQN{ after(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
-
-RULE_INT : ('0'..'9')+;
-
-RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
-
-RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
-
-RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
-
-RULE_WS : (' '|'\t'|'\r'|'\n')+;
-
-RULE_ANY_OTHER : .;
-
-
+/*
+* generated by Xtext
+*/
+grammar InternalRoom;
+
+options {
+ superClass=AbstractInternalContentAssistParser;
+
+}
+
+@lexer::header {
+package org.eclipse.etrice.core.ui.contentassist.antlr.internal;
+
+// Hack: Use our own Lexer superclass by means of import.
+// Currently there is no other way to specify the superclass for the lexer.
+import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
+}
+
+@parser::header {
+package org.eclipse.etrice.core.ui.contentassist.antlr.internal;
+
+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;
+import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
+import org.eclipse.etrice.core.services.RoomGrammarAccess;
+
+}
+
+@parser::members {
+
+ private RoomGrammarAccess grammarAccess;
+
+ public void setGrammarAccess(RoomGrammarAccess grammarAccess) {
+ this.grammarAccess = grammarAccess;
+ }
+
+ @Override
+ protected Grammar getGrammar() {
+ return grammarAccess.getGrammar();
+ }
+
+ @Override
+ protected String getValueForTokenName(String tokenName) {
+ return tokenName;
+ }
+
+}
+
+
+
+
+// Entry rule entryRuleRoomModel
+entryRuleRoomModel
+:
+{ before(grammarAccess.getRoomModelRule()); }
+ ruleRoomModel
+{ after(grammarAccess.getRoomModelRule()); }
+ EOF
+;
+
+// Rule RoomModel
+ruleRoomModel
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getRoomModelAccess().getGroup()); }
+(rule__RoomModel__Group__0)
+{ after(grammarAccess.getRoomModelAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+// Entry rule entryRuleStructureClass
+entryRuleStructureClass
+:
+{ before(grammarAccess.getStructureClassRule()); }
+ ruleStructureClass
+{ after(grammarAccess.getStructureClassRule()); }
+ EOF
+;
+
+// Rule StructureClass
+ruleStructureClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStructureClassAccess().getAlternatives()); }
+(rule__StructureClass__Alternatives)
+{ after(grammarAccess.getStructureClassAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleActorContainerClass
+entryRuleActorContainerClass
+:
+{ before(grammarAccess.getActorContainerClassRule()); }
+ ruleActorContainerClass
+{ after(grammarAccess.getActorContainerClassRule()); }
+ EOF
+;
+
+// Rule ActorContainerClass
+ruleActorContainerClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getActorContainerClassAccess().getAlternatives()); }
+(rule__ActorContainerClass__Alternatives)
+{ after(grammarAccess.getActorContainerClassAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTypedID
+entryRuleTypedID
+:
+{ before(grammarAccess.getTypedIDRule()); }
+ ruleTypedID
+{ after(grammarAccess.getTypedIDRule()); }
+ EOF
+;
+
+// Rule TypedID
+ruleTypedID
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTypedIDAccess().getGroup()); }
+(rule__TypedID__Group__0)
+{ after(grammarAccess.getTypedIDAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleFreeTypedID
+entryRuleFreeTypedID
+:
+{ before(grammarAccess.getFreeTypedIDRule()); }
+ ruleFreeTypedID
+{ after(grammarAccess.getFreeTypedIDRule()); }
+ EOF
+;
+
+// Rule FreeTypedID
+ruleFreeTypedID
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getFreeTypedIDAccess().getGroup()); }
+(rule__FreeTypedID__Group__0)
+{ after(grammarAccess.getFreeTypedIDAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleType
+entryRuleType
+:
+{ before(grammarAccess.getTypeRule()); }
+ ruleType
+{ after(grammarAccess.getTypeRule()); }
+ EOF
+;
+
+// Rule Type
+ruleType
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTypeAccess().getAlternatives()); }
+(rule__Type__Alternatives)
+{ after(grammarAccess.getTypeAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleFreeType
+entryRuleFreeType
+:
+{ before(grammarAccess.getFreeTypeRule()); }
+ ruleFreeType
+{ after(grammarAccess.getFreeTypeRule()); }
+ EOF
+;
+
+// Rule FreeType
+ruleFreeType
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getFreeTypeAccess().getAlternatives()); }
+(rule__FreeType__Alternatives)
+{ after(grammarAccess.getFreeTypeAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleDataClass
+entryRuleDataClass
+:
+{ before(grammarAccess.getDataClassRule()); }
+ ruleDataClass
+{ after(grammarAccess.getDataClassRule()); }
+ EOF
+;
+
+// Rule DataClass
+ruleDataClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDataClassAccess().getGroup()); }
+(rule__DataClass__Group__0)
+{ after(grammarAccess.getDataClassAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleAttribute
+entryRuleAttribute
+:
+{ before(grammarAccess.getAttributeRule()); }
+ ruleAttribute
+{ after(grammarAccess.getAttributeRule()); }
+ EOF
+;
+
+// Rule Attribute
+ruleAttribute
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getAttributeAccess().getGroup()); }
+(rule__Attribute__Group__0)
+{ after(grammarAccess.getAttributeAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleOperation
+entryRuleOperation
+:
+{ before(grammarAccess.getOperationRule()); }
+ ruleOperation
+{ after(grammarAccess.getOperationRule()); }
+ EOF
+;
+
+// Rule Operation
+ruleOperation
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getOperationAccess().getGroup()); }
+(rule__Operation__Group__0)
+{ after(grammarAccess.getOperationAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleProtocolClass
+entryRuleProtocolClass
+:
+{ before(grammarAccess.getProtocolClassRule()); }
+ ruleProtocolClass
+{ after(grammarAccess.getProtocolClassRule()); }
+ EOF
+;
+
+// Rule ProtocolClass
+ruleProtocolClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getProtocolClassAccess().getGroup()); }
+(rule__ProtocolClass__Group__0)
+{ after(grammarAccess.getProtocolClassAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleMessage
+entryRuleMessage
+:
+{ before(grammarAccess.getMessageRule()); }
+ ruleMessage
+{ after(grammarAccess.getMessageRule()); }
+ EOF
+;
+
+// Rule Message
+ruleMessage
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getMessageAccess().getGroup()); }
+(rule__Message__Group__0)
+{ after(grammarAccess.getMessageAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRulePortClass
+entryRulePortClass
+:
+{ before(grammarAccess.getPortClassRule()); }
+ rulePortClass
+{ after(grammarAccess.getPortClassRule()); }
+ EOF
+;
+
+// Rule PortClass
+rulePortClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getPortClassAccess().getGroup()); }
+(rule__PortClass__Group__0)
+{ after(grammarAccess.getPortClassAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleMessageHandler
+entryRuleMessageHandler
+:
+{ before(grammarAccess.getMessageHandlerRule()); }
+ ruleMessageHandler
+{ after(grammarAccess.getMessageHandlerRule()); }
+ EOF
+;
+
+// Rule MessageHandler
+ruleMessageHandler
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getMessageHandlerAccess().getGroup()); }
+(rule__MessageHandler__Group__0)
+{ after(grammarAccess.getMessageHandlerAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleProtocolSemantics
+entryRuleProtocolSemantics
+:
+{ before(grammarAccess.getProtocolSemanticsRule()); }
+ ruleProtocolSemantics
+{ after(grammarAccess.getProtocolSemanticsRule()); }
+ EOF
+;
+
+// Rule ProtocolSemantics
+ruleProtocolSemantics
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getGroup()); }
+(rule__ProtocolSemantics__Group__0)
+{ after(grammarAccess.getProtocolSemanticsAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSemanticsRule
+entryRuleSemanticsRule
+:
+{ before(grammarAccess.getSemanticsRuleRule()); }
+ ruleSemanticsRule
+{ after(grammarAccess.getSemanticsRuleRule()); }
+ EOF
+;
+
+// Rule SemanticsRule
+ruleSemanticsRule
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSemanticsRuleAccess().getAlternatives()); }
+(rule__SemanticsRule__Alternatives)
+{ after(grammarAccess.getSemanticsRuleAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSemanticsInRule
+entryRuleSemanticsInRule
+:
+{ before(grammarAccess.getSemanticsInRuleRule()); }
+ ruleSemanticsInRule
+{ after(grammarAccess.getSemanticsInRuleRule()); }
+ EOF
+;
+
+// Rule SemanticsInRule
+ruleSemanticsInRule
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getGroup()); }
+(rule__SemanticsInRule__Group__0)
+{ after(grammarAccess.getSemanticsInRuleAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSemanticsOutRule
+entryRuleSemanticsOutRule
+:
+{ before(grammarAccess.getSemanticsOutRuleRule()); }
+ ruleSemanticsOutRule
+{ after(grammarAccess.getSemanticsOutRuleRule()); }
+ EOF
+;
+
+// Rule SemanticsOutRule
+ruleSemanticsOutRule
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getGroup()); }
+(rule__SemanticsOutRule__Group__0)
+{ after(grammarAccess.getSemanticsOutRuleAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleActorClass
+entryRuleActorClass
+:
+{ before(grammarAccess.getActorClassRule()); }
+ ruleActorClass
+{ after(grammarAccess.getActorClassRule()); }
+ EOF
+;
+
+// Rule ActorClass
+ruleActorClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getActorClassAccess().getGroup()); }
+(rule__ActorClass__Group__0)
+{ after(grammarAccess.getActorClassAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+// Entry rule entryRulePort
+entryRulePort
+:
+{ before(grammarAccess.getPortRule()); }
+ rulePort
+{ after(grammarAccess.getPortRule()); }
+ EOF
+;
+
+// Rule Port
+rulePort
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getPortAccess().getGroup()); }
+(rule__Port__Group__0)
+{ after(grammarAccess.getPortAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleExternalPort
+entryRuleExternalPort
+:
+{ before(grammarAccess.getExternalPortRule()); }
+ ruleExternalPort
+{ after(grammarAccess.getExternalPortRule()); }
+ EOF
+;
+
+// Rule ExternalPort
+ruleExternalPort
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getExternalPortAccess().getGroup()); }
+(rule__ExternalPort__Group__0)
+{ after(grammarAccess.getExternalPortAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSAPRef
+entryRuleSAPRef
+:
+{ before(grammarAccess.getSAPRefRule()); }
+ ruleSAPRef
+{ after(grammarAccess.getSAPRefRule()); }
+ EOF
+;
+
+// Rule SAPRef
+ruleSAPRef
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSAPRefAccess().getGroup()); }
+(rule__SAPRef__Group__0)
+{ after(grammarAccess.getSAPRefAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSPPRef
+entryRuleSPPRef
+:
+{ before(grammarAccess.getSPPRefRule()); }
+ ruleSPPRef
+{ after(grammarAccess.getSPPRefRule()); }
+ EOF
+;
+
+// Rule SPPRef
+ruleSPPRef
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSPPRefAccess().getGroup()); }
+(rule__SPPRef__Group__0)
+{ after(grammarAccess.getSPPRefAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleServiceImplementation
+entryRuleServiceImplementation
+:
+{ before(grammarAccess.getServiceImplementationRule()); }
+ ruleServiceImplementation
+{ after(grammarAccess.getServiceImplementationRule()); }
+ EOF
+;
+
+// Rule ServiceImplementation
+ruleServiceImplementation
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getServiceImplementationAccess().getGroup()); }
+(rule__ServiceImplementation__Group__0)
+{ after(grammarAccess.getServiceImplementationAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleLogicalSystem
+entryRuleLogicalSystem
+:
+{ before(grammarAccess.getLogicalSystemRule()); }
+ ruleLogicalSystem
+{ after(grammarAccess.getLogicalSystemRule()); }
+ EOF
+;
+
+// Rule LogicalSystem
+ruleLogicalSystem
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getLogicalSystemAccess().getGroup()); }
+(rule__LogicalSystem__Group__0)
+{ after(grammarAccess.getLogicalSystemAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+// Entry rule entryRuleSubSystemRef
+entryRuleSubSystemRef
+:
+{ before(grammarAccess.getSubSystemRefRule()); }
+ ruleSubSystemRef
+{ after(grammarAccess.getSubSystemRefRule()); }
+ EOF
+;
+
+// Rule SubSystemRef
+ruleSubSystemRef
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSubSystemRefAccess().getGroup()); }
+(rule__SubSystemRef__Group__0)
+{ after(grammarAccess.getSubSystemRefAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSubSystemClass
+entryRuleSubSystemClass
+:
+{ before(grammarAccess.getSubSystemClassRule()); }
+ ruleSubSystemClass
+{ after(grammarAccess.getSubSystemClassRule()); }
+ EOF
+;
+
+// Rule SubSystemClass
+ruleSubSystemClass
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSubSystemClassAccess().getGroup()); }
+(rule__SubSystemClass__Group__0)
+{ after(grammarAccess.getSubSystemClassAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleLogicalThread
+entryRuleLogicalThread
+:
+{ before(grammarAccess.getLogicalThreadRule()); }
+ ruleLogicalThread
+{ after(grammarAccess.getLogicalThreadRule()); }
+ EOF
+;
+
+// Rule LogicalThread
+ruleLogicalThread
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getLogicalThreadAccess().getGroup()); }
+(rule__LogicalThread__Group__0)
+{ after(grammarAccess.getLogicalThreadAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleActorInstancePath
+entryRuleActorInstancePath
+:
+{ before(grammarAccess.getActorInstancePathRule()); }
+ ruleActorInstancePath
+{ after(grammarAccess.getActorInstancePathRule()); }
+ EOF
+;
+
+// Rule ActorInstancePath
+ruleActorInstancePath
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getActorInstancePathAccess().getGroup()); }
+(rule__ActorInstancePath__Group__0)
+{ after(grammarAccess.getActorInstancePathAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleBinding
+entryRuleBinding
+:
+{ before(grammarAccess.getBindingRule()); }
+ ruleBinding
+{ after(grammarAccess.getBindingRule()); }
+ EOF
+;
+
+// Rule Binding
+ruleBinding
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getBindingAccess().getGroup()); }
+(rule__Binding__Group__0)
+{ after(grammarAccess.getBindingAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleBindingEndPoint
+entryRuleBindingEndPoint
+:
+{ before(grammarAccess.getBindingEndPointRule()); }
+ ruleBindingEndPoint
+{ after(grammarAccess.getBindingEndPointRule()); }
+ EOF
+;
+
+// Rule BindingEndPoint
+ruleBindingEndPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getBindingEndPointAccess().getGroup()); }
+(rule__BindingEndPoint__Group__0)
+{ after(grammarAccess.getBindingEndPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleLayerConnection
+entryRuleLayerConnection
+:
+{ before(grammarAccess.getLayerConnectionRule()); }
+ ruleLayerConnection
+{ after(grammarAccess.getLayerConnectionRule()); }
+ EOF
+;
+
+// Rule LayerConnection
+ruleLayerConnection
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getLayerConnectionAccess().getGroup()); }
+(rule__LayerConnection__Group__0)
+{ after(grammarAccess.getLayerConnectionAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSAPoint
+entryRuleSAPoint
+:
+{ before(grammarAccess.getSAPointRule()); }
+ ruleSAPoint
+{ after(grammarAccess.getSAPointRule()); }
+ EOF
+;
+
+// Rule SAPoint
+ruleSAPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSAPointAccess().getAlternatives()); }
+(rule__SAPoint__Alternatives)
+{ after(grammarAccess.getSAPointAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleRefSAPoint
+entryRuleRefSAPoint
+:
+{ before(grammarAccess.getRefSAPointRule()); }
+ ruleRefSAPoint
+{ after(grammarAccess.getRefSAPointRule()); }
+ EOF
+;
+
+// Rule RefSAPoint
+ruleRefSAPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getRefSAPointAccess().getGroup()); }
+(rule__RefSAPoint__Group__0)
+{ after(grammarAccess.getRefSAPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleRelaySAPoint
+entryRuleRelaySAPoint
+:
+{ before(grammarAccess.getRelaySAPointRule()); }
+ ruleRelaySAPoint
+{ after(grammarAccess.getRelaySAPointRule()); }
+ EOF
+;
+
+// Rule RelaySAPoint
+ruleRelaySAPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getRelaySAPointAccess().getGroup()); }
+(rule__RelaySAPoint__Group__0)
+{ after(grammarAccess.getRelaySAPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSPPoint
+entryRuleSPPoint
+:
+{ before(grammarAccess.getSPPointRule()); }
+ ruleSPPoint
+{ after(grammarAccess.getSPPointRule()); }
+ EOF
+;
+
+// Rule SPPoint
+ruleSPPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSPPointAccess().getGroup()); }
+(rule__SPPoint__Group__0)
+{ after(grammarAccess.getSPPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleActorRef
+entryRuleActorRef
+:
+{ before(grammarAccess.getActorRefRule()); }
+ ruleActorRef
+{ after(grammarAccess.getActorRefRule()); }
+ EOF
+;
+
+// Rule ActorRef
+ruleActorRef
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getActorRefAccess().getGroup()); }
+(rule__ActorRef__Group__0)
+{ after(grammarAccess.getActorRefAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleStateGraphNode
+entryRuleStateGraphNode
+:
+{ before(grammarAccess.getStateGraphNodeRule()); }
+ ruleStateGraphNode
+{ after(grammarAccess.getStateGraphNodeRule()); }
+ EOF
+;
+
+// Rule StateGraphNode
+ruleStateGraphNode
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStateGraphNodeAccess().getAlternatives()); }
+(rule__StateGraphNode__Alternatives)
+{ after(grammarAccess.getStateGraphNodeAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+// Entry rule entryRuleState
+entryRuleState
+:
+{ before(grammarAccess.getStateRule()); }
+ ruleState
+{ after(grammarAccess.getStateRule()); }
+ EOF
+;
+
+// Rule State
+ruleState
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStateAccess().getAlternatives()); }
+(rule__State__Alternatives)
+{ after(grammarAccess.getStateAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleStateGraph
+entryRuleStateGraph
+:
+{ before(grammarAccess.getStateGraphRule()); }
+ ruleStateGraph
+{ after(grammarAccess.getStateGraphRule()); }
+ EOF
+;
+
+// Rule StateGraph
+ruleStateGraph
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStateGraphAccess().getGroup()); }
+(rule__StateGraph__Group__0)
+{ after(grammarAccess.getStateGraphAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleStateMachine
+entryRuleStateMachine
+:
+{ before(grammarAccess.getStateMachineRule()); }
+ ruleStateMachine
+{ after(grammarAccess.getStateMachineRule()); }
+ EOF
+;
+
+// Rule StateMachine
+ruleStateMachine
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStateMachineAccess().getGroup()); }
+(rule__StateMachine__Group__0)
+{ after(grammarAccess.getStateMachineAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleBaseState
+entryRuleBaseState
+:
+{ before(grammarAccess.getBaseStateRule()); }
+ ruleBaseState
+{ after(grammarAccess.getBaseStateRule()); }
+ EOF
+;
+
+// Rule BaseState
+ruleBaseState
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getBaseStateAccess().getGroup()); }
+(rule__BaseState__Group__0)
+{ after(grammarAccess.getBaseStateAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleRefinedState
+entryRuleRefinedState
+:
+{ before(grammarAccess.getRefinedStateRule()); }
+ ruleRefinedState
+{ after(grammarAccess.getRefinedStateRule()); }
+ EOF
+;
+
+// Rule RefinedState
+ruleRefinedState
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getRefinedStateAccess().getGroup()); }
+(rule__RefinedState__Group__0)
+{ after(grammarAccess.getRefinedStateAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleDetailCode
+entryRuleDetailCode
+:
+{ before(grammarAccess.getDetailCodeRule()); }
+ ruleDetailCode
+{ after(grammarAccess.getDetailCodeRule()); }
+ EOF
+;
+
+// Rule DetailCode
+ruleDetailCode
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDetailCodeAccess().getGroup()); }
+(rule__DetailCode__Group__0)
+{ after(grammarAccess.getDetailCodeAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTrPoint
+entryRuleTrPoint
+:
+{ before(grammarAccess.getTrPointRule()); }
+ ruleTrPoint
+{ after(grammarAccess.getTrPointRule()); }
+ EOF
+;
+
+// Rule TrPoint
+ruleTrPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTrPointAccess().getAlternatives()); }
+(rule__TrPoint__Alternatives)
+{ after(grammarAccess.getTrPointAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTransitionPoint
+entryRuleTransitionPoint
+:
+{ before(grammarAccess.getTransitionPointRule()); }
+ ruleTransitionPoint
+{ after(grammarAccess.getTransitionPointRule()); }
+ EOF
+;
+
+// Rule TransitionPoint
+ruleTransitionPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTransitionPointAccess().getGroup()); }
+(rule__TransitionPoint__Group__0)
+{ after(grammarAccess.getTransitionPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleEntryPoint
+entryRuleEntryPoint
+:
+{ before(grammarAccess.getEntryPointRule()); }
+ ruleEntryPoint
+{ after(grammarAccess.getEntryPointRule()); }
+ EOF
+;
+
+// Rule EntryPoint
+ruleEntryPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getEntryPointAccess().getGroup()); }
+(rule__EntryPoint__Group__0)
+{ after(grammarAccess.getEntryPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleExitPoint
+entryRuleExitPoint
+:
+{ before(grammarAccess.getExitPointRule()); }
+ ruleExitPoint
+{ after(grammarAccess.getExitPointRule()); }
+ EOF
+;
+
+// Rule ExitPoint
+ruleExitPoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getExitPointAccess().getGroup()); }
+(rule__ExitPoint__Group__0)
+{ after(grammarAccess.getExitPointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleChoicePoint
+entryRuleChoicePoint
+:
+{ before(grammarAccess.getChoicePointRule()); }
+ ruleChoicePoint
+{ after(grammarAccess.getChoicePointRule()); }
+ EOF
+;
+
+// Rule ChoicePoint
+ruleChoicePoint
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getChoicePointAccess().getGroup()); }
+(rule__ChoicePoint__Group__0)
+{ after(grammarAccess.getChoicePointAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTransition
+entryRuleTransition
+:
+{ before(grammarAccess.getTransitionRule()); }
+ ruleTransition
+{ after(grammarAccess.getTransitionRule()); }
+ EOF
+;
+
+// Rule Transition
+ruleTransition
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTransitionAccess().getAlternatives()); }
+(rule__Transition__Alternatives)
+{ after(grammarAccess.getTransitionAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleNonInitialTransition
+entryRuleNonInitialTransition
+:
+{ before(grammarAccess.getNonInitialTransitionRule()); }
+ ruleNonInitialTransition
+{ after(grammarAccess.getNonInitialTransitionRule()); }
+ EOF
+;
+
+// Rule NonInitialTransition
+ruleNonInitialTransition
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getNonInitialTransitionAccess().getAlternatives()); }
+(rule__NonInitialTransition__Alternatives)
+{ after(grammarAccess.getNonInitialTransitionAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleInitialTransition
+entryRuleInitialTransition
+:
+{ before(grammarAccess.getInitialTransitionRule()); }
+ ruleInitialTransition
+{ after(grammarAccess.getInitialTransitionRule()); }
+ EOF
+;
+
+// Rule InitialTransition
+ruleInitialTransition
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getInitialTransitionAccess().getGroup()); }
+(rule__InitialTransition__Group__0)
+{ after(grammarAccess.getInitialTransitionAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleContinuationTransition
+entryRuleContinuationTransition
+:
+{ before(grammarAccess.getContinuationTransitionRule()); }
+ ruleContinuationTransition
+{ after(grammarAccess.getContinuationTransitionRule()); }
+ EOF
+;
+
+// Rule ContinuationTransition
+ruleContinuationTransition
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getGroup()); }
+(rule__ContinuationTransition__Group__0)
+{ after(grammarAccess.getContinuationTransitionAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTriggeredTransition
+entryRuleTriggeredTransition
+:
+{ before(grammarAccess.getTriggeredTransitionRule()); }
+ ruleTriggeredTransition
+{ after(grammarAccess.getTriggeredTransitionRule()); }
+ EOF
+;
+
+// Rule TriggeredTransition
+ruleTriggeredTransition
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getGroup()); }
+(rule__TriggeredTransition__Group__0)
+{ after(grammarAccess.getTriggeredTransitionAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleCPBranchTransition
+entryRuleCPBranchTransition
+:
+{ before(grammarAccess.getCPBranchTransitionRule()); }
+ ruleCPBranchTransition
+{ after(grammarAccess.getCPBranchTransitionRule()); }
+ EOF
+;
+
+// Rule CPBranchTransition
+ruleCPBranchTransition
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getGroup()); }
+(rule__CPBranchTransition__Group__0)
+{ after(grammarAccess.getCPBranchTransitionAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTransitionTerminal
+entryRuleTransitionTerminal
+:
+{ before(grammarAccess.getTransitionTerminalRule()); }
+ ruleTransitionTerminal
+{ after(grammarAccess.getTransitionTerminalRule()); }
+ EOF
+;
+
+// Rule TransitionTerminal
+ruleTransitionTerminal
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTransitionTerminalAccess().getAlternatives()); }
+(rule__TransitionTerminal__Alternatives)
+{ after(grammarAccess.getTransitionTerminalAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleStateTerminal
+entryRuleStateTerminal
+:
+{ before(grammarAccess.getStateTerminalRule()); }
+ ruleStateTerminal
+{ after(grammarAccess.getStateTerminalRule()); }
+ EOF
+;
+
+// Rule StateTerminal
+ruleStateTerminal
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStateTerminalAccess().getStateAssignment()); }
+(rule__StateTerminal__StateAssignment)
+{ after(grammarAccess.getStateTerminalAccess().getStateAssignment()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTrPointTerminal
+entryRuleTrPointTerminal
+:
+{ before(grammarAccess.getTrPointTerminalRule()); }
+ ruleTrPointTerminal
+{ after(grammarAccess.getTrPointTerminalRule()); }
+ EOF
+;
+
+// Rule TrPointTerminal
+ruleTrPointTerminal
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTrPointTerminalAccess().getGroup()); }
+(rule__TrPointTerminal__Group__0)
+{ after(grammarAccess.getTrPointTerminalAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSubStateTrPointTerminal
+entryRuleSubStateTrPointTerminal
+:
+{ before(grammarAccess.getSubStateTrPointTerminalRule()); }
+ ruleSubStateTrPointTerminal
+{ after(grammarAccess.getSubStateTrPointTerminalRule()); }
+ EOF
+;
+
+// Rule SubStateTrPointTerminal
+ruleSubStateTrPointTerminal
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getGroup()); }
+(rule__SubStateTrPointTerminal__Group__0)
+{ after(grammarAccess.getSubStateTrPointTerminalAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleChoicepointTerminal
+entryRuleChoicepointTerminal
+:
+{ before(grammarAccess.getChoicepointTerminalRule()); }
+ ruleChoicepointTerminal
+{ after(grammarAccess.getChoicepointTerminalRule()); }
+ EOF
+;
+
+// Rule ChoicepointTerminal
+ruleChoicepointTerminal
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getChoicepointTerminalAccess().getGroup()); }
+(rule__ChoicepointTerminal__Group__0)
+{ after(grammarAccess.getChoicepointTerminalAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleTrigger
+entryRuleTrigger
+:
+{ before(grammarAccess.getTriggerRule()); }
+ ruleTrigger
+{ after(grammarAccess.getTriggerRule()); }
+ EOF
+;
+
+// Rule Trigger
+ruleTrigger
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getTriggerAccess().getGroup()); }
+(rule__Trigger__Group__0)
+{ after(grammarAccess.getTriggerAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleMessageFromIf
+entryRuleMessageFromIf
+:
+{ before(grammarAccess.getMessageFromIfRule()); }
+ ruleMessageFromIf
+{ after(grammarAccess.getMessageFromIfRule()); }
+ EOF
+;
+
+// Rule MessageFromIf
+ruleMessageFromIf
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getMessageFromIfAccess().getGroup()); }
+(rule__MessageFromIf__Group__0)
+{ after(grammarAccess.getMessageFromIfAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleGuard
+entryRuleGuard
+:
+{ before(grammarAccess.getGuardRule()); }
+ ruleGuard
+{ after(grammarAccess.getGuardRule()); }
+ EOF
+;
+
+// Rule Guard
+ruleGuard
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getGuardAccess().getGroup()); }
+(rule__Guard__Group__0)
+{ after(grammarAccess.getGuardAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleImport
+entryRuleImport
+:
+{ before(grammarAccess.getImportRule()); }
+ ruleImport
+{ after(grammarAccess.getImportRule()); }
+ EOF
+;
+
+// Rule Import
+ruleImport
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getImportAccess().getGroup()); }
+(rule__Import__Group__0)
+{ after(grammarAccess.getImportAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleImportedFQN
+entryRuleImportedFQN
+:
+{ before(grammarAccess.getImportedFQNRule()); }
+ ruleImportedFQN
+{ after(grammarAccess.getImportedFQNRule()); }
+ EOF
+;
+
+// Rule ImportedFQN
+ruleImportedFQN
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getImportedFQNAccess().getGroup()); }
+(rule__ImportedFQN__Group__0)
+{ after(grammarAccess.getImportedFQNAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// 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);
+}
+
+
+
+
+// Rule PrimitiveType
+rulePrimitiveType
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPrimitiveTypeAccess().getAlternatives()); }
+(rule__PrimitiveType__Alternatives)
+{ after(grammarAccess.getPrimitiveTypeAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__RoomModel__Alternatives_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getDataClassesAssignment_4_0()); }
+(rule__RoomModel__DataClassesAssignment_4_0)
+{ after(grammarAccess.getRoomModelAccess().getDataClassesAssignment_4_0()); }
+)
+
+ |(
+{ before(grammarAccess.getRoomModelAccess().getProtocolClassesAssignment_4_1()); }
+(rule__RoomModel__ProtocolClassesAssignment_4_1)
+{ after(grammarAccess.getRoomModelAccess().getProtocolClassesAssignment_4_1()); }
+)
+
+ |(
+{ before(grammarAccess.getRoomModelAccess().getActorClassesAssignment_4_2()); }
+(rule__RoomModel__ActorClassesAssignment_4_2)
+{ after(grammarAccess.getRoomModelAccess().getActorClassesAssignment_4_2()); }
+)
+
+ |(
+{ before(grammarAccess.getRoomModelAccess().getSubSystemClassesAssignment_4_3()); }
+(rule__RoomModel__SubSystemClassesAssignment_4_3)
+{ after(grammarAccess.getRoomModelAccess().getSubSystemClassesAssignment_4_3()); }
+)
+
+ |(
+{ before(grammarAccess.getRoomModelAccess().getSystemsAssignment_4_4()); }
+(rule__RoomModel__SystemsAssignment_4_4)
+{ after(grammarAccess.getRoomModelAccess().getSystemsAssignment_4_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StructureClass__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStructureClassAccess().getActorContainerClassParserRuleCall_0()); }
+ ruleActorContainerClass
+{ after(grammarAccess.getStructureClassAccess().getActorContainerClassParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getStructureClassAccess().getLogicalSystemParserRuleCall_1()); }
+ ruleLogicalSystem
+{ after(grammarAccess.getStructureClassAccess().getLogicalSystemParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorContainerClass__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorContainerClassAccess().getActorClassParserRuleCall_0()); }
+ ruleActorClass
+{ after(grammarAccess.getActorContainerClassAccess().getActorClassParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getActorContainerClassAccess().getSubSystemClassParserRuleCall_1()); }
+ ruleSubSystemClass
+{ after(grammarAccess.getActorContainerClassAccess().getSubSystemClassParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Type__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypeAccess().getPrimAssignment_0()); }
+(rule__Type__PrimAssignment_0)
+{ after(grammarAccess.getTypeAccess().getPrimAssignment_0()); }
+)
+
+ |(
+{ before(grammarAccess.getTypeAccess().getTypeAssignment_1()); }
+(rule__Type__TypeAssignment_1)
+{ after(grammarAccess.getTypeAccess().getTypeAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeType__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypeAccess().getPrimAssignment_0()); }
+(rule__FreeType__PrimAssignment_0)
+{ after(grammarAccess.getFreeTypeAccess().getPrimAssignment_0()); }
+)
+
+ |(
+{ before(grammarAccess.getFreeTypeAccess().getTypeAssignment_1()); }
+(rule__FreeType__TypeAssignment_1)
+{ after(grammarAccess.getFreeTypeAccess().getTypeAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Alternatives_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getAttributesAssignment_2_0()); }
+(rule__PortClass__AttributesAssignment_2_0)
+{ after(grammarAccess.getPortClassAccess().getAttributesAssignment_2_0()); }
+)
+
+ |(
+{ before(grammarAccess.getPortClassAccess().getOperationsAssignment_2_1()); }
+(rule__PortClass__OperationsAssignment_2_1)
+{ after(grammarAccess.getPortClassAccess().getOperationsAssignment_2_1()); }
+)
+
+ |(
+{ before(grammarAccess.getPortClassAccess().getMsgHandlersAssignment_2_2()); }
+(rule__PortClass__MsgHandlersAssignment_2_2)
+{ after(grammarAccess.getPortClassAccess().getMsgHandlersAssignment_2_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsRule__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsRuleAccess().getSemanticsInRuleParserRuleCall_0()); }
+ ruleSemanticsInRule
+{ after(grammarAccess.getSemanticsRuleAccess().getSemanticsInRuleParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getSemanticsRuleAccess().getSemanticsOutRuleParserRuleCall_1()); }
+ ruleSemanticsOutRule
+{ after(grammarAccess.getSemanticsRuleAccess().getSemanticsOutRuleParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Alternatives_6_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getIntPortsAssignment_6_4_0()); }
+(rule__ActorClass__IntPortsAssignment_6_4_0)
+{ after(grammarAccess.getActorClassAccess().getIntPortsAssignment_6_4_0()); }
+)
+
+ |(
+{ before(grammarAccess.getActorClassAccess().getExtPortsAssignment_6_4_1()); }
+(rule__ActorClass__ExtPortsAssignment_6_4_1)
+{ after(grammarAccess.getActorClassAccess().getExtPortsAssignment_6_4_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__SAPoint__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPointAccess().getRefSAPointParserRuleCall_0()); }
+ ruleRefSAPoint
+{ after(grammarAccess.getSAPointAccess().getRefSAPointParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getSAPointAccess().getRelaySAPointParserRuleCall_1()); }
+ ruleRelaySAPoint
+{ after(grammarAccess.getSAPointAccess().getRelaySAPointParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraphNode__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphNodeAccess().getStateParserRuleCall_0()); }
+ ruleState
+{ after(grammarAccess.getStateGraphNodeAccess().getStateParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getStateGraphNodeAccess().getChoicePointParserRuleCall_1()); }
+ ruleChoicePoint
+{ after(grammarAccess.getStateGraphNodeAccess().getChoicePointParserRuleCall_1()); }
+)
+
+ |(
+{ before(grammarAccess.getStateGraphNodeAccess().getTrPointParserRuleCall_2()); }
+ ruleTrPoint
+{ after(grammarAccess.getStateGraphNodeAccess().getTrPointParserRuleCall_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__State__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateAccess().getBaseStateParserRuleCall_0()); }
+ ruleBaseState
+{ after(grammarAccess.getStateAccess().getBaseStateParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getStateAccess().getRefinedStateParserRuleCall_1()); }
+ ruleRefinedState
+{ after(grammarAccess.getStateAccess().getRefinedStateParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__Alternatives_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getStatesAssignment_1_0()); }
+(rule__StateGraph__StatesAssignment_1_0)
+{ after(grammarAccess.getStateGraphAccess().getStatesAssignment_1_0()); }
+)
+
+ |(
+{ before(grammarAccess.getStateGraphAccess().getTrPointsAssignment_1_1()); }
+(rule__StateGraph__TrPointsAssignment_1_1)
+{ after(grammarAccess.getStateGraphAccess().getTrPointsAssignment_1_1()); }
+)
+
+ |(
+{ before(grammarAccess.getStateGraphAccess().getChPointsAssignment_1_2()); }
+(rule__StateGraph__ChPointsAssignment_1_2)
+{ after(grammarAccess.getStateGraphAccess().getChPointsAssignment_1_2()); }
+)
+
+ |(
+{ before(grammarAccess.getStateGraphAccess().getTransitionsAssignment_1_3()); }
+(rule__StateGraph__TransitionsAssignment_1_3)
+{ after(grammarAccess.getStateGraphAccess().getTransitionsAssignment_1_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__Alternatives_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getStatesAssignment_2_0()); }
+(rule__StateMachine__StatesAssignment_2_0)
+{ after(grammarAccess.getStateMachineAccess().getStatesAssignment_2_0()); }
+)
+
+ |(
+{ before(grammarAccess.getStateMachineAccess().getTrPointsAssignment_2_1()); }
+(rule__StateMachine__TrPointsAssignment_2_1)
+{ after(grammarAccess.getStateMachineAccess().getTrPointsAssignment_2_1()); }
+)
+
+ |(
+{ before(grammarAccess.getStateMachineAccess().getChPointsAssignment_2_2()); }
+(rule__StateMachine__ChPointsAssignment_2_2)
+{ after(grammarAccess.getStateMachineAccess().getChPointsAssignment_2_2()); }
+)
+
+ |(
+{ before(grammarAccess.getStateMachineAccess().getTransitionsAssignment_2_3()); }
+(rule__StateMachine__TransitionsAssignment_2_3)
+{ after(grammarAccess.getStateMachineAccess().getTransitionsAssignment_2_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TrPoint__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTrPointAccess().getTransitionPointParserRuleCall_0()); }
+ ruleTransitionPoint
+{ after(grammarAccess.getTrPointAccess().getTransitionPointParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getTrPointAccess().getEntryPointParserRuleCall_1()); }
+ ruleEntryPoint
+{ after(grammarAccess.getTrPointAccess().getEntryPointParserRuleCall_1()); }
+)
+
+ |(
+{ before(grammarAccess.getTrPointAccess().getExitPointParserRuleCall_2()); }
+ ruleExitPoint
+{ after(grammarAccess.getTrPointAccess().getExitPointParserRuleCall_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Transition__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionAccess().getInitialTransitionParserRuleCall_0()); }
+ ruleInitialTransition
+{ after(grammarAccess.getTransitionAccess().getInitialTransitionParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getTransitionAccess().getNonInitialTransitionParserRuleCall_1()); }
+ ruleNonInitialTransition
+{ after(grammarAccess.getTransitionAccess().getNonInitialTransitionParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__NonInitialTransition__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getNonInitialTransitionAccess().getTriggeredTransitionParserRuleCall_0()); }
+ ruleTriggeredTransition
+{ after(grammarAccess.getNonInitialTransitionAccess().getTriggeredTransitionParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getNonInitialTransitionAccess().getContinuationTransitionParserRuleCall_1()); }
+ ruleContinuationTransition
+{ after(grammarAccess.getNonInitialTransitionAccess().getContinuationTransitionParserRuleCall_1()); }
+)
+
+ |(
+{ before(grammarAccess.getNonInitialTransitionAccess().getCPBranchTransitionParserRuleCall_2()); }
+ ruleCPBranchTransition
+{ after(grammarAccess.getNonInitialTransitionAccess().getCPBranchTransitionParserRuleCall_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TransitionTerminal__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionTerminalAccess().getStateTerminalParserRuleCall_0()); }
+ ruleStateTerminal
+{ after(grammarAccess.getTransitionTerminalAccess().getStateTerminalParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getTransitionTerminalAccess().getTrPointTerminalParserRuleCall_1()); }
+ ruleTrPointTerminal
+{ after(grammarAccess.getTransitionTerminalAccess().getTrPointTerminalParserRuleCall_1()); }
+)
+
+ |(
+{ before(grammarAccess.getTransitionTerminalAccess().getSubStateTrPointTerminalParserRuleCall_2()); }
+ ruleSubStateTrPointTerminal
+{ after(grammarAccess.getTransitionTerminalAccess().getSubStateTrPointTerminalParserRuleCall_2()); }
+)
+
+ |(
+{ before(grammarAccess.getTransitionTerminalAccess().getChoicepointTerminalParserRuleCall_3()); }
+ ruleChoicepointTerminal
+{ after(grammarAccess.getTransitionTerminalAccess().getChoicepointTerminalParserRuleCall_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PrimitiveType__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0()); }
+( 'void'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1()); }
+( 'int8'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2()); }
+( 'int16'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3()); }
+( 'int32'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4()); }
+( 'uint8'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5()); }
+( 'uint16'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6()); }
+( 'uint32'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7()); }
+( 'float32'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8()); }
+( 'float64'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9()); }
+( 'boolean'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10()); }
+( 'string'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10()); }
+)
+
+ |(
+{ before(grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11()); }
+( 'char'
+)
+{ after(grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__RoomModel__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RoomModel__Group__0__Impl
+ rule__RoomModel__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getRoomModelKeyword_0()); }
+
+ 'RoomModel'
+
+{ after(grammarAccess.getRoomModelAccess().getRoomModelKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RoomModel__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RoomModel__Group__1__Impl
+ rule__RoomModel__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getNameAssignment_1()); }
+(rule__RoomModel__NameAssignment_1)
+{ after(grammarAccess.getRoomModelAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RoomModel__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RoomModel__Group__2__Impl
+ rule__RoomModel__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getRoomModelAccess().getLeftCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RoomModel__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RoomModel__Group__3__Impl
+ rule__RoomModel__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getImportsAssignment_3()); }
+(rule__RoomModel__ImportsAssignment_3)*
+{ after(grammarAccess.getRoomModelAccess().getImportsAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RoomModel__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RoomModel__Group__4__Impl
+ rule__RoomModel__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
+(rule__RoomModel__Alternatives_4)
+{ after(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
+)
+(
+{ before(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
+(rule__RoomModel__Alternatives_4)*
+{ after(grammarAccess.getRoomModelAccess().getAlternatives_4()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RoomModel__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RoomModel__Group__5__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getRightCurlyBracketKeyword_5()); }
+
+ '}'
+
+{ after(grammarAccess.getRoomModelAccess().getRightCurlyBracketKeyword_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__TypedID__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TypedID__Group__0__Impl
+ rule__TypedID__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TypedID__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypedIDAccess().getNameAssignment_0()); }
+(rule__TypedID__NameAssignment_0)
+{ after(grammarAccess.getTypedIDAccess().getNameAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TypedID__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TypedID__Group__1__Impl
+ rule__TypedID__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TypedID__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypedIDAccess().getColonKeyword_1()); }
+
+ ':'
+
+{ after(grammarAccess.getTypedIDAccess().getColonKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TypedID__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TypedID__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TypedID__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypedIDAccess().getTypeAssignment_2()); }
+(rule__TypedID__TypeAssignment_2)
+{ after(grammarAccess.getTypedIDAccess().getTypeAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__FreeTypedID__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__FreeTypedID__Group__0__Impl
+ rule__FreeTypedID__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeTypedID__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypedIDAccess().getNameAssignment_0()); }
+(rule__FreeTypedID__NameAssignment_0)
+{ after(grammarAccess.getFreeTypedIDAccess().getNameAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__FreeTypedID__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__FreeTypedID__Group__1__Impl
+ rule__FreeTypedID__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeTypedID__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypedIDAccess().getColonKeyword_1()); }
+
+ ':'
+
+{ after(grammarAccess.getFreeTypedIDAccess().getColonKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__FreeTypedID__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__FreeTypedID__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeTypedID__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypedIDAccess().getTypeAssignment_2()); }
+(rule__FreeTypedID__TypeAssignment_2)
+{ after(grammarAccess.getFreeTypedIDAccess().getTypeAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__DataClass__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__0__Impl
+ rule__DataClass__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getDataClassKeyword_0()); }
+
+ 'DataClass'
+
+{ after(grammarAccess.getDataClassAccess().getDataClassKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__1__Impl
+ rule__DataClass__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getNameAssignment_1()); }
+(rule__DataClass__NameAssignment_1)
+{ after(grammarAccess.getDataClassAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__2__Impl
+ rule__DataClass__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getGroup_2()); }
+(rule__DataClass__Group_2__0)?
+{ after(grammarAccess.getDataClassAccess().getGroup_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__3__Impl
+ rule__DataClass__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getLeftCurlyBracketKeyword_3()); }
+
+ '{'
+
+{ after(grammarAccess.getDataClassAccess().getLeftCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__4__Impl
+ rule__DataClass__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getImportsAssignment_4()); }
+(rule__DataClass__ImportsAssignment_4)*
+{ after(grammarAccess.getDataClassAccess().getImportsAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__5__Impl
+ rule__DataClass__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
+(rule__DataClass__AttributesAssignment_5)
+{ after(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
+)
+(
+{ before(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
+(rule__DataClass__AttributesAssignment_5)*
+{ after(grammarAccess.getDataClassAccess().getAttributesAssignment_5()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__6__Impl
+ rule__DataClass__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getOperationsAssignment_6()); }
+(rule__DataClass__OperationsAssignment_6)*
+{ after(grammarAccess.getDataClassAccess().getOperationsAssignment_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group__7__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getRightCurlyBracketKeyword_7()); }
+
+ '}'
+
+{ after(grammarAccess.getDataClassAccess().getRightCurlyBracketKeyword_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__DataClass__Group_2__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group_2__0__Impl
+ rule__DataClass__Group_2__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group_2__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getExtendsKeyword_2_0()); }
+
+ 'extends'
+
+{ after(grammarAccess.getDataClassAccess().getExtendsKeyword_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DataClass__Group_2__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DataClass__Group_2__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__Group_2__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getBaseAssignment_2_1()); }
+(rule__DataClass__BaseAssignment_2_1)
+{ after(grammarAccess.getDataClassAccess().getBaseAssignment_2_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Attribute__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group__0__Impl
+ rule__Attribute__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getAttributeKeyword_0()); }
+
+ 'Attribute'
+
+{ after(grammarAccess.getAttributeAccess().getAttributeKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Attribute__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group__1__Impl
+ rule__Attribute__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getNameAssignment_1()); }
+(rule__Attribute__NameAssignment_1)
+{ after(grammarAccess.getAttributeAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Attribute__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group__2__Impl
+ rule__Attribute__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getGroup_2()); }
+(rule__Attribute__Group_2__0)?
+{ after(grammarAccess.getAttributeAccess().getGroup_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Attribute__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group__3__Impl
+ rule__Attribute__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getColonKeyword_3()); }
+
+ ':'
+
+{ after(grammarAccess.getAttributeAccess().getColonKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Attribute__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getTypeAssignment_4()); }
+(rule__Attribute__TypeAssignment_4)
+{ after(grammarAccess.getAttributeAccess().getTypeAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__Attribute__Group_2__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group_2__0__Impl
+ rule__Attribute__Group_2__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group_2__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getLeftSquareBracketKeyword_2_0()); }
+
+ '['
+
+{ after(grammarAccess.getAttributeAccess().getLeftSquareBracketKeyword_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Attribute__Group_2__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group_2__1__Impl
+ rule__Attribute__Group_2__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group_2__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getSizeAssignment_2_1()); }
+(rule__Attribute__SizeAssignment_2_1)
+{ after(grammarAccess.getAttributeAccess().getSizeAssignment_2_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Attribute__Group_2__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Attribute__Group_2__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__Group_2__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getRightSquareBracketKeyword_2_2()); }
+
+ ']'
+
+{ after(grammarAccess.getAttributeAccess().getRightSquareBracketKeyword_2_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__Operation__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__0__Impl
+ rule__Operation__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getOperationKeyword_0()); }
+
+ 'Operation'
+
+{ after(grammarAccess.getOperationAccess().getOperationKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__1__Impl
+ rule__Operation__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getNameAssignment_1()); }
+(rule__Operation__NameAssignment_1)
+{ after(grammarAccess.getOperationAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__2__Impl
+ rule__Operation__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getLeftParenthesisKeyword_2()); }
+
+ '('
+
+{ after(grammarAccess.getOperationAccess().getLeftParenthesisKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__3__Impl
+ rule__Operation__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getGroup_3()); }
+(rule__Operation__Group_3__0)?
+{ after(grammarAccess.getOperationAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__4__Impl
+ rule__Operation__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getRightParenthesisKeyword_4()); }
+
+ ')'
+
+{ after(grammarAccess.getOperationAccess().getRightParenthesisKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__5__Impl
+ rule__Operation__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getGroup_5()); }
+(rule__Operation__Group_5__0)?
+{ after(grammarAccess.getOperationAccess().getGroup_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group__6__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getDetailCodeAssignment_6()); }
+(rule__Operation__DetailCodeAssignment_6)
+{ after(grammarAccess.getOperationAccess().getDetailCodeAssignment_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__Operation__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group_3__0__Impl
+ rule__Operation__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getArgumentsAssignment_3_0()); }
+(rule__Operation__ArgumentsAssignment_3_0)
+{ after(grammarAccess.getOperationAccess().getArgumentsAssignment_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group_3__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getGroup_3_1()); }
+(rule__Operation__Group_3_1__0)*
+{ after(grammarAccess.getOperationAccess().getGroup_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Operation__Group_3_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group_3_1__0__Impl
+ rule__Operation__Group_3_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group_3_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getCommaKeyword_3_1_0()); }
+
+ ','
+
+{ after(grammarAccess.getOperationAccess().getCommaKeyword_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group_3_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group_3_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group_3_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getArgumentsAssignment_3_1_1()); }
+(rule__Operation__ArgumentsAssignment_3_1_1)
+{ after(grammarAccess.getOperationAccess().getArgumentsAssignment_3_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Operation__Group_5__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group_5__0__Impl
+ rule__Operation__Group_5__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group_5__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getColonKeyword_5_0()); }
+
+ ':'
+
+{ after(grammarAccess.getOperationAccess().getColonKeyword_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Operation__Group_5__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Operation__Group_5__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__Group_5__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getReturntypeAssignment_5_1()); }
+(rule__Operation__ReturntypeAssignment_5_1)
+{ after(grammarAccess.getOperationAccess().getReturntypeAssignment_5_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ProtocolClass__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__0__Impl
+ rule__ProtocolClass__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getProtocolClassKeyword_0()); }
+
+ 'ProtocolClass'
+
+{ after(grammarAccess.getProtocolClassAccess().getProtocolClassKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__1__Impl
+ rule__ProtocolClass__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getNameAssignment_1()); }
+(rule__ProtocolClass__NameAssignment_1)
+{ after(grammarAccess.getProtocolClassAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__2__Impl
+ rule__ProtocolClass__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getGroup_2()); }
+(rule__ProtocolClass__Group_2__0)?
+{ after(grammarAccess.getProtocolClassAccess().getGroup_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__3__Impl
+ rule__ProtocolClass__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_3()); }
+
+ '{'
+
+{ after(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__4__Impl
+ rule__ProtocolClass__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getGroup_4()); }
+(rule__ProtocolClass__Group_4__0)?
+{ after(grammarAccess.getProtocolClassAccess().getGroup_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__5__Impl
+ rule__ProtocolClass__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getGroup_5()); }
+(rule__ProtocolClass__Group_5__0)?
+{ after(grammarAccess.getProtocolClassAccess().getGroup_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__6__Impl
+ rule__ProtocolClass__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getIncomingKeyword_6()); }
+
+ 'incoming'
+
+{ after(grammarAccess.getProtocolClassAccess().getIncomingKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__7__Impl
+ rule__ProtocolClass__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_7()); }
+
+ '{'
+
+{ after(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__8__Impl
+ rule__ProtocolClass__Group__9
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getIncomingMessagesAssignment_8()); }
+(rule__ProtocolClass__IncomingMessagesAssignment_8)*
+{ after(grammarAccess.getProtocolClassAccess().getIncomingMessagesAssignment_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__9__Impl
+ rule__ProtocolClass__Group__10
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__9__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_9()); }
+
+ '}'
+
+{ after(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_9()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__10
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__10__Impl
+ rule__ProtocolClass__Group__11
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__10__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getOutgoingKeyword_10()); }
+
+ 'outgoing'
+
+{ after(grammarAccess.getProtocolClassAccess().getOutgoingKeyword_10()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__11
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__11__Impl
+ rule__ProtocolClass__Group__12
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__11__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_11()); }
+
+ '{'
+
+{ after(grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_11()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__12
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__12__Impl
+ rule__ProtocolClass__Group__13
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__12__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getOutgoingMessagesAssignment_12()); }
+(rule__ProtocolClass__OutgoingMessagesAssignment_12)*
+{ after(grammarAccess.getProtocolClassAccess().getOutgoingMessagesAssignment_12()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__13
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__13__Impl
+ rule__ProtocolClass__Group__14
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__13__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_13()); }
+
+ '}'
+
+{ after(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_13()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__14
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__14__Impl
+ rule__ProtocolClass__Group__15
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__14__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getGroup_14()); }
+(rule__ProtocolClass__Group_14__0)?
+{ after(grammarAccess.getProtocolClassAccess().getGroup_14()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__15
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__15__Impl
+ rule__ProtocolClass__Group__16
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__15__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getGroup_15()); }
+(rule__ProtocolClass__Group_15__0)?
+{ after(grammarAccess.getProtocolClassAccess().getGroup_15()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__16
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__16__Impl
+ rule__ProtocolClass__Group__17
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__16__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getSemanticsAssignment_16()); }
+(rule__ProtocolClass__SemanticsAssignment_16)?
+{ after(grammarAccess.getProtocolClassAccess().getSemanticsAssignment_16()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group__17
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group__17__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group__17__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_17()); }
+
+ '}'
+
+{ after(grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_17()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__ProtocolClass__Group_2__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_2__0__Impl
+ rule__ProtocolClass__Group_2__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_2__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getExtendsKeyword_2_0()); }
+
+ 'extends'
+
+{ after(grammarAccess.getProtocolClassAccess().getExtendsKeyword_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_2__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_2__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_2__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getBaseAssignment_2_1()); }
+(rule__ProtocolClass__BaseAssignment_2_1)
+{ after(grammarAccess.getProtocolClassAccess().getBaseAssignment_2_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ProtocolClass__Group_4__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_4__0__Impl
+ rule__ProtocolClass__Group_4__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_4__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getUsercode1Keyword_4_0()); }
+
+ 'usercode1'
+
+{ after(grammarAccess.getProtocolClassAccess().getUsercode1Keyword_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_4__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_4__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_4__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getUserCode1Assignment_4_1()); }
+(rule__ProtocolClass__UserCode1Assignment_4_1)
+{ after(grammarAccess.getProtocolClassAccess().getUserCode1Assignment_4_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ProtocolClass__Group_5__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_5__0__Impl
+ rule__ProtocolClass__Group_5__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_5__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getUsercode2Keyword_5_0()); }
+
+ 'usercode2'
+
+{ after(grammarAccess.getProtocolClassAccess().getUsercode2Keyword_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_5__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_5__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_5__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getUserCode2Assignment_5_1()); }
+(rule__ProtocolClass__UserCode2Assignment_5_1)
+{ after(grammarAccess.getProtocolClassAccess().getUserCode2Assignment_5_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ProtocolClass__Group_14__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_14__0__Impl
+ rule__ProtocolClass__Group_14__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_14__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getRegularKeyword_14_0()); }
+
+ 'regular'
+
+{ after(grammarAccess.getProtocolClassAccess().getRegularKeyword_14_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_14__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_14__1__Impl
+ rule__ProtocolClass__Group_14__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_14__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getPortClassKeyword_14_1()); }
+
+ 'PortClass'
+
+{ after(grammarAccess.getProtocolClassAccess().getPortClassKeyword_14_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_14__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_14__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_14__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getRegularAssignment_14_2()); }
+(rule__ProtocolClass__RegularAssignment_14_2)
+{ after(grammarAccess.getProtocolClassAccess().getRegularAssignment_14_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__ProtocolClass__Group_15__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_15__0__Impl
+ rule__ProtocolClass__Group_15__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_15__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getConjugateKeyword_15_0()); }
+
+ 'conjugate'
+
+{ after(grammarAccess.getProtocolClassAccess().getConjugateKeyword_15_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_15__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_15__1__Impl
+ rule__ProtocolClass__Group_15__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_15__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getPortClassKeyword_15_1()); }
+
+ 'PortClass'
+
+{ after(grammarAccess.getProtocolClassAccess().getPortClassKeyword_15_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolClass__Group_15__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolClass__Group_15__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__Group_15__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getConjugateAssignment_15_2()); }
+(rule__ProtocolClass__ConjugateAssignment_15_2)
+{ after(grammarAccess.getProtocolClassAccess().getConjugateAssignment_15_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__Message__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group__0__Impl
+ rule__Message__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getMessageKeyword_0()); }
+
+ 'Message'
+
+{ after(grammarAccess.getMessageAccess().getMessageKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Message__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group__1__Impl
+ rule__Message__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getNameAssignment_1()); }
+(rule__Message__NameAssignment_1)
+{ after(grammarAccess.getMessageAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Message__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group__2__Impl
+ rule__Message__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getLeftParenthesisKeyword_2()); }
+
+ '('
+
+{ after(grammarAccess.getMessageAccess().getLeftParenthesisKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Message__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group__3__Impl
+ rule__Message__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getGroup_3()); }
+(rule__Message__Group_3__0)?
+{ after(grammarAccess.getMessageAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Message__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getRightParenthesisKeyword_4()); }
+
+ ')'
+
+{ after(grammarAccess.getMessageAccess().getRightParenthesisKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__Message__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group_3__0__Impl
+ rule__Message__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getArgumentsAssignment_3_0()); }
+(rule__Message__ArgumentsAssignment_3_0)
+{ after(grammarAccess.getMessageAccess().getArgumentsAssignment_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Message__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group_3__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getGroup_3_1()); }
+(rule__Message__Group_3_1__0)*
+{ after(grammarAccess.getMessageAccess().getGroup_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Message__Group_3_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group_3_1__0__Impl
+ rule__Message__Group_3_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group_3_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getCommaKeyword_3_1_0()); }
+
+ ','
+
+{ after(grammarAccess.getMessageAccess().getCommaKeyword_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Message__Group_3_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Message__Group_3_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__Group_3_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getArgumentsAssignment_3_1_1()); }
+(rule__Message__ArgumentsAssignment_3_1_1)
+{ after(grammarAccess.getMessageAccess().getArgumentsAssignment_3_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__PortClass__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__PortClass__Group__0__Impl
+ rule__PortClass__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getLeftCurlyBracketKeyword_0()); }
+
+ '{'
+
+{ after(grammarAccess.getPortClassAccess().getLeftCurlyBracketKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__PortClass__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__PortClass__Group__1__Impl
+ rule__PortClass__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getGroup_1()); }
+(rule__PortClass__Group_1__0)?
+{ after(grammarAccess.getPortClassAccess().getGroup_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__PortClass__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__PortClass__Group__2__Impl
+ rule__PortClass__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getPortClassAccess().getAlternatives_2()); }
+(rule__PortClass__Alternatives_2)
+{ after(grammarAccess.getPortClassAccess().getAlternatives_2()); }
+)
+(
+{ before(grammarAccess.getPortClassAccess().getAlternatives_2()); }
+(rule__PortClass__Alternatives_2)*
+{ after(grammarAccess.getPortClassAccess().getAlternatives_2()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__PortClass__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__PortClass__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getRightCurlyBracketKeyword_3()); }
+
+ '}'
+
+{ after(grammarAccess.getPortClassAccess().getRightCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__PortClass__Group_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__PortClass__Group_1__0__Impl
+ rule__PortClass__Group_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Group_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getUsercodeKeyword_1_0()); }
+
+ 'usercode'
+
+{ after(grammarAccess.getPortClassAccess().getUsercodeKeyword_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__PortClass__Group_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__PortClass__Group_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__Group_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getUserCodeAssignment_1_1()); }
+(rule__PortClass__UserCodeAssignment_1_1)
+{ after(grammarAccess.getPortClassAccess().getUserCodeAssignment_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__MessageHandler__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__MessageHandler__Group__0__Impl
+ rule__MessageHandler__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageHandler__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageHandlerAccess().getHandleKeyword_0()); }
+
+ 'handle'
+
+{ after(grammarAccess.getMessageHandlerAccess().getHandleKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__MessageHandler__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__MessageHandler__Group__1__Impl
+ rule__MessageHandler__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageHandler__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageHandlerAccess().getMsgAssignment_1()); }
+(rule__MessageHandler__MsgAssignment_1)
+{ after(grammarAccess.getMessageHandlerAccess().getMsgAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__MessageHandler__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__MessageHandler__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageHandler__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageHandlerAccess().getDetailCodeAssignment_2()); }
+(rule__MessageHandler__DetailCodeAssignment_2)
+{ after(grammarAccess.getMessageHandlerAccess().getDetailCodeAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__ProtocolSemantics__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolSemantics__Group__0__Impl
+ rule__ProtocolSemantics__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolSemantics__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getSemanticsKeyword_0()); }
+
+ 'semantics'
+
+{ after(grammarAccess.getProtocolSemanticsAccess().getSemanticsKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolSemantics__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolSemantics__Group__1__Impl
+ rule__ProtocolSemantics__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolSemantics__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getLeftCurlyBracketKeyword_1()); }
+
+ '{'
+
+{ after(grammarAccess.getProtocolSemanticsAccess().getLeftCurlyBracketKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolSemantics__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolSemantics__Group__2__Impl
+ rule__ProtocolSemantics__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolSemantics__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
+(rule__ProtocolSemantics__RulesAssignment_2)
+{ after(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
+)
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
+(rule__ProtocolSemantics__RulesAssignment_2)*
+{ after(grammarAccess.getProtocolSemanticsAccess().getRulesAssignment_2()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ProtocolSemantics__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ProtocolSemantics__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolSemantics__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getRightCurlyBracketKeyword_3()); }
+
+ '}'
+
+{ after(grammarAccess.getProtocolSemanticsAccess().getRightCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__SemanticsInRule__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsInRule__Group__0__Impl
+ rule__SemanticsInRule__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getInKeyword_0()); }
+
+ 'in'
+
+{ after(grammarAccess.getSemanticsInRuleAccess().getInKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsInRule__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsInRule__Group__1__Impl
+ rule__SemanticsInRule__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getMsgAssignment_1()); }
+(rule__SemanticsInRule__MsgAssignment_1)
+{ after(grammarAccess.getSemanticsInRuleAccess().getMsgAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsInRule__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsInRule__Group__2__Impl
+ rule__SemanticsInRule__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
+
+ '->'
+
+{ after(grammarAccess.getSemanticsInRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsInRule__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsInRule__Group__3__Impl
+ rule__SemanticsInRule__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getLeftCurlyBracketKeyword_3()); }
+
+ '{'
+
+{ after(grammarAccess.getSemanticsInRuleAccess().getLeftCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsInRule__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsInRule__Group__4__Impl
+ rule__SemanticsInRule__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getFollowUpsAssignment_4()); }
+(rule__SemanticsInRule__FollowUpsAssignment_4)*
+{ after(grammarAccess.getSemanticsInRuleAccess().getFollowUpsAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsInRule__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsInRule__Group__5__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getRightCurlyBracketKeyword_5()); }
+
+ '}'
+
+{ after(grammarAccess.getSemanticsInRuleAccess().getRightCurlyBracketKeyword_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__SemanticsOutRule__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsOutRule__Group__0__Impl
+ rule__SemanticsOutRule__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getOutKeyword_0()); }
+
+ 'out'
+
+{ after(grammarAccess.getSemanticsOutRuleAccess().getOutKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsOutRule__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsOutRule__Group__1__Impl
+ rule__SemanticsOutRule__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getMsgAssignment_1()); }
+(rule__SemanticsOutRule__MsgAssignment_1)
+{ after(grammarAccess.getSemanticsOutRuleAccess().getMsgAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsOutRule__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsOutRule__Group__2__Impl
+ rule__SemanticsOutRule__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
+
+ '->'
+
+{ after(grammarAccess.getSemanticsOutRuleAccess().getHyphenMinusGreaterThanSignKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsOutRule__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsOutRule__Group__3__Impl
+ rule__SemanticsOutRule__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getLeftCurlyBracketKeyword_3()); }
+
+ '{'
+
+{ after(grammarAccess.getSemanticsOutRuleAccess().getLeftCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsOutRule__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsOutRule__Group__4__Impl
+ rule__SemanticsOutRule__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsAssignment_4()); }
+(rule__SemanticsOutRule__FollowUpsAssignment_4)*
+{ after(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SemanticsOutRule__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SemanticsOutRule__Group__5__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getRightCurlyBracketKeyword_5()); }
+
+ '}'
+
+{ after(grammarAccess.getSemanticsOutRuleAccess().getRightCurlyBracketKeyword_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__ActorClass__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__0__Impl
+ rule__ActorClass__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getAbstractAssignment_0()); }
+(rule__ActorClass__AbstractAssignment_0)?
+{ after(grammarAccess.getActorClassAccess().getAbstractAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__1__Impl
+ rule__ActorClass__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getActorClassKeyword_1()); }
+
+ 'ActorClass'
+
+{ after(grammarAccess.getActorClassAccess().getActorClassKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__2__Impl
+ rule__ActorClass__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getNameAssignment_2()); }
+(rule__ActorClass__NameAssignment_2)
+{ after(grammarAccess.getActorClassAccess().getNameAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__3__Impl
+ rule__ActorClass__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getGroup_3()); }
+(rule__ActorClass__Group_3__0)?
+{ after(grammarAccess.getActorClassAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__4__Impl
+ rule__ActorClass__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_4()); }
+
+ '{'
+
+{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__5__Impl
+ rule__ActorClass__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getGroup_5()); }
+(rule__ActorClass__Group_5__0)?
+{ after(grammarAccess.getActorClassAccess().getGroup_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__6__Impl
+ rule__ActorClass__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getGroup_6()); }
+(rule__ActorClass__Group_6__0)?
+{ after(grammarAccess.getActorClassAccess().getGroup_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__7__Impl
+ rule__ActorClass__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getGroup_7()); }
+(rule__ActorClass__Group_7__0)?
+{ after(grammarAccess.getActorClassAccess().getGroup_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group__8__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_8()); }
+
+ '}'
+
+{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__ActorClass__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_3__0__Impl
+ rule__ActorClass__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getExtendsKeyword_3_0()); }
+
+ 'extends'
+
+{ after(grammarAccess.getActorClassAccess().getExtendsKeyword_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_3__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getBaseAssignment_3_1()); }
+(rule__ActorClass__BaseAssignment_3_1)
+{ after(grammarAccess.getActorClassAccess().getBaseAssignment_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ActorClass__Group_5__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_5__0__Impl
+ rule__ActorClass__Group_5__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_5__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getInterfaceKeyword_5_0()); }
+
+ 'Interface'
+
+{ after(grammarAccess.getActorClassAccess().getInterfaceKeyword_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_5__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_5__1__Impl
+ rule__ActorClass__Group_5__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_5__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_5_1()); }
+
+ '{'
+
+{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_5_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_5__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_5__2__Impl
+ rule__ActorClass__Group_5__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_5__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getIfPortsAssignment_5_2()); }
+(rule__ActorClass__IfPortsAssignment_5_2)*
+{ after(grammarAccess.getActorClassAccess().getIfPortsAssignment_5_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_5__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_5__3__Impl
+ rule__ActorClass__Group_5__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_5__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getIfSPPsAssignment_5_3()); }
+(rule__ActorClass__IfSPPsAssignment_5_3)*
+{ after(grammarAccess.getActorClassAccess().getIfSPPsAssignment_5_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_5__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_5__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_5__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_5_4()); }
+
+ '}'
+
+{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_5_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__ActorClass__Group_6__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__0__Impl
+ rule__ActorClass__Group_6__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getStructureKeyword_6_0()); }
+
+ 'Structure'
+
+{ after(grammarAccess.getActorClassAccess().getStructureKeyword_6_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__1__Impl
+ rule__ActorClass__Group_6__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_6_1()); }
+
+ '{'
+
+{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_6_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__2__Impl
+ rule__ActorClass__Group_6__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getGroup_6_2()); }
+(rule__ActorClass__Group_6_2__0)?
+{ after(grammarAccess.getActorClassAccess().getGroup_6_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__3__Impl
+ rule__ActorClass__Group_6__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getGroup_6_3()); }
+(rule__ActorClass__Group_6_3__0)?
+{ after(grammarAccess.getActorClassAccess().getGroup_6_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__4__Impl
+ rule__ActorClass__Group_6__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getAlternatives_6_4()); }
+(rule__ActorClass__Alternatives_6_4)*
+{ after(grammarAccess.getActorClassAccess().getAlternatives_6_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__5__Impl
+ rule__ActorClass__Group_6__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getServiceImplementationsAssignment_6_5()); }
+(rule__ActorClass__ServiceImplementationsAssignment_6_5)*
+{ after(grammarAccess.getActorClassAccess().getServiceImplementationsAssignment_6_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__6__Impl
+ rule__ActorClass__Group_6__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getStrSAPsAssignment_6_6()); }
+(rule__ActorClass__StrSAPsAssignment_6_6)*
+{ after(grammarAccess.getActorClassAccess().getStrSAPsAssignment_6_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__7__Impl
+ rule__ActorClass__Group_6__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getAttributesAssignment_6_7()); }
+(rule__ActorClass__AttributesAssignment_6_7)*
+{ after(grammarAccess.getActorClassAccess().getAttributesAssignment_6_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__8__Impl
+ rule__ActorClass__Group_6__9
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getActorRefsAssignment_6_8()); }
+(rule__ActorClass__ActorRefsAssignment_6_8)*
+{ after(grammarAccess.getActorClassAccess().getActorRefsAssignment_6_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__9__Impl
+ rule__ActorClass__Group_6__10
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__9__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getBindingsAssignment_6_9()); }
+(rule__ActorClass__BindingsAssignment_6_9)*
+{ after(grammarAccess.getActorClassAccess().getBindingsAssignment_6_9()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__10
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__10__Impl
+ rule__ActorClass__Group_6__11
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__10__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getConnectionsAssignment_6_10()); }
+(rule__ActorClass__ConnectionsAssignment_6_10)*
+{ after(grammarAccess.getActorClassAccess().getConnectionsAssignment_6_10()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6__11
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6__11__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6__11__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_6_11()); }
+
+ '}'
+
+{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_6_11()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__ActorClass__Group_6_2__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6_2__0__Impl
+ rule__ActorClass__Group_6_2__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6_2__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getUsercode1Keyword_6_2_0()); }
+
+ 'usercode1'
+
+{ after(grammarAccess.getActorClassAccess().getUsercode1Keyword_6_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6_2__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6_2__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6_2__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getUserCode1Assignment_6_2_1()); }
+(rule__ActorClass__UserCode1Assignment_6_2_1)
+{ after(grammarAccess.getActorClassAccess().getUserCode1Assignment_6_2_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ActorClass__Group_6_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6_3__0__Impl
+ rule__ActorClass__Group_6_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getUsercode2Keyword_6_3_0()); }
+
+ 'usercode2'
+
+{ after(grammarAccess.getActorClassAccess().getUsercode2Keyword_6_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_6_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_6_3__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_6_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getUserCode2Assignment_6_3_1()); }
+(rule__ActorClass__UserCode2Assignment_6_3_1)
+{ after(grammarAccess.getActorClassAccess().getUserCode2Assignment_6_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ActorClass__Group_7__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_7__0__Impl
+ rule__ActorClass__Group_7__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_7__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getBehaviorKeyword_7_0()); }
+
+ 'Behavior'
+
+{ after(grammarAccess.getActorClassAccess().getBehaviorKeyword_7_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_7__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_7__1__Impl
+ rule__ActorClass__Group_7__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_7__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_7_1()); }
+
+ '{'
+
+{ after(grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_7_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_7__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_7__2__Impl
+ rule__ActorClass__Group_7__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_7__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getOperationsAssignment_7_2()); }
+(rule__ActorClass__OperationsAssignment_7_2)*
+{ after(grammarAccess.getActorClassAccess().getOperationsAssignment_7_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_7__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_7__3__Impl
+ rule__ActorClass__Group_7__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_7__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getStateMachineAssignment_7_3()); }
+(rule__ActorClass__StateMachineAssignment_7_3)?
+{ after(grammarAccess.getActorClassAccess().getStateMachineAssignment_7_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorClass__Group_7__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorClass__Group_7__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__Group_7__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_7_4()); }
+
+ '}'
+
+{ after(grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_7_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__Port__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group__0__Impl
+ rule__Port__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getConjugatedAssignment_0()); }
+(rule__Port__ConjugatedAssignment_0)?
+{ after(grammarAccess.getPortAccess().getConjugatedAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group__1__Impl
+ rule__Port__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getPortKeyword_1()); }
+
+ 'Port'
+
+{ after(grammarAccess.getPortAccess().getPortKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group__2__Impl
+ rule__Port__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getNameAssignment_2()); }
+(rule__Port__NameAssignment_2)
+{ after(grammarAccess.getPortAccess().getNameAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group__3__Impl
+ rule__Port__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getGroup_3()); }
+(rule__Port__Group_3__0)?
+{ after(grammarAccess.getPortAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group__4__Impl
+ rule__Port__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getColonKeyword_4()); }
+
+ ':'
+
+{ after(grammarAccess.getPortAccess().getColonKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group__5__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getProtocolAssignment_5()); }
+(rule__Port__ProtocolAssignment_5)
+{ after(grammarAccess.getPortAccess().getProtocolAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__Port__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group_3__0__Impl
+ rule__Port__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getLeftSquareBracketKeyword_3_0()); }
+
+ '['
+
+{ after(grammarAccess.getPortAccess().getLeftSquareBracketKeyword_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group_3__1__Impl
+ rule__Port__Group_3__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getMultiplicityAssignment_3_1()); }
+(rule__Port__MultiplicityAssignment_3_1)
+{ after(grammarAccess.getPortAccess().getMultiplicityAssignment_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Port__Group_3__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Port__Group_3__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__Group_3__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getRightSquareBracketKeyword_3_2()); }
+
+ ']'
+
+{ after(grammarAccess.getPortAccess().getRightSquareBracketKeyword_3_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__ExternalPort__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ExternalPort__Group__0__Impl
+ rule__ExternalPort__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExternalPort__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExternalPortAccess().getExternalKeyword_0()); }
+
+ 'external'
+
+{ after(grammarAccess.getExternalPortAccess().getExternalKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ExternalPort__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ExternalPort__Group__1__Impl
+ rule__ExternalPort__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExternalPort__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExternalPortAccess().getPortKeyword_1()); }
+
+ 'Port'
+
+{ after(grammarAccess.getExternalPortAccess().getPortKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ExternalPort__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ExternalPort__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExternalPort__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExternalPortAccess().getIfportAssignment_2()); }
+(rule__ExternalPort__IfportAssignment_2)
+{ after(grammarAccess.getExternalPortAccess().getIfportAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__SAPRef__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SAPRef__Group__0__Impl
+ rule__SAPRef__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SAPRef__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPRefAccess().getSAPKeyword_0()); }
+
+ 'SAP'
+
+{ after(grammarAccess.getSAPRefAccess().getSAPKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SAPRef__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SAPRef__Group__1__Impl
+ rule__SAPRef__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SAPRef__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPRefAccess().getNameAssignment_1()); }
+(rule__SAPRef__NameAssignment_1)
+{ after(grammarAccess.getSAPRefAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SAPRef__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SAPRef__Group__2__Impl
+ rule__SAPRef__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SAPRef__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPRefAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getSAPRefAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SAPRef__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SAPRef__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SAPRef__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPRefAccess().getProtocolAssignment_3()); }
+(rule__SAPRef__ProtocolAssignment_3)
+{ after(grammarAccess.getSAPRefAccess().getProtocolAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__SPPRef__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPRef__Group__0__Impl
+ rule__SPPRef__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPRef__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPRefAccess().getSPPKeyword_0()); }
+
+ 'SPP'
+
+{ after(grammarAccess.getSPPRefAccess().getSPPKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SPPRef__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPRef__Group__1__Impl
+ rule__SPPRef__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPRef__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPRefAccess().getNameAssignment_1()); }
+(rule__SPPRef__NameAssignment_1)
+{ after(grammarAccess.getSPPRefAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SPPRef__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPRef__Group__2__Impl
+ rule__SPPRef__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPRef__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPRefAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getSPPRefAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SPPRef__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPRef__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPRef__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPRefAccess().getProtocolAssignment_3()); }
+(rule__SPPRef__ProtocolAssignment_3)
+{ after(grammarAccess.getSPPRefAccess().getProtocolAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__ServiceImplementation__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ServiceImplementation__Group__0__Impl
+ rule__ServiceImplementation__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ServiceImplementation__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getServiceImplementationAccess().getServiceImplementationKeyword_0()); }
+
+ 'ServiceImplementation'
+
+{ after(grammarAccess.getServiceImplementationAccess().getServiceImplementationKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ServiceImplementation__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ServiceImplementation__Group__1__Impl
+ rule__ServiceImplementation__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ServiceImplementation__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getServiceImplementationAccess().getOfKeyword_1()); }
+
+ 'of'
+
+{ after(grammarAccess.getServiceImplementationAccess().getOfKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ServiceImplementation__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ServiceImplementation__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ServiceImplementation__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getServiceImplementationAccess().getSppAssignment_2()); }
+(rule__ServiceImplementation__SppAssignment_2)
+{ after(grammarAccess.getServiceImplementationAccess().getSppAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__LogicalSystem__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__0__Impl
+ rule__LogicalSystem__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getLogicalSystemKeyword_0()); }
+
+ 'LogicalSystem'
+
+{ after(grammarAccess.getLogicalSystemAccess().getLogicalSystemKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalSystem__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__1__Impl
+ rule__LogicalSystem__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getNameAssignment_1()); }
+(rule__LogicalSystem__NameAssignment_1)
+{ after(grammarAccess.getLogicalSystemAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalSystem__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__2__Impl
+ rule__LogicalSystem__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getLogicalSystemAccess().getLeftCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalSystem__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__3__Impl
+ rule__LogicalSystem__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
+(rule__LogicalSystem__SubSystemsAssignment_3)
+{ after(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
+)
+(
+{ before(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
+(rule__LogicalSystem__SubSystemsAssignment_3)*
+{ after(grammarAccess.getLogicalSystemAccess().getSubSystemsAssignment_3()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalSystem__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__4__Impl
+ rule__LogicalSystem__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getBindingsAssignment_4()); }
+(rule__LogicalSystem__BindingsAssignment_4)*
+{ after(grammarAccess.getLogicalSystemAccess().getBindingsAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalSystem__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__5__Impl
+ rule__LogicalSystem__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getConnectionsAssignment_5()); }
+(rule__LogicalSystem__ConnectionsAssignment_5)*
+{ after(grammarAccess.getLogicalSystemAccess().getConnectionsAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalSystem__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalSystem__Group__6__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getRightCurlyBracketKeyword_6()); }
+
+ '}'
+
+{ after(grammarAccess.getLogicalSystemAccess().getRightCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__SubSystemRef__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemRef__Group__0__Impl
+ rule__SubSystemRef__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemRef__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemRefAccess().getSubSystemRefKeyword_0()); }
+
+ 'SubSystemRef'
+
+{ after(grammarAccess.getSubSystemRefAccess().getSubSystemRefKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemRef__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemRef__Group__1__Impl
+ rule__SubSystemRef__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemRef__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemRefAccess().getNameAssignment_1()); }
+(rule__SubSystemRef__NameAssignment_1)
+{ after(grammarAccess.getSubSystemRefAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemRef__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemRef__Group__2__Impl
+ rule__SubSystemRef__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemRef__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemRefAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getSubSystemRefAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemRef__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemRef__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemRef__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemRefAccess().getTypeAssignment_3()); }
+(rule__SubSystemRef__TypeAssignment_3)
+{ after(grammarAccess.getSubSystemRefAccess().getTypeAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__SubSystemClass__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__0__Impl
+ rule__SubSystemClass__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getSubSystemClassKeyword_0()); }
+
+ 'SubSystemClass'
+
+{ after(grammarAccess.getSubSystemClassAccess().getSubSystemClassKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__1__Impl
+ rule__SubSystemClass__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getNameAssignment_1()); }
+(rule__SubSystemClass__NameAssignment_1)
+{ after(grammarAccess.getSubSystemClassAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__2__Impl
+ rule__SubSystemClass__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getSubSystemClassAccess().getLeftCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__3__Impl
+ rule__SubSystemClass__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getRelayPortsAssignment_3()); }
+(rule__SubSystemClass__RelayPortsAssignment_3)*
+{ after(grammarAccess.getSubSystemClassAccess().getRelayPortsAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__4__Impl
+ rule__SubSystemClass__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getIfSPPsAssignment_4()); }
+(rule__SubSystemClass__IfSPPsAssignment_4)*
+{ after(grammarAccess.getSubSystemClassAccess().getIfSPPsAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__5__Impl
+ rule__SubSystemClass__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
+(rule__SubSystemClass__ActorRefsAssignment_5)
+{ after(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
+)
+(
+{ before(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
+(rule__SubSystemClass__ActorRefsAssignment_5)*
+{ after(grammarAccess.getSubSystemClassAccess().getActorRefsAssignment_5()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__6__Impl
+ rule__SubSystemClass__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getBindingsAssignment_6()); }
+(rule__SubSystemClass__BindingsAssignment_6)*
+{ after(grammarAccess.getSubSystemClassAccess().getBindingsAssignment_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__7__Impl
+ rule__SubSystemClass__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getConnectionsAssignment_7()); }
+(rule__SubSystemClass__ConnectionsAssignment_7)*
+{ after(grammarAccess.getSubSystemClassAccess().getConnectionsAssignment_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__8__Impl
+ rule__SubSystemClass__Group__9
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getThreadsAssignment_8()); }
+(rule__SubSystemClass__ThreadsAssignment_8)*
+{ after(grammarAccess.getSubSystemClassAccess().getThreadsAssignment_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemClass__Group__9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemClass__Group__9__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__Group__9__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getRightCurlyBracketKeyword_9()); }
+
+ '}'
+
+{ after(grammarAccess.getSubSystemClassAccess().getRightCurlyBracketKeyword_9()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__LogicalThread__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group__0__Impl
+ rule__LogicalThread__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getLogicalThreadKeyword_0()); }
+
+ 'LogicalThread'
+
+{ after(grammarAccess.getLogicalThreadAccess().getLogicalThreadKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalThread__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group__1__Impl
+ rule__LogicalThread__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getNameAssignment_1()); }
+(rule__LogicalThread__NameAssignment_1)
+{ after(grammarAccess.getLogicalThreadAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalThread__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group__2__Impl
+ rule__LogicalThread__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getLogicalThreadAccess().getLeftCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalThread__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group__3__Impl
+ rule__LogicalThread__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_3()); }
+(rule__LogicalThread__InstancesAssignment_3)
+{ after(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalThread__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group__4__Impl
+ rule__LogicalThread__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getGroup_4()); }
+(rule__LogicalThread__Group_4__0)*
+{ after(grammarAccess.getLogicalThreadAccess().getGroup_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalThread__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group__5__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getRightCurlyBracketKeyword_5()); }
+
+ '}'
+
+{ after(grammarAccess.getLogicalThreadAccess().getRightCurlyBracketKeyword_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__LogicalThread__Group_4__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group_4__0__Impl
+ rule__LogicalThread__Group_4__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group_4__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getCommaKeyword_4_0()); }
+
+ ','
+
+{ after(grammarAccess.getLogicalThreadAccess().getCommaKeyword_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LogicalThread__Group_4__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LogicalThread__Group_4__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__Group_4__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_4_1()); }
+(rule__LogicalThread__InstancesAssignment_4_1)
+{ after(grammarAccess.getLogicalThreadAccess().getInstancesAssignment_4_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ActorInstancePath__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorInstancePath__Group__0__Impl
+ rule__ActorInstancePath__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorInstancePath__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_0()); }
+(rule__ActorInstancePath__SegmentsAssignment_0)
+{ after(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorInstancePath__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorInstancePath__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorInstancePath__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorInstancePathAccess().getGroup_1()); }
+(rule__ActorInstancePath__Group_1__0)*
+{ after(grammarAccess.getActorInstancePathAccess().getGroup_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ActorInstancePath__Group_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorInstancePath__Group_1__0__Impl
+ rule__ActorInstancePath__Group_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorInstancePath__Group_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorInstancePathAccess().getFullStopKeyword_1_0()); }
+
+ '.'
+
+{ after(grammarAccess.getActorInstancePathAccess().getFullStopKeyword_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorInstancePath__Group_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorInstancePath__Group_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorInstancePath__Group_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_1_1()); }
+(rule__ActorInstancePath__SegmentsAssignment_1_1)
+{ after(grammarAccess.getActorInstancePathAccess().getSegmentsAssignment_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Binding__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Binding__Group__0__Impl
+ rule__Binding__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Binding__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingAccess().getBindingKeyword_0()); }
+
+ 'Binding'
+
+{ after(grammarAccess.getBindingAccess().getBindingKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Binding__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Binding__Group__1__Impl
+ rule__Binding__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Binding__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingAccess().getEndpoint1Assignment_1()); }
+(rule__Binding__Endpoint1Assignment_1)
+{ after(grammarAccess.getBindingAccess().getEndpoint1Assignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Binding__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Binding__Group__2__Impl
+ rule__Binding__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Binding__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingAccess().getAndKeyword_2()); }
+
+ 'and'
+
+{ after(grammarAccess.getBindingAccess().getAndKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Binding__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Binding__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Binding__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingAccess().getEndpoint2Assignment_3()); }
+(rule__Binding__Endpoint2Assignment_3)
+{ after(grammarAccess.getBindingAccess().getEndpoint2Assignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__BindingEndPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BindingEndPoint__Group__0__Impl
+ rule__BindingEndPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BindingEndPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingEndPointAccess().getGroup_0()); }
+(rule__BindingEndPoint__Group_0__0)?
+{ after(grammarAccess.getBindingEndPointAccess().getGroup_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BindingEndPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BindingEndPoint__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BindingEndPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingEndPointAccess().getPortAssignment_1()); }
+(rule__BindingEndPoint__PortAssignment_1)
+{ after(grammarAccess.getBindingEndPointAccess().getPortAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__BindingEndPoint__Group_0__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BindingEndPoint__Group_0__0__Impl
+ rule__BindingEndPoint__Group_0__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BindingEndPoint__Group_0__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingEndPointAccess().getActorRefAssignment_0_0()); }
+(rule__BindingEndPoint__ActorRefAssignment_0_0)
+{ after(grammarAccess.getBindingEndPointAccess().getActorRefAssignment_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BindingEndPoint__Group_0__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BindingEndPoint__Group_0__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BindingEndPoint__Group_0__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingEndPointAccess().getFullStopKeyword_0_1()); }
+
+ '.'
+
+{ after(grammarAccess.getBindingEndPointAccess().getFullStopKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__LayerConnection__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LayerConnection__Group__0__Impl
+ rule__LayerConnection__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LayerConnection__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLayerConnectionAccess().getLayerConnectionKeyword_0()); }
+
+ 'LayerConnection'
+
+{ after(grammarAccess.getLayerConnectionAccess().getLayerConnectionKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LayerConnection__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LayerConnection__Group__1__Impl
+ rule__LayerConnection__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LayerConnection__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLayerConnectionAccess().getFromAssignment_1()); }
+(rule__LayerConnection__FromAssignment_1)
+{ after(grammarAccess.getLayerConnectionAccess().getFromAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LayerConnection__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LayerConnection__Group__2__Impl
+ rule__LayerConnection__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LayerConnection__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLayerConnectionAccess().getSatisfied_byKeyword_2()); }
+
+ 'satisfied_by'
+
+{ after(grammarAccess.getLayerConnectionAccess().getSatisfied_byKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__LayerConnection__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__LayerConnection__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LayerConnection__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLayerConnectionAccess().getToAssignment_3()); }
+(rule__LayerConnection__ToAssignment_3)
+{ after(grammarAccess.getLayerConnectionAccess().getToAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__RefSAPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefSAPoint__Group__0__Impl
+ rule__RefSAPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefSAPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefSAPointAccess().getRefKeyword_0()); }
+
+ 'ref'
+
+{ after(grammarAccess.getRefSAPointAccess().getRefKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefSAPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefSAPoint__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefSAPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefSAPointAccess().getRefAssignment_1()); }
+(rule__RefSAPoint__RefAssignment_1)
+{ after(grammarAccess.getRefSAPointAccess().getRefAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__RelaySAPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RelaySAPoint__Group__0__Impl
+ rule__RelaySAPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RelaySAPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRelaySAPointAccess().getRelay_sapKeyword_0()); }
+
+ 'relay_sap'
+
+{ after(grammarAccess.getRelaySAPointAccess().getRelay_sapKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RelaySAPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RelaySAPoint__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RelaySAPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRelaySAPointAccess().getRelayAssignment_1()); }
+(rule__RelaySAPoint__RelayAssignment_1)
+{ after(grammarAccess.getRelaySAPointAccess().getRelayAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__SPPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPoint__Group__0__Impl
+ rule__SPPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPointAccess().getRefAssignment_0()); }
+(rule__SPPoint__RefAssignment_0)
+{ after(grammarAccess.getSPPointAccess().getRefAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SPPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPoint__Group__1__Impl
+ rule__SPPoint__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPointAccess().getFullStopKeyword_1()); }
+
+ '.'
+
+{ after(grammarAccess.getSPPointAccess().getFullStopKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SPPoint__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SPPoint__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPoint__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPointAccess().getServiceAssignment_2()); }
+(rule__SPPoint__ServiceAssignment_2)
+{ after(grammarAccess.getSPPointAccess().getServiceAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__ActorRef__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorRef__Group__0__Impl
+ rule__ActorRef__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorRef__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorRefAccess().getActorRefKeyword_0()); }
+
+ 'ActorRef'
+
+{ after(grammarAccess.getActorRefAccess().getActorRefKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorRef__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorRef__Group__1__Impl
+ rule__ActorRef__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorRef__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorRefAccess().getNameAssignment_1()); }
+(rule__ActorRef__NameAssignment_1)
+{ after(grammarAccess.getActorRefAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorRef__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorRef__Group__2__Impl
+ rule__ActorRef__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorRef__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorRefAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getActorRefAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ActorRef__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ActorRef__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorRef__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorRefAccess().getTypeAssignment_3()); }
+(rule__ActorRef__TypeAssignment_3)
+{ after(grammarAccess.getActorRefAccess().getTypeAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__StateGraph__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateGraph__Group__0__Impl
+ rule__StateGraph__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getLeftCurlyBracketKeyword_0()); }
+
+ '{'
+
+{ after(grammarAccess.getStateGraphAccess().getLeftCurlyBracketKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StateGraph__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateGraph__Group__1__Impl
+ rule__StateGraph__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
+(rule__StateGraph__Alternatives_1)
+{ after(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
+)
+(
+{ before(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
+(rule__StateGraph__Alternatives_1)*
+{ after(grammarAccess.getStateGraphAccess().getAlternatives_1()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StateGraph__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateGraph__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getRightCurlyBracketKeyword_2()); }
+
+ '}'
+
+{ after(grammarAccess.getStateGraphAccess().getRightCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__StateMachine__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateMachine__Group__0__Impl
+ rule__StateMachine__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getStateMachineKeyword_0()); }
+
+ 'StateMachine'
+
+{ after(grammarAccess.getStateMachineAccess().getStateMachineKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StateMachine__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateMachine__Group__1__Impl
+ rule__StateMachine__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getLeftCurlyBracketKeyword_1()); }
+
+ '{'
+
+{ after(grammarAccess.getStateMachineAccess().getLeftCurlyBracketKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StateMachine__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateMachine__Group__2__Impl
+ rule__StateMachine__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
+(rule__StateMachine__Alternatives_2)
+{ after(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
+)
+(
+{ before(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
+(rule__StateMachine__Alternatives_2)*
+{ after(grammarAccess.getStateMachineAccess().getAlternatives_2()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StateMachine__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StateMachine__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getRightCurlyBracketKeyword_3()); }
+
+ '}'
+
+{ after(grammarAccess.getStateMachineAccess().getRightCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__BaseState__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__0__Impl
+ rule__BaseState__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getStateKeyword_0()); }
+
+ 'State'
+
+{ after(grammarAccess.getBaseStateAccess().getStateKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__1__Impl
+ rule__BaseState__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getNameAssignment_1()); }
+(rule__BaseState__NameAssignment_1)
+{ after(grammarAccess.getBaseStateAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__2__Impl
+ rule__BaseState__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getBaseStateAccess().getLeftCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__3__Impl
+ rule__BaseState__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getGroup_3()); }
+(rule__BaseState__Group_3__0)?
+{ after(grammarAccess.getBaseStateAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__4__Impl
+ rule__BaseState__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getGroup_4()); }
+(rule__BaseState__Group_4__0)?
+{ after(grammarAccess.getBaseStateAccess().getGroup_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__5__Impl
+ rule__BaseState__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getGroup_5()); }
+(rule__BaseState__Group_5__0)?
+{ after(grammarAccess.getBaseStateAccess().getGroup_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group__6__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getRightCurlyBracketKeyword_6()); }
+
+ '}'
+
+{ after(grammarAccess.getBaseStateAccess().getRightCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__BaseState__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group_3__0__Impl
+ rule__BaseState__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getEntryKeyword_3_0()); }
+
+ 'entry'
+
+{ after(grammarAccess.getBaseStateAccess().getEntryKeyword_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group_3__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getEntryCodeAssignment_3_1()); }
+(rule__BaseState__EntryCodeAssignment_3_1)
+{ after(grammarAccess.getBaseStateAccess().getEntryCodeAssignment_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__BaseState__Group_4__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group_4__0__Impl
+ rule__BaseState__Group_4__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group_4__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getExitKeyword_4_0()); }
+
+ 'exit'
+
+{ after(grammarAccess.getBaseStateAccess().getExitKeyword_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group_4__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group_4__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group_4__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getExitCodeAssignment_4_1()); }
+(rule__BaseState__ExitCodeAssignment_4_1)
+{ after(grammarAccess.getBaseStateAccess().getExitCodeAssignment_4_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__BaseState__Group_5__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group_5__0__Impl
+ rule__BaseState__Group_5__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group_5__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getSubgraphKeyword_5_0()); }
+
+ 'subgraph'
+
+{ after(grammarAccess.getBaseStateAccess().getSubgraphKeyword_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BaseState__Group_5__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BaseState__Group_5__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__Group_5__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getSubgraphAssignment_5_1()); }
+(rule__BaseState__SubgraphAssignment_5_1)
+{ after(grammarAccess.getBaseStateAccess().getSubgraphAssignment_5_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__RefinedState__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__0__Impl
+ rule__RefinedState__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getRefinedStateKeyword_0()); }
+
+ 'RefinedState'
+
+{ after(grammarAccess.getRefinedStateAccess().getRefinedStateKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__1__Impl
+ rule__RefinedState__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getBaseAssignment_1()); }
+(rule__RefinedState__BaseAssignment_1)
+{ after(grammarAccess.getRefinedStateAccess().getBaseAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__2__Impl
+ rule__RefinedState__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getRefinedStateAccess().getLeftCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__3__Impl
+ rule__RefinedState__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getGroup_3()); }
+(rule__RefinedState__Group_3__0)?
+{ after(grammarAccess.getRefinedStateAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__4__Impl
+ rule__RefinedState__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getGroup_4()); }
+(rule__RefinedState__Group_4__0)?
+{ after(grammarAccess.getRefinedStateAccess().getGroup_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__5__Impl
+ rule__RefinedState__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getGroup_5()); }
+(rule__RefinedState__Group_5__0)?
+{ after(grammarAccess.getRefinedStateAccess().getGroup_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group__6__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getRightCurlyBracketKeyword_6()); }
+
+ '}'
+
+{ after(grammarAccess.getRefinedStateAccess().getRightCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__RefinedState__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group_3__0__Impl
+ rule__RefinedState__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getEntryKeyword_3_0()); }
+
+ 'entry'
+
+{ after(grammarAccess.getRefinedStateAccess().getEntryKeyword_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group_3__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getEntryCodeAssignment_3_1()); }
+(rule__RefinedState__EntryCodeAssignment_3_1)
+{ after(grammarAccess.getRefinedStateAccess().getEntryCodeAssignment_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__RefinedState__Group_4__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group_4__0__Impl
+ rule__RefinedState__Group_4__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group_4__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getExitKeyword_4_0()); }
+
+ 'exit'
+
+{ after(grammarAccess.getRefinedStateAccess().getExitKeyword_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group_4__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group_4__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group_4__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getExitCodeAssignment_4_1()); }
+(rule__RefinedState__ExitCodeAssignment_4_1)
+{ after(grammarAccess.getRefinedStateAccess().getExitCodeAssignment_4_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__RefinedState__Group_5__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group_5__0__Impl
+ rule__RefinedState__Group_5__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group_5__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getSubgraphKeyword_5_0()); }
+
+ 'subgraph'
+
+{ after(grammarAccess.getRefinedStateAccess().getSubgraphKeyword_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RefinedState__Group_5__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RefinedState__Group_5__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__Group_5__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getSubgraphAssignment_5_1()); }
+(rule__RefinedState__SubgraphAssignment_5_1)
+{ after(grammarAccess.getRefinedStateAccess().getSubgraphAssignment_5_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__DetailCode__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DetailCode__Group__0__Impl
+ rule__DetailCode__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DetailCode__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDetailCodeAccess().getLeftCurlyBracketKeyword_0()); }
+
+ '{'
+
+{ after(grammarAccess.getDetailCodeAccess().getLeftCurlyBracketKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DetailCode__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DetailCode__Group__1__Impl
+ rule__DetailCode__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DetailCode__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+(
+{ before(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
+(rule__DetailCode__CommandsAssignment_1)
+{ after(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
+)
+(
+{ before(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
+(rule__DetailCode__CommandsAssignment_1)*
+{ after(grammarAccess.getDetailCodeAccess().getCommandsAssignment_1()); }
+)
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DetailCode__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DetailCode__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DetailCode__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDetailCodeAccess().getRightCurlyBracketKeyword_2()); }
+
+ '}'
+
+{ after(grammarAccess.getDetailCodeAccess().getRightCurlyBracketKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__TransitionPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TransitionPoint__Group__0__Impl
+ rule__TransitionPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TransitionPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionPointAccess().getHandlerAssignment_0()); }
+(rule__TransitionPoint__HandlerAssignment_0)?
+{ after(grammarAccess.getTransitionPointAccess().getHandlerAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TransitionPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TransitionPoint__Group__1__Impl
+ rule__TransitionPoint__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TransitionPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionPointAccess().getTransitionPointKeyword_1()); }
+
+ 'TransitionPoint'
+
+{ after(grammarAccess.getTransitionPointAccess().getTransitionPointKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TransitionPoint__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TransitionPoint__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TransitionPoint__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionPointAccess().getNameAssignment_2()); }
+(rule__TransitionPoint__NameAssignment_2)
+{ after(grammarAccess.getTransitionPointAccess().getNameAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__EntryPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EntryPoint__Group__0__Impl
+ rule__EntryPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EntryPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEntryPointAccess().getEntryPointKeyword_0()); }
+
+ 'EntryPoint'
+
+{ after(grammarAccess.getEntryPointAccess().getEntryPointKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EntryPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EntryPoint__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EntryPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEntryPointAccess().getNameAssignment_1()); }
+(rule__EntryPoint__NameAssignment_1)
+{ after(grammarAccess.getEntryPointAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ExitPoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ExitPoint__Group__0__Impl
+ rule__ExitPoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExitPoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExitPointAccess().getExitPointKeyword_0()); }
+
+ 'ExitPoint'
+
+{ after(grammarAccess.getExitPointAccess().getExitPointKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ExitPoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ExitPoint__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExitPoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExitPointAccess().getNameAssignment_1()); }
+(rule__ExitPoint__NameAssignment_1)
+{ after(grammarAccess.getExitPointAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ChoicePoint__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ChoicePoint__Group__0__Impl
+ rule__ChoicePoint__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ChoicePoint__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getChoicePointAccess().getChoicePointKeyword_0()); }
+
+ 'ChoicePoint'
+
+{ after(grammarAccess.getChoicePointAccess().getChoicePointKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ChoicePoint__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ChoicePoint__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ChoicePoint__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getChoicePointAccess().getNameAssignment_1()); }
+(rule__ChoicePoint__NameAssignment_1)
+{ after(grammarAccess.getChoicePointAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__InitialTransition__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__0__Impl
+ rule__InitialTransition__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getTransitionKeyword_0()); }
+
+ 'Transition'
+
+{ after(grammarAccess.getInitialTransitionAccess().getTransitionKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__1__Impl
+ rule__InitialTransition__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getNameAssignment_1()); }
+(rule__InitialTransition__NameAssignment_1)?
+{ after(grammarAccess.getInitialTransitionAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__2__Impl
+ rule__InitialTransition__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getInitialTransitionAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__3__Impl
+ rule__InitialTransition__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getInitialKeyword_3()); }
+
+ 'initial'
+
+{ after(grammarAccess.getInitialTransitionAccess().getInitialKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__4__Impl
+ rule__InitialTransition__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+
+ '->'
+
+{ after(grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__5__Impl
+ rule__InitialTransition__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getToAssignment_5()); }
+(rule__InitialTransition__ToAssignment_5)
+{ after(grammarAccess.getInitialTransitionAccess().getToAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__6__Impl
+ rule__InitialTransition__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+
+ '{'
+
+{ after(grammarAccess.getInitialTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__7__Impl
+ rule__InitialTransition__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getGroup_7()); }
+(rule__InitialTransition__Group_7__0)?
+{ after(grammarAccess.getInitialTransitionAccess().getGroup_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group__8__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getRightCurlyBracketKeyword_8()); }
+
+ '}'
+
+{ after(grammarAccess.getInitialTransitionAccess().getRightCurlyBracketKeyword_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__InitialTransition__Group_7__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group_7__0__Impl
+ rule__InitialTransition__Group_7__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group_7__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getActionKeyword_7_0()); }
+
+ 'action'
+
+{ after(grammarAccess.getInitialTransitionAccess().getActionKeyword_7_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__InitialTransition__Group_7__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__InitialTransition__Group_7__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__Group_7__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getActionAssignment_7_1()); }
+(rule__InitialTransition__ActionAssignment_7_1)
+{ after(grammarAccess.getInitialTransitionAccess().getActionAssignment_7_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ContinuationTransition__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__0__Impl
+ rule__ContinuationTransition__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getTransitionKeyword_0()); }
+
+ 'Transition'
+
+{ after(grammarAccess.getContinuationTransitionAccess().getTransitionKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__1__Impl
+ rule__ContinuationTransition__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getNameAssignment_1()); }
+(rule__ContinuationTransition__NameAssignment_1)?
+{ after(grammarAccess.getContinuationTransitionAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__2__Impl
+ rule__ContinuationTransition__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getContinuationTransitionAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__3__Impl
+ rule__ContinuationTransition__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getFromAssignment_3()); }
+(rule__ContinuationTransition__FromAssignment_3)
+{ after(grammarAccess.getContinuationTransitionAccess().getFromAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__4__Impl
+ rule__ContinuationTransition__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+
+ '->'
+
+{ after(grammarAccess.getContinuationTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__5__Impl
+ rule__ContinuationTransition__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getToAssignment_5()); }
+(rule__ContinuationTransition__ToAssignment_5)
+{ after(grammarAccess.getContinuationTransitionAccess().getToAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__6__Impl
+ rule__ContinuationTransition__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+
+ '{'
+
+{ after(grammarAccess.getContinuationTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__7__Impl
+ rule__ContinuationTransition__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getGroup_7()); }
+(rule__ContinuationTransition__Group_7__0)?
+{ after(grammarAccess.getContinuationTransitionAccess().getGroup_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group__8__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getRightCurlyBracketKeyword_8()); }
+
+ '}'
+
+{ after(grammarAccess.getContinuationTransitionAccess().getRightCurlyBracketKeyword_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__ContinuationTransition__Group_7__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group_7__0__Impl
+ rule__ContinuationTransition__Group_7__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group_7__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getActionKeyword_7_0()); }
+
+ 'action'
+
+{ after(grammarAccess.getContinuationTransitionAccess().getActionKeyword_7_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ContinuationTransition__Group_7__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ContinuationTransition__Group_7__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__Group_7__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getActionAssignment_7_1()); }
+(rule__ContinuationTransition__ActionAssignment_7_1)
+{ after(grammarAccess.getContinuationTransitionAccess().getActionAssignment_7_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__TriggeredTransition__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__0__Impl
+ rule__TriggeredTransition__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getTransitionKeyword_0()); }
+
+ 'Transition'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getTransitionKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__1__Impl
+ rule__TriggeredTransition__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getNameAssignment_1()); }
+(rule__TriggeredTransition__NameAssignment_1)?
+{ after(grammarAccess.getTriggeredTransitionAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__2__Impl
+ rule__TriggeredTransition__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__3__Impl
+ rule__TriggeredTransition__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getFromAssignment_3()); }
+(rule__TriggeredTransition__FromAssignment_3)
+{ after(grammarAccess.getTriggeredTransitionAccess().getFromAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__4__Impl
+ rule__TriggeredTransition__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+
+ '->'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__5__Impl
+ rule__TriggeredTransition__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getToAssignment_5()); }
+(rule__TriggeredTransition__ToAssignment_5)
+{ after(grammarAccess.getTriggeredTransitionAccess().getToAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__6__Impl
+ rule__TriggeredTransition__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+
+ '{'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__7__Impl
+ rule__TriggeredTransition__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersKeyword_7()); }
+
+ 'triggers'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersKeyword_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__8__Impl
+ rule__TriggeredTransition__Group__9
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_8()); }
+
+ '{'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__9__Impl
+ rule__TriggeredTransition__Group__10
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__9__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_9()); }
+(rule__TriggeredTransition__TriggersAssignment_9)
+{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_9()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__10
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__10__Impl
+ rule__TriggeredTransition__Group__11
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__10__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getGroup_10()); }
+(rule__TriggeredTransition__Group_10__0)*
+{ after(grammarAccess.getTriggeredTransitionAccess().getGroup_10()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__11
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__11__Impl
+ rule__TriggeredTransition__Group__12
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__11__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_11()); }
+
+ '}'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_11()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__12
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__12__Impl
+ rule__TriggeredTransition__Group__13
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__12__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getGroup_12()); }
+(rule__TriggeredTransition__Group_12__0)?
+{ after(grammarAccess.getTriggeredTransitionAccess().getGroup_12()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group__13
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group__13__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group__13__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_13()); }
+
+ '}'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_13()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__TriggeredTransition__Group_10__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group_10__0__Impl
+ rule__TriggeredTransition__Group_10__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group_10__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getOrKeyword_10_0()); }
+
+ 'or'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getOrKeyword_10_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group_10__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group_10__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group_10__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_10_1()); }
+(rule__TriggeredTransition__TriggersAssignment_10_1)
+{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersAssignment_10_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__TriggeredTransition__Group_12__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group_12__0__Impl
+ rule__TriggeredTransition__Group_12__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group_12__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getActionKeyword_12_0()); }
+
+ 'action'
+
+{ after(grammarAccess.getTriggeredTransitionAccess().getActionKeyword_12_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TriggeredTransition__Group_12__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TriggeredTransition__Group_12__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__Group_12__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getActionAssignment_12_1()); }
+(rule__TriggeredTransition__ActionAssignment_12_1)
+{ after(grammarAccess.getTriggeredTransitionAccess().getActionAssignment_12_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__CPBranchTransition__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__0__Impl
+ rule__CPBranchTransition__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getTransitionKeyword_0()); }
+
+ 'Transition'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getTransitionKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__1__Impl
+ rule__CPBranchTransition__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getNameAssignment_1()); }
+(rule__CPBranchTransition__NameAssignment_1)?
+{ after(grammarAccess.getCPBranchTransitionAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__2__Impl
+ rule__CPBranchTransition__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getColonKeyword_2()); }
+
+ ':'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getColonKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__3__Impl
+ rule__CPBranchTransition__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getFromAssignment_3()); }
+(rule__CPBranchTransition__FromAssignment_3)
+{ after(grammarAccess.getCPBranchTransitionAccess().getFromAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__4__Impl
+ rule__CPBranchTransition__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+
+ '->'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__5__Impl
+ rule__CPBranchTransition__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getToAssignment_5()); }
+(rule__CPBranchTransition__ToAssignment_5)
+{ after(grammarAccess.getCPBranchTransitionAccess().getToAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__6__Impl
+ rule__CPBranchTransition__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+
+ '{'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getLeftCurlyBracketKeyword_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__7__Impl
+ rule__CPBranchTransition__Group__8
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getCondKeyword_7()); }
+
+ 'cond'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getCondKeyword_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__8__Impl
+ rule__CPBranchTransition__Group__9
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__8__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getConditionAssignment_8()); }
+(rule__CPBranchTransition__ConditionAssignment_8)
+{ after(grammarAccess.getCPBranchTransitionAccess().getConditionAssignment_8()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__9__Impl
+ rule__CPBranchTransition__Group__10
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__9__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getGroup_9()); }
+(rule__CPBranchTransition__Group_9__0)?
+{ after(grammarAccess.getCPBranchTransitionAccess().getGroup_9()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group__10
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group__10__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group__10__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getRightCurlyBracketKeyword_10()); }
+
+ '}'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getRightCurlyBracketKeyword_10()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__CPBranchTransition__Group_9__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group_9__0__Impl
+ rule__CPBranchTransition__Group_9__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group_9__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getActionKeyword_9_0()); }
+
+ 'action'
+
+{ after(grammarAccess.getCPBranchTransitionAccess().getActionKeyword_9_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__CPBranchTransition__Group_9__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__CPBranchTransition__Group_9__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__Group_9__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getActionAssignment_9_1()); }
+(rule__CPBranchTransition__ActionAssignment_9_1)
+{ after(grammarAccess.getCPBranchTransitionAccess().getActionAssignment_9_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__TrPointTerminal__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TrPointTerminal__Group__0__Impl
+ rule__TrPointTerminal__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TrPointTerminal__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTrPointTerminalAccess().getMyKeyword_0()); }
+
+ 'my'
+
+{ after(grammarAccess.getTrPointTerminalAccess().getMyKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__TrPointTerminal__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__TrPointTerminal__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TrPointTerminal__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTrPointTerminalAccess().getTrPointAssignment_1()); }
+(rule__TrPointTerminal__TrPointAssignment_1)
+{ after(grammarAccess.getTrPointTerminalAccess().getTrPointAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__SubStateTrPointTerminal__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubStateTrPointTerminal__Group__0__Impl
+ rule__SubStateTrPointTerminal__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubStateTrPointTerminal__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointAssignment_0()); }
+(rule__SubStateTrPointTerminal__TrPointAssignment_0)
+{ after(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubStateTrPointTerminal__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubStateTrPointTerminal__Group__1__Impl
+ rule__SubStateTrPointTerminal__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubStateTrPointTerminal__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getOfKeyword_1()); }
+
+ 'of'
+
+{ after(grammarAccess.getSubStateTrPointTerminalAccess().getOfKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubStateTrPointTerminal__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubStateTrPointTerminal__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubStateTrPointTerminal__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getStateAssignment_2()); }
+(rule__SubStateTrPointTerminal__StateAssignment_2)
+{ after(grammarAccess.getSubStateTrPointTerminalAccess().getStateAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__ChoicepointTerminal__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ChoicepointTerminal__Group__0__Impl
+ rule__ChoicepointTerminal__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ChoicepointTerminal__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getChoicepointTerminalAccess().getCpKeyword_0()); }
+
+ 'cp'
+
+{ after(grammarAccess.getChoicepointTerminalAccess().getCpKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ChoicepointTerminal__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ChoicepointTerminal__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ChoicepointTerminal__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getChoicepointTerminalAccess().getCpAssignment_1()); }
+(rule__ChoicepointTerminal__CpAssignment_1)
+{ after(grammarAccess.getChoicepointTerminalAccess().getCpAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Trigger__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group__0__Impl
+ rule__Trigger__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getLessThanSignKeyword_0()); }
+
+ '<'
+
+{ after(grammarAccess.getTriggerAccess().getLessThanSignKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Trigger__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group__1__Impl
+ rule__Trigger__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_1()); }
+(rule__Trigger__MsgFromIfPairsAssignment_1)
+{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Trigger__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group__2__Impl
+ rule__Trigger__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getGroup_2()); }
+(rule__Trigger__Group_2__0)*
+{ after(grammarAccess.getTriggerAccess().getGroup_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Trigger__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group__3__Impl
+ rule__Trigger__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getGuardAssignment_3()); }
+(rule__Trigger__GuardAssignment_3)?
+{ after(grammarAccess.getTriggerAccess().getGuardAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Trigger__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getGreaterThanSignKeyword_4()); }
+
+ '>'
+
+{ after(grammarAccess.getTriggerAccess().getGreaterThanSignKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__Trigger__Group_2__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group_2__0__Impl
+ rule__Trigger__Group_2__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group_2__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getVerticalLineKeyword_2_0()); }
+
+ '|'
+
+{ after(grammarAccess.getTriggerAccess().getVerticalLineKeyword_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Trigger__Group_2__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Trigger__Group_2__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__Group_2__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_2_1()); }
+(rule__Trigger__MsgFromIfPairsAssignment_2_1)
+{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsAssignment_2_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__MessageFromIf__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__MessageFromIf__Group__0__Impl
+ rule__MessageFromIf__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageFromIf__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageFromIfAccess().getMessageAssignment_0()); }
+(rule__MessageFromIf__MessageAssignment_0)
+{ after(grammarAccess.getMessageFromIfAccess().getMessageAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__MessageFromIf__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__MessageFromIf__Group__1__Impl
+ rule__MessageFromIf__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageFromIf__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageFromIfAccess().getColonKeyword_1()); }
+
+ ':'
+
+{ after(grammarAccess.getMessageFromIfAccess().getColonKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__MessageFromIf__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__MessageFromIf__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageFromIf__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageFromIfAccess().getFromAssignment_2()); }
+(rule__MessageFromIf__FromAssignment_2)
+{ after(grammarAccess.getMessageFromIfAccess().getFromAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__Guard__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Guard__Group__0__Impl
+ rule__Guard__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Guard__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGuardAccess().getGuardKeyword_0()); }
+
+ 'guard'
+
+{ after(grammarAccess.getGuardAccess().getGuardKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Guard__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Guard__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Guard__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGuardAccess().getGuardAssignment_1()); }
+(rule__Guard__GuardAssignment_1)
+{ after(grammarAccess.getGuardAccess().getGuardAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Import__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Import__Group__0__Impl
+ rule__Import__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Import__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportAccess().getImportKeyword_0()); }
+
+ 'import'
+
+{ after(grammarAccess.getImportAccess().getImportKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Import__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Import__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Import__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); }
+(rule__Import__ImportedNamespaceAssignment_1)
+{ after(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ImportedFQN__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ImportedFQN__Group__0__Impl
+ rule__ImportedFQN__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ImportedFQN__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0()); }
+ ruleFQN
+{ after(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ImportedFQN__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ImportedFQN__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ImportedFQN__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportedFQNAccess().getGroup_1()); }
+(rule__ImportedFQN__Group_1__0)?
+{ after(grammarAccess.getImportedFQNAccess().getGroup_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__ImportedFQN__Group_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ImportedFQN__Group_1__0__Impl
+ rule__ImportedFQN__Group_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ImportedFQN__Group_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportedFQNAccess().getFullStopKeyword_1_0()); }
+
+ '.'
+
+{ after(grammarAccess.getImportedFQNAccess().getFullStopKeyword_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__ImportedFQN__Group_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ImportedFQN__Group_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ImportedFQN__Group_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportedFQNAccess().getAsteriskKeyword_1_1()); }
+
+ '*'
+
+{ after(grammarAccess.getImportedFQNAccess().getAsteriskKeyword_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+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__RoomModel__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getNameFQNParserRuleCall_1_0()); }
+ ruleFQN{ after(grammarAccess.getRoomModelAccess().getNameFQNParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__ImportsAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getImportsImportParserRuleCall_3_0()); }
+ ruleImport{ after(grammarAccess.getRoomModelAccess().getImportsImportParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__DataClassesAssignment_4_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getDataClassesDataClassParserRuleCall_4_0_0()); }
+ ruleDataClass{ after(grammarAccess.getRoomModelAccess().getDataClassesDataClassParserRuleCall_4_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__ProtocolClassesAssignment_4_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getProtocolClassesProtocolClassParserRuleCall_4_1_0()); }
+ ruleProtocolClass{ after(grammarAccess.getRoomModelAccess().getProtocolClassesProtocolClassParserRuleCall_4_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__ActorClassesAssignment_4_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getActorClassesActorClassParserRuleCall_4_2_0()); }
+ ruleActorClass{ after(grammarAccess.getRoomModelAccess().getActorClassesActorClassParserRuleCall_4_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__SubSystemClassesAssignment_4_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getSubSystemClassesSubSystemClassParserRuleCall_4_3_0()); }
+ ruleSubSystemClass{ after(grammarAccess.getRoomModelAccess().getSubSystemClassesSubSystemClassParserRuleCall_4_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RoomModel__SystemsAssignment_4_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRoomModelAccess().getSystemsLogicalSystemParserRuleCall_4_4_0()); }
+ ruleLogicalSystem{ after(grammarAccess.getRoomModelAccess().getSystemsLogicalSystemParserRuleCall_4_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TypedID__NameAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
+ RULE_ID{ after(grammarAccess.getTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TypedID__TypeAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypedIDAccess().getTypeTypeParserRuleCall_2_0()); }
+ ruleType{ after(grammarAccess.getTypedIDAccess().getTypeTypeParserRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeTypedID__NameAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
+ RULE_ID{ after(grammarAccess.getFreeTypedIDAccess().getNameIDTerminalRuleCall_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeTypedID__TypeAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypedIDAccess().getTypeFreeTypeParserRuleCall_2_0()); }
+ ruleFreeType{ after(grammarAccess.getFreeTypedIDAccess().getTypeFreeTypeParserRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Type__PrimAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
+ rulePrimitiveType{ after(grammarAccess.getTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Type__TypeAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTypeAccess().getTypeDataClassCrossReference_1_0()); }
+(
+{ before(grammarAccess.getTypeAccess().getTypeDataClassFQNParserRuleCall_1_0_1()); }
+ ruleFQN{ after(grammarAccess.getTypeAccess().getTypeDataClassFQNParserRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getTypeAccess().getTypeDataClassCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeType__PrimAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
+ rulePrimitiveType{ after(grammarAccess.getFreeTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__FreeType__TypeAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFreeTypeAccess().getTypeIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getFreeTypeAccess().getTypeIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getDataClassAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__BaseAssignment_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getBaseDataClassCrossReference_2_1_0()); }
+(
+{ before(grammarAccess.getDataClassAccess().getBaseDataClassFQNParserRuleCall_2_1_0_1()); }
+ ruleFQN{ after(grammarAccess.getDataClassAccess().getBaseDataClassFQNParserRuleCall_2_1_0_1()); }
+)
+{ after(grammarAccess.getDataClassAccess().getBaseDataClassCrossReference_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__ImportsAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getImportsImportParserRuleCall_4_0()); }
+ ruleImport{ after(grammarAccess.getDataClassAccess().getImportsImportParserRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__AttributesAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getAttributesAttributeParserRuleCall_5_0()); }
+ ruleAttribute{ after(grammarAccess.getDataClassAccess().getAttributesAttributeParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DataClass__OperationsAssignment_6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDataClassAccess().getOperationsOperationParserRuleCall_6_0()); }
+ ruleOperation{ after(grammarAccess.getDataClassAccess().getOperationsOperationParserRuleCall_6_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getAttributeAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__SizeAssignment_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getSizeINTTerminalRuleCall_2_1_0()); }
+ RULE_INT{ after(grammarAccess.getAttributeAccess().getSizeINTTerminalRuleCall_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Attribute__TypeAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttributeAccess().getTypeTypeParserRuleCall_4_0()); }
+ ruleType{ after(grammarAccess.getAttributeAccess().getTypeTypeParserRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getOperationAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__ArgumentsAssignment_3_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_0_0()); }
+ ruleFreeTypedID{ after(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__ArgumentsAssignment_3_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_1_1_0()); }
+ ruleFreeTypedID{ after(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__ReturntypeAssignment_5_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getReturntypeFreeTypeParserRuleCall_5_1_0()); }
+ ruleFreeType{ after(grammarAccess.getOperationAccess().getReturntypeFreeTypeParserRuleCall_5_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Operation__DetailCodeAssignment_6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getOperationAccess().getDetailCodeDetailCodeParserRuleCall_6_0()); }
+ ruleDetailCode{ after(grammarAccess.getOperationAccess().getDetailCodeDetailCodeParserRuleCall_6_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getProtocolClassAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__BaseAssignment_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getBaseProtocolClassCrossReference_2_1_0()); }
+(
+{ before(grammarAccess.getProtocolClassAccess().getBaseProtocolClassFQNParserRuleCall_2_1_0_1()); }
+ ruleFQN{ after(grammarAccess.getProtocolClassAccess().getBaseProtocolClassFQNParserRuleCall_2_1_0_1()); }
+)
+{ after(grammarAccess.getProtocolClassAccess().getBaseProtocolClassCrossReference_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__UserCode1Assignment_4_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getUserCode1DetailCodeParserRuleCall_4_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getProtocolClassAccess().getUserCode1DetailCodeParserRuleCall_4_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__UserCode2Assignment_5_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getUserCode2DetailCodeParserRuleCall_5_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getProtocolClassAccess().getUserCode2DetailCodeParserRuleCall_5_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__IncomingMessagesAssignment_8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getIncomingMessagesMessageParserRuleCall_8_0()); }
+ ruleMessage{ after(grammarAccess.getProtocolClassAccess().getIncomingMessagesMessageParserRuleCall_8_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__OutgoingMessagesAssignment_12
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getOutgoingMessagesMessageParserRuleCall_12_0()); }
+ ruleMessage{ after(grammarAccess.getProtocolClassAccess().getOutgoingMessagesMessageParserRuleCall_12_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__RegularAssignment_14_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getRegularPortClassParserRuleCall_14_2_0()); }
+ rulePortClass{ after(grammarAccess.getProtocolClassAccess().getRegularPortClassParserRuleCall_14_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__ConjugateAssignment_15_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getConjugatePortClassParserRuleCall_15_2_0()); }
+ rulePortClass{ after(grammarAccess.getProtocolClassAccess().getConjugatePortClassParserRuleCall_15_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolClass__SemanticsAssignment_16
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolClassAccess().getSemanticsProtocolSemanticsParserRuleCall_16_0()); }
+ ruleProtocolSemantics{ after(grammarAccess.getProtocolClassAccess().getSemanticsProtocolSemanticsParserRuleCall_16_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getMessageAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__ArgumentsAssignment_3_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_0_0()); }
+ ruleTypedID{ after(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Message__ArgumentsAssignment_3_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_1_1_0()); }
+ ruleTypedID{ after(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__UserCodeAssignment_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getUserCodeDetailCodeParserRuleCall_1_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getPortClassAccess().getUserCodeDetailCodeParserRuleCall_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__AttributesAssignment_2_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getAttributesAttributeParserRuleCall_2_0_0()); }
+ ruleAttribute{ after(grammarAccess.getPortClassAccess().getAttributesAttributeParserRuleCall_2_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__OperationsAssignment_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getOperationsOperationParserRuleCall_2_1_0()); }
+ ruleOperation{ after(grammarAccess.getPortClassAccess().getOperationsOperationParserRuleCall_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__PortClass__MsgHandlersAssignment_2_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortClassAccess().getMsgHandlersMessageHandlerParserRuleCall_2_2_0()); }
+ ruleMessageHandler{ after(grammarAccess.getPortClassAccess().getMsgHandlersMessageHandlerParserRuleCall_2_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageHandler__MsgAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageHandlerAccess().getMsgMessageCrossReference_1_0()); }
+(
+{ before(grammarAccess.getMessageHandlerAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getMessageHandlerAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getMessageHandlerAccess().getMsgMessageCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageHandler__DetailCodeAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageHandlerAccess().getDetailCodeDetailCodeParserRuleCall_2_0()); }
+ ruleDetailCode{ after(grammarAccess.getMessageHandlerAccess().getDetailCodeDetailCodeParserRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ProtocolSemantics__RulesAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getProtocolSemanticsAccess().getRulesSemanticsRuleParserRuleCall_2_0()); }
+ ruleSemanticsRule{ after(grammarAccess.getProtocolSemanticsAccess().getRulesSemanticsRuleParserRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__MsgAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getMsgMessageCrossReference_1_0()); }
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getSemanticsInRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getSemanticsInRuleAccess().getMsgMessageCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsInRule__FollowUpsAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsInRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
+ ruleSemanticsRule{ after(grammarAccess.getSemanticsInRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__MsgAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageCrossReference_1_0()); }
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getSemanticsOutRuleAccess().getMsgMessageCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SemanticsOutRule__FollowUpsAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
+ ruleSemanticsRule{ after(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__AbstractAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
+(
+{ before(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
+
+ 'abstract'
+
+{ after(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
+)
+
+{ after(grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__NameAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getNameIDTerminalRuleCall_2_0()); }
+ RULE_ID{ after(grammarAccess.getActorClassAccess().getNameIDTerminalRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__BaseAssignment_3_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getBaseActorClassCrossReference_3_1_0()); }
+(
+{ before(grammarAccess.getActorClassAccess().getBaseActorClassFQNParserRuleCall_3_1_0_1()); }
+ ruleFQN{ after(grammarAccess.getActorClassAccess().getBaseActorClassFQNParserRuleCall_3_1_0_1()); }
+)
+{ after(grammarAccess.getActorClassAccess().getBaseActorClassCrossReference_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__IfPortsAssignment_5_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getIfPortsPortParserRuleCall_5_2_0()); }
+ rulePort{ after(grammarAccess.getActorClassAccess().getIfPortsPortParserRuleCall_5_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__IfSPPsAssignment_5_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getIfSPPsSPPRefParserRuleCall_5_3_0()); }
+ ruleSPPRef{ after(grammarAccess.getActorClassAccess().getIfSPPsSPPRefParserRuleCall_5_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__UserCode1Assignment_6_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getUserCode1DetailCodeParserRuleCall_6_2_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getActorClassAccess().getUserCode1DetailCodeParserRuleCall_6_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__UserCode2Assignment_6_3_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getUserCode2DetailCodeParserRuleCall_6_3_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getActorClassAccess().getUserCode2DetailCodeParserRuleCall_6_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__IntPortsAssignment_6_4_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getIntPortsPortParserRuleCall_6_4_0_0()); }
+ rulePort{ after(grammarAccess.getActorClassAccess().getIntPortsPortParserRuleCall_6_4_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__ExtPortsAssignment_6_4_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getExtPortsExternalPortParserRuleCall_6_4_1_0()); }
+ ruleExternalPort{ after(grammarAccess.getActorClassAccess().getExtPortsExternalPortParserRuleCall_6_4_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__ServiceImplementationsAssignment_6_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getServiceImplementationsServiceImplementationParserRuleCall_6_5_0()); }
+ ruleServiceImplementation{ after(grammarAccess.getActorClassAccess().getServiceImplementationsServiceImplementationParserRuleCall_6_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__StrSAPsAssignment_6_6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getStrSAPsSAPRefParserRuleCall_6_6_0()); }
+ ruleSAPRef{ after(grammarAccess.getActorClassAccess().getStrSAPsSAPRefParserRuleCall_6_6_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__AttributesAssignment_6_7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getAttributesAttributeParserRuleCall_6_7_0()); }
+ ruleAttribute{ after(grammarAccess.getActorClassAccess().getAttributesAttributeParserRuleCall_6_7_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__ActorRefsAssignment_6_8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getActorRefsActorRefParserRuleCall_6_8_0()); }
+ ruleActorRef{ after(grammarAccess.getActorClassAccess().getActorRefsActorRefParserRuleCall_6_8_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__BindingsAssignment_6_9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getBindingsBindingParserRuleCall_6_9_0()); }
+ ruleBinding{ after(grammarAccess.getActorClassAccess().getBindingsBindingParserRuleCall_6_9_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__ConnectionsAssignment_6_10
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getConnectionsLayerConnectionParserRuleCall_6_10_0()); }
+ ruleLayerConnection{ after(grammarAccess.getActorClassAccess().getConnectionsLayerConnectionParserRuleCall_6_10_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__OperationsAssignment_7_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getOperationsOperationParserRuleCall_7_2_0()); }
+ ruleOperation{ after(grammarAccess.getActorClassAccess().getOperationsOperationParserRuleCall_7_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorClass__StateMachineAssignment_7_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorClassAccess().getStateMachineStateMachineParserRuleCall_7_3_0()); }
+ ruleStateMachine{ after(grammarAccess.getActorClassAccess().getStateMachineStateMachineParserRuleCall_7_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__ConjugatedAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
+(
+{ before(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
+
+ 'conjugated'
+
+{ after(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
+)
+
+{ after(grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__NameAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getNameIDTerminalRuleCall_2_0()); }
+ RULE_ID{ after(grammarAccess.getPortAccess().getNameIDTerminalRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__MultiplicityAssignment_3_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getMultiplicityINTTerminalRuleCall_3_1_0()); }
+ RULE_INT{ after(grammarAccess.getPortAccess().getMultiplicityINTTerminalRuleCall_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Port__ProtocolAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getPortAccess().getProtocolProtocolClassCrossReference_5_0()); }
+(
+{ before(grammarAccess.getPortAccess().getProtocolProtocolClassFQNParserRuleCall_5_0_1()); }
+ ruleFQN{ after(grammarAccess.getPortAccess().getProtocolProtocolClassFQNParserRuleCall_5_0_1()); }
+)
+{ after(grammarAccess.getPortAccess().getProtocolProtocolClassCrossReference_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExternalPort__IfportAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExternalPortAccess().getIfportPortCrossReference_2_0()); }
+(
+{ before(grammarAccess.getExternalPortAccess().getIfportPortIDTerminalRuleCall_2_0_1()); }
+ RULE_ID{ after(grammarAccess.getExternalPortAccess().getIfportPortIDTerminalRuleCall_2_0_1()); }
+)
+{ after(grammarAccess.getExternalPortAccess().getIfportPortCrossReference_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SAPRef__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPRefAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getSAPRefAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SAPRef__ProtocolAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSAPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
+(
+{ before(grammarAccess.getSAPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
+ ruleFQN{ after(grammarAccess.getSAPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
+)
+{ after(grammarAccess.getSAPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPRef__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPRefAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getSPPRefAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPRef__ProtocolAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
+(
+{ before(grammarAccess.getSPPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
+ ruleFQN{ after(grammarAccess.getSPPRefAccess().getProtocolProtocolClassFQNParserRuleCall_3_0_1()); }
+)
+{ after(grammarAccess.getSPPRefAccess().getProtocolProtocolClassCrossReference_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ServiceImplementation__SppAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getServiceImplementationAccess().getSppSPPRefCrossReference_2_0()); }
+(
+{ before(grammarAccess.getServiceImplementationAccess().getSppSPPRefIDTerminalRuleCall_2_0_1()); }
+ RULE_ID{ after(grammarAccess.getServiceImplementationAccess().getSppSPPRefIDTerminalRuleCall_2_0_1()); }
+)
+{ after(grammarAccess.getServiceImplementationAccess().getSppSPPRefCrossReference_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getLogicalSystemAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__SubSystemsAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getSubSystemsSubSystemRefParserRuleCall_3_0()); }
+ ruleSubSystemRef{ after(grammarAccess.getLogicalSystemAccess().getSubSystemsSubSystemRefParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__BindingsAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getBindingsBindingParserRuleCall_4_0()); }
+ ruleBinding{ after(grammarAccess.getLogicalSystemAccess().getBindingsBindingParserRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalSystem__ConnectionsAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalSystemAccess().getConnectionsLayerConnectionParserRuleCall_5_0()); }
+ ruleLayerConnection{ after(grammarAccess.getLogicalSystemAccess().getConnectionsLayerConnectionParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemRef__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemRefAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getSubSystemRefAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemRef__TypeAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassCrossReference_3_0()); }
+(
+{ before(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassFQNParserRuleCall_3_0_1()); }
+ ruleFQN{ after(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassFQNParserRuleCall_3_0_1()); }
+)
+{ after(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassCrossReference_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getSubSystemClassAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__RelayPortsAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getRelayPortsPortParserRuleCall_3_0()); }
+ rulePort{ after(grammarAccess.getSubSystemClassAccess().getRelayPortsPortParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__IfSPPsAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getIfSPPsSPPRefParserRuleCall_4_0()); }
+ ruleSPPRef{ after(grammarAccess.getSubSystemClassAccess().getIfSPPsSPPRefParserRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__ActorRefsAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getActorRefsActorRefParserRuleCall_5_0()); }
+ ruleActorRef{ after(grammarAccess.getSubSystemClassAccess().getActorRefsActorRefParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__BindingsAssignment_6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getBindingsBindingParserRuleCall_6_0()); }
+ ruleBinding{ after(grammarAccess.getSubSystemClassAccess().getBindingsBindingParserRuleCall_6_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__ConnectionsAssignment_7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getConnectionsLayerConnectionParserRuleCall_7_0()); }
+ ruleLayerConnection{ after(grammarAccess.getSubSystemClassAccess().getConnectionsLayerConnectionParserRuleCall_7_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemClass__ThreadsAssignment_8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemClassAccess().getThreadsLogicalThreadParserRuleCall_8_0()); }
+ ruleLogicalThread{ after(grammarAccess.getSubSystemClassAccess().getThreadsLogicalThreadParserRuleCall_8_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getLogicalThreadAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__InstancesAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_3_0()); }
+ ruleActorInstancePath{ after(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LogicalThread__InstancesAssignment_4_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_4_1_0()); }
+ ruleActorInstancePath{ after(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_4_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorInstancePath__SegmentsAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_0_0()); }
+ RULE_ID{ after(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorInstancePath__SegmentsAssignment_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_1_1_0()); }
+ RULE_ID{ after(grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Binding__Endpoint1Assignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingAccess().getEndpoint1BindingEndPointParserRuleCall_1_0()); }
+ ruleBindingEndPoint{ after(grammarAccess.getBindingAccess().getEndpoint1BindingEndPointParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Binding__Endpoint2Assignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingAccess().getEndpoint2BindingEndPointParserRuleCall_3_0()); }
+ ruleBindingEndPoint{ after(grammarAccess.getBindingAccess().getEndpoint2BindingEndPointParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BindingEndPoint__ActorRefAssignment_0_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefCrossReference_0_0_0()); }
+(
+{ before(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1()); }
+ RULE_ID{ after(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1()); }
+)
+{ after(grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefCrossReference_0_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BindingEndPoint__PortAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBindingEndPointAccess().getPortPortCrossReference_1_0()); }
+(
+{ before(grammarAccess.getBindingEndPointAccess().getPortPortIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getBindingEndPointAccess().getPortPortIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getBindingEndPointAccess().getPortPortCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LayerConnection__FromAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLayerConnectionAccess().getFromSAPointParserRuleCall_1_0()); }
+ ruleSAPoint{ after(grammarAccess.getLayerConnectionAccess().getFromSAPointParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LayerConnection__ToAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLayerConnectionAccess().getToSPPointParserRuleCall_3_0()); }
+ ruleSPPoint{ after(grammarAccess.getLayerConnectionAccess().getToSPPointParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefSAPoint__RefAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefSAPointAccess().getRefActorContainerRefCrossReference_1_0()); }
+(
+{ before(grammarAccess.getRefSAPointAccess().getRefActorContainerRefIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getRefSAPointAccess().getRefActorContainerRefIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getRefSAPointAccess().getRefActorContainerRefCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RelaySAPoint__RelayAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRelaySAPointAccess().getRelaySPPRefCrossReference_1_0()); }
+(
+{ before(grammarAccess.getRelaySAPointAccess().getRelaySPPRefIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getRelaySAPointAccess().getRelaySPPRefIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getRelaySAPointAccess().getRelaySPPRefCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPoint__RefAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPointAccess().getRefActorContainerRefCrossReference_0_0()); }
+(
+{ before(grammarAccess.getSPPointAccess().getRefActorContainerRefIDTerminalRuleCall_0_0_1()); }
+ RULE_ID{ after(grammarAccess.getSPPointAccess().getRefActorContainerRefIDTerminalRuleCall_0_0_1()); }
+)
+{ after(grammarAccess.getSPPointAccess().getRefActorContainerRefCrossReference_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SPPoint__ServiceAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSPPointAccess().getServiceSPPRefCrossReference_2_0()); }
+(
+{ before(grammarAccess.getSPPointAccess().getServiceSPPRefIDTerminalRuleCall_2_0_1()); }
+ RULE_ID{ after(grammarAccess.getSPPointAccess().getServiceSPPRefIDTerminalRuleCall_2_0_1()); }
+)
+{ after(grammarAccess.getSPPointAccess().getServiceSPPRefCrossReference_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorRef__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorRefAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getActorRefAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ActorRef__TypeAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getActorRefAccess().getTypeActorClassCrossReference_3_0()); }
+(
+{ before(grammarAccess.getActorRefAccess().getTypeActorClassFQNParserRuleCall_3_0_1()); }
+ ruleFQN{ after(grammarAccess.getActorRefAccess().getTypeActorClassFQNParserRuleCall_3_0_1()); }
+)
+{ after(grammarAccess.getActorRefAccess().getTypeActorClassCrossReference_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__StatesAssignment_1_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getStatesStateParserRuleCall_1_0_0()); }
+ ruleState{ after(grammarAccess.getStateGraphAccess().getStatesStateParserRuleCall_1_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__TrPointsAssignment_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getTrPointsTrPointParserRuleCall_1_1_0()); }
+ ruleTrPoint{ after(grammarAccess.getStateGraphAccess().getTrPointsTrPointParserRuleCall_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__ChPointsAssignment_1_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getChPointsChoicePointParserRuleCall_1_2_0()); }
+ ruleChoicePoint{ after(grammarAccess.getStateGraphAccess().getChPointsChoicePointParserRuleCall_1_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateGraph__TransitionsAssignment_1_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateGraphAccess().getTransitionsTransitionParserRuleCall_1_3_0()); }
+ ruleTransition{ after(grammarAccess.getStateGraphAccess().getTransitionsTransitionParserRuleCall_1_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__StatesAssignment_2_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_2_0_0()); }
+ ruleState{ after(grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_2_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__TrPointsAssignment_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getTrPointsTrPointParserRuleCall_2_1_0()); }
+ ruleTrPoint{ after(grammarAccess.getStateMachineAccess().getTrPointsTrPointParserRuleCall_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__ChPointsAssignment_2_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getChPointsChoicePointParserRuleCall_2_2_0()); }
+ ruleChoicePoint{ after(grammarAccess.getStateMachineAccess().getChPointsChoicePointParserRuleCall_2_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateMachine__TransitionsAssignment_2_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateMachineAccess().getTransitionsTransitionParserRuleCall_2_3_0()); }
+ ruleTransition{ after(grammarAccess.getStateMachineAccess().getTransitionsTransitionParserRuleCall_2_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getBaseStateAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__EntryCodeAssignment_3_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getBaseStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__ExitCodeAssignment_4_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getBaseStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BaseState__SubgraphAssignment_5_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBaseStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
+ ruleStateGraph{ after(grammarAccess.getBaseStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__BaseAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getBaseBaseStateCrossReference_1_0()); }
+(
+{ before(grammarAccess.getRefinedStateAccess().getBaseBaseStateFQNParserRuleCall_1_0_1()); }
+ ruleFQN{ after(grammarAccess.getRefinedStateAccess().getBaseBaseStateFQNParserRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getRefinedStateAccess().getBaseBaseStateCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__EntryCodeAssignment_3_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getRefinedStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__ExitCodeAssignment_4_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getRefinedStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RefinedState__SubgraphAssignment_5_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRefinedStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
+ ruleStateGraph{ after(grammarAccess.getRefinedStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DetailCode__CommandsAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDetailCodeAccess().getCommandsSTRINGTerminalRuleCall_1_0()); }
+ RULE_STRING{ after(grammarAccess.getDetailCodeAccess().getCommandsSTRINGTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TransitionPoint__HandlerAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
+(
+{ before(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
+
+ 'handler'
+
+{ after(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
+)
+
+{ after(grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TransitionPoint__NameAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTransitionPointAccess().getNameIDTerminalRuleCall_2_0()); }
+ RULE_ID{ after(grammarAccess.getTransitionPointAccess().getNameIDTerminalRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EntryPoint__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEntryPointAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getEntryPointAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ExitPoint__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getExitPointAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getExitPointAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ChoicePoint__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getChoicePointAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getChoicePointAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getInitialTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__ToAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getInitialTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__InitialTransition__ActionAssignment_7_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getInitialTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getInitialTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getContinuationTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__FromAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getContinuationTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__ToAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getContinuationTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ContinuationTransition__ActionAssignment_7_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getContinuationTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getContinuationTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getTriggeredTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__FromAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getTriggeredTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__ToAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getTriggeredTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__TriggersAssignment_9
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_9_0()); }
+ ruleTrigger{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_9_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__TriggersAssignment_10_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_10_1_0()); }
+ ruleTrigger{ after(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_10_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TriggeredTransition__ActionAssignment_12_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggeredTransitionAccess().getActionDetailCodeParserRuleCall_12_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getTriggeredTransitionAccess().getActionDetailCodeParserRuleCall_12_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getCPBranchTransitionAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__FromAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getCPBranchTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__ToAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+ ruleTransitionTerminal{ after(grammarAccess.getCPBranchTransitionAccess().getToTransitionTerminalParserRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__ConditionAssignment_8
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getConditionDetailCodeParserRuleCall_8_0()); }
+ ruleDetailCode{ after(grammarAccess.getCPBranchTransitionAccess().getConditionDetailCodeParserRuleCall_8_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__CPBranchTransition__ActionAssignment_9_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getCPBranchTransitionAccess().getActionDetailCodeParserRuleCall_9_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getCPBranchTransitionAccess().getActionDetailCodeParserRuleCall_9_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StateTerminal__StateAssignment
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStateTerminalAccess().getStateBaseStateCrossReference_0()); }
+(
+{ before(grammarAccess.getStateTerminalAccess().getStateBaseStateIDTerminalRuleCall_0_1()); }
+ RULE_ID{ after(grammarAccess.getStateTerminalAccess().getStateBaseStateIDTerminalRuleCall_0_1()); }
+)
+{ after(grammarAccess.getStateTerminalAccess().getStateBaseStateCrossReference_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__TrPointTerminal__TrPointAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointCrossReference_1_0()); }
+(
+{ before(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getTrPointTerminalAccess().getTrPointTrPointCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubStateTrPointTerminal__TrPointAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointCrossReference_0_0()); }
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_0_0_1()); }
+ RULE_ID{ after(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointIDTerminalRuleCall_0_0_1()); }
+)
+{ after(grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointCrossReference_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubStateTrPointTerminal__StateAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateCrossReference_2_0()); }
+(
+{ before(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateIDTerminalRuleCall_2_0_1()); }
+ RULE_ID{ after(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateIDTerminalRuleCall_2_0_1()); }
+)
+{ after(grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateCrossReference_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ChoicepointTerminal__CpAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointCrossReference_1_0()); }
+(
+{ before(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getChoicepointTerminalAccess().getCpChoicePointCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__MsgFromIfPairsAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_1_0()); }
+ ruleMessageFromIf{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__MsgFromIfPairsAssignment_2_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0()); }
+ ruleMessageFromIf{ after(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Trigger__GuardAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getTriggerAccess().getGuardGuardParserRuleCall_3_0()); }
+ ruleGuard{ after(grammarAccess.getTriggerAccess().getGuardGuardParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageFromIf__MessageAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageFromIfAccess().getMessageMessageCrossReference_0_0()); }
+(
+{ before(grammarAccess.getMessageFromIfAccess().getMessageMessageIDTerminalRuleCall_0_0_1()); }
+ RULE_ID{ after(grammarAccess.getMessageFromIfAccess().getMessageMessageIDTerminalRuleCall_0_0_1()); }
+)
+{ after(grammarAccess.getMessageFromIfAccess().getMessageMessageCrossReference_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__MessageFromIf__FromAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemCrossReference_2_0()); }
+(
+{ before(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemIDTerminalRuleCall_2_0_1()); }
+ RULE_ID{ after(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemIDTerminalRuleCall_2_0_1()); }
+)
+{ after(grammarAccess.getMessageFromIfAccess().getFromInterfaceItemCrossReference_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Guard__GuardAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGuardAccess().getGuardDetailCodeParserRuleCall_1_0()); }
+ ruleDetailCode{ after(grammarAccess.getGuardAccess().getGuardDetailCodeParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Import__ImportedNamespaceAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0()); }
+ ruleImportedFQN{ after(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
+
+RULE_INT : ('0'..'9')+;
+
+RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
+
+RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
+
+RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
+
+RULE_WS : (' '|'\t'|'\r'|'\n')+;
+
+RULE_ANY_OTHER : .;
+
+
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/internal/RoomActivator.java b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/internal/RoomActivator.java
index d30ec6d9a..8b30a77dd 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/internal/RoomActivator.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/internal/RoomActivator.java
@@ -1,102 +1,102 @@
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core.ui.internal;
-
-import static com.google.inject.util.Modules.override;
-import static com.google.inject.Guice.createInjector;
-
-import org.apache.log4j.Logger;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-
-import com.google.inject.Injector;
-import com.google.inject.Module;
-
-import java.net.URL;
-import java.util.Map;
-import java.util.HashMap;
-
-/**
- * This class was generated. Customizations should only happen in a newly
- * introduced subclass.
- */
-public class RoomActivator extends AbstractUIPlugin {
-
- private Map<String,Injector> injectors = new HashMap<String,Injector>();
- private static RoomActivator INSTANCE;
-
- public Injector getInjector(String languageName) {
- return injectors.get(languageName);
- }
-
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- declareRegistryImage("defaultoutlinenode.gif", "icons/defaultoutlinenode.gif");
-
- INSTANCE = this;
- try {
- registerInjectorFor("org.eclipse.etrice.core.Room");
-
- } catch (Exception e) {
- Logger.getLogger(getClass()).error(e.getMessage(), e);
- throw e;
- }
- }
-
- protected void registerInjectorFor(String language) throws Exception {
- injectors.put(language, createInjector(
- override(override(getRuntimeModule(language)).with(getSharedStateModule())).with(getUiModule(language))));
- }
-
- @Override
- public void stop(BundleContext context) throws Exception {
- injectors.clear();
- getImageRegistry().dispose();
- INSTANCE = null;
- super.stop(context);
- }
-
- public static RoomActivator getInstance() {
- return INSTANCE;
- }
-
- protected Module getRuntimeModule(String grammar) {
- if ("org.eclipse.etrice.core.Room".equals(grammar)) {
- return new org.eclipse.etrice.core.RoomRuntimeModule();
- }
-
- throw new IllegalArgumentException(grammar);
- }
-
- protected Module getUiModule(String grammar) {
- if ("org.eclipse.etrice.core.Room".equals(grammar)) {
- return new org.eclipse.etrice.core.ui.RoomUiModule(this);
- }
-
- throw new IllegalArgumentException(grammar);
- }
-
- protected Module getSharedStateModule() {
- return new org.eclipse.xtext.ui.shared.SharedStateModule();
- }
-
- private void declareRegistryImage(String key, String path) {
- ImageDescriptor desc= ImageDescriptor.getMissingImageDescriptor();
- Bundle bundle= getBundle();
- URL url= null;
- if (bundle != null) {
- url= FileLocator.find(bundle, new Path(path), null);
- desc= ImageDescriptor.createFromURL(url);
- }
- getImageRegistry().put(key, desc);
- }
-
-}
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.ui.internal;
+
+import static com.google.inject.util.Modules.override;
+import static com.google.inject.Guice.createInjector;
+
+import org.apache.log4j.Logger;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+
+import com.google.inject.Injector;
+import com.google.inject.Module;
+
+import java.net.URL;
+import java.util.Map;
+import java.util.HashMap;
+
+/**
+ * This class was generated. Customizations should only happen in a newly
+ * introduced subclass.
+ */
+public class RoomActivator extends AbstractUIPlugin {
+
+ private Map<String,Injector> injectors = new HashMap<String,Injector>();
+ private static RoomActivator INSTANCE;
+
+ public Injector getInjector(String languageName) {
+ return injectors.get(languageName);
+ }
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+
+ declareRegistryImage("defaultoutlinenode.gif", "icons/defaultoutlinenode.gif");
+
+ INSTANCE = this;
+ try {
+ registerInjectorFor("org.eclipse.etrice.core.Room");
+
+ } catch (Exception e) {
+ Logger.getLogger(getClass()).error(e.getMessage(), e);
+ throw e;
+ }
+ }
+
+ protected void registerInjectorFor(String language) throws Exception {
+ injectors.put(language, createInjector(
+ override(override(getRuntimeModule(language)).with(getSharedStateModule())).with(getUiModule(language))));
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ injectors.clear();
+ getImageRegistry().dispose();
+ INSTANCE = null;
+ super.stop(context);
+ }
+
+ public static RoomActivator getInstance() {
+ return INSTANCE;
+ }
+
+ protected Module getRuntimeModule(String grammar) {
+ if ("org.eclipse.etrice.core.Room".equals(grammar)) {
+ return new org.eclipse.etrice.core.RoomRuntimeModule();
+ }
+
+ throw new IllegalArgumentException(grammar);
+ }
+
+ protected Module getUiModule(String grammar) {
+ if ("org.eclipse.etrice.core.Room".equals(grammar)) {
+ return new org.eclipse.etrice.core.ui.RoomUiModule(this);
+ }
+
+ throw new IllegalArgumentException(grammar);
+ }
+
+ protected Module getSharedStateModule() {
+ return new org.eclipse.xtext.ui.shared.SharedStateModule();
+ }
+
+ private void declareRegistryImage(String key, String path) {
+ ImageDescriptor desc= ImageDescriptor.getMissingImageDescriptor();
+ Bundle bundle= getBundle();
+ URL url= null;
+ if (bundle != null) {
+ url= FileLocator.find(bundle, new Path(path), null);
+ desc= ImageDescriptor.createFromURL(url);
+ }
+ getImageRegistry().put(key, desc);
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditBehaviorHandler.java b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditBehaviorHandler.java
index 32881258f..9c1c50078 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditBehaviorHandler.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditBehaviorHandler.java
@@ -15,10 +15,17 @@ package org.eclipse.etrice.core.ui.outline;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.etrice.core.naming.RoomFragmentProvider;
+import org.eclipse.etrice.core.naming.RoomNameProvider;
import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.StateGraph;
+import org.eclipse.etrice.core.room.Transition;
+import org.eclipse.etrice.core.ui.internal.RoomActivator;
import org.eclipse.etrice.ui.behavior.DiagramAccess;
+import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.IWorkbench;
@@ -31,9 +38,21 @@ import org.eclipse.ui.views.contentoutline.ContentOutline;
import org.eclipse.xtext.resource.XtextResource;
import org.eclipse.xtext.ui.editor.XtextEditor;
import org.eclipse.xtext.ui.editor.outline.impl.EObjectNode;
+import org.eclipse.xtext.ui.editor.model.IXtextDocument;
import org.eclipse.xtext.ui.editor.utils.EditorUtils;
import org.eclipse.xtext.util.concurrent.IUnitOfWork;
+import com.google.inject.Injector;
+
+/**
+ * Handler for outline menu item to open behavior editor.
+ * The handler will ask to save unsaved editor before opening the diagram.
+ *
+ * If there are unnamed transitions they will be named with unique names.
+ *
+ * @author Henrik Rentz-Reichert initial contribution and API
+ *
+ */
public class EditBehaviorHandler extends AbstractHandler {
@Override
@@ -45,6 +64,20 @@ public class EditBehaviorHandler extends AbstractHandler {
if (sel instanceof EObjectNode) {
final EObjectNode node = (EObjectNode) sel;
XtextEditor xtextEditor = EditorUtils.getActiveXtextEditor(event);
+ if (xtextEditor.isDirty()) {
+ if (!MessageDialog.openQuestion(xtextEditor.getSite().getShell(), "Save model file", "The editor will be saved before opening the diagram editor.\nProceed?"))
+ return null;
+ // postpone save to avoid doing it twice
+ }
+ if (hasUnnamedTransitions(xtextEditor.getDocument(), node.getEObjectURI().fragment())) {
+ if (!MessageDialog.openQuestion(xtextEditor.getSite().getShell(), "Create transition names", "Transition names will be created where missing.\nProceed?"))
+ return null;
+ createTransitionNames(xtextEditor.getDocument(), node.getEObjectURI().fragment());
+ xtextEditor.doSave(new NullProgressMonitor());
+ }
+ if (xtextEditor.isDirty()) {
+ xtextEditor.doSave(new NullProgressMonitor());
+ }
xtextEditor.getDocument().readOnly(new IUnitOfWork.Void<XtextResource>() {
@Override
public void process(XtextResource resource) throws Exception {
@@ -62,6 +95,82 @@ public class EditBehaviorHandler extends AbstractHandler {
return null;
}
+ /**
+ * @param document
+ * @param fragment
+ */
+ private void createTransitionNames(IXtextDocument document, final String fragment) {
+ /* TODOHRR: make this work again
+ DefaultDocumentEditor edit = new DefaultDocumentEditor();
+ Injector injector = RoomActivator.getInstance().getInjector("org.eclipse.etrice.core.Room");
+ injector.injectMembers(edit);
+ edit.process(new IUnitOfWork.Void<XtextResource>() {
+ @Override
+ public void process(XtextResource resource) throws Exception {
+ if (resource != null) {
+ EObject object = resource.getEObject(fragment);
+ if (object instanceof ActorClass) {
+ createTransitionNames(((ActorClass) object).getStateMachine());
+ }
+ }
+ }
+
+ private void createTransitionNames(StateGraph sg) {
+ if (sg==null)
+ return;
+
+ for (Transition tr : sg.getTransitions()) {
+ if (tr.getName()==null || tr.getName().isEmpty()) {
+ tr.setName(RoomNameProvider.getUniqueTransitionName(sg));
+ }
+ }
+
+ for (State s : sg.getStates()) {
+ createTransitionNames(s.getSubgraph());
+ }
+ }
+
+ }, document);
+ */
+ }
+
+ /**
+ * @param document
+ * @param fragment
+ * @return
+ */
+ private boolean hasUnnamedTransitions(IXtextDocument document, final String fragment) {
+ return document.readOnly(new IUnitOfWork<Boolean, XtextResource>() {
+ @Override
+ public Boolean exec(XtextResource resource) throws Exception {
+ if (resource != null) {
+ EObject object = resource.getEObject(fragment);
+ if (object instanceof ActorClass) {
+ return hasUnnamedTransitions(((ActorClass) object).getStateMachine());
+ }
+ }
+ return false;
+ }
+
+ private boolean hasUnnamedTransitions(StateGraph sg) {
+ if (sg==null)
+ return false;
+
+ for (Transition tr : sg.getTransitions()) {
+ if (tr.getName()==null || tr.getName().isEmpty())
+ return true;
+ }
+
+ for (State s : sg.getStates()) {
+ if (hasUnnamedTransitions(s.getSubgraph()))
+ return true;
+ }
+
+ return false;
+ }
+ });
+ }
+
/* (non-Javadoc)
* @see org.eclipse.core.commands.AbstractHandler#isEnabled()
*/
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditStructureHandler.java b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditStructureHandler.java
index efa0c191d..0bf66d42c 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditStructureHandler.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/EditStructureHandler.java
@@ -15,7 +15,9 @@ package org.eclipse.etrice.core.ui.outline;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.IWorkbench;
@@ -35,6 +37,13 @@ import org.eclipse.etrice.core.naming.RoomFragmentProvider;
import org.eclipse.etrice.core.room.StructureClass;
import org.eclipse.etrice.ui.structure.DiagramAccess;
+/**
+ * Handler for outline menu item to open structure editor.
+ * The handler will ask to save unsaved editor before opening the diagram.
+ *
+ * @author Henrik Rentz-Reichert initial contribution and API
+ *
+ */
public class EditStructureHandler extends AbstractHandler {
@Override
@@ -46,6 +55,11 @@ public class EditStructureHandler extends AbstractHandler {
if (sel instanceof EObjectNode) {
final EObjectNode node = (EObjectNode) sel;
XtextEditor xtextEditor = EditorUtils.getActiveXtextEditor(event);
+ if (xtextEditor.isDirty()) {
+ if (!MessageDialog.openQuestion(xtextEditor.getSite().getShell(), "Save model file", "The editor will be saved before opening the diagram editor.\nProceed?"))
+ return null;
+ xtextEditor.doSave(new NullProgressMonitor());
+ }
xtextEditor.getDocument().readOnly(new IUnitOfWork.Void<XtextResource>() {
@Override
public void process(XtextResource resource) throws Exception {
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/RoomOutlineTreeProvider.java b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/RoomOutlineTreeProvider.java
index 522cc744e..84d4497e7 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/RoomOutlineTreeProvider.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/outline/RoomOutlineTreeProvider.java
@@ -1,149 +1,149 @@
-/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.ui.outline;
-
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorRef;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.Operation;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
-import org.eclipse.etrice.core.room.ServiceImplementation;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.xtext.ui.editor.outline.IOutlineNode;
-import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider;
-
-/**
- * customization of the default outline structure
- *
- * @author Henrik Rentz-Reichert
- */
-public class RoomOutlineTreeProvider extends DefaultOutlineTreeProvider {
-
- private static final String STATE_MACHINE_LABEL = "StateMachine";
- private static final String BEHAVIOR_LABEL = "Behavior";
- private static final String STRUCTURE_LABEL = "Structure";
- private static final String INTERFACE_LABEL = "Interface";
- private static final Object INCOMING_LABEL = "incoming";
- private static final Object OUTGOING_LABEL = "outgoing";
-
- protected boolean _isLeaf(ActorClass ac) {
- if (ac.getIfPorts().size()>0 || ac.getIfSPPs().size()>0) {
- return false;
- }
- if (ac.getIntPorts().size()>0 || ac.getServiceImplementations().size()>0 ||
- ac.getStrSAPs().size()>0 || ac.getAttributes().size()>0 ||
- ac.getActorRefs().size()>0) {
- return false;
- }
- if (ac.getOperations().size()>0 || ac.getStateMachine()!=null) {
- return false;
- }
- return true;
- }
-
- protected void _createChildren(IOutlineNode parentNode, ActorClass ac) {
- if (ac.getIfPorts().size()>0 || ac.getIfSPPs().size()>0) {
- new ExtraOutlineNode(ac, parentNode, INTERFACE_LABEL);
- }
- if (ac.getIntPorts().size()>0 || ac.getServiceImplementations().size()>0 ||
- ac.getStrSAPs().size()>0 || ac.getAttributes().size()>0 ||
- ac.getActorRefs().size()>0) {
- new ExtraOutlineNode(ac, parentNode, STRUCTURE_LABEL);
- }
- if (ac.getOperations().size()>0 || ac.getStateMachine()!=null) {
- new ExtraOutlineNode(ac, parentNode, BEHAVIOR_LABEL);
- }
- }
-
- protected void _createChildren(ExtraOutlineNode parentNode, ActorClass ac) {
- if (parentNode.getText().equals(INTERFACE_LABEL)) {
- for (Port port : ac.getIfPorts())
- createNode(parentNode, port);
- for (SPPRef spp : ac.getIfSPPs())
- createNode(parentNode, spp);
- }
- else if (parentNode.getText().equals(STRUCTURE_LABEL)) {
- for (Port port : ac.getIntPorts())
- createNode(parentNode, port);
- for (ServiceImplementation svc : ac.getServiceImplementations())
- createNode(parentNode, svc);
- for (SAPRef sap : ac.getStrSAPs())
- createNode(parentNode, sap);
- for (Attribute attr : ac.getAttributes())
- createNode(parentNode, attr);
- for (ActorRef ar : ac.getActorRefs())
- createNode(parentNode, ar);
- }
- else if (parentNode.getText().equals(BEHAVIOR_LABEL)) {
- for (Operation op : ac.getOperations())
- createNode(parentNode, op);
- if (ac.getStateMachine()!=null) {
- new ExtraOutlineNode(ac, parentNode, STATE_MACHINE_LABEL);
- }
- }
- else if (parentNode.getText().equals(STATE_MACHINE_LABEL)) {
- for (State s : ac.getStateMachine().getStates()) {
- createNode(parentNode, s);
- }
- }
- }
-
- protected void _createChildren(IOutlineNode parentNode, State s) {
- if (s.getSubgraph()!=null) {
- for (State state : s.getSubgraph().getStates()) {
- createNode(parentNode, state);
- }
- }
- }
-
- protected boolean _isLeaf(State s) {
- if (s.getSubgraph()!=null)
- if (!s.getSubgraph().getStates().isEmpty())
- return false;
- return true;
- }
-
- protected void _createChildren(IOutlineNode parentNode, ProtocolClass pc) {
- if (pc.getIncomingMessages().size()>0) {
- new ExtraOutlineNode(pc, parentNode, INCOMING_LABEL);
- }
- if (pc.getOutgoingMessages().size()>0) {
- new ExtraOutlineNode(pc, parentNode, OUTGOING_LABEL);
- }
- }
-
- protected void _createChildren(ExtraOutlineNode parentNode, ProtocolClass pc) {
- if (parentNode.getText().equals(INCOMING_LABEL)) {
- for (Message m : pc.getIncomingMessages()) {
- createNode(parentNode, m);
- }
- }
- if (parentNode.getText().equals(OUTGOING_LABEL)) {
- for (Message m : pc.getOutgoingMessages()) {
- createNode(parentNode, m);
- }
- }
- }
-
- protected boolean _isLeaf(Message m) {
- return true;
- }
-
- protected boolean _isLeaf(Operation o) {
- return true;
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * CONTRIBUTORS:
+ * Henrik Rentz-Reichert (initial contribution)
+ *
+ *******************************************************************************/
+
+package org.eclipse.etrice.core.ui.outline;
+
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.ActorRef;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.Operation;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.SPPRef;
+import org.eclipse.etrice.core.room.ServiceImplementation;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.xtext.ui.editor.outline.IOutlineNode;
+import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider;
+
+/**
+ * customization of the default outline structure
+ *
+ * @author Henrik Rentz-Reichert
+ */
+public class RoomOutlineTreeProvider extends DefaultOutlineTreeProvider {
+
+ private static final String STATE_MACHINE_LABEL = "StateMachine";
+ private static final String BEHAVIOR_LABEL = "Behavior";
+ private static final String STRUCTURE_LABEL = "Structure";
+ private static final String INTERFACE_LABEL = "Interface";
+ private static final Object INCOMING_LABEL = "incoming";
+ private static final Object OUTGOING_LABEL = "outgoing";
+
+ protected boolean _isLeaf(ActorClass ac) {
+ if (ac.getIfPorts().size()>0 || ac.getIfSPPs().size()>0) {
+ return false;
+ }
+ if (ac.getIntPorts().size()>0 || ac.getServiceImplementations().size()>0 ||
+ ac.getStrSAPs().size()>0 || ac.getAttributes().size()>0 ||
+ ac.getActorRefs().size()>0) {
+ return false;
+ }
+ if (ac.getOperations().size()>0 || ac.getStateMachine()!=null) {
+ return false;
+ }
+ return true;
+ }
+
+ protected void _createChildren(IOutlineNode parentNode, ActorClass ac) {
+ if (ac.getIfPorts().size()>0 || ac.getIfSPPs().size()>0) {
+ new ExtraOutlineNode(ac, parentNode, INTERFACE_LABEL);
+ }
+ if (ac.getIntPorts().size()>0 || ac.getServiceImplementations().size()>0 ||
+ ac.getStrSAPs().size()>0 || ac.getAttributes().size()>0 ||
+ ac.getActorRefs().size()>0) {
+ new ExtraOutlineNode(ac, parentNode, STRUCTURE_LABEL);
+ }
+ if (ac.getOperations().size()>0 || ac.getStateMachine()!=null) {
+ new ExtraOutlineNode(ac, parentNode, BEHAVIOR_LABEL);
+ }
+ }
+
+ protected void _createChildren(ExtraOutlineNode parentNode, ActorClass ac) {
+ if (parentNode.getText().equals(INTERFACE_LABEL)) {
+ for (Port port : ac.getIfPorts())
+ createNode(parentNode, port);
+ for (SPPRef spp : ac.getIfSPPs())
+ createNode(parentNode, spp);
+ }
+ else if (parentNode.getText().equals(STRUCTURE_LABEL)) {
+ for (Port port : ac.getIntPorts())
+ createNode(parentNode, port);
+ for (ServiceImplementation svc : ac.getServiceImplementations())
+ createNode(parentNode, svc);
+ for (SAPRef sap : ac.getStrSAPs())
+ createNode(parentNode, sap);
+ for (Attribute attr : ac.getAttributes())
+ createNode(parentNode, attr);
+ for (ActorRef ar : ac.getActorRefs())
+ createNode(parentNode, ar);
+ }
+ else if (parentNode.getText().equals(BEHAVIOR_LABEL)) {
+ for (Operation op : ac.getOperations())
+ createNode(parentNode, op);
+ if (ac.getStateMachine()!=null) {
+ new ExtraOutlineNode(ac, parentNode, STATE_MACHINE_LABEL);
+ }
+ }
+ else if (parentNode.getText().equals(STATE_MACHINE_LABEL)) {
+ for (State s : ac.getStateMachine().getStates()) {
+ createNode(parentNode, s);
+ }
+ }
+ }
+
+ protected void _createChildren(IOutlineNode parentNode, State s) {
+ if (s.getSubgraph()!=null) {
+ for (State state : s.getSubgraph().getStates()) {
+ createNode(parentNode, state);
+ }
+ }
+ }
+
+ protected boolean _isLeaf(State s) {
+ if (s.getSubgraph()!=null)
+ if (!s.getSubgraph().getStates().isEmpty())
+ return false;
+ return true;
+ }
+
+ protected void _createChildren(IOutlineNode parentNode, ProtocolClass pc) {
+ if (pc.getIncomingMessages().size()>0) {
+ new ExtraOutlineNode(pc, parentNode, INCOMING_LABEL);
+ }
+ if (pc.getOutgoingMessages().size()>0) {
+ new ExtraOutlineNode(pc, parentNode, OUTGOING_LABEL);
+ }
+ }
+
+ protected void _createChildren(ExtraOutlineNode parentNode, ProtocolClass pc) {
+ if (parentNode.getText().equals(INCOMING_LABEL)) {
+ for (Message m : pc.getIncomingMessages()) {
+ createNode(parentNode, m);
+ }
+ }
+ if (parentNode.getText().equals(OUTGOING_LABEL)) {
+ for (Message m : pc.getOutgoingMessages()) {
+ createNode(parentNode, m);
+ }
+ }
+ }
+
+ protected boolean _isLeaf(Message m) {
+ return true;
+ }
+
+ protected boolean _isLeaf(Operation o) {
+ return true;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.room/plugin.xml_gen b/plugins/org.eclipse.etrice.core.room/plugin.xml_gen
index 780e5056a..20d2b0e08 100644
--- a/plugins/org.eclipse.etrice.core.room/plugin.xml_gen
+++ b/plugins/org.eclipse.etrice.core.room/plugin.xml_gen
@@ -1,17 +1,17 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <package
- uri = "http://www.eclipse.org/etrice/Room"
- class = "org.eclipse.etrice.core.room.RoomPackage"
- genModel = "org/eclipse/etrice/core/Room.genmodel" />
-
- </extension>
-
-
-
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri = "http://www.eclipse.org/etrice/Room"
+ class = "org.eclipse.etrice.core.room.RoomPackage"
+ genModel = "org/eclipse/etrice/core/Room.genmodel" />
+
+ </extension>
+
+
+
+
+</plugin>
diff --git a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/AbstractRoomRuntimeModule.java b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/AbstractRoomRuntimeModule.java
index 4e0525b82..375ea0cbe 100644
--- a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/AbstractRoomRuntimeModule.java
+++ b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/AbstractRoomRuntimeModule.java
@@ -1,137 +1,137 @@
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core;
-
-import java.util.Properties;
-
-import org.eclipse.xtext.Constants;
-import org.eclipse.xtext.service.DefaultRuntimeModule;
-
-import com.google.inject.Binder;
-import com.google.inject.name.Names;
-
-/**
- * Manual modifications go to {org.eclipse.etrice.core.RoomRuntimeModule}
- */
- @SuppressWarnings("all")
-public abstract class AbstractRoomRuntimeModule extends DefaultRuntimeModule {
-
- protected Properties properties = null;
-
- @Override
- public void configure(Binder binder) {
- properties = tryBindProperties(binder, "org/eclipse/etrice/core/Room.properties");
- super.configure(binder);
- }
-
- public void configureLanguageName(Binder binder) {
- binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.etrice.core.Room");
- }
-
- public void configureFileExtensions(Binder binder) {
- if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
- binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("room");
- }
-
- // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
- public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() {
- return org.eclipse.etrice.core.services.RoomGrammarAccess.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parseTreeConstructor.ParseTreeConstructorFragment
- public Class<? extends org.eclipse.xtext.parsetree.reconstr.IParseTreeConstructor> bindIParseTreeConstructor() {
- return org.eclipse.etrice.core.parseTreeConstruction.RoomParsetreeConstructor.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.IParser> bindIParser() {
- return org.eclipse.etrice.core.parser.antlr.RoomParser.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.ITokenToStringConverter> bindITokenToStringConverter() {
- return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
- return org.eclipse.etrice.core.parser.antlr.RoomAntlrTokenFileProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.Lexer> bindLexer() {
- return org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public com.google.inject.Provider<org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer> provideInternalRoomLexer() {
- return org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class);
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public void configureRuntimeLexer(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class);
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.ITokenDefProvider> bindITokenDefProvider() {
- return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.validation.JavaValidatorFragment
- @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.etrice.core.validation.RoomJavaValidator> bindRoomJavaValidator() {
- return org.eclipse.etrice.core.validation.RoomJavaValidator.class;
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public Class<? extends org.eclipse.xtext.scoping.IScopeProvider> bindIScopeProvider() {
- return org.eclipse.etrice.core.scoping.RoomScopeProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public void configureIScopeProviderDelegate(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider.class);
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public Class<? extends org.eclipse.xtext.scoping.IGlobalScopeProvider> bindIGlobalScopeProvider() {
- return org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public void configureIgnoreCaseLinking(com.google.inject.Binder binder) {
- binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false);
- }
-
- // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
- public Class<? extends org.eclipse.xtext.naming.IQualifiedNameProvider> bindIQualifiedNameProvider() {
- return org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public Class<? extends org.eclipse.xtext.resource.IContainer.Manager> bindIContainer$Manager() {
- return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public Class<? extends org.eclipse.xtext.resource.containers.IAllContainersState.Provider> bindIAllContainersState$Provider() {
- return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public void configureIResourceDescriptions(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
- }
-
- // contributed by org.eclipse.xtext.generator.formatting.FormatterFragment
- public Class<? extends org.eclipse.xtext.formatting.IFormatter> bindIFormatter() {
- return org.eclipse.etrice.core.formatting.RoomFormatter.class;
- }
-
-}
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core;
+
+import java.util.Properties;
+
+import org.eclipse.xtext.Constants;
+import org.eclipse.xtext.service.DefaultRuntimeModule;
+
+import com.google.inject.Binder;
+import com.google.inject.name.Names;
+
+/**
+ * Manual modifications go to {org.eclipse.etrice.core.RoomRuntimeModule}
+ */
+ @SuppressWarnings("all")
+public abstract class AbstractRoomRuntimeModule extends DefaultRuntimeModule {
+
+ protected Properties properties = null;
+
+ @Override
+ public void configure(Binder binder) {
+ properties = tryBindProperties(binder, "org/eclipse/etrice/core/Room.properties");
+ super.configure(binder);
+ }
+
+ public void configureLanguageName(Binder binder) {
+ binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.etrice.core.Room");
+ }
+
+ public void configureFileExtensions(Binder binder) {
+ if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
+ binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("room");
+ }
+
+ // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
+ public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() {
+ return org.eclipse.etrice.core.services.RoomGrammarAccess.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parseTreeConstructor.ParseTreeConstructorFragment
+ public Class<? extends org.eclipse.xtext.parsetree.reconstr.IParseTreeConstructor> bindIParseTreeConstructor() {
+ return org.eclipse.etrice.core.parseTreeConstruction.RoomParsetreeConstructor.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.IParser> bindIParser() {
+ return org.eclipse.etrice.core.parser.antlr.RoomParser.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.ITokenToStringConverter> bindITokenToStringConverter() {
+ return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
+ return org.eclipse.etrice.core.parser.antlr.RoomAntlrTokenFileProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.Lexer> bindLexer() {
+ return org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public com.google.inject.Provider<org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer> provideInternalRoomLexer() {
+ return org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public void configureRuntimeLexer(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(org.eclipse.etrice.core.parser.antlr.internal.InternalRoomLexer.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.ITokenDefProvider> bindITokenDefProvider() {
+ return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.validation.JavaValidatorFragment
+ @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.etrice.core.validation.RoomJavaValidator> bindRoomJavaValidator() {
+ return org.eclipse.etrice.core.validation.RoomJavaValidator.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public Class<? extends org.eclipse.xtext.scoping.IScopeProvider> bindIScopeProvider() {
+ return org.eclipse.etrice.core.scoping.RoomScopeProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public void configureIScopeProviderDelegate(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public Class<? extends org.eclipse.xtext.scoping.IGlobalScopeProvider> bindIGlobalScopeProvider() {
+ return org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public void configureIgnoreCaseLinking(com.google.inject.Binder binder) {
+ binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false);
+ }
+
+ // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
+ public Class<? extends org.eclipse.xtext.naming.IQualifiedNameProvider> bindIQualifiedNameProvider() {
+ return org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public Class<? extends org.eclipse.xtext.resource.IContainer.Manager> bindIContainer$Manager() {
+ return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public Class<? extends org.eclipse.xtext.resource.containers.IAllContainersState.Provider> bindIAllContainersState$Provider() {
+ return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public void configureIResourceDescriptions(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.formatting.FormatterFragment
+ public Class<? extends org.eclipse.xtext.formatting.IFormatter> bindIFormatter() {
+ return org.eclipse.etrice.core.formatting.RoomFormatter.class;
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/RoomStandaloneSetupGenerated.java b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/RoomStandaloneSetupGenerated.java
index c12bb7cbb..94e92584f 100644
--- a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/RoomStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/RoomStandaloneSetupGenerated.java
@@ -1,43 +1,43 @@
-
-package org.eclipse.etrice.core;
-
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.xtext.ISetup;
-import org.eclipse.emf.ecore.resource.Resource;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-/**
- * Generated from StandaloneSetup.xpt!
- */
-@SuppressWarnings("all")
-public class RoomStandaloneSetupGenerated implements ISetup {
-
- public Injector createInjectorAndDoEMFRegistration() {
- org.eclipse.xtext.common.TerminalsStandaloneSetup.doSetup();
-
- Injector injector = createInjector();
- register(injector);
- return injector;
- }
-
- public Injector createInjector() {
- return Guice.createInjector(new org.eclipse.etrice.core.RoomRuntimeModule());
- }
-
- public void register(Injector injector) {
- if (!EPackage.Registry.INSTANCE.containsKey("http://www.eclipse.org/etrice/Room")) {
- EPackage.Registry.INSTANCE.put("http://www.eclipse.org/etrice/Room", org.eclipse.etrice.core.room.RoomPackage.eINSTANCE);
- }
-
- org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
- org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
- Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("room", resourceFactory);
- org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("room", serviceProvider);
-
-
-
-
- }
-}
+
+package org.eclipse.etrice.core;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.xtext.ISetup;
+import org.eclipse.emf.ecore.resource.Resource;
+
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+
+/**
+ * Generated from StandaloneSetup.xpt!
+ */
+@SuppressWarnings("all")
+public class RoomStandaloneSetupGenerated implements ISetup {
+
+ public Injector createInjectorAndDoEMFRegistration() {
+ org.eclipse.xtext.common.TerminalsStandaloneSetup.doSetup();
+
+ Injector injector = createInjector();
+ register(injector);
+ return injector;
+ }
+
+ public Injector createInjector() {
+ return Guice.createInjector(new org.eclipse.etrice.core.RoomRuntimeModule());
+ }
+
+ public void register(Injector injector) {
+ if (!EPackage.Registry.INSTANCE.containsKey("http://www.eclipse.org/etrice/Room")) {
+ EPackage.Registry.INSTANCE.put("http://www.eclipse.org/etrice/Room", org.eclipse.etrice.core.room.RoomPackage.eINSTANCE);
+ }
+
+ org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
+ org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
+ Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("room", resourceFactory);
+ org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("room", serviceProvider);
+
+
+
+
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/RoomParser.java b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/RoomParser.java
index 75806906e..3e6898577 100644
--- a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/RoomParser.java
+++ b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/RoomParser.java
@@ -1,39 +1,39 @@
-/*
-* generated by Xtext
-*/
-package org.eclipse.etrice.core.parser.antlr;
-
-import com.google.inject.Inject;
-
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.etrice.core.services.RoomGrammarAccess;
-
-public class RoomParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-
- @Inject
- private RoomGrammarAccess grammarAccess;
-
- @Override
- protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
- tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
- }
-
- @Override
- protected org.eclipse.etrice.core.parser.antlr.internal.InternalRoomParser createParser(XtextTokenStream stream) {
- return new org.eclipse.etrice.core.parser.antlr.internal.InternalRoomParser(stream, getGrammarAccess());
- }
-
- @Override
- protected String getDefaultRuleName() {
- return "RoomModel";
- }
-
- public RoomGrammarAccess getGrammarAccess() {
- return this.grammarAccess;
- }
-
- public void setGrammarAccess(RoomGrammarAccess grammarAccess) {
- this.grammarAccess = grammarAccess;
- }
-
-}
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.parser.antlr;
+
+import com.google.inject.Inject;
+
+import org.eclipse.xtext.parser.antlr.XtextTokenStream;
+import org.eclipse.etrice.core.services.RoomGrammarAccess;
+
+public class RoomParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
+
+ @Inject
+ private RoomGrammarAccess grammarAccess;
+
+ @Override
+ protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
+ tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
+ }
+
+ @Override
+ protected org.eclipse.etrice.core.parser.antlr.internal.InternalRoomParser createParser(XtextTokenStream stream) {
+ return new org.eclipse.etrice.core.parser.antlr.internal.InternalRoomParser(stream, getGrammarAccess());
+ }
+
+ @Override
+ protected String getDefaultRuleName() {
+ return "RoomModel";
+ }
+
+ public RoomGrammarAccess getGrammarAccess() {
+ return this.grammarAccess;
+ }
+
+ public void setGrammarAccess(RoomGrammarAccess grammarAccess) {
+ this.grammarAccess = grammarAccess;
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.g b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.g
index 1e820d8de..38f687457 100644
--- a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.g
+++ b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.g
@@ -1,5263 +1,5263 @@
-/*
-* generated by Xtext
-*/
-grammar InternalRoom;
-
-options {
- superClass=AbstractInternalAntlrParser;
-
-}
-
-@lexer::header {
-package org.eclipse.etrice.core.parser.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import.
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.parser.antlr.Lexer;
-}
-
-@parser::header {
-package org.eclipse.etrice.core.parser.antlr.internal;
-
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parser.*;
-import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.common.util.Enumerator;
-import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
-import org.eclipse.etrice.core.services.RoomGrammarAccess;
-
-}
-
-@parser::members {
-
- private RoomGrammarAccess grammarAccess;
-
- public InternalRoomParser(TokenStream input, RoomGrammarAccess grammarAccess) {
- this(input);
- this.grammarAccess = grammarAccess;
- registerRules(grammarAccess.getGrammar());
- }
-
- @Override
- protected String getFirstRuleName() {
- return "RoomModel";
- }
-
- @Override
- protected RoomGrammarAccess getGrammarAccess() {
- return grammarAccess;
- }
-}
-
-@rulecatch {
- catch (RecognitionException re) {
- recover(input,re);
- appendSkippedTokens();
- }
-}
-
-
-
-
-// Entry rule entryRuleRoomModel
-entryRuleRoomModel returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getRoomModelRule()); }
- iv_ruleRoomModel=ruleRoomModel
- { $current=$iv_ruleRoomModel.current; }
- EOF
-;
-
-// Rule RoomModel
-ruleRoomModel returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='RoomModel'
- {
- newLeafNode(otherlv_0, grammarAccess.getRoomModelAccess().getRoomModelKeyword_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getNameFQNParserRuleCall_1_0());
- }
- lv_name_1_0=ruleFQN {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- set(
- $current,
- "name",
- lv_name_1_0,
- "FQN");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_2='{'
- {
- newLeafNode(otherlv_2, grammarAccess.getRoomModelAccess().getLeftCurlyBracketKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getImportsImportParserRuleCall_3_0());
- }
- lv_imports_3_0=ruleImport {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- add(
- $current,
- "imports",
- lv_imports_3_0,
- "Import");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*((
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getDataClassesDataClassParserRuleCall_4_0_0());
- }
- lv_dataClasses_4_0=ruleDataClass {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- add(
- $current,
- "dataClasses",
- lv_dataClasses_4_0,
- "DataClass");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getProtocolClassesProtocolClassParserRuleCall_4_1_0());
- }
- lv_protocolClasses_5_0=ruleProtocolClass {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- add(
- $current,
- "protocolClasses",
- lv_protocolClasses_5_0,
- "ProtocolClass");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getActorClassesActorClassParserRuleCall_4_2_0());
- }
- lv_actorClasses_6_0=ruleActorClass {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- add(
- $current,
- "actorClasses",
- lv_actorClasses_6_0,
- "ActorClass");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getSubSystemClassesSubSystemClassParserRuleCall_4_3_0());
- }
- lv_subSystemClasses_7_0=ruleSubSystemClass {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- add(
- $current,
- "subSystemClasses",
- lv_subSystemClasses_7_0,
- "SubSystemClass");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getRoomModelAccess().getSystemsLogicalSystemParserRuleCall_4_4_0());
- }
- lv_systems_8_0=ruleLogicalSystem {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRoomModelRule());
- }
- add(
- $current,
- "systems",
- lv_systems_8_0,
- "LogicalSystem");
- afterParserOrEnumRuleCall();
- }
-
-)
-))+ otherlv_9='}'
- {
- newLeafNode(otherlv_9, grammarAccess.getRoomModelAccess().getRightCurlyBracketKeyword_5());
- }
-)
-;
-
-
-
-
-
-
-
-// Entry rule entryRuleStructureClass
-entryRuleStructureClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getStructureClassRule()); }
- iv_ruleStructureClass=ruleStructureClass
- { $current=$iv_ruleStructureClass.current; }
- EOF
-;
-
-// Rule StructureClass
-ruleStructureClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getStructureClassAccess().getActorContainerClassParserRuleCall_0());
- }
- this_ActorContainerClass_0=ruleActorContainerClass
- {
- $current = $this_ActorContainerClass_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getStructureClassAccess().getLogicalSystemParserRuleCall_1());
- }
- this_LogicalSystem_1=ruleLogicalSystem
- {
- $current = $this_LogicalSystem_1.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleActorContainerClass
-entryRuleActorContainerClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getActorContainerClassRule()); }
- iv_ruleActorContainerClass=ruleActorContainerClass
- { $current=$iv_ruleActorContainerClass.current; }
- EOF
-;
-
-// Rule ActorContainerClass
-ruleActorContainerClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getActorContainerClassAccess().getActorClassParserRuleCall_0());
- }
- this_ActorClass_0=ruleActorClass
- {
- $current = $this_ActorClass_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getActorContainerClassAccess().getSubSystemClassParserRuleCall_1());
- }
- this_SubSystemClass_1=ruleSubSystemClass
- {
- $current = $this_SubSystemClass_1.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleTypedID
-entryRuleTypedID returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTypedIDRule()); }
- iv_ruleTypedID=ruleTypedID
- { $current=$iv_ruleTypedID.current; }
- EOF
-;
-
-// Rule TypedID
-ruleTypedID returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- lv_name_0_0=RULE_ID
- {
- newLeafNode(lv_name_0_0, grammarAccess.getTypedIDAccess().getNameIDTerminalRuleCall_0_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getTypedIDRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_0_0,
- "ID");
- }
-
-)
-) otherlv_1=':'
- {
- newLeafNode(otherlv_1, grammarAccess.getTypedIDAccess().getColonKeyword_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTypedIDAccess().getTypeTypeParserRuleCall_2_0());
- }
- lv_type_2_0=ruleType {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTypedIDRule());
- }
- set(
- $current,
- "type",
- lv_type_2_0,
- "Type");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleFreeTypedID
-entryRuleFreeTypedID returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getFreeTypedIDRule()); }
- iv_ruleFreeTypedID=ruleFreeTypedID
- { $current=$iv_ruleFreeTypedID.current; }
- EOF
-;
-
-// Rule FreeTypedID
-ruleFreeTypedID returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- lv_name_0_0=RULE_ID
- {
- newLeafNode(lv_name_0_0, grammarAccess.getFreeTypedIDAccess().getNameIDTerminalRuleCall_0_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getFreeTypedIDRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_0_0,
- "ID");
- }
-
-)
-) otherlv_1=':'
- {
- newLeafNode(otherlv_1, grammarAccess.getFreeTypedIDAccess().getColonKeyword_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getFreeTypedIDAccess().getTypeFreeTypeParserRuleCall_2_0());
- }
- lv_type_2_0=ruleFreeType {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getFreeTypedIDRule());
- }
- set(
- $current,
- "type",
- lv_type_2_0,
- "FreeType");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleType
-entryRuleType returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTypeRule()); }
- iv_ruleType=ruleType
- { $current=$iv_ruleType.current; }
- EOF
-;
-
-// Rule Type
-ruleType returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- {
- newCompositeNode(grammarAccess.getTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0());
- }
- lv_prim_0_0=rulePrimitiveType {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTypeRule());
- }
- set(
- $current,
- "prim",
- lv_prim_0_0,
- "PrimitiveType");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getTypeRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getTypeAccess().getTypeDataClassCrossReference_1_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleFreeType
-entryRuleFreeType returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getFreeTypeRule()); }
- iv_ruleFreeType=ruleFreeType
- { $current=$iv_ruleFreeType.current; }
- EOF
-;
-
-// Rule FreeType
-ruleFreeType returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- {
- newCompositeNode(grammarAccess.getFreeTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0());
- }
- lv_prim_0_0=rulePrimitiveType {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getFreeTypeRule());
- }
- set(
- $current,
- "prim",
- lv_prim_0_0,
- "PrimitiveType");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- lv_type_1_0=RULE_ID
- {
- newLeafNode(lv_type_1_0, grammarAccess.getFreeTypeAccess().getTypeIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getFreeTypeRule());
- }
- setWithLastConsumed(
- $current,
- "type",
- lv_type_1_0,
- "ID");
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleDataClass
-entryRuleDataClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getDataClassRule()); }
- iv_ruleDataClass=ruleDataClass
- { $current=$iv_ruleDataClass.current; }
- EOF
-;
-
-// Rule DataClass
-ruleDataClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='DataClass'
- {
- newLeafNode(otherlv_0, grammarAccess.getDataClassAccess().getDataClassKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getDataClassAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getDataClassRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)( otherlv_2='extends'
- {
- newLeafNode(otherlv_2, grammarAccess.getDataClassAccess().getExtendsKeyword_2_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getDataClassRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getDataClassAccess().getBaseDataClassCrossReference_2_1_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_4='{'
- {
- newLeafNode(otherlv_4, grammarAccess.getDataClassAccess().getLeftCurlyBracketKeyword_3());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getDataClassAccess().getImportsImportParserRuleCall_4_0());
- }
- lv_imports_5_0=ruleImport {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getDataClassRule());
- }
- add(
- $current,
- "imports",
- lv_imports_5_0,
- "Import");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getDataClassAccess().getAttributesAttributeParserRuleCall_5_0());
- }
- lv_attributes_6_0=ruleAttribute {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getDataClassRule());
- }
- add(
- $current,
- "attributes",
- lv_attributes_6_0,
- "Attribute");
- afterParserOrEnumRuleCall();
- }
-
-)
-)+(
-(
- {
- newCompositeNode(grammarAccess.getDataClassAccess().getOperationsOperationParserRuleCall_6_0());
- }
- lv_operations_7_0=ruleOperation {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getDataClassRule());
- }
- add(
- $current,
- "operations",
- lv_operations_7_0,
- "Operation");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_8='}'
- {
- newLeafNode(otherlv_8, grammarAccess.getDataClassAccess().getRightCurlyBracketKeyword_7());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleAttribute
-entryRuleAttribute returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getAttributeRule()); }
- iv_ruleAttribute=ruleAttribute
- { $current=$iv_ruleAttribute.current; }
- EOF
-;
-
-// Rule Attribute
-ruleAttribute returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Attribute'
- {
- newLeafNode(otherlv_0, grammarAccess.getAttributeAccess().getAttributeKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getAttributeAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getAttributeRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)( otherlv_2='['
- {
- newLeafNode(otherlv_2, grammarAccess.getAttributeAccess().getLeftSquareBracketKeyword_2_0());
- }
-(
-(
- lv_size_3_0=RULE_INT
- {
- newLeafNode(lv_size_3_0, grammarAccess.getAttributeAccess().getSizeINTTerminalRuleCall_2_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getAttributeRule());
- }
- setWithLastConsumed(
- $current,
- "size",
- lv_size_3_0,
- "INT");
- }
-
-)
-) otherlv_4=']'
- {
- newLeafNode(otherlv_4, grammarAccess.getAttributeAccess().getRightSquareBracketKeyword_2_2());
- }
-)? otherlv_5=':'
- {
- newLeafNode(otherlv_5, grammarAccess.getAttributeAccess().getColonKeyword_3());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getAttributeAccess().getTypeTypeParserRuleCall_4_0());
- }
- lv_type_6_0=ruleType {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getAttributeRule());
- }
- set(
- $current,
- "type",
- lv_type_6_0,
- "Type");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleOperation
-entryRuleOperation returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getOperationRule()); }
- iv_ruleOperation=ruleOperation
- { $current=$iv_ruleOperation.current; }
- EOF
-;
-
-// Rule Operation
-ruleOperation returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Operation'
- {
- newLeafNode(otherlv_0, grammarAccess.getOperationAccess().getOperationKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getOperationAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getOperationRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2='('
- {
- newLeafNode(otherlv_2, grammarAccess.getOperationAccess().getLeftParenthesisKeyword_2());
- }
-((
-(
- {
- newCompositeNode(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_0_0());
- }
- lv_arguments_3_0=ruleFreeTypedID {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getOperationRule());
- }
- add(
- $current,
- "arguments",
- lv_arguments_3_0,
- "FreeTypedID");
- afterParserOrEnumRuleCall();
- }
-
-)
-)( otherlv_4=','
- {
- newLeafNode(otherlv_4, grammarAccess.getOperationAccess().getCommaKeyword_3_1_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_1_1_0());
- }
- lv_arguments_5_0=ruleFreeTypedID {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getOperationRule());
- }
- add(
- $current,
- "arguments",
- lv_arguments_5_0,
- "FreeTypedID");
- afterParserOrEnumRuleCall();
- }
-
-)
-))*)? otherlv_6=')'
- {
- newLeafNode(otherlv_6, grammarAccess.getOperationAccess().getRightParenthesisKeyword_4());
- }
-( otherlv_7=':'
- {
- newLeafNode(otherlv_7, grammarAccess.getOperationAccess().getColonKeyword_5_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getOperationAccess().getReturntypeFreeTypeParserRuleCall_5_1_0());
- }
- lv_returntype_8_0=ruleFreeType {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getOperationRule());
- }
- set(
- $current,
- "returntype",
- lv_returntype_8_0,
- "FreeType");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?(
-(
- {
- newCompositeNode(grammarAccess.getOperationAccess().getDetailCodeDetailCodeParserRuleCall_6_0());
- }
- lv_detailCode_9_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getOperationRule());
- }
- set(
- $current,
- "detailCode",
- lv_detailCode_9_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleProtocolClass
-entryRuleProtocolClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getProtocolClassRule()); }
- iv_ruleProtocolClass=ruleProtocolClass
- { $current=$iv_ruleProtocolClass.current; }
- EOF
-;
-
-// Rule ProtocolClass
-ruleProtocolClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='ProtocolClass'
- {
- newLeafNode(otherlv_0, grammarAccess.getProtocolClassAccess().getProtocolClassKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getProtocolClassAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getProtocolClassRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)( otherlv_2='extends'
- {
- newLeafNode(otherlv_2, grammarAccess.getProtocolClassAccess().getExtendsKeyword_2_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getProtocolClassRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getBaseProtocolClassCrossReference_2_1_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_4='{'
- {
- newLeafNode(otherlv_4, grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_3());
- }
-( otherlv_5='usercode1'
- {
- newLeafNode(otherlv_5, grammarAccess.getProtocolClassAccess().getUsercode1Keyword_4_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getUserCode1DetailCodeParserRuleCall_4_1_0());
- }
- lv_userCode1_6_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- set(
- $current,
- "userCode1",
- lv_userCode1_6_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_7='usercode2'
- {
- newLeafNode(otherlv_7, grammarAccess.getProtocolClassAccess().getUsercode2Keyword_5_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getUserCode2DetailCodeParserRuleCall_5_1_0());
- }
- lv_userCode2_8_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- set(
- $current,
- "userCode2",
- lv_userCode2_8_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_9='incoming'
- {
- newLeafNode(otherlv_9, grammarAccess.getProtocolClassAccess().getIncomingKeyword_6());
- }
- otherlv_10='{'
- {
- newLeafNode(otherlv_10, grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_7());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getIncomingMessagesMessageParserRuleCall_8_0());
- }
- lv_incomingMessages_11_0=ruleMessage {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- add(
- $current,
- "incomingMessages",
- lv_incomingMessages_11_0,
- "Message");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_12='}'
- {
- newLeafNode(otherlv_12, grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_9());
- }
- otherlv_13='outgoing'
- {
- newLeafNode(otherlv_13, grammarAccess.getProtocolClassAccess().getOutgoingKeyword_10());
- }
- otherlv_14='{'
- {
- newLeafNode(otherlv_14, grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_11());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getOutgoingMessagesMessageParserRuleCall_12_0());
- }
- lv_outgoingMessages_15_0=ruleMessage {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- add(
- $current,
- "outgoingMessages",
- lv_outgoingMessages_15_0,
- "Message");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_16='}'
- {
- newLeafNode(otherlv_16, grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_13());
- }
-( otherlv_17='regular'
- {
- newLeafNode(otherlv_17, grammarAccess.getProtocolClassAccess().getRegularKeyword_14_0());
- }
- otherlv_18='PortClass'
- {
- newLeafNode(otherlv_18, grammarAccess.getProtocolClassAccess().getPortClassKeyword_14_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getRegularPortClassParserRuleCall_14_2_0());
- }
- lv_regular_19_0=rulePortClass {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- set(
- $current,
- "regular",
- lv_regular_19_0,
- "PortClass");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_20='conjugate'
- {
- newLeafNode(otherlv_20, grammarAccess.getProtocolClassAccess().getConjugateKeyword_15_0());
- }
- otherlv_21='PortClass'
- {
- newLeafNode(otherlv_21, grammarAccess.getProtocolClassAccess().getPortClassKeyword_15_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getConjugatePortClassParserRuleCall_15_2_0());
- }
- lv_conjugate_22_0=rulePortClass {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- set(
- $current,
- "conjugate",
- lv_conjugate_22_0,
- "PortClass");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?(
-(
- {
- newCompositeNode(grammarAccess.getProtocolClassAccess().getSemanticsProtocolSemanticsParserRuleCall_16_0());
- }
- lv_semantics_23_0=ruleProtocolSemantics {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
- }
- set(
- $current,
- "semantics",
- lv_semantics_23_0,
- "ProtocolSemantics");
- afterParserOrEnumRuleCall();
- }
-
-)
-)? otherlv_24='}'
- {
- newLeafNode(otherlv_24, grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_17());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleMessage
-entryRuleMessage returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getMessageRule()); }
- iv_ruleMessage=ruleMessage
- { $current=$iv_ruleMessage.current; }
- EOF
-;
-
-// Rule Message
-ruleMessage returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Message'
- {
- newLeafNode(otherlv_0, grammarAccess.getMessageAccess().getMessageKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getMessageAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getMessageRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2='('
- {
- newLeafNode(otherlv_2, grammarAccess.getMessageAccess().getLeftParenthesisKeyword_2());
- }
-((
-(
- {
- newCompositeNode(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_0_0());
- }
- lv_arguments_3_0=ruleTypedID {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getMessageRule());
- }
- add(
- $current,
- "arguments",
- lv_arguments_3_0,
- "TypedID");
- afterParserOrEnumRuleCall();
- }
-
-)
-)( otherlv_4=','
- {
- newLeafNode(otherlv_4, grammarAccess.getMessageAccess().getCommaKeyword_3_1_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_1_1_0());
- }
- lv_arguments_5_0=ruleTypedID {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getMessageRule());
- }
- add(
- $current,
- "arguments",
- lv_arguments_5_0,
- "TypedID");
- afterParserOrEnumRuleCall();
- }
-
-)
-))*)? otherlv_6=')'
- {
- newLeafNode(otherlv_6, grammarAccess.getMessageAccess().getRightParenthesisKeyword_4());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRulePortClass
-entryRulePortClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getPortClassRule()); }
- iv_rulePortClass=rulePortClass
- { $current=$iv_rulePortClass.current; }
- EOF
-;
-
-// Rule PortClass
-rulePortClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='{'
- {
- newLeafNode(otherlv_0, grammarAccess.getPortClassAccess().getLeftCurlyBracketKeyword_0());
- }
-( otherlv_1='usercode'
- {
- newLeafNode(otherlv_1, grammarAccess.getPortClassAccess().getUsercodeKeyword_1_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getPortClassAccess().getUserCodeDetailCodeParserRuleCall_1_1_0());
- }
- lv_userCode_2_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getPortClassRule());
- }
- set(
- $current,
- "userCode",
- lv_userCode_2_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?((
-(
- {
- newCompositeNode(grammarAccess.getPortClassAccess().getAttributesAttributeParserRuleCall_2_0_0());
- }
- lv_attributes_3_0=ruleAttribute {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getPortClassRule());
- }
- add(
- $current,
- "attributes",
- lv_attributes_3_0,
- "Attribute");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getPortClassAccess().getOperationsOperationParserRuleCall_2_1_0());
- }
- lv_operations_4_0=ruleOperation {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getPortClassRule());
- }
- add(
- $current,
- "operations",
- lv_operations_4_0,
- "Operation");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getPortClassAccess().getMsgHandlersMessageHandlerParserRuleCall_2_2_0());
- }
- lv_msgHandlers_5_0=ruleMessageHandler {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getPortClassRule());
- }
- add(
- $current,
- "msgHandlers",
- lv_msgHandlers_5_0,
- "MessageHandler");
- afterParserOrEnumRuleCall();
- }
-
-)
-))+ otherlv_6='}'
- {
- newLeafNode(otherlv_6, grammarAccess.getPortClassAccess().getRightCurlyBracketKeyword_3());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleMessageHandler
-entryRuleMessageHandler returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getMessageHandlerRule()); }
- iv_ruleMessageHandler=ruleMessageHandler
- { $current=$iv_ruleMessageHandler.current; }
- EOF
-;
-
-// Rule MessageHandler
-ruleMessageHandler returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='handle'
- {
- newLeafNode(otherlv_0, grammarAccess.getMessageHandlerAccess().getHandleKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getMessageHandlerRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getMessageHandlerAccess().getMsgMessageCrossReference_1_0());
- }
-
-)
-)(
-(
- {
- newCompositeNode(grammarAccess.getMessageHandlerAccess().getDetailCodeDetailCodeParserRuleCall_2_0());
- }
- lv_detailCode_2_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getMessageHandlerRule());
- }
- set(
- $current,
- "detailCode",
- lv_detailCode_2_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleProtocolSemantics
-entryRuleProtocolSemantics returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getProtocolSemanticsRule()); }
- iv_ruleProtocolSemantics=ruleProtocolSemantics
- { $current=$iv_ruleProtocolSemantics.current; }
- EOF
-;
-
-// Rule ProtocolSemantics
-ruleProtocolSemantics returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='semantics'
- {
- newLeafNode(otherlv_0, grammarAccess.getProtocolSemanticsAccess().getSemanticsKeyword_0());
- }
- otherlv_1='{'
- {
- newLeafNode(otherlv_1, grammarAccess.getProtocolSemanticsAccess().getLeftCurlyBracketKeyword_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getProtocolSemanticsAccess().getRulesSemanticsRuleParserRuleCall_2_0());
- }
- lv_rules_2_0=ruleSemanticsRule {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getProtocolSemanticsRule());
- }
- add(
- $current,
- "rules",
- lv_rules_2_0,
- "SemanticsRule");
- afterParserOrEnumRuleCall();
- }
-
-)
-)+ otherlv_3='}'
- {
- newLeafNode(otherlv_3, grammarAccess.getProtocolSemanticsAccess().getRightCurlyBracketKeyword_3());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleSemanticsRule
-entryRuleSemanticsRule returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSemanticsRuleRule()); }
- iv_ruleSemanticsRule=ruleSemanticsRule
- { $current=$iv_ruleSemanticsRule.current; }
- EOF
-;
-
-// Rule SemanticsRule
-ruleSemanticsRule returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getSemanticsRuleAccess().getSemanticsInRuleParserRuleCall_0());
- }
- this_SemanticsInRule_0=ruleSemanticsInRule
- {
- $current = $this_SemanticsInRule_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getSemanticsRuleAccess().getSemanticsOutRuleParserRuleCall_1());
- }
- this_SemanticsOutRule_1=ruleSemanticsOutRule
- {
- $current = $this_SemanticsOutRule_1.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleSemanticsInRule
-entryRuleSemanticsInRule returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSemanticsInRuleRule()); }
- iv_ruleSemanticsInRule=ruleSemanticsInRule
- { $current=$iv_ruleSemanticsInRule.current; }
- EOF
-;
-
-// Rule SemanticsInRule
-ruleSemanticsInRule returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='in'
- {
- newLeafNode(otherlv_0, grammarAccess.getSemanticsInRuleAccess().getInKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSemanticsInRuleRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getSemanticsInRuleAccess().getMsgMessageCrossReference_1_0());
- }
-
-)
-) otherlv_2='->'
- {
- newLeafNode(otherlv_2, grammarAccess.getSemanticsInRuleAccess().getHyphenMinusGreaterThanSignKeyword_2());
- }
- otherlv_3='{'
- {
- newLeafNode(otherlv_3, grammarAccess.getSemanticsInRuleAccess().getLeftCurlyBracketKeyword_3());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getSemanticsInRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0());
- }
- lv_followUps_4_0=ruleSemanticsRule {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSemanticsInRuleRule());
- }
- add(
- $current,
- "followUps",
- lv_followUps_4_0,
- "SemanticsRule");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_5='}'
- {
- newLeafNode(otherlv_5, grammarAccess.getSemanticsInRuleAccess().getRightCurlyBracketKeyword_5());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleSemanticsOutRule
-entryRuleSemanticsOutRule returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSemanticsOutRuleRule()); }
- iv_ruleSemanticsOutRule=ruleSemanticsOutRule
- { $current=$iv_ruleSemanticsOutRule.current; }
- EOF
-;
-
-// Rule SemanticsOutRule
-ruleSemanticsOutRule returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='out'
- {
- newLeafNode(otherlv_0, grammarAccess.getSemanticsOutRuleAccess().getOutKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSemanticsOutRuleRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getSemanticsOutRuleAccess().getMsgMessageCrossReference_1_0());
- }
-
-)
-) otherlv_2='->'
- {
- newLeafNode(otherlv_2, grammarAccess.getSemanticsOutRuleAccess().getHyphenMinusGreaterThanSignKeyword_2());
- }
- otherlv_3='{'
- {
- newLeafNode(otherlv_3, grammarAccess.getSemanticsOutRuleAccess().getLeftCurlyBracketKeyword_3());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0());
- }
- lv_followUps_4_0=ruleSemanticsRule {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSemanticsOutRuleRule());
- }
- add(
- $current,
- "followUps",
- lv_followUps_4_0,
- "SemanticsRule");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_5='}'
- {
- newLeafNode(otherlv_5, grammarAccess.getSemanticsOutRuleAccess().getRightCurlyBracketKeyword_5());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleActorClass
-entryRuleActorClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getActorClassRule()); }
- iv_ruleActorClass=ruleActorClass
- { $current=$iv_ruleActorClass.current; }
- EOF
-;
-
-// Rule ActorClass
-ruleActorClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- lv_abstract_0_0= 'abstract'
- {
- newLeafNode(lv_abstract_0_0, grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0());
- }
-
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorClassRule());
- }
- setWithLastConsumed($current, "abstract", true, "abstract");
- }
-
-)
-)? otherlv_1='ActorClass'
- {
- newLeafNode(otherlv_1, grammarAccess.getActorClassAccess().getActorClassKeyword_1());
- }
-(
-(
- lv_name_2_0=RULE_ID
- {
- newLeafNode(lv_name_2_0, grammarAccess.getActorClassAccess().getNameIDTerminalRuleCall_2_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorClassRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_2_0,
- "ID");
- }
-
-)
-)( otherlv_3='extends'
- {
- newLeafNode(otherlv_3, grammarAccess.getActorClassAccess().getExtendsKeyword_3_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorClassRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getBaseActorClassCrossReference_3_1_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_5='{'
- {
- newLeafNode(otherlv_5, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_4());
- }
-( otherlv_6='Interface'
- {
- newLeafNode(otherlv_6, grammarAccess.getActorClassAccess().getInterfaceKeyword_5_0());
- }
- otherlv_7='{'
- {
- newLeafNode(otherlv_7, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_5_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getIfPortsPortParserRuleCall_5_2_0());
- }
- lv_ifPorts_8_0=rulePort {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "ifPorts",
- lv_ifPorts_8_0,
- "Port");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getIfSPPsSPPRefParserRuleCall_5_3_0());
- }
- lv_ifSPPs_9_0=ruleSPPRef {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "ifSPPs",
- lv_ifSPPs_9_0,
- "SPPRef");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_10='}'
- {
- newLeafNode(otherlv_10, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_5_4());
- }
-)?( otherlv_11='Structure'
- {
- newLeafNode(otherlv_11, grammarAccess.getActorClassAccess().getStructureKeyword_6_0());
- }
- otherlv_12='{'
- {
- newLeafNode(otherlv_12, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_6_1());
- }
-( otherlv_13='usercode1'
- {
- newLeafNode(otherlv_13, grammarAccess.getActorClassAccess().getUsercode1Keyword_6_2_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getUserCode1DetailCodeParserRuleCall_6_2_1_0());
- }
- lv_userCode1_14_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- set(
- $current,
- "userCode1",
- lv_userCode1_14_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_15='usercode2'
- {
- newLeafNode(otherlv_15, grammarAccess.getActorClassAccess().getUsercode2Keyword_6_3_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getUserCode2DetailCodeParserRuleCall_6_3_1_0());
- }
- lv_userCode2_16_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- set(
- $current,
- "userCode2",
- lv_userCode2_16_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?((
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getIntPortsPortParserRuleCall_6_4_0_0());
- }
- lv_intPorts_17_0=rulePort {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "intPorts",
- lv_intPorts_17_0,
- "Port");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getExtPortsExternalPortParserRuleCall_6_4_1_0());
- }
- lv_extPorts_18_0=ruleExternalPort {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "extPorts",
- lv_extPorts_18_0,
- "ExternalPort");
- afterParserOrEnumRuleCall();
- }
-
-)
-))*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getServiceImplementationsServiceImplementationParserRuleCall_6_5_0());
- }
- lv_serviceImplementations_19_0=ruleServiceImplementation {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "serviceImplementations",
- lv_serviceImplementations_19_0,
- "ServiceImplementation");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getStrSAPsSAPRefParserRuleCall_6_6_0());
- }
- lv_strSAPs_20_0=ruleSAPRef {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "strSAPs",
- lv_strSAPs_20_0,
- "SAPRef");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getAttributesAttributeParserRuleCall_6_7_0());
- }
- lv_attributes_21_0=ruleAttribute {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "attributes",
- lv_attributes_21_0,
- "Attribute");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getActorRefsActorRefParserRuleCall_6_8_0());
- }
- lv_actorRefs_22_0=ruleActorRef {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "actorRefs",
- lv_actorRefs_22_0,
- "ActorRef");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getBindingsBindingParserRuleCall_6_9_0());
- }
- lv_bindings_23_0=ruleBinding {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "bindings",
- lv_bindings_23_0,
- "Binding");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getConnectionsLayerConnectionParserRuleCall_6_10_0());
- }
- lv_connections_24_0=ruleLayerConnection {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "connections",
- lv_connections_24_0,
- "LayerConnection");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_25='}'
- {
- newLeafNode(otherlv_25, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_6_11());
- }
-)?( otherlv_26='Behavior'
- {
- newLeafNode(otherlv_26, grammarAccess.getActorClassAccess().getBehaviorKeyword_7_0());
- }
- otherlv_27='{'
- {
- newLeafNode(otherlv_27, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_7_1());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getOperationsOperationParserRuleCall_7_2_0());
- }
- lv_operations_28_0=ruleOperation {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- add(
- $current,
- "operations",
- lv_operations_28_0,
- "Operation");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getActorClassAccess().getStateMachineStateMachineParserRuleCall_7_3_0());
- }
- lv_stateMachine_29_0=ruleStateMachine {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getActorClassRule());
- }
- set(
- $current,
- "stateMachine",
- lv_stateMachine_29_0,
- "StateMachine");
- afterParserOrEnumRuleCall();
- }
-
-)
-)? otherlv_30='}'
- {
- newLeafNode(otherlv_30, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_7_4());
- }
-)? otherlv_31='}'
- {
- newLeafNode(otherlv_31, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_8());
- }
-)
-;
-
-
-
-
-
-
-
-// Entry rule entryRulePort
-entryRulePort returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getPortRule()); }
- iv_rulePort=rulePort
- { $current=$iv_rulePort.current; }
- EOF
-;
-
-// Rule Port
-rulePort returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- lv_conjugated_0_0= 'conjugated'
- {
- newLeafNode(lv_conjugated_0_0, grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0());
- }
-
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getPortRule());
- }
- setWithLastConsumed($current, "conjugated", true, "conjugated");
- }
-
-)
-)? otherlv_1='Port'
- {
- newLeafNode(otherlv_1, grammarAccess.getPortAccess().getPortKeyword_1());
- }
-(
-(
- lv_name_2_0=RULE_ID
- {
- newLeafNode(lv_name_2_0, grammarAccess.getPortAccess().getNameIDTerminalRuleCall_2_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getPortRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_2_0,
- "ID");
- }
-
-)
-)( otherlv_3='['
- {
- newLeafNode(otherlv_3, grammarAccess.getPortAccess().getLeftSquareBracketKeyword_3_0());
- }
-(
-(
- lv_multiplicity_4_0=RULE_INT
- {
- newLeafNode(lv_multiplicity_4_0, grammarAccess.getPortAccess().getMultiplicityINTTerminalRuleCall_3_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getPortRule());
- }
- setWithLastConsumed(
- $current,
- "multiplicity",
- lv_multiplicity_4_0,
- "INT");
- }
-
-)
-) otherlv_5=']'
- {
- newLeafNode(otherlv_5, grammarAccess.getPortAccess().getRightSquareBracketKeyword_3_2());
- }
-)? otherlv_6=':'
- {
- newLeafNode(otherlv_6, grammarAccess.getPortAccess().getColonKeyword_4());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getPortRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getPortAccess().getProtocolProtocolClassCrossReference_5_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleExternalPort
-entryRuleExternalPort returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getExternalPortRule()); }
- iv_ruleExternalPort=ruleExternalPort
- { $current=$iv_ruleExternalPort.current; }
- EOF
-;
-
-// Rule ExternalPort
-ruleExternalPort returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='external'
- {
- newLeafNode(otherlv_0, grammarAccess.getExternalPortAccess().getExternalKeyword_0());
- }
- otherlv_1='Port'
- {
- newLeafNode(otherlv_1, grammarAccess.getExternalPortAccess().getPortKeyword_1());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getExternalPortRule());
- }
- }
- otherlv_2=RULE_ID
- {
- newLeafNode(otherlv_2, grammarAccess.getExternalPortAccess().getIfportPortCrossReference_2_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleSAPRef
-entryRuleSAPRef returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSAPRefRule()); }
- iv_ruleSAPRef=ruleSAPRef
- { $current=$iv_ruleSAPRef.current; }
- EOF
-;
-
-// Rule SAPRef
-ruleSAPRef returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='SAP'
- {
- newLeafNode(otherlv_0, grammarAccess.getSAPRefAccess().getSAPKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getSAPRefAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSAPRefRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getSAPRefAccess().getColonKeyword_2());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSAPRefRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getSAPRefAccess().getProtocolProtocolClassCrossReference_3_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleSPPRef
-entryRuleSPPRef returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSPPRefRule()); }
- iv_ruleSPPRef=ruleSPPRef
- { $current=$iv_ruleSPPRef.current; }
- EOF
-;
-
-// Rule SPPRef
-ruleSPPRef returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='SPP'
- {
- newLeafNode(otherlv_0, grammarAccess.getSPPRefAccess().getSPPKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getSPPRefAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSPPRefRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getSPPRefAccess().getColonKeyword_2());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSPPRefRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getSPPRefAccess().getProtocolProtocolClassCrossReference_3_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleServiceImplementation
-entryRuleServiceImplementation returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getServiceImplementationRule()); }
- iv_ruleServiceImplementation=ruleServiceImplementation
- { $current=$iv_ruleServiceImplementation.current; }
- EOF
-;
-
-// Rule ServiceImplementation
-ruleServiceImplementation returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='ServiceImplementation'
- {
- newLeafNode(otherlv_0, grammarAccess.getServiceImplementationAccess().getServiceImplementationKeyword_0());
- }
- otherlv_1='of'
- {
- newLeafNode(otherlv_1, grammarAccess.getServiceImplementationAccess().getOfKeyword_1());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getServiceImplementationRule());
- }
- }
- otherlv_2=RULE_ID
- {
- newLeafNode(otherlv_2, grammarAccess.getServiceImplementationAccess().getSppSPPRefCrossReference_2_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleLogicalSystem
-entryRuleLogicalSystem returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getLogicalSystemRule()); }
- iv_ruleLogicalSystem=ruleLogicalSystem
- { $current=$iv_ruleLogicalSystem.current; }
- EOF
-;
-
-// Rule LogicalSystem
-ruleLogicalSystem returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='LogicalSystem'
- {
- newLeafNode(otherlv_0, grammarAccess.getLogicalSystemAccess().getLogicalSystemKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getLogicalSystemAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getLogicalSystemRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2='{'
- {
- newLeafNode(otherlv_2, grammarAccess.getLogicalSystemAccess().getLeftCurlyBracketKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getLogicalSystemAccess().getSubSystemsSubSystemRefParserRuleCall_3_0());
- }
- lv_subSystems_3_0=ruleSubSystemRef {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLogicalSystemRule());
- }
- add(
- $current,
- "subSystems",
- lv_subSystems_3_0,
- "SubSystemRef");
- afterParserOrEnumRuleCall();
- }
-
-)
-)+(
-(
- {
- newCompositeNode(grammarAccess.getLogicalSystemAccess().getBindingsBindingParserRuleCall_4_0());
- }
- lv_bindings_4_0=ruleBinding {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLogicalSystemRule());
- }
- add(
- $current,
- "bindings",
- lv_bindings_4_0,
- "Binding");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getLogicalSystemAccess().getConnectionsLayerConnectionParserRuleCall_5_0());
- }
- lv_connections_5_0=ruleLayerConnection {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLogicalSystemRule());
- }
- add(
- $current,
- "connections",
- lv_connections_5_0,
- "LayerConnection");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_6='}'
- {
- newLeafNode(otherlv_6, grammarAccess.getLogicalSystemAccess().getRightCurlyBracketKeyword_6());
- }
-)
-;
-
-
-
-
-
-
-
-// Entry rule entryRuleSubSystemRef
-entryRuleSubSystemRef returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSubSystemRefRule()); }
- iv_ruleSubSystemRef=ruleSubSystemRef
- { $current=$iv_ruleSubSystemRef.current; }
- EOF
-;
-
-// Rule SubSystemRef
-ruleSubSystemRef returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='SubSystemRef'
- {
- newLeafNode(otherlv_0, grammarAccess.getSubSystemRefAccess().getSubSystemRefKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getSubSystemRefAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSubSystemRefRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getSubSystemRefAccess().getColonKeyword_2());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSubSystemRefRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassCrossReference_3_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleSubSystemClass
-entryRuleSubSystemClass returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSubSystemClassRule()); }
- iv_ruleSubSystemClass=ruleSubSystemClass
- { $current=$iv_ruleSubSystemClass.current; }
- EOF
-;
-
-// Rule SubSystemClass
-ruleSubSystemClass returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='SubSystemClass'
- {
- newLeafNode(otherlv_0, grammarAccess.getSubSystemClassAccess().getSubSystemClassKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getSubSystemClassAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSubSystemClassRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2='{'
- {
- newLeafNode(otherlv_2, grammarAccess.getSubSystemClassAccess().getLeftCurlyBracketKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getSubSystemClassAccess().getRelayPortsPortParserRuleCall_3_0());
- }
- lv_relayPorts_3_0=rulePort {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
- }
- add(
- $current,
- "relayPorts",
- lv_relayPorts_3_0,
- "Port");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getSubSystemClassAccess().getIfSPPsSPPRefParserRuleCall_4_0());
- }
- lv_ifSPPs_4_0=ruleSPPRef {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
- }
- add(
- $current,
- "ifSPPs",
- lv_ifSPPs_4_0,
- "SPPRef");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getSubSystemClassAccess().getActorRefsActorRefParserRuleCall_5_0());
- }
- lv_actorRefs_5_0=ruleActorRef {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
- }
- add(
- $current,
- "actorRefs",
- lv_actorRefs_5_0,
- "ActorRef");
- afterParserOrEnumRuleCall();
- }
-
-)
-)+(
-(
- {
- newCompositeNode(grammarAccess.getSubSystemClassAccess().getBindingsBindingParserRuleCall_6_0());
- }
- lv_bindings_6_0=ruleBinding {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
- }
- add(
- $current,
- "bindings",
- lv_bindings_6_0,
- "Binding");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getSubSystemClassAccess().getConnectionsLayerConnectionParserRuleCall_7_0());
- }
- lv_connections_7_0=ruleLayerConnection {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
- }
- add(
- $current,
- "connections",
- lv_connections_7_0,
- "LayerConnection");
- afterParserOrEnumRuleCall();
- }
-
-)
-)*(
-(
- {
- newCompositeNode(grammarAccess.getSubSystemClassAccess().getThreadsLogicalThreadParserRuleCall_8_0());
- }
- lv_threads_8_0=ruleLogicalThread {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
- }
- add(
- $current,
- "threads",
- lv_threads_8_0,
- "LogicalThread");
- afterParserOrEnumRuleCall();
- }
-
-)
-)* otherlv_9='}'
- {
- newLeafNode(otherlv_9, grammarAccess.getSubSystemClassAccess().getRightCurlyBracketKeyword_9());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleLogicalThread
-entryRuleLogicalThread returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getLogicalThreadRule()); }
- iv_ruleLogicalThread=ruleLogicalThread
- { $current=$iv_ruleLogicalThread.current; }
- EOF
-;
-
-// Rule LogicalThread
-ruleLogicalThread returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='LogicalThread'
- {
- newLeafNode(otherlv_0, grammarAccess.getLogicalThreadAccess().getLogicalThreadKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getLogicalThreadAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getLogicalThreadRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2='{'
- {
- newLeafNode(otherlv_2, grammarAccess.getLogicalThreadAccess().getLeftCurlyBracketKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_3_0());
- }
- lv_instances_3_0=ruleActorInstancePath {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLogicalThreadRule());
- }
- add(
- $current,
- "instances",
- lv_instances_3_0,
- "ActorInstancePath");
- afterParserOrEnumRuleCall();
- }
-
-)
-)( otherlv_4=','
- {
- newLeafNode(otherlv_4, grammarAccess.getLogicalThreadAccess().getCommaKeyword_4_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_4_1_0());
- }
- lv_instances_5_0=ruleActorInstancePath {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLogicalThreadRule());
- }
- add(
- $current,
- "instances",
- lv_instances_5_0,
- "ActorInstancePath");
- afterParserOrEnumRuleCall();
- }
-
-)
-))* otherlv_6='}'
- {
- newLeafNode(otherlv_6, grammarAccess.getLogicalThreadAccess().getRightCurlyBracketKeyword_5());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleActorInstancePath
-entryRuleActorInstancePath returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getActorInstancePathRule()); }
- iv_ruleActorInstancePath=ruleActorInstancePath
- { $current=$iv_ruleActorInstancePath.current; }
- EOF
-;
-
-// Rule ActorInstancePath
-ruleActorInstancePath returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- lv_segments_0_0=RULE_ID
- {
- newLeafNode(lv_segments_0_0, grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_0_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorInstancePathRule());
- }
- addWithLastConsumed(
- $current,
- "segments",
- lv_segments_0_0,
- "ID");
- }
-
-)
-)( otherlv_1='.'
- {
- newLeafNode(otherlv_1, grammarAccess.getActorInstancePathAccess().getFullStopKeyword_1_0());
- }
-(
-(
- lv_segments_2_0=RULE_ID
- {
- newLeafNode(lv_segments_2_0, grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_1_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorInstancePathRule());
- }
- addWithLastConsumed(
- $current,
- "segments",
- lv_segments_2_0,
- "ID");
- }
-
-)
-))*)
-;
-
-
-
-
-
-// Entry rule entryRuleBinding
-entryRuleBinding returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getBindingRule()); }
- iv_ruleBinding=ruleBinding
- { $current=$iv_ruleBinding.current; }
- EOF
-;
-
-// Rule Binding
-ruleBinding returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Binding'
- {
- newLeafNode(otherlv_0, grammarAccess.getBindingAccess().getBindingKeyword_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getBindingAccess().getEndpoint1BindingEndPointParserRuleCall_1_0());
- }
- lv_endpoint1_1_0=ruleBindingEndPoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getBindingRule());
- }
- set(
- $current,
- "endpoint1",
- lv_endpoint1_1_0,
- "BindingEndPoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_2='and'
- {
- newLeafNode(otherlv_2, grammarAccess.getBindingAccess().getAndKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getBindingAccess().getEndpoint2BindingEndPointParserRuleCall_3_0());
- }
- lv_endpoint2_3_0=ruleBindingEndPoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getBindingRule());
- }
- set(
- $current,
- "endpoint2",
- lv_endpoint2_3_0,
- "BindingEndPoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleBindingEndPoint
-entryRuleBindingEndPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getBindingEndPointRule()); }
- iv_ruleBindingEndPoint=ruleBindingEndPoint
- { $current=$iv_ruleBindingEndPoint.current; }
- EOF
-;
-
-// Rule BindingEndPoint
-ruleBindingEndPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(((
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getBindingEndPointRule());
- }
- }
- otherlv_0=RULE_ID
- {
- newLeafNode(otherlv_0, grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefCrossReference_0_0_0());
- }
-
-)
-) otherlv_1='.'
- {
- newLeafNode(otherlv_1, grammarAccess.getBindingEndPointAccess().getFullStopKeyword_0_1());
- }
-)?(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getBindingEndPointRule());
- }
- }
- otherlv_2=RULE_ID
- {
- newLeafNode(otherlv_2, grammarAccess.getBindingEndPointAccess().getPortPortCrossReference_1_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleLayerConnection
-entryRuleLayerConnection returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getLayerConnectionRule()); }
- iv_ruleLayerConnection=ruleLayerConnection
- { $current=$iv_ruleLayerConnection.current; }
- EOF
-;
-
-// Rule LayerConnection
-ruleLayerConnection returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='LayerConnection'
- {
- newLeafNode(otherlv_0, grammarAccess.getLayerConnectionAccess().getLayerConnectionKeyword_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getLayerConnectionAccess().getFromSAPointParserRuleCall_1_0());
- }
- lv_from_1_0=ruleSAPoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLayerConnectionRule());
- }
- set(
- $current,
- "from",
- lv_from_1_0,
- "SAPoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_2='satisfied_by'
- {
- newLeafNode(otherlv_2, grammarAccess.getLayerConnectionAccess().getSatisfied_byKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getLayerConnectionAccess().getToSPPointParserRuleCall_3_0());
- }
- lv_to_3_0=ruleSPPoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getLayerConnectionRule());
- }
- set(
- $current,
- "to",
- lv_to_3_0,
- "SPPoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleSAPoint
-entryRuleSAPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSAPointRule()); }
- iv_ruleSAPoint=ruleSAPoint
- { $current=$iv_ruleSAPoint.current; }
- EOF
-;
-
-// Rule SAPoint
-ruleSAPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getSAPointAccess().getRefSAPointParserRuleCall_0());
- }
- this_RefSAPoint_0=ruleRefSAPoint
- {
- $current = $this_RefSAPoint_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getSAPointAccess().getRelaySAPointParserRuleCall_1());
- }
- this_RelaySAPoint_1=ruleRelaySAPoint
- {
- $current = $this_RelaySAPoint_1.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleRefSAPoint
-entryRuleRefSAPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getRefSAPointRule()); }
- iv_ruleRefSAPoint=ruleRefSAPoint
- { $current=$iv_ruleRefSAPoint.current; }
- EOF
-;
-
-// Rule RefSAPoint
-ruleRefSAPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='ref'
- {
- newLeafNode(otherlv_0, grammarAccess.getRefSAPointAccess().getRefKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getRefSAPointRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getRefSAPointAccess().getRefActorContainerRefCrossReference_1_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleRelaySAPoint
-entryRuleRelaySAPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getRelaySAPointRule()); }
- iv_ruleRelaySAPoint=ruleRelaySAPoint
- { $current=$iv_ruleRelaySAPoint.current; }
- EOF
-;
-
-// Rule RelaySAPoint
-ruleRelaySAPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='relay_sap'
- {
- newLeafNode(otherlv_0, grammarAccess.getRelaySAPointAccess().getRelay_sapKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getRelaySAPointRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getRelaySAPointAccess().getRelaySPPRefCrossReference_1_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleSPPoint
-entryRuleSPPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSPPointRule()); }
- iv_ruleSPPoint=ruleSPPoint
- { $current=$iv_ruleSPPoint.current; }
- EOF
-;
-
-// Rule SPPoint
-ruleSPPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSPPointRule());
- }
- }
- otherlv_0=RULE_ID
- {
- newLeafNode(otherlv_0, grammarAccess.getSPPointAccess().getRefActorContainerRefCrossReference_0_0());
- }
-
-)
-) otherlv_1='.'
- {
- newLeafNode(otherlv_1, grammarAccess.getSPPointAccess().getFullStopKeyword_1());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSPPointRule());
- }
- }
- otherlv_2=RULE_ID
- {
- newLeafNode(otherlv_2, grammarAccess.getSPPointAccess().getServiceSPPRefCrossReference_2_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleActorRef
-entryRuleActorRef returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getActorRefRule()); }
- iv_ruleActorRef=ruleActorRef
- { $current=$iv_ruleActorRef.current; }
- EOF
-;
-
-// Rule ActorRef
-ruleActorRef returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='ActorRef'
- {
- newLeafNode(otherlv_0, grammarAccess.getActorRefAccess().getActorRefKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getActorRefAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorRefRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getActorRefAccess().getColonKeyword_2());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getActorRefRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getActorRefAccess().getTypeActorClassCrossReference_3_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleStateGraphNode
-entryRuleStateGraphNode returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getStateGraphNodeRule()); }
- iv_ruleStateGraphNode=ruleStateGraphNode
- { $current=$iv_ruleStateGraphNode.current; }
- EOF
-;
-
-// Rule StateGraphNode
-ruleStateGraphNode returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getStateGraphNodeAccess().getStateParserRuleCall_0());
- }
- this_State_0=ruleState
- {
- $current = $this_State_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getStateGraphNodeAccess().getChoicePointParserRuleCall_1());
- }
- this_ChoicePoint_1=ruleChoicePoint
- {
- $current = $this_ChoicePoint_1.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getStateGraphNodeAccess().getTrPointParserRuleCall_2());
- }
- this_TrPoint_2=ruleTrPoint
- {
- $current = $this_TrPoint_2.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-
-
-// Entry rule entryRuleState
-entryRuleState returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getStateRule()); }
- iv_ruleState=ruleState
- { $current=$iv_ruleState.current; }
- EOF
-;
-
-// Rule State
-ruleState returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getStateAccess().getBaseStateParserRuleCall_0());
- }
- this_BaseState_0=ruleBaseState
- {
- $current = $this_BaseState_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getStateAccess().getRefinedStateParserRuleCall_1());
- }
- this_RefinedState_1=ruleRefinedState
- {
- $current = $this_RefinedState_1.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleStateGraph
-entryRuleStateGraph returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getStateGraphRule()); }
- iv_ruleStateGraph=ruleStateGraph
- { $current=$iv_ruleStateGraph.current; }
- EOF
-;
-
-// Rule StateGraph
-ruleStateGraph returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='{'
- {
- newLeafNode(otherlv_0, grammarAccess.getStateGraphAccess().getLeftCurlyBracketKeyword_0());
- }
-((
-(
- {
- newCompositeNode(grammarAccess.getStateGraphAccess().getStatesStateParserRuleCall_1_0_0());
- }
- lv_states_1_0=ruleState {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateGraphRule());
- }
- add(
- $current,
- "states",
- lv_states_1_0,
- "State");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getStateGraphAccess().getTrPointsTrPointParserRuleCall_1_1_0());
- }
- lv_trPoints_2_0=ruleTrPoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateGraphRule());
- }
- add(
- $current,
- "trPoints",
- lv_trPoints_2_0,
- "TrPoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getStateGraphAccess().getChPointsChoicePointParserRuleCall_1_2_0());
- }
- lv_chPoints_3_0=ruleChoicePoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateGraphRule());
- }
- add(
- $current,
- "chPoints",
- lv_chPoints_3_0,
- "ChoicePoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getStateGraphAccess().getTransitionsTransitionParserRuleCall_1_3_0());
- }
- lv_transitions_4_0=ruleTransition {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateGraphRule());
- }
- add(
- $current,
- "transitions",
- lv_transitions_4_0,
- "Transition");
- afterParserOrEnumRuleCall();
- }
-
-)
-))+ otherlv_5='}'
- {
- newLeafNode(otherlv_5, grammarAccess.getStateGraphAccess().getRightCurlyBracketKeyword_2());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleStateMachine
-entryRuleStateMachine returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getStateMachineRule()); }
- iv_ruleStateMachine=ruleStateMachine
- { $current=$iv_ruleStateMachine.current; }
- EOF
-;
-
-// Rule StateMachine
-ruleStateMachine returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='StateMachine'
- {
- newLeafNode(otherlv_0, grammarAccess.getStateMachineAccess().getStateMachineKeyword_0());
- }
- otherlv_1='{'
- {
- newLeafNode(otherlv_1, grammarAccess.getStateMachineAccess().getLeftCurlyBracketKeyword_1());
- }
-((
-(
- {
- newCompositeNode(grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_2_0_0());
- }
- lv_states_2_0=ruleState {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateMachineRule());
- }
- add(
- $current,
- "states",
- lv_states_2_0,
- "State");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getStateMachineAccess().getTrPointsTrPointParserRuleCall_2_1_0());
- }
- lv_trPoints_3_0=ruleTrPoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateMachineRule());
- }
- add(
- $current,
- "trPoints",
- lv_trPoints_3_0,
- "TrPoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getStateMachineAccess().getChPointsChoicePointParserRuleCall_2_2_0());
- }
- lv_chPoints_4_0=ruleChoicePoint {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateMachineRule());
- }
- add(
- $current,
- "chPoints",
- lv_chPoints_4_0,
- "ChoicePoint");
- afterParserOrEnumRuleCall();
- }
-
-)
-)
- |(
-(
- {
- newCompositeNode(grammarAccess.getStateMachineAccess().getTransitionsTransitionParserRuleCall_2_3_0());
- }
- lv_transitions_5_0=ruleTransition {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getStateMachineRule());
- }
- add(
- $current,
- "transitions",
- lv_transitions_5_0,
- "Transition");
- afterParserOrEnumRuleCall();
- }
-
-)
-))+ otherlv_6='}'
- {
- newLeafNode(otherlv_6, grammarAccess.getStateMachineAccess().getRightCurlyBracketKeyword_3());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleBaseState
-entryRuleBaseState returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getBaseStateRule()); }
- iv_ruleBaseState=ruleBaseState
- { $current=$iv_ruleBaseState.current; }
- EOF
-;
-
-// Rule BaseState
-ruleBaseState returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='State'
- {
- newLeafNode(otherlv_0, grammarAccess.getBaseStateAccess().getStateKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getBaseStateAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getBaseStateRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-) otherlv_2='{'
- {
- newLeafNode(otherlv_2, grammarAccess.getBaseStateAccess().getLeftCurlyBracketKeyword_2());
- }
-( otherlv_3='entry'
- {
- newLeafNode(otherlv_3, grammarAccess.getBaseStateAccess().getEntryKeyword_3_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getBaseStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0());
- }
- lv_entryCode_4_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getBaseStateRule());
- }
- set(
- $current,
- "entryCode",
- lv_entryCode_4_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_5='exit'
- {
- newLeafNode(otherlv_5, grammarAccess.getBaseStateAccess().getExitKeyword_4_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getBaseStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0());
- }
- lv_exitCode_6_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getBaseStateRule());
- }
- set(
- $current,
- "exitCode",
- lv_exitCode_6_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_7='subgraph'
- {
- newLeafNode(otherlv_7, grammarAccess.getBaseStateAccess().getSubgraphKeyword_5_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getBaseStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0());
- }
- lv_subgraph_8_0=ruleStateGraph {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getBaseStateRule());
- }
- set(
- $current,
- "subgraph",
- lv_subgraph_8_0,
- "StateGraph");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_9='}'
- {
- newLeafNode(otherlv_9, grammarAccess.getBaseStateAccess().getRightCurlyBracketKeyword_6());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleRefinedState
-entryRuleRefinedState returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getRefinedStateRule()); }
- iv_ruleRefinedState=ruleRefinedState
- { $current=$iv_ruleRefinedState.current; }
- EOF
-;
-
-// Rule RefinedState
-ruleRefinedState returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='RefinedState'
- {
- newLeafNode(otherlv_0, grammarAccess.getRefinedStateAccess().getRefinedStateKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getRefinedStateRule());
- }
- }
- {
- newCompositeNode(grammarAccess.getRefinedStateAccess().getBaseBaseStateCrossReference_1_0());
- }
- ruleFQN {
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_2='{'
- {
- newLeafNode(otherlv_2, grammarAccess.getRefinedStateAccess().getLeftCurlyBracketKeyword_2());
- }
-( otherlv_3='entry'
- {
- newLeafNode(otherlv_3, grammarAccess.getRefinedStateAccess().getEntryKeyword_3_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getRefinedStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0());
- }
- lv_entryCode_4_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRefinedStateRule());
- }
- set(
- $current,
- "entryCode",
- lv_entryCode_4_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_5='exit'
- {
- newLeafNode(otherlv_5, grammarAccess.getRefinedStateAccess().getExitKeyword_4_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getRefinedStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0());
- }
- lv_exitCode_6_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRefinedStateRule());
- }
- set(
- $current,
- "exitCode",
- lv_exitCode_6_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))?( otherlv_7='subgraph'
- {
- newLeafNode(otherlv_7, grammarAccess.getRefinedStateAccess().getSubgraphKeyword_5_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getRefinedStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0());
- }
- lv_subgraph_8_0=ruleStateGraph {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getRefinedStateRule());
- }
- set(
- $current,
- "subgraph",
- lv_subgraph_8_0,
- "StateGraph");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_9='}'
- {
- newLeafNode(otherlv_9, grammarAccess.getRefinedStateAccess().getRightCurlyBracketKeyword_6());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleDetailCode
-entryRuleDetailCode returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getDetailCodeRule()); }
- iv_ruleDetailCode=ruleDetailCode
- { $current=$iv_ruleDetailCode.current; }
- EOF
-;
-
-// Rule DetailCode
-ruleDetailCode returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='{'
- {
- newLeafNode(otherlv_0, grammarAccess.getDetailCodeAccess().getLeftCurlyBracketKeyword_0());
- }
-(
-(
- lv_commands_1_0=RULE_STRING
- {
- newLeafNode(lv_commands_1_0, grammarAccess.getDetailCodeAccess().getCommandsSTRINGTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getDetailCodeRule());
- }
- addWithLastConsumed(
- $current,
- "commands",
- lv_commands_1_0,
- "STRING");
- }
-
-)
-)+ otherlv_2='}'
- {
- newLeafNode(otherlv_2, grammarAccess.getDetailCodeAccess().getRightCurlyBracketKeyword_2());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleTrPoint
-entryRuleTrPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTrPointRule()); }
- iv_ruleTrPoint=ruleTrPoint
- { $current=$iv_ruleTrPoint.current; }
- EOF
-;
-
-// Rule TrPoint
-ruleTrPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getTrPointAccess().getTransitionPointParserRuleCall_0());
- }
- this_TransitionPoint_0=ruleTransitionPoint
- {
- $current = $this_TransitionPoint_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getTrPointAccess().getEntryPointParserRuleCall_1());
- }
- this_EntryPoint_1=ruleEntryPoint
- {
- $current = $this_EntryPoint_1.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getTrPointAccess().getExitPointParserRuleCall_2());
- }
- this_ExitPoint_2=ruleExitPoint
- {
- $current = $this_ExitPoint_2.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleTransitionPoint
-entryRuleTransitionPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTransitionPointRule()); }
- iv_ruleTransitionPoint=ruleTransitionPoint
- { $current=$iv_ruleTransitionPoint.current; }
- EOF
-;
-
-// Rule TransitionPoint
-ruleTransitionPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- lv_handler_0_0= 'handler'
- {
- newLeafNode(lv_handler_0_0, grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0());
- }
-
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getTransitionPointRule());
- }
- setWithLastConsumed($current, "handler", true, "handler");
- }
-
-)
-)? otherlv_1='TransitionPoint'
- {
- newLeafNode(otherlv_1, grammarAccess.getTransitionPointAccess().getTransitionPointKeyword_1());
- }
-(
-(
- lv_name_2_0=RULE_ID
- {
- newLeafNode(lv_name_2_0, grammarAccess.getTransitionPointAccess().getNameIDTerminalRuleCall_2_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getTransitionPointRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_2_0,
- "ID");
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleEntryPoint
-entryRuleEntryPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getEntryPointRule()); }
- iv_ruleEntryPoint=ruleEntryPoint
- { $current=$iv_ruleEntryPoint.current; }
- EOF
-;
-
-// Rule EntryPoint
-ruleEntryPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='EntryPoint'
- {
- newLeafNode(otherlv_0, grammarAccess.getEntryPointAccess().getEntryPointKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getEntryPointAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getEntryPointRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleExitPoint
-entryRuleExitPoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getExitPointRule()); }
- iv_ruleExitPoint=ruleExitPoint
- { $current=$iv_ruleExitPoint.current; }
- EOF
-;
-
-// Rule ExitPoint
-ruleExitPoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='ExitPoint'
- {
- newLeafNode(otherlv_0, grammarAccess.getExitPointAccess().getExitPointKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getExitPointAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getExitPointRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleChoicePoint
-entryRuleChoicePoint returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getChoicePointRule()); }
- iv_ruleChoicePoint=ruleChoicePoint
- { $current=$iv_ruleChoicePoint.current; }
- EOF
-;
-
-// Rule ChoicePoint
-ruleChoicePoint returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='ChoicePoint'
- {
- newLeafNode(otherlv_0, grammarAccess.getChoicePointAccess().getChoicePointKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getChoicePointAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getChoicePointRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleTransition
-entryRuleTransition returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTransitionRule()); }
- iv_ruleTransition=ruleTransition
- { $current=$iv_ruleTransition.current; }
- EOF
-;
-
-// Rule Transition
-ruleTransition returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getTransitionAccess().getInitialTransitionParserRuleCall_0());
- }
- this_InitialTransition_0=ruleInitialTransition
- {
- $current = $this_InitialTransition_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getTransitionAccess().getNonInitialTransitionParserRuleCall_1());
- }
- this_NonInitialTransition_1=ruleNonInitialTransition
- {
- $current = $this_NonInitialTransition_1.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleNonInitialTransition
-entryRuleNonInitialTransition returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getNonInitialTransitionRule()); }
- iv_ruleNonInitialTransition=ruleNonInitialTransition
- { $current=$iv_ruleNonInitialTransition.current; }
- EOF
-;
-
-// Rule NonInitialTransition
-ruleNonInitialTransition returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getNonInitialTransitionAccess().getTriggeredTransitionParserRuleCall_0());
- }
- this_TriggeredTransition_0=ruleTriggeredTransition
- {
- $current = $this_TriggeredTransition_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getNonInitialTransitionAccess().getContinuationTransitionParserRuleCall_1());
- }
- this_ContinuationTransition_1=ruleContinuationTransition
- {
- $current = $this_ContinuationTransition_1.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getNonInitialTransitionAccess().getCPBranchTransitionParserRuleCall_2());
- }
- this_CPBranchTransition_2=ruleCPBranchTransition
- {
- $current = $this_CPBranchTransition_2.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleInitialTransition
-entryRuleInitialTransition returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getInitialTransitionRule()); }
- iv_ruleInitialTransition=ruleInitialTransition
- { $current=$iv_ruleInitialTransition.current; }
- EOF
-;
-
-// Rule InitialTransition
-ruleInitialTransition returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Transition'
- {
- newLeafNode(otherlv_0, grammarAccess.getInitialTransitionAccess().getTransitionKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getInitialTransitionAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getInitialTransitionRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)? otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getInitialTransitionAccess().getColonKeyword_2());
- }
- otherlv_3='initial'
- {
- newLeafNode(otherlv_3, grammarAccess.getInitialTransitionAccess().getInitialKeyword_3());
- }
- otherlv_4='->'
- {
- newLeafNode(otherlv_4, grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getInitialTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
- }
- lv_to_5_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getInitialTransitionRule());
- }
- set(
- $current,
- "to",
- lv_to_5_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_6='{'
- {
- newLeafNode(otherlv_6, grammarAccess.getInitialTransitionAccess().getLeftCurlyBracketKeyword_6());
- }
-( otherlv_7='action'
- {
- newLeafNode(otherlv_7, grammarAccess.getInitialTransitionAccess().getActionKeyword_7_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getInitialTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0());
- }
- lv_action_8_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getInitialTransitionRule());
- }
- set(
- $current,
- "action",
- lv_action_8_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_9='}'
- {
- newLeafNode(otherlv_9, grammarAccess.getInitialTransitionAccess().getRightCurlyBracketKeyword_8());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleContinuationTransition
-entryRuleContinuationTransition returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getContinuationTransitionRule()); }
- iv_ruleContinuationTransition=ruleContinuationTransition
- { $current=$iv_ruleContinuationTransition.current; }
- EOF
-;
-
-// Rule ContinuationTransition
-ruleContinuationTransition returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Transition'
- {
- newLeafNode(otherlv_0, grammarAccess.getContinuationTransitionAccess().getTransitionKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getContinuationTransitionAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getContinuationTransitionRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)? otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getContinuationTransitionAccess().getColonKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getContinuationTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0());
- }
- lv_from_3_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getContinuationTransitionRule());
- }
- set(
- $current,
- "from",
- lv_from_3_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_4='->'
- {
- newLeafNode(otherlv_4, grammarAccess.getContinuationTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getContinuationTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
- }
- lv_to_5_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getContinuationTransitionRule());
- }
- set(
- $current,
- "to",
- lv_to_5_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_6='{'
- {
- newLeafNode(otherlv_6, grammarAccess.getContinuationTransitionAccess().getLeftCurlyBracketKeyword_6());
- }
-( otherlv_7='action'
- {
- newLeafNode(otherlv_7, grammarAccess.getContinuationTransitionAccess().getActionKeyword_7_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getContinuationTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0());
- }
- lv_action_8_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getContinuationTransitionRule());
- }
- set(
- $current,
- "action",
- lv_action_8_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_9='}'
- {
- newLeafNode(otherlv_9, grammarAccess.getContinuationTransitionAccess().getRightCurlyBracketKeyword_8());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleTriggeredTransition
-entryRuleTriggeredTransition returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTriggeredTransitionRule()); }
- iv_ruleTriggeredTransition=ruleTriggeredTransition
- { $current=$iv_ruleTriggeredTransition.current; }
- EOF
-;
-
-// Rule TriggeredTransition
-ruleTriggeredTransition returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Transition'
- {
- newLeafNode(otherlv_0, grammarAccess.getTriggeredTransitionAccess().getTransitionKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getTriggeredTransitionAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getTriggeredTransitionRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)? otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getTriggeredTransitionAccess().getColonKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0());
- }
- lv_from_3_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
- }
- set(
- $current,
- "from",
- lv_from_3_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_4='->'
- {
- newLeafNode(otherlv_4, grammarAccess.getTriggeredTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
- }
- lv_to_5_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
- }
- set(
- $current,
- "to",
- lv_to_5_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_6='{'
- {
- newLeafNode(otherlv_6, grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_6());
- }
- otherlv_7='triggers'
- {
- newLeafNode(otherlv_7, grammarAccess.getTriggeredTransitionAccess().getTriggersKeyword_7());
- }
- otherlv_8='{'
- {
- newLeafNode(otherlv_8, grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_8());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_9_0());
- }
- lv_triggers_9_0=ruleTrigger {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
- }
- add(
- $current,
- "triggers",
- lv_triggers_9_0,
- "Trigger");
- afterParserOrEnumRuleCall();
- }
-
-)
-)( otherlv_10='or'
- {
- newLeafNode(otherlv_10, grammarAccess.getTriggeredTransitionAccess().getOrKeyword_10_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_10_1_0());
- }
- lv_triggers_11_0=ruleTrigger {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
- }
- add(
- $current,
- "triggers",
- lv_triggers_11_0,
- "Trigger");
- afterParserOrEnumRuleCall();
- }
-
-)
-))* otherlv_12='}'
- {
- newLeafNode(otherlv_12, grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_11());
- }
-( otherlv_13='action'
- {
- newLeafNode(otherlv_13, grammarAccess.getTriggeredTransitionAccess().getActionKeyword_12_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getActionDetailCodeParserRuleCall_12_1_0());
- }
- lv_action_14_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
- }
- set(
- $current,
- "action",
- lv_action_14_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_15='}'
- {
- newLeafNode(otherlv_15, grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_13());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleCPBranchTransition
-entryRuleCPBranchTransition returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getCPBranchTransitionRule()); }
- iv_ruleCPBranchTransition=ruleCPBranchTransition
- { $current=$iv_ruleCPBranchTransition.current; }
- EOF
-;
-
-// Rule CPBranchTransition
-ruleCPBranchTransition returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='Transition'
- {
- newLeafNode(otherlv_0, grammarAccess.getCPBranchTransitionAccess().getTransitionKeyword_0());
- }
-(
-(
- lv_name_1_0=RULE_ID
- {
- newLeafNode(lv_name_1_0, grammarAccess.getCPBranchTransitionAccess().getNameIDTerminalRuleCall_1_0());
- }
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getCPBranchTransitionRule());
- }
- setWithLastConsumed(
- $current,
- "name",
- lv_name_1_0,
- "ID");
- }
-
-)
-)? otherlv_2=':'
- {
- newLeafNode(otherlv_2, grammarAccess.getCPBranchTransitionAccess().getColonKeyword_2());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0());
- }
- lv_from_3_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
- }
- set(
- $current,
- "from",
- lv_from_3_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_4='->'
- {
- newLeafNode(otherlv_4, grammarAccess.getCPBranchTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
- }
- lv_to_5_0=ruleTransitionTerminal {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
- }
- set(
- $current,
- "to",
- lv_to_5_0,
- "TransitionTerminal");
- afterParserOrEnumRuleCall();
- }
-
-)
-) otherlv_6='{'
- {
- newLeafNode(otherlv_6, grammarAccess.getCPBranchTransitionAccess().getLeftCurlyBracketKeyword_6());
- }
- otherlv_7='cond'
- {
- newLeafNode(otherlv_7, grammarAccess.getCPBranchTransitionAccess().getCondKeyword_7());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getConditionDetailCodeParserRuleCall_8_0());
- }
- lv_condition_8_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
- }
- set(
- $current,
- "condition",
- lv_condition_8_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-)( otherlv_9='action'
- {
- newLeafNode(otherlv_9, grammarAccess.getCPBranchTransitionAccess().getActionKeyword_9_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getActionDetailCodeParserRuleCall_9_1_0());
- }
- lv_action_10_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
- }
- set(
- $current,
- "action",
- lv_action_10_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))? otherlv_11='}'
- {
- newLeafNode(otherlv_11, grammarAccess.getCPBranchTransitionAccess().getRightCurlyBracketKeyword_10());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleTransitionTerminal
-entryRuleTransitionTerminal returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTransitionTerminalRule()); }
- iv_ruleTransitionTerminal=ruleTransitionTerminal
- { $current=$iv_ruleTransitionTerminal.current; }
- EOF
-;
-
-// Rule TransitionTerminal
-ruleTransitionTerminal returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getTransitionTerminalAccess().getStateTerminalParserRuleCall_0());
- }
- this_StateTerminal_0=ruleStateTerminal
- {
- $current = $this_StateTerminal_0.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getTransitionTerminalAccess().getTrPointTerminalParserRuleCall_1());
- }
- this_TrPointTerminal_1=ruleTrPointTerminal
- {
- $current = $this_TrPointTerminal_1.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getTransitionTerminalAccess().getSubStateTrPointTerminalParserRuleCall_2());
- }
- this_SubStateTrPointTerminal_2=ruleSubStateTrPointTerminal
- {
- $current = $this_SubStateTrPointTerminal_2.current;
- afterParserOrEnumRuleCall();
- }
-
- |
- {
- newCompositeNode(grammarAccess.getTransitionTerminalAccess().getChoicepointTerminalParserRuleCall_3());
- }
- this_ChoicepointTerminal_3=ruleChoicepointTerminal
- {
- $current = $this_ChoicepointTerminal_3.current;
- afterParserOrEnumRuleCall();
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleStateTerminal
-entryRuleStateTerminal returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getStateTerminalRule()); }
- iv_ruleStateTerminal=ruleStateTerminal
- { $current=$iv_ruleStateTerminal.current; }
- EOF
-;
-
-// Rule StateTerminal
-ruleStateTerminal returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getStateTerminalRule());
- }
- }
- otherlv_0=RULE_ID
- {
- newLeafNode(otherlv_0, grammarAccess.getStateTerminalAccess().getStateBaseStateCrossReference_0());
- }
-
-)
-)
-;
-
-
-
-
-
-// Entry rule entryRuleTrPointTerminal
-entryRuleTrPointTerminal returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTrPointTerminalRule()); }
- iv_ruleTrPointTerminal=ruleTrPointTerminal
- { $current=$iv_ruleTrPointTerminal.current; }
- EOF
-;
-
-// Rule TrPointTerminal
-ruleTrPointTerminal returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='my'
- {
- newLeafNode(otherlv_0, grammarAccess.getTrPointTerminalAccess().getMyKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getTrPointTerminalRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getTrPointTerminalAccess().getTrPointTrPointCrossReference_1_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleSubStateTrPointTerminal
-entryRuleSubStateTrPointTerminal returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getSubStateTrPointTerminalRule()); }
- iv_ruleSubStateTrPointTerminal=ruleSubStateTrPointTerminal
- { $current=$iv_ruleSubStateTrPointTerminal.current; }
- EOF
-;
-
-// Rule SubStateTrPointTerminal
-ruleSubStateTrPointTerminal returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSubStateTrPointTerminalRule());
- }
- }
- otherlv_0=RULE_ID
- {
- newLeafNode(otherlv_0, grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointCrossReference_0_0());
- }
-
-)
-) otherlv_1='of'
- {
- newLeafNode(otherlv_1, grammarAccess.getSubStateTrPointTerminalAccess().getOfKeyword_1());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getSubStateTrPointTerminalRule());
- }
- }
- otherlv_2=RULE_ID
- {
- newLeafNode(otherlv_2, grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateCrossReference_2_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleChoicepointTerminal
-entryRuleChoicepointTerminal returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getChoicepointTerminalRule()); }
- iv_ruleChoicepointTerminal=ruleChoicepointTerminal
- { $current=$iv_ruleChoicepointTerminal.current; }
- EOF
-;
-
-// Rule ChoicepointTerminal
-ruleChoicepointTerminal returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='cp'
- {
- newLeafNode(otherlv_0, grammarAccess.getChoicepointTerminalAccess().getCpKeyword_0());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getChoicepointTerminalRule());
- }
- }
- otherlv_1=RULE_ID
- {
- newLeafNode(otherlv_1, grammarAccess.getChoicepointTerminalAccess().getCpChoicePointCrossReference_1_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleTrigger
-entryRuleTrigger returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getTriggerRule()); }
- iv_ruleTrigger=ruleTrigger
- { $current=$iv_ruleTrigger.current; }
- EOF
-;
-
-// Rule Trigger
-ruleTrigger returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='<'
- {
- newLeafNode(otherlv_0, grammarAccess.getTriggerAccess().getLessThanSignKeyword_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_1_0());
- }
- lv_msgFromIfPairs_1_0=ruleMessageFromIf {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggerRule());
- }
- add(
- $current,
- "msgFromIfPairs",
- lv_msgFromIfPairs_1_0,
- "MessageFromIf");
- afterParserOrEnumRuleCall();
- }
-
-)
-)( otherlv_2='|'
- {
- newLeafNode(otherlv_2, grammarAccess.getTriggerAccess().getVerticalLineKeyword_2_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0());
- }
- lv_msgFromIfPairs_3_0=ruleMessageFromIf {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggerRule());
- }
- add(
- $current,
- "msgFromIfPairs",
- lv_msgFromIfPairs_3_0,
- "MessageFromIf");
- afterParserOrEnumRuleCall();
- }
-
-)
-))*(
-(
- {
- newCompositeNode(grammarAccess.getTriggerAccess().getGuardGuardParserRuleCall_3_0());
- }
- lv_guard_4_0=ruleGuard {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getTriggerRule());
- }
- set(
- $current,
- "guard",
- lv_guard_4_0,
- "Guard");
- afterParserOrEnumRuleCall();
- }
-
-)
-)? otherlv_5='>'
- {
- newLeafNode(otherlv_5, grammarAccess.getTriggerAccess().getGreaterThanSignKeyword_4());
- }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleMessageFromIf
-entryRuleMessageFromIf returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getMessageFromIfRule()); }
- iv_ruleMessageFromIf=ruleMessageFromIf
- { $current=$iv_ruleMessageFromIf.current; }
- EOF
-;
-
-// Rule MessageFromIf
-ruleMessageFromIf returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-((
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getMessageFromIfRule());
- }
- }
- otherlv_0=RULE_ID
- {
- newLeafNode(otherlv_0, grammarAccess.getMessageFromIfAccess().getMessageMessageCrossReference_0_0());
- }
-
-)
-) otherlv_1=':'
- {
- newLeafNode(otherlv_1, grammarAccess.getMessageFromIfAccess().getColonKeyword_1());
- }
-(
-(
- {
- if ($current==null) {
- $current = createModelElement(grammarAccess.getMessageFromIfRule());
- }
- }
- otherlv_2=RULE_ID
- {
- newLeafNode(otherlv_2, grammarAccess.getMessageFromIfAccess().getFromInterfaceItemCrossReference_2_0());
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleGuard
-entryRuleGuard returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getGuardRule()); }
- iv_ruleGuard=ruleGuard
- { $current=$iv_ruleGuard.current; }
- EOF
-;
-
-// Rule Guard
-ruleGuard returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='guard'
- {
- newLeafNode(otherlv_0, grammarAccess.getGuardAccess().getGuardKeyword_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getGuardAccess().getGuardDetailCodeParserRuleCall_1_0());
- }
- lv_guard_1_0=ruleDetailCode {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getGuardRule());
- }
- set(
- $current,
- "guard",
- lv_guard_1_0,
- "DetailCode");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleImport
-entryRuleImport returns [EObject current=null]
- :
- { newCompositeNode(grammarAccess.getImportRule()); }
- iv_ruleImport=ruleImport
- { $current=$iv_ruleImport.current; }
- EOF
-;
-
-// Rule Import
-ruleImport returns [EObject current=null]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-( otherlv_0='import'
- {
- newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0());
- }
-(
-(
- {
- newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0());
- }
- lv_importedNamespace_1_0=ruleImportedFQN {
- if ($current==null) {
- $current = createModelElementForParent(grammarAccess.getImportRule());
- }
- set(
- $current,
- "importedNamespace",
- lv_importedNamespace_1_0,
- "ImportedFQN");
- afterParserOrEnumRuleCall();
- }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleImportedFQN
-entryRuleImportedFQN returns [String current=null]
- :
- { newCompositeNode(grammarAccess.getImportedFQNRule()); }
- iv_ruleImportedFQN=ruleImportedFQN
- { $current=$iv_ruleImportedFQN.current.getText(); }
- EOF
-;
-
-// Rule ImportedFQN
-ruleImportedFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
- @init { enterRule();
- }
- @after { leaveRule(); }:
-(
- {
- newCompositeNode(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
- }
- this_FQN_0=ruleFQN {
- $current.merge(this_FQN_0);
- }
-
- {
- afterParserOrEnumRuleCall();
- }
-(
- kw='.'
- {
- $current.merge(kw);
- newLeafNode(kw, grammarAccess.getImportedFQNAccess().getFullStopKeyword_1_0());
- }
-
- kw='*'
- {
- $current.merge(kw);
- newLeafNode(kw, grammarAccess.getImportedFQNAccess().getAsteriskKeyword_1_1());
- }
-)?)
- ;
-
-
-
-
-
-// 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());
- }
-)*)
- ;
-
-
-
-
-
-// Rule PrimitiveType
-rulePrimitiveType returns [Enumerator current=null]
- @init { enterRule(); }
- @after { leaveRule(); }:
-(( enumLiteral_0='void'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_0, grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0());
- }
-)
- |( enumLiteral_1='int8'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_1, grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1());
- }
-)
- |( enumLiteral_2='int16'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_2, grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2());
- }
-)
- |( enumLiteral_3='int32'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_3, grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3());
- }
-)
- |( enumLiteral_4='uint8'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_4, grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4());
- }
-)
- |( enumLiteral_5='uint16'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_5, grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5());
- }
-)
- |( enumLiteral_6='uint32'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_6, grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6());
- }
-)
- |( enumLiteral_7='float32'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_7, grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7());
- }
-)
- |( enumLiteral_8='float64'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_8, grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8());
- }
-)
- |( enumLiteral_9='boolean'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_9, grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9());
- }
-)
- |( enumLiteral_10='string'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_10, grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10());
- }
-)
- |( enumLiteral_11='char'
- {
- $current = grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
- newLeafNode(enumLiteral_11, grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11());
- }
-));
-
-
-
-RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
-
-RULE_INT : ('0'..'9')+;
-
-RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
-
-RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
-
-RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
-
-RULE_WS : (' '|'\t'|'\r'|'\n')+;
-
-RULE_ANY_OTHER : .;
-
-
+/*
+* generated by Xtext
+*/
+grammar InternalRoom;
+
+options {
+ superClass=AbstractInternalAntlrParser;
+
+}
+
+@lexer::header {
+package org.eclipse.etrice.core.parser.antlr.internal;
+
+// Hack: Use our own Lexer superclass by means of import.
+// Currently there is no other way to specify the superclass for the lexer.
+import org.eclipse.xtext.parser.antlr.Lexer;
+}
+
+@parser::header {
+package org.eclipse.etrice.core.parser.antlr.internal;
+
+import org.eclipse.xtext.*;
+import org.eclipse.xtext.parser.*;
+import org.eclipse.xtext.parser.impl.*;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.common.util.Enumerator;
+import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
+import org.eclipse.xtext.parser.antlr.XtextTokenStream;
+import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
+import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
+import org.eclipse.etrice.core.services.RoomGrammarAccess;
+
+}
+
+@parser::members {
+
+ private RoomGrammarAccess grammarAccess;
+
+ public InternalRoomParser(TokenStream input, RoomGrammarAccess grammarAccess) {
+ this(input);
+ this.grammarAccess = grammarAccess;
+ registerRules(grammarAccess.getGrammar());
+ }
+
+ @Override
+ protected String getFirstRuleName() {
+ return "RoomModel";
+ }
+
+ @Override
+ protected RoomGrammarAccess getGrammarAccess() {
+ return grammarAccess;
+ }
+}
+
+@rulecatch {
+ catch (RecognitionException re) {
+ recover(input,re);
+ appendSkippedTokens();
+ }
+}
+
+
+
+
+// Entry rule entryRuleRoomModel
+entryRuleRoomModel returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getRoomModelRule()); }
+ iv_ruleRoomModel=ruleRoomModel
+ { $current=$iv_ruleRoomModel.current; }
+ EOF
+;
+
+// Rule RoomModel
+ruleRoomModel returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='RoomModel'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getRoomModelAccess().getRoomModelKeyword_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getNameFQNParserRuleCall_1_0());
+ }
+ lv_name_1_0=ruleFQN {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ set(
+ $current,
+ "name",
+ lv_name_1_0,
+ "FQN");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getRoomModelAccess().getLeftCurlyBracketKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getImportsImportParserRuleCall_3_0());
+ }
+ lv_imports_3_0=ruleImport {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ add(
+ $current,
+ "imports",
+ lv_imports_3_0,
+ "Import");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*((
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getDataClassesDataClassParserRuleCall_4_0_0());
+ }
+ lv_dataClasses_4_0=ruleDataClass {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ add(
+ $current,
+ "dataClasses",
+ lv_dataClasses_4_0,
+ "DataClass");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getProtocolClassesProtocolClassParserRuleCall_4_1_0());
+ }
+ lv_protocolClasses_5_0=ruleProtocolClass {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ add(
+ $current,
+ "protocolClasses",
+ lv_protocolClasses_5_0,
+ "ProtocolClass");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getActorClassesActorClassParserRuleCall_4_2_0());
+ }
+ lv_actorClasses_6_0=ruleActorClass {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ add(
+ $current,
+ "actorClasses",
+ lv_actorClasses_6_0,
+ "ActorClass");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getSubSystemClassesSubSystemClassParserRuleCall_4_3_0());
+ }
+ lv_subSystemClasses_7_0=ruleSubSystemClass {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ add(
+ $current,
+ "subSystemClasses",
+ lv_subSystemClasses_7_0,
+ "SubSystemClass");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getRoomModelAccess().getSystemsLogicalSystemParserRuleCall_4_4_0());
+ }
+ lv_systems_8_0=ruleLogicalSystem {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRoomModelRule());
+ }
+ add(
+ $current,
+ "systems",
+ lv_systems_8_0,
+ "LogicalSystem");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))+ otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getRoomModelAccess().getRightCurlyBracketKeyword_5());
+ }
+)
+;
+
+
+
+
+
+
+
+// Entry rule entryRuleStructureClass
+entryRuleStructureClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getStructureClassRule()); }
+ iv_ruleStructureClass=ruleStructureClass
+ { $current=$iv_ruleStructureClass.current; }
+ EOF
+;
+
+// Rule StructureClass
+ruleStructureClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getStructureClassAccess().getActorContainerClassParserRuleCall_0());
+ }
+ this_ActorContainerClass_0=ruleActorContainerClass
+ {
+ $current = $this_ActorContainerClass_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getStructureClassAccess().getLogicalSystemParserRuleCall_1());
+ }
+ this_LogicalSystem_1=ruleLogicalSystem
+ {
+ $current = $this_LogicalSystem_1.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleActorContainerClass
+entryRuleActorContainerClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getActorContainerClassRule()); }
+ iv_ruleActorContainerClass=ruleActorContainerClass
+ { $current=$iv_ruleActorContainerClass.current; }
+ EOF
+;
+
+// Rule ActorContainerClass
+ruleActorContainerClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getActorContainerClassAccess().getActorClassParserRuleCall_0());
+ }
+ this_ActorClass_0=ruleActorClass
+ {
+ $current = $this_ActorClass_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getActorContainerClassAccess().getSubSystemClassParserRuleCall_1());
+ }
+ this_SubSystemClass_1=ruleSubSystemClass
+ {
+ $current = $this_SubSystemClass_1.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleTypedID
+entryRuleTypedID returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTypedIDRule()); }
+ iv_ruleTypedID=ruleTypedID
+ { $current=$iv_ruleTypedID.current; }
+ EOF
+;
+
+// Rule TypedID
+ruleTypedID returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ lv_name_0_0=RULE_ID
+ {
+ newLeafNode(lv_name_0_0, grammarAccess.getTypedIDAccess().getNameIDTerminalRuleCall_0_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getTypedIDRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_0_0,
+ "ID");
+ }
+
+)
+) otherlv_1=':'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getTypedIDAccess().getColonKeyword_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTypedIDAccess().getTypeTypeParserRuleCall_2_0());
+ }
+ lv_type_2_0=ruleType {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTypedIDRule());
+ }
+ set(
+ $current,
+ "type",
+ lv_type_2_0,
+ "Type");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleFreeTypedID
+entryRuleFreeTypedID returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getFreeTypedIDRule()); }
+ iv_ruleFreeTypedID=ruleFreeTypedID
+ { $current=$iv_ruleFreeTypedID.current; }
+ EOF
+;
+
+// Rule FreeTypedID
+ruleFreeTypedID returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ lv_name_0_0=RULE_ID
+ {
+ newLeafNode(lv_name_0_0, grammarAccess.getFreeTypedIDAccess().getNameIDTerminalRuleCall_0_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getFreeTypedIDRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_0_0,
+ "ID");
+ }
+
+)
+) otherlv_1=':'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getFreeTypedIDAccess().getColonKeyword_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getFreeTypedIDAccess().getTypeFreeTypeParserRuleCall_2_0());
+ }
+ lv_type_2_0=ruleFreeType {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getFreeTypedIDRule());
+ }
+ set(
+ $current,
+ "type",
+ lv_type_2_0,
+ "FreeType");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleType
+entryRuleType returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTypeRule()); }
+ iv_ruleType=ruleType
+ { $current=$iv_ruleType.current; }
+ EOF
+;
+
+// Rule Type
+ruleType returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ {
+ newCompositeNode(grammarAccess.getTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0());
+ }
+ lv_prim_0_0=rulePrimitiveType {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTypeRule());
+ }
+ set(
+ $current,
+ "prim",
+ lv_prim_0_0,
+ "PrimitiveType");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getTypeRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getTypeAccess().getTypeDataClassCrossReference_1_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleFreeType
+entryRuleFreeType returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getFreeTypeRule()); }
+ iv_ruleFreeType=ruleFreeType
+ { $current=$iv_ruleFreeType.current; }
+ EOF
+;
+
+// Rule FreeType
+ruleFreeType returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ {
+ newCompositeNode(grammarAccess.getFreeTypeAccess().getPrimPrimitiveTypeEnumRuleCall_0_0());
+ }
+ lv_prim_0_0=rulePrimitiveType {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getFreeTypeRule());
+ }
+ set(
+ $current,
+ "prim",
+ lv_prim_0_0,
+ "PrimitiveType");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ lv_type_1_0=RULE_ID
+ {
+ newLeafNode(lv_type_1_0, grammarAccess.getFreeTypeAccess().getTypeIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getFreeTypeRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "type",
+ lv_type_1_0,
+ "ID");
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleDataClass
+entryRuleDataClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getDataClassRule()); }
+ iv_ruleDataClass=ruleDataClass
+ { $current=$iv_ruleDataClass.current; }
+ EOF
+;
+
+// Rule DataClass
+ruleDataClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='DataClass'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getDataClassAccess().getDataClassKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getDataClassAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDataClassRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)( otherlv_2='extends'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getDataClassAccess().getExtendsKeyword_2_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDataClassRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getDataClassAccess().getBaseDataClassCrossReference_2_1_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_4='{'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getDataClassAccess().getLeftCurlyBracketKeyword_3());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getDataClassAccess().getImportsImportParserRuleCall_4_0());
+ }
+ lv_imports_5_0=ruleImport {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getDataClassRule());
+ }
+ add(
+ $current,
+ "imports",
+ lv_imports_5_0,
+ "Import");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getDataClassAccess().getAttributesAttributeParserRuleCall_5_0());
+ }
+ lv_attributes_6_0=ruleAttribute {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getDataClassRule());
+ }
+ add(
+ $current,
+ "attributes",
+ lv_attributes_6_0,
+ "Attribute");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)+(
+(
+ {
+ newCompositeNode(grammarAccess.getDataClassAccess().getOperationsOperationParserRuleCall_6_0());
+ }
+ lv_operations_7_0=ruleOperation {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getDataClassRule());
+ }
+ add(
+ $current,
+ "operations",
+ lv_operations_7_0,
+ "Operation");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_8='}'
+ {
+ newLeafNode(otherlv_8, grammarAccess.getDataClassAccess().getRightCurlyBracketKeyword_7());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleAttribute
+entryRuleAttribute returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getAttributeRule()); }
+ iv_ruleAttribute=ruleAttribute
+ { $current=$iv_ruleAttribute.current; }
+ EOF
+;
+
+// Rule Attribute
+ruleAttribute returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Attribute'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getAttributeAccess().getAttributeKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getAttributeAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getAttributeRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)( otherlv_2='['
+ {
+ newLeafNode(otherlv_2, grammarAccess.getAttributeAccess().getLeftSquareBracketKeyword_2_0());
+ }
+(
+(
+ lv_size_3_0=RULE_INT
+ {
+ newLeafNode(lv_size_3_0, grammarAccess.getAttributeAccess().getSizeINTTerminalRuleCall_2_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getAttributeRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "size",
+ lv_size_3_0,
+ "INT");
+ }
+
+)
+) otherlv_4=']'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getAttributeAccess().getRightSquareBracketKeyword_2_2());
+ }
+)? otherlv_5=':'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getAttributeAccess().getColonKeyword_3());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getAttributeAccess().getTypeTypeParserRuleCall_4_0());
+ }
+ lv_type_6_0=ruleType {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getAttributeRule());
+ }
+ set(
+ $current,
+ "type",
+ lv_type_6_0,
+ "Type");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleOperation
+entryRuleOperation returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getOperationRule()); }
+ iv_ruleOperation=ruleOperation
+ { $current=$iv_ruleOperation.current; }
+ EOF
+;
+
+// Rule Operation
+ruleOperation returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Operation'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getOperationAccess().getOperationKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getOperationAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getOperationRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2='('
+ {
+ newLeafNode(otherlv_2, grammarAccess.getOperationAccess().getLeftParenthesisKeyword_2());
+ }
+((
+(
+ {
+ newCompositeNode(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_0_0());
+ }
+ lv_arguments_3_0=ruleFreeTypedID {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getOperationRule());
+ }
+ add(
+ $current,
+ "arguments",
+ lv_arguments_3_0,
+ "FreeTypedID");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)( otherlv_4=','
+ {
+ newLeafNode(otherlv_4, grammarAccess.getOperationAccess().getCommaKeyword_3_1_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getOperationAccess().getArgumentsFreeTypedIDParserRuleCall_3_1_1_0());
+ }
+ lv_arguments_5_0=ruleFreeTypedID {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getOperationRule());
+ }
+ add(
+ $current,
+ "arguments",
+ lv_arguments_5_0,
+ "FreeTypedID");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))*)? otherlv_6=')'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getOperationAccess().getRightParenthesisKeyword_4());
+ }
+( otherlv_7=':'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getOperationAccess().getColonKeyword_5_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getOperationAccess().getReturntypeFreeTypeParserRuleCall_5_1_0());
+ }
+ lv_returntype_8_0=ruleFreeType {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getOperationRule());
+ }
+ set(
+ $current,
+ "returntype",
+ lv_returntype_8_0,
+ "FreeType");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?(
+(
+ {
+ newCompositeNode(grammarAccess.getOperationAccess().getDetailCodeDetailCodeParserRuleCall_6_0());
+ }
+ lv_detailCode_9_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getOperationRule());
+ }
+ set(
+ $current,
+ "detailCode",
+ lv_detailCode_9_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleProtocolClass
+entryRuleProtocolClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getProtocolClassRule()); }
+ iv_ruleProtocolClass=ruleProtocolClass
+ { $current=$iv_ruleProtocolClass.current; }
+ EOF
+;
+
+// Rule ProtocolClass
+ruleProtocolClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='ProtocolClass'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getProtocolClassAccess().getProtocolClassKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getProtocolClassAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getProtocolClassRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)( otherlv_2='extends'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getProtocolClassAccess().getExtendsKeyword_2_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getProtocolClassRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getBaseProtocolClassCrossReference_2_1_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_4='{'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_3());
+ }
+( otherlv_5='usercode1'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getProtocolClassAccess().getUsercode1Keyword_4_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getUserCode1DetailCodeParserRuleCall_4_1_0());
+ }
+ lv_userCode1_6_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ set(
+ $current,
+ "userCode1",
+ lv_userCode1_6_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_7='usercode2'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getProtocolClassAccess().getUsercode2Keyword_5_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getUserCode2DetailCodeParserRuleCall_5_1_0());
+ }
+ lv_userCode2_8_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ set(
+ $current,
+ "userCode2",
+ lv_userCode2_8_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_9='incoming'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getProtocolClassAccess().getIncomingKeyword_6());
+ }
+ otherlv_10='{'
+ {
+ newLeafNode(otherlv_10, grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_7());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getIncomingMessagesMessageParserRuleCall_8_0());
+ }
+ lv_incomingMessages_11_0=ruleMessage {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ add(
+ $current,
+ "incomingMessages",
+ lv_incomingMessages_11_0,
+ "Message");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_12='}'
+ {
+ newLeafNode(otherlv_12, grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_9());
+ }
+ otherlv_13='outgoing'
+ {
+ newLeafNode(otherlv_13, grammarAccess.getProtocolClassAccess().getOutgoingKeyword_10());
+ }
+ otherlv_14='{'
+ {
+ newLeafNode(otherlv_14, grammarAccess.getProtocolClassAccess().getLeftCurlyBracketKeyword_11());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getOutgoingMessagesMessageParserRuleCall_12_0());
+ }
+ lv_outgoingMessages_15_0=ruleMessage {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ add(
+ $current,
+ "outgoingMessages",
+ lv_outgoingMessages_15_0,
+ "Message");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_16='}'
+ {
+ newLeafNode(otherlv_16, grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_13());
+ }
+( otherlv_17='regular'
+ {
+ newLeafNode(otherlv_17, grammarAccess.getProtocolClassAccess().getRegularKeyword_14_0());
+ }
+ otherlv_18='PortClass'
+ {
+ newLeafNode(otherlv_18, grammarAccess.getProtocolClassAccess().getPortClassKeyword_14_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getRegularPortClassParserRuleCall_14_2_0());
+ }
+ lv_regular_19_0=rulePortClass {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ set(
+ $current,
+ "regular",
+ lv_regular_19_0,
+ "PortClass");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_20='conjugate'
+ {
+ newLeafNode(otherlv_20, grammarAccess.getProtocolClassAccess().getConjugateKeyword_15_0());
+ }
+ otherlv_21='PortClass'
+ {
+ newLeafNode(otherlv_21, grammarAccess.getProtocolClassAccess().getPortClassKeyword_15_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getConjugatePortClassParserRuleCall_15_2_0());
+ }
+ lv_conjugate_22_0=rulePortClass {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ set(
+ $current,
+ "conjugate",
+ lv_conjugate_22_0,
+ "PortClass");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolClassAccess().getSemanticsProtocolSemanticsParserRuleCall_16_0());
+ }
+ lv_semantics_23_0=ruleProtocolSemantics {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolClassRule());
+ }
+ set(
+ $current,
+ "semantics",
+ lv_semantics_23_0,
+ "ProtocolSemantics");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)? otherlv_24='}'
+ {
+ newLeafNode(otherlv_24, grammarAccess.getProtocolClassAccess().getRightCurlyBracketKeyword_17());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleMessage
+entryRuleMessage returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getMessageRule()); }
+ iv_ruleMessage=ruleMessage
+ { $current=$iv_ruleMessage.current; }
+ EOF
+;
+
+// Rule Message
+ruleMessage returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Message'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getMessageAccess().getMessageKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getMessageAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getMessageRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2='('
+ {
+ newLeafNode(otherlv_2, grammarAccess.getMessageAccess().getLeftParenthesisKeyword_2());
+ }
+((
+(
+ {
+ newCompositeNode(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_0_0());
+ }
+ lv_arguments_3_0=ruleTypedID {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getMessageRule());
+ }
+ add(
+ $current,
+ "arguments",
+ lv_arguments_3_0,
+ "TypedID");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)( otherlv_4=','
+ {
+ newLeafNode(otherlv_4, grammarAccess.getMessageAccess().getCommaKeyword_3_1_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getMessageAccess().getArgumentsTypedIDParserRuleCall_3_1_1_0());
+ }
+ lv_arguments_5_0=ruleTypedID {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getMessageRule());
+ }
+ add(
+ $current,
+ "arguments",
+ lv_arguments_5_0,
+ "TypedID");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))*)? otherlv_6=')'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getMessageAccess().getRightParenthesisKeyword_4());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRulePortClass
+entryRulePortClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getPortClassRule()); }
+ iv_rulePortClass=rulePortClass
+ { $current=$iv_rulePortClass.current; }
+ EOF
+;
+
+// Rule PortClass
+rulePortClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='{'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getPortClassAccess().getLeftCurlyBracketKeyword_0());
+ }
+( otherlv_1='usercode'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getPortClassAccess().getUsercodeKeyword_1_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getPortClassAccess().getUserCodeDetailCodeParserRuleCall_1_1_0());
+ }
+ lv_userCode_2_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getPortClassRule());
+ }
+ set(
+ $current,
+ "userCode",
+ lv_userCode_2_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?((
+(
+ {
+ newCompositeNode(grammarAccess.getPortClassAccess().getAttributesAttributeParserRuleCall_2_0_0());
+ }
+ lv_attributes_3_0=ruleAttribute {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getPortClassRule());
+ }
+ add(
+ $current,
+ "attributes",
+ lv_attributes_3_0,
+ "Attribute");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getPortClassAccess().getOperationsOperationParserRuleCall_2_1_0());
+ }
+ lv_operations_4_0=ruleOperation {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getPortClassRule());
+ }
+ add(
+ $current,
+ "operations",
+ lv_operations_4_0,
+ "Operation");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getPortClassAccess().getMsgHandlersMessageHandlerParserRuleCall_2_2_0());
+ }
+ lv_msgHandlers_5_0=ruleMessageHandler {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getPortClassRule());
+ }
+ add(
+ $current,
+ "msgHandlers",
+ lv_msgHandlers_5_0,
+ "MessageHandler");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))+ otherlv_6='}'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getPortClassAccess().getRightCurlyBracketKeyword_3());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleMessageHandler
+entryRuleMessageHandler returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getMessageHandlerRule()); }
+ iv_ruleMessageHandler=ruleMessageHandler
+ { $current=$iv_ruleMessageHandler.current; }
+ EOF
+;
+
+// Rule MessageHandler
+ruleMessageHandler returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='handle'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getMessageHandlerAccess().getHandleKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getMessageHandlerRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getMessageHandlerAccess().getMsgMessageCrossReference_1_0());
+ }
+
+)
+)(
+(
+ {
+ newCompositeNode(grammarAccess.getMessageHandlerAccess().getDetailCodeDetailCodeParserRuleCall_2_0());
+ }
+ lv_detailCode_2_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getMessageHandlerRule());
+ }
+ set(
+ $current,
+ "detailCode",
+ lv_detailCode_2_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleProtocolSemantics
+entryRuleProtocolSemantics returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getProtocolSemanticsRule()); }
+ iv_ruleProtocolSemantics=ruleProtocolSemantics
+ { $current=$iv_ruleProtocolSemantics.current; }
+ EOF
+;
+
+// Rule ProtocolSemantics
+ruleProtocolSemantics returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='semantics'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getProtocolSemanticsAccess().getSemanticsKeyword_0());
+ }
+ otherlv_1='{'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getProtocolSemanticsAccess().getLeftCurlyBracketKeyword_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getProtocolSemanticsAccess().getRulesSemanticsRuleParserRuleCall_2_0());
+ }
+ lv_rules_2_0=ruleSemanticsRule {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getProtocolSemanticsRule());
+ }
+ add(
+ $current,
+ "rules",
+ lv_rules_2_0,
+ "SemanticsRule");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)+ otherlv_3='}'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getProtocolSemanticsAccess().getRightCurlyBracketKeyword_3());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleSemanticsRule
+entryRuleSemanticsRule returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSemanticsRuleRule()); }
+ iv_ruleSemanticsRule=ruleSemanticsRule
+ { $current=$iv_ruleSemanticsRule.current; }
+ EOF
+;
+
+// Rule SemanticsRule
+ruleSemanticsRule returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getSemanticsRuleAccess().getSemanticsInRuleParserRuleCall_0());
+ }
+ this_SemanticsInRule_0=ruleSemanticsInRule
+ {
+ $current = $this_SemanticsInRule_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getSemanticsRuleAccess().getSemanticsOutRuleParserRuleCall_1());
+ }
+ this_SemanticsOutRule_1=ruleSemanticsOutRule
+ {
+ $current = $this_SemanticsOutRule_1.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleSemanticsInRule
+entryRuleSemanticsInRule returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSemanticsInRuleRule()); }
+ iv_ruleSemanticsInRule=ruleSemanticsInRule
+ { $current=$iv_ruleSemanticsInRule.current; }
+ EOF
+;
+
+// Rule SemanticsInRule
+ruleSemanticsInRule returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='in'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSemanticsInRuleAccess().getInKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSemanticsInRuleRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getSemanticsInRuleAccess().getMsgMessageCrossReference_1_0());
+ }
+
+)
+) otherlv_2='->'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSemanticsInRuleAccess().getHyphenMinusGreaterThanSignKeyword_2());
+ }
+ otherlv_3='{'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getSemanticsInRuleAccess().getLeftCurlyBracketKeyword_3());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getSemanticsInRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0());
+ }
+ lv_followUps_4_0=ruleSemanticsRule {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSemanticsInRuleRule());
+ }
+ add(
+ $current,
+ "followUps",
+ lv_followUps_4_0,
+ "SemanticsRule");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_5='}'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getSemanticsInRuleAccess().getRightCurlyBracketKeyword_5());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleSemanticsOutRule
+entryRuleSemanticsOutRule returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSemanticsOutRuleRule()); }
+ iv_ruleSemanticsOutRule=ruleSemanticsOutRule
+ { $current=$iv_ruleSemanticsOutRule.current; }
+ EOF
+;
+
+// Rule SemanticsOutRule
+ruleSemanticsOutRule returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='out'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSemanticsOutRuleAccess().getOutKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSemanticsOutRuleRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getSemanticsOutRuleAccess().getMsgMessageCrossReference_1_0());
+ }
+
+)
+) otherlv_2='->'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSemanticsOutRuleAccess().getHyphenMinusGreaterThanSignKeyword_2());
+ }
+ otherlv_3='{'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getSemanticsOutRuleAccess().getLeftCurlyBracketKeyword_3());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getSemanticsOutRuleAccess().getFollowUpsSemanticsRuleParserRuleCall_4_0());
+ }
+ lv_followUps_4_0=ruleSemanticsRule {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSemanticsOutRuleRule());
+ }
+ add(
+ $current,
+ "followUps",
+ lv_followUps_4_0,
+ "SemanticsRule");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_5='}'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getSemanticsOutRuleAccess().getRightCurlyBracketKeyword_5());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleActorClass
+entryRuleActorClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getActorClassRule()); }
+ iv_ruleActorClass=ruleActorClass
+ { $current=$iv_ruleActorClass.current; }
+ EOF
+;
+
+// Rule ActorClass
+ruleActorClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ lv_abstract_0_0= 'abstract'
+ {
+ newLeafNode(lv_abstract_0_0, grammarAccess.getActorClassAccess().getAbstractAbstractKeyword_0_0());
+ }
+
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorClassRule());
+ }
+ setWithLastConsumed($current, "abstract", true, "abstract");
+ }
+
+)
+)? otherlv_1='ActorClass'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getActorClassAccess().getActorClassKeyword_1());
+ }
+(
+(
+ lv_name_2_0=RULE_ID
+ {
+ newLeafNode(lv_name_2_0, grammarAccess.getActorClassAccess().getNameIDTerminalRuleCall_2_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorClassRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_2_0,
+ "ID");
+ }
+
+)
+)( otherlv_3='extends'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getActorClassAccess().getExtendsKeyword_3_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorClassRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getBaseActorClassCrossReference_3_1_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_5='{'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_4());
+ }
+( otherlv_6='Interface'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getActorClassAccess().getInterfaceKeyword_5_0());
+ }
+ otherlv_7='{'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_5_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getIfPortsPortParserRuleCall_5_2_0());
+ }
+ lv_ifPorts_8_0=rulePort {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "ifPorts",
+ lv_ifPorts_8_0,
+ "Port");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getIfSPPsSPPRefParserRuleCall_5_3_0());
+ }
+ lv_ifSPPs_9_0=ruleSPPRef {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "ifSPPs",
+ lv_ifSPPs_9_0,
+ "SPPRef");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_10='}'
+ {
+ newLeafNode(otherlv_10, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_5_4());
+ }
+)?( otherlv_11='Structure'
+ {
+ newLeafNode(otherlv_11, grammarAccess.getActorClassAccess().getStructureKeyword_6_0());
+ }
+ otherlv_12='{'
+ {
+ newLeafNode(otherlv_12, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_6_1());
+ }
+( otherlv_13='usercode1'
+ {
+ newLeafNode(otherlv_13, grammarAccess.getActorClassAccess().getUsercode1Keyword_6_2_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getUserCode1DetailCodeParserRuleCall_6_2_1_0());
+ }
+ lv_userCode1_14_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ set(
+ $current,
+ "userCode1",
+ lv_userCode1_14_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_15='usercode2'
+ {
+ newLeafNode(otherlv_15, grammarAccess.getActorClassAccess().getUsercode2Keyword_6_3_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getUserCode2DetailCodeParserRuleCall_6_3_1_0());
+ }
+ lv_userCode2_16_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ set(
+ $current,
+ "userCode2",
+ lv_userCode2_16_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?((
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getIntPortsPortParserRuleCall_6_4_0_0());
+ }
+ lv_intPorts_17_0=rulePort {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "intPorts",
+ lv_intPorts_17_0,
+ "Port");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getExtPortsExternalPortParserRuleCall_6_4_1_0());
+ }
+ lv_extPorts_18_0=ruleExternalPort {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "extPorts",
+ lv_extPorts_18_0,
+ "ExternalPort");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getServiceImplementationsServiceImplementationParserRuleCall_6_5_0());
+ }
+ lv_serviceImplementations_19_0=ruleServiceImplementation {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "serviceImplementations",
+ lv_serviceImplementations_19_0,
+ "ServiceImplementation");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getStrSAPsSAPRefParserRuleCall_6_6_0());
+ }
+ lv_strSAPs_20_0=ruleSAPRef {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "strSAPs",
+ lv_strSAPs_20_0,
+ "SAPRef");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getAttributesAttributeParserRuleCall_6_7_0());
+ }
+ lv_attributes_21_0=ruleAttribute {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "attributes",
+ lv_attributes_21_0,
+ "Attribute");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getActorRefsActorRefParserRuleCall_6_8_0());
+ }
+ lv_actorRefs_22_0=ruleActorRef {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "actorRefs",
+ lv_actorRefs_22_0,
+ "ActorRef");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getBindingsBindingParserRuleCall_6_9_0());
+ }
+ lv_bindings_23_0=ruleBinding {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "bindings",
+ lv_bindings_23_0,
+ "Binding");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getConnectionsLayerConnectionParserRuleCall_6_10_0());
+ }
+ lv_connections_24_0=ruleLayerConnection {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "connections",
+ lv_connections_24_0,
+ "LayerConnection");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_25='}'
+ {
+ newLeafNode(otherlv_25, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_6_11());
+ }
+)?( otherlv_26='Behavior'
+ {
+ newLeafNode(otherlv_26, grammarAccess.getActorClassAccess().getBehaviorKeyword_7_0());
+ }
+ otherlv_27='{'
+ {
+ newLeafNode(otherlv_27, grammarAccess.getActorClassAccess().getLeftCurlyBracketKeyword_7_1());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getOperationsOperationParserRuleCall_7_2_0());
+ }
+ lv_operations_28_0=ruleOperation {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ add(
+ $current,
+ "operations",
+ lv_operations_28_0,
+ "Operation");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getActorClassAccess().getStateMachineStateMachineParserRuleCall_7_3_0());
+ }
+ lv_stateMachine_29_0=ruleStateMachine {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getActorClassRule());
+ }
+ set(
+ $current,
+ "stateMachine",
+ lv_stateMachine_29_0,
+ "StateMachine");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)? otherlv_30='}'
+ {
+ newLeafNode(otherlv_30, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_7_4());
+ }
+)? otherlv_31='}'
+ {
+ newLeafNode(otherlv_31, grammarAccess.getActorClassAccess().getRightCurlyBracketKeyword_8());
+ }
+)
+;
+
+
+
+
+
+
+
+// Entry rule entryRulePort
+entryRulePort returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getPortRule()); }
+ iv_rulePort=rulePort
+ { $current=$iv_rulePort.current; }
+ EOF
+;
+
+// Rule Port
+rulePort returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ lv_conjugated_0_0= 'conjugated'
+ {
+ newLeafNode(lv_conjugated_0_0, grammarAccess.getPortAccess().getConjugatedConjugatedKeyword_0_0());
+ }
+
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getPortRule());
+ }
+ setWithLastConsumed($current, "conjugated", true, "conjugated");
+ }
+
+)
+)? otherlv_1='Port'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getPortAccess().getPortKeyword_1());
+ }
+(
+(
+ lv_name_2_0=RULE_ID
+ {
+ newLeafNode(lv_name_2_0, grammarAccess.getPortAccess().getNameIDTerminalRuleCall_2_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getPortRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_2_0,
+ "ID");
+ }
+
+)
+)( otherlv_3='['
+ {
+ newLeafNode(otherlv_3, grammarAccess.getPortAccess().getLeftSquareBracketKeyword_3_0());
+ }
+(
+(
+ lv_multiplicity_4_0=RULE_INT
+ {
+ newLeafNode(lv_multiplicity_4_0, grammarAccess.getPortAccess().getMultiplicityINTTerminalRuleCall_3_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getPortRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "multiplicity",
+ lv_multiplicity_4_0,
+ "INT");
+ }
+
+)
+) otherlv_5=']'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getPortAccess().getRightSquareBracketKeyword_3_2());
+ }
+)? otherlv_6=':'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getPortAccess().getColonKeyword_4());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getPortRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getPortAccess().getProtocolProtocolClassCrossReference_5_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleExternalPort
+entryRuleExternalPort returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getExternalPortRule()); }
+ iv_ruleExternalPort=ruleExternalPort
+ { $current=$iv_ruleExternalPort.current; }
+ EOF
+;
+
+// Rule ExternalPort
+ruleExternalPort returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='external'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getExternalPortAccess().getExternalKeyword_0());
+ }
+ otherlv_1='Port'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getExternalPortAccess().getPortKeyword_1());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getExternalPortRule());
+ }
+ }
+ otherlv_2=RULE_ID
+ {
+ newLeafNode(otherlv_2, grammarAccess.getExternalPortAccess().getIfportPortCrossReference_2_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleSAPRef
+entryRuleSAPRef returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSAPRefRule()); }
+ iv_ruleSAPRef=ruleSAPRef
+ { $current=$iv_ruleSAPRef.current; }
+ EOF
+;
+
+// Rule SAPRef
+ruleSAPRef returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='SAP'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSAPRefAccess().getSAPKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getSAPRefAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSAPRefRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSAPRefAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSAPRefRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getSAPRefAccess().getProtocolProtocolClassCrossReference_3_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleSPPRef
+entryRuleSPPRef returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSPPRefRule()); }
+ iv_ruleSPPRef=ruleSPPRef
+ { $current=$iv_ruleSPPRef.current; }
+ EOF
+;
+
+// Rule SPPRef
+ruleSPPRef returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='SPP'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSPPRefAccess().getSPPKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getSPPRefAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSPPRefRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSPPRefAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSPPRefRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getSPPRefAccess().getProtocolProtocolClassCrossReference_3_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleServiceImplementation
+entryRuleServiceImplementation returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getServiceImplementationRule()); }
+ iv_ruleServiceImplementation=ruleServiceImplementation
+ { $current=$iv_ruleServiceImplementation.current; }
+ EOF
+;
+
+// Rule ServiceImplementation
+ruleServiceImplementation returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='ServiceImplementation'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getServiceImplementationAccess().getServiceImplementationKeyword_0());
+ }
+ otherlv_1='of'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getServiceImplementationAccess().getOfKeyword_1());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getServiceImplementationRule());
+ }
+ }
+ otherlv_2=RULE_ID
+ {
+ newLeafNode(otherlv_2, grammarAccess.getServiceImplementationAccess().getSppSPPRefCrossReference_2_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleLogicalSystem
+entryRuleLogicalSystem returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getLogicalSystemRule()); }
+ iv_ruleLogicalSystem=ruleLogicalSystem
+ { $current=$iv_ruleLogicalSystem.current; }
+ EOF
+;
+
+// Rule LogicalSystem
+ruleLogicalSystem returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='LogicalSystem'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getLogicalSystemAccess().getLogicalSystemKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getLogicalSystemAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getLogicalSystemRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getLogicalSystemAccess().getLeftCurlyBracketKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getLogicalSystemAccess().getSubSystemsSubSystemRefParserRuleCall_3_0());
+ }
+ lv_subSystems_3_0=ruleSubSystemRef {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLogicalSystemRule());
+ }
+ add(
+ $current,
+ "subSystems",
+ lv_subSystems_3_0,
+ "SubSystemRef");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)+(
+(
+ {
+ newCompositeNode(grammarAccess.getLogicalSystemAccess().getBindingsBindingParserRuleCall_4_0());
+ }
+ lv_bindings_4_0=ruleBinding {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLogicalSystemRule());
+ }
+ add(
+ $current,
+ "bindings",
+ lv_bindings_4_0,
+ "Binding");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getLogicalSystemAccess().getConnectionsLayerConnectionParserRuleCall_5_0());
+ }
+ lv_connections_5_0=ruleLayerConnection {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLogicalSystemRule());
+ }
+ add(
+ $current,
+ "connections",
+ lv_connections_5_0,
+ "LayerConnection");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_6='}'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getLogicalSystemAccess().getRightCurlyBracketKeyword_6());
+ }
+)
+;
+
+
+
+
+
+
+
+// Entry rule entryRuleSubSystemRef
+entryRuleSubSystemRef returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSubSystemRefRule()); }
+ iv_ruleSubSystemRef=ruleSubSystemRef
+ { $current=$iv_ruleSubSystemRef.current; }
+ EOF
+;
+
+// Rule SubSystemRef
+ruleSubSystemRef returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='SubSystemRef'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSubSystemRefAccess().getSubSystemRefKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getSubSystemRefAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSubSystemRefRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSubSystemRefAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSubSystemRefRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getSubSystemRefAccess().getTypeSubSystemClassCrossReference_3_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleSubSystemClass
+entryRuleSubSystemClass returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSubSystemClassRule()); }
+ iv_ruleSubSystemClass=ruleSubSystemClass
+ { $current=$iv_ruleSubSystemClass.current; }
+ EOF
+;
+
+// Rule SubSystemClass
+ruleSubSystemClass returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='SubSystemClass'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSubSystemClassAccess().getSubSystemClassKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getSubSystemClassAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSubSystemClassRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSubSystemClassAccess().getLeftCurlyBracketKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemClassAccess().getRelayPortsPortParserRuleCall_3_0());
+ }
+ lv_relayPorts_3_0=rulePort {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
+ }
+ add(
+ $current,
+ "relayPorts",
+ lv_relayPorts_3_0,
+ "Port");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemClassAccess().getIfSPPsSPPRefParserRuleCall_4_0());
+ }
+ lv_ifSPPs_4_0=ruleSPPRef {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
+ }
+ add(
+ $current,
+ "ifSPPs",
+ lv_ifSPPs_4_0,
+ "SPPRef");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemClassAccess().getActorRefsActorRefParserRuleCall_5_0());
+ }
+ lv_actorRefs_5_0=ruleActorRef {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
+ }
+ add(
+ $current,
+ "actorRefs",
+ lv_actorRefs_5_0,
+ "ActorRef");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)+(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemClassAccess().getBindingsBindingParserRuleCall_6_0());
+ }
+ lv_bindings_6_0=ruleBinding {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
+ }
+ add(
+ $current,
+ "bindings",
+ lv_bindings_6_0,
+ "Binding");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemClassAccess().getConnectionsLayerConnectionParserRuleCall_7_0());
+ }
+ lv_connections_7_0=ruleLayerConnection {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
+ }
+ add(
+ $current,
+ "connections",
+ lv_connections_7_0,
+ "LayerConnection");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemClassAccess().getThreadsLogicalThreadParserRuleCall_8_0());
+ }
+ lv_threads_8_0=ruleLogicalThread {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemClassRule());
+ }
+ add(
+ $current,
+ "threads",
+ lv_threads_8_0,
+ "LogicalThread");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)* otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getSubSystemClassAccess().getRightCurlyBracketKeyword_9());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleLogicalThread
+entryRuleLogicalThread returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getLogicalThreadRule()); }
+ iv_ruleLogicalThread=ruleLogicalThread
+ { $current=$iv_ruleLogicalThread.current; }
+ EOF
+;
+
+// Rule LogicalThread
+ruleLogicalThread returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='LogicalThread'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getLogicalThreadAccess().getLogicalThreadKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getLogicalThreadAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getLogicalThreadRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getLogicalThreadAccess().getLeftCurlyBracketKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_3_0());
+ }
+ lv_instances_3_0=ruleActorInstancePath {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLogicalThreadRule());
+ }
+ add(
+ $current,
+ "instances",
+ lv_instances_3_0,
+ "ActorInstancePath");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)( otherlv_4=','
+ {
+ newLeafNode(otherlv_4, grammarAccess.getLogicalThreadAccess().getCommaKeyword_4_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getLogicalThreadAccess().getInstancesActorInstancePathParserRuleCall_4_1_0());
+ }
+ lv_instances_5_0=ruleActorInstancePath {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLogicalThreadRule());
+ }
+ add(
+ $current,
+ "instances",
+ lv_instances_5_0,
+ "ActorInstancePath");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))* otherlv_6='}'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getLogicalThreadAccess().getRightCurlyBracketKeyword_5());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleActorInstancePath
+entryRuleActorInstancePath returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getActorInstancePathRule()); }
+ iv_ruleActorInstancePath=ruleActorInstancePath
+ { $current=$iv_ruleActorInstancePath.current; }
+ EOF
+;
+
+// Rule ActorInstancePath
+ruleActorInstancePath returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ lv_segments_0_0=RULE_ID
+ {
+ newLeafNode(lv_segments_0_0, grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_0_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorInstancePathRule());
+ }
+ addWithLastConsumed(
+ $current,
+ "segments",
+ lv_segments_0_0,
+ "ID");
+ }
+
+)
+)( otherlv_1='.'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getActorInstancePathAccess().getFullStopKeyword_1_0());
+ }
+(
+(
+ lv_segments_2_0=RULE_ID
+ {
+ newLeafNode(lv_segments_2_0, grammarAccess.getActorInstancePathAccess().getSegmentsIDTerminalRuleCall_1_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorInstancePathRule());
+ }
+ addWithLastConsumed(
+ $current,
+ "segments",
+ lv_segments_2_0,
+ "ID");
+ }
+
+)
+))*)
+;
+
+
+
+
+
+// Entry rule entryRuleBinding
+entryRuleBinding returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getBindingRule()); }
+ iv_ruleBinding=ruleBinding
+ { $current=$iv_ruleBinding.current; }
+ EOF
+;
+
+// Rule Binding
+ruleBinding returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Binding'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getBindingAccess().getBindingKeyword_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getBindingAccess().getEndpoint1BindingEndPointParserRuleCall_1_0());
+ }
+ lv_endpoint1_1_0=ruleBindingEndPoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getBindingRule());
+ }
+ set(
+ $current,
+ "endpoint1",
+ lv_endpoint1_1_0,
+ "BindingEndPoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_2='and'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getBindingAccess().getAndKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getBindingAccess().getEndpoint2BindingEndPointParserRuleCall_3_0());
+ }
+ lv_endpoint2_3_0=ruleBindingEndPoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getBindingRule());
+ }
+ set(
+ $current,
+ "endpoint2",
+ lv_endpoint2_3_0,
+ "BindingEndPoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleBindingEndPoint
+entryRuleBindingEndPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getBindingEndPointRule()); }
+ iv_ruleBindingEndPoint=ruleBindingEndPoint
+ { $current=$iv_ruleBindingEndPoint.current; }
+ EOF
+;
+
+// Rule BindingEndPoint
+ruleBindingEndPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(((
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getBindingEndPointRule());
+ }
+ }
+ otherlv_0=RULE_ID
+ {
+ newLeafNode(otherlv_0, grammarAccess.getBindingEndPointAccess().getActorRefActorContainerRefCrossReference_0_0_0());
+ }
+
+)
+) otherlv_1='.'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getBindingEndPointAccess().getFullStopKeyword_0_1());
+ }
+)?(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getBindingEndPointRule());
+ }
+ }
+ otherlv_2=RULE_ID
+ {
+ newLeafNode(otherlv_2, grammarAccess.getBindingEndPointAccess().getPortPortCrossReference_1_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleLayerConnection
+entryRuleLayerConnection returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getLayerConnectionRule()); }
+ iv_ruleLayerConnection=ruleLayerConnection
+ { $current=$iv_ruleLayerConnection.current; }
+ EOF
+;
+
+// Rule LayerConnection
+ruleLayerConnection returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='LayerConnection'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getLayerConnectionAccess().getLayerConnectionKeyword_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getLayerConnectionAccess().getFromSAPointParserRuleCall_1_0());
+ }
+ lv_from_1_0=ruleSAPoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLayerConnectionRule());
+ }
+ set(
+ $current,
+ "from",
+ lv_from_1_0,
+ "SAPoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_2='satisfied_by'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getLayerConnectionAccess().getSatisfied_byKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getLayerConnectionAccess().getToSPPointParserRuleCall_3_0());
+ }
+ lv_to_3_0=ruleSPPoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getLayerConnectionRule());
+ }
+ set(
+ $current,
+ "to",
+ lv_to_3_0,
+ "SPPoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleSAPoint
+entryRuleSAPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSAPointRule()); }
+ iv_ruleSAPoint=ruleSAPoint
+ { $current=$iv_ruleSAPoint.current; }
+ EOF
+;
+
+// Rule SAPoint
+ruleSAPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getSAPointAccess().getRefSAPointParserRuleCall_0());
+ }
+ this_RefSAPoint_0=ruleRefSAPoint
+ {
+ $current = $this_RefSAPoint_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getSAPointAccess().getRelaySAPointParserRuleCall_1());
+ }
+ this_RelaySAPoint_1=ruleRelaySAPoint
+ {
+ $current = $this_RelaySAPoint_1.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleRefSAPoint
+entryRuleRefSAPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getRefSAPointRule()); }
+ iv_ruleRefSAPoint=ruleRefSAPoint
+ { $current=$iv_ruleRefSAPoint.current; }
+ EOF
+;
+
+// Rule RefSAPoint
+ruleRefSAPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='ref'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getRefSAPointAccess().getRefKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getRefSAPointRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getRefSAPointAccess().getRefActorContainerRefCrossReference_1_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleRelaySAPoint
+entryRuleRelaySAPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getRelaySAPointRule()); }
+ iv_ruleRelaySAPoint=ruleRelaySAPoint
+ { $current=$iv_ruleRelaySAPoint.current; }
+ EOF
+;
+
+// Rule RelaySAPoint
+ruleRelaySAPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='relay_sap'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getRelaySAPointAccess().getRelay_sapKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getRelaySAPointRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getRelaySAPointAccess().getRelaySPPRefCrossReference_1_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleSPPoint
+entryRuleSPPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSPPointRule()); }
+ iv_ruleSPPoint=ruleSPPoint
+ { $current=$iv_ruleSPPoint.current; }
+ EOF
+;
+
+// Rule SPPoint
+ruleSPPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSPPointRule());
+ }
+ }
+ otherlv_0=RULE_ID
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSPPointAccess().getRefActorContainerRefCrossReference_0_0());
+ }
+
+)
+) otherlv_1='.'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getSPPointAccess().getFullStopKeyword_1());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSPPointRule());
+ }
+ }
+ otherlv_2=RULE_ID
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSPPointAccess().getServiceSPPRefCrossReference_2_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleActorRef
+entryRuleActorRef returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getActorRefRule()); }
+ iv_ruleActorRef=ruleActorRef
+ { $current=$iv_ruleActorRef.current; }
+ EOF
+;
+
+// Rule ActorRef
+ruleActorRef returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='ActorRef'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getActorRefAccess().getActorRefKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getActorRefAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorRefRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getActorRefAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getActorRefRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getActorRefAccess().getTypeActorClassCrossReference_3_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleStateGraphNode
+entryRuleStateGraphNode returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getStateGraphNodeRule()); }
+ iv_ruleStateGraphNode=ruleStateGraphNode
+ { $current=$iv_ruleStateGraphNode.current; }
+ EOF
+;
+
+// Rule StateGraphNode
+ruleStateGraphNode returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getStateGraphNodeAccess().getStateParserRuleCall_0());
+ }
+ this_State_0=ruleState
+ {
+ $current = $this_State_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getStateGraphNodeAccess().getChoicePointParserRuleCall_1());
+ }
+ this_ChoicePoint_1=ruleChoicePoint
+ {
+ $current = $this_ChoicePoint_1.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getStateGraphNodeAccess().getTrPointParserRuleCall_2());
+ }
+ this_TrPoint_2=ruleTrPoint
+ {
+ $current = $this_TrPoint_2.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+
+
+// Entry rule entryRuleState
+entryRuleState returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getStateRule()); }
+ iv_ruleState=ruleState
+ { $current=$iv_ruleState.current; }
+ EOF
+;
+
+// Rule State
+ruleState returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getStateAccess().getBaseStateParserRuleCall_0());
+ }
+ this_BaseState_0=ruleBaseState
+ {
+ $current = $this_BaseState_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getStateAccess().getRefinedStateParserRuleCall_1());
+ }
+ this_RefinedState_1=ruleRefinedState
+ {
+ $current = $this_RefinedState_1.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleStateGraph
+entryRuleStateGraph returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getStateGraphRule()); }
+ iv_ruleStateGraph=ruleStateGraph
+ { $current=$iv_ruleStateGraph.current; }
+ EOF
+;
+
+// Rule StateGraph
+ruleStateGraph returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='{'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getStateGraphAccess().getLeftCurlyBracketKeyword_0());
+ }
+((
+(
+ {
+ newCompositeNode(grammarAccess.getStateGraphAccess().getStatesStateParserRuleCall_1_0_0());
+ }
+ lv_states_1_0=ruleState {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateGraphRule());
+ }
+ add(
+ $current,
+ "states",
+ lv_states_1_0,
+ "State");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getStateGraphAccess().getTrPointsTrPointParserRuleCall_1_1_0());
+ }
+ lv_trPoints_2_0=ruleTrPoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateGraphRule());
+ }
+ add(
+ $current,
+ "trPoints",
+ lv_trPoints_2_0,
+ "TrPoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getStateGraphAccess().getChPointsChoicePointParserRuleCall_1_2_0());
+ }
+ lv_chPoints_3_0=ruleChoicePoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateGraphRule());
+ }
+ add(
+ $current,
+ "chPoints",
+ lv_chPoints_3_0,
+ "ChoicePoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getStateGraphAccess().getTransitionsTransitionParserRuleCall_1_3_0());
+ }
+ lv_transitions_4_0=ruleTransition {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateGraphRule());
+ }
+ add(
+ $current,
+ "transitions",
+ lv_transitions_4_0,
+ "Transition");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))+ otherlv_5='}'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getStateGraphAccess().getRightCurlyBracketKeyword_2());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleStateMachine
+entryRuleStateMachine returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getStateMachineRule()); }
+ iv_ruleStateMachine=ruleStateMachine
+ { $current=$iv_ruleStateMachine.current; }
+ EOF
+;
+
+// Rule StateMachine
+ruleStateMachine returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='StateMachine'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getStateMachineAccess().getStateMachineKeyword_0());
+ }
+ otherlv_1='{'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getStateMachineAccess().getLeftCurlyBracketKeyword_1());
+ }
+((
+(
+ {
+ newCompositeNode(grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_2_0_0());
+ }
+ lv_states_2_0=ruleState {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateMachineRule());
+ }
+ add(
+ $current,
+ "states",
+ lv_states_2_0,
+ "State");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getStateMachineAccess().getTrPointsTrPointParserRuleCall_2_1_0());
+ }
+ lv_trPoints_3_0=ruleTrPoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateMachineRule());
+ }
+ add(
+ $current,
+ "trPoints",
+ lv_trPoints_3_0,
+ "TrPoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getStateMachineAccess().getChPointsChoicePointParserRuleCall_2_2_0());
+ }
+ lv_chPoints_4_0=ruleChoicePoint {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateMachineRule());
+ }
+ add(
+ $current,
+ "chPoints",
+ lv_chPoints_4_0,
+ "ChoicePoint");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)
+ |(
+(
+ {
+ newCompositeNode(grammarAccess.getStateMachineAccess().getTransitionsTransitionParserRuleCall_2_3_0());
+ }
+ lv_transitions_5_0=ruleTransition {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getStateMachineRule());
+ }
+ add(
+ $current,
+ "transitions",
+ lv_transitions_5_0,
+ "Transition");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))+ otherlv_6='}'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getStateMachineAccess().getRightCurlyBracketKeyword_3());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleBaseState
+entryRuleBaseState returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getBaseStateRule()); }
+ iv_ruleBaseState=ruleBaseState
+ { $current=$iv_ruleBaseState.current; }
+ EOF
+;
+
+// Rule BaseState
+ruleBaseState returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='State'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getBaseStateAccess().getStateKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getBaseStateAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getBaseStateRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getBaseStateAccess().getLeftCurlyBracketKeyword_2());
+ }
+( otherlv_3='entry'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getBaseStateAccess().getEntryKeyword_3_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getBaseStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0());
+ }
+ lv_entryCode_4_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getBaseStateRule());
+ }
+ set(
+ $current,
+ "entryCode",
+ lv_entryCode_4_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_5='exit'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getBaseStateAccess().getExitKeyword_4_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getBaseStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0());
+ }
+ lv_exitCode_6_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getBaseStateRule());
+ }
+ set(
+ $current,
+ "exitCode",
+ lv_exitCode_6_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_7='subgraph'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getBaseStateAccess().getSubgraphKeyword_5_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getBaseStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0());
+ }
+ lv_subgraph_8_0=ruleStateGraph {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getBaseStateRule());
+ }
+ set(
+ $current,
+ "subgraph",
+ lv_subgraph_8_0,
+ "StateGraph");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getBaseStateAccess().getRightCurlyBracketKeyword_6());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleRefinedState
+entryRuleRefinedState returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getRefinedStateRule()); }
+ iv_ruleRefinedState=ruleRefinedState
+ { $current=$iv_ruleRefinedState.current; }
+ EOF
+;
+
+// Rule RefinedState
+ruleRefinedState returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='RefinedState'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getRefinedStateAccess().getRefinedStateKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getRefinedStateRule());
+ }
+ }
+ {
+ newCompositeNode(grammarAccess.getRefinedStateAccess().getBaseBaseStateCrossReference_1_0());
+ }
+ ruleFQN {
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getRefinedStateAccess().getLeftCurlyBracketKeyword_2());
+ }
+( otherlv_3='entry'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getRefinedStateAccess().getEntryKeyword_3_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getRefinedStateAccess().getEntryCodeDetailCodeParserRuleCall_3_1_0());
+ }
+ lv_entryCode_4_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRefinedStateRule());
+ }
+ set(
+ $current,
+ "entryCode",
+ lv_entryCode_4_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_5='exit'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getRefinedStateAccess().getExitKeyword_4_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getRefinedStateAccess().getExitCodeDetailCodeParserRuleCall_4_1_0());
+ }
+ lv_exitCode_6_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRefinedStateRule());
+ }
+ set(
+ $current,
+ "exitCode",
+ lv_exitCode_6_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))?( otherlv_7='subgraph'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getRefinedStateAccess().getSubgraphKeyword_5_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getRefinedStateAccess().getSubgraphStateGraphParserRuleCall_5_1_0());
+ }
+ lv_subgraph_8_0=ruleStateGraph {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getRefinedStateRule());
+ }
+ set(
+ $current,
+ "subgraph",
+ lv_subgraph_8_0,
+ "StateGraph");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getRefinedStateAccess().getRightCurlyBracketKeyword_6());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleDetailCode
+entryRuleDetailCode returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getDetailCodeRule()); }
+ iv_ruleDetailCode=ruleDetailCode
+ { $current=$iv_ruleDetailCode.current; }
+ EOF
+;
+
+// Rule DetailCode
+ruleDetailCode returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='{'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getDetailCodeAccess().getLeftCurlyBracketKeyword_0());
+ }
+(
+(
+ lv_commands_1_0=RULE_STRING
+ {
+ newLeafNode(lv_commands_1_0, grammarAccess.getDetailCodeAccess().getCommandsSTRINGTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDetailCodeRule());
+ }
+ addWithLastConsumed(
+ $current,
+ "commands",
+ lv_commands_1_0,
+ "STRING");
+ }
+
+)
+)+ otherlv_2='}'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getDetailCodeAccess().getRightCurlyBracketKeyword_2());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleTrPoint
+entryRuleTrPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTrPointRule()); }
+ iv_ruleTrPoint=ruleTrPoint
+ { $current=$iv_ruleTrPoint.current; }
+ EOF
+;
+
+// Rule TrPoint
+ruleTrPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getTrPointAccess().getTransitionPointParserRuleCall_0());
+ }
+ this_TransitionPoint_0=ruleTransitionPoint
+ {
+ $current = $this_TransitionPoint_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getTrPointAccess().getEntryPointParserRuleCall_1());
+ }
+ this_EntryPoint_1=ruleEntryPoint
+ {
+ $current = $this_EntryPoint_1.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getTrPointAccess().getExitPointParserRuleCall_2());
+ }
+ this_ExitPoint_2=ruleExitPoint
+ {
+ $current = $this_ExitPoint_2.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleTransitionPoint
+entryRuleTransitionPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTransitionPointRule()); }
+ iv_ruleTransitionPoint=ruleTransitionPoint
+ { $current=$iv_ruleTransitionPoint.current; }
+ EOF
+;
+
+// Rule TransitionPoint
+ruleTransitionPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ lv_handler_0_0= 'handler'
+ {
+ newLeafNode(lv_handler_0_0, grammarAccess.getTransitionPointAccess().getHandlerHandlerKeyword_0_0());
+ }
+
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getTransitionPointRule());
+ }
+ setWithLastConsumed($current, "handler", true, "handler");
+ }
+
+)
+)? otherlv_1='TransitionPoint'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getTransitionPointAccess().getTransitionPointKeyword_1());
+ }
+(
+(
+ lv_name_2_0=RULE_ID
+ {
+ newLeafNode(lv_name_2_0, grammarAccess.getTransitionPointAccess().getNameIDTerminalRuleCall_2_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getTransitionPointRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_2_0,
+ "ID");
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleEntryPoint
+entryRuleEntryPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getEntryPointRule()); }
+ iv_ruleEntryPoint=ruleEntryPoint
+ { $current=$iv_ruleEntryPoint.current; }
+ EOF
+;
+
+// Rule EntryPoint
+ruleEntryPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='EntryPoint'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getEntryPointAccess().getEntryPointKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getEntryPointAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getEntryPointRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleExitPoint
+entryRuleExitPoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getExitPointRule()); }
+ iv_ruleExitPoint=ruleExitPoint
+ { $current=$iv_ruleExitPoint.current; }
+ EOF
+;
+
+// Rule ExitPoint
+ruleExitPoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='ExitPoint'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getExitPointAccess().getExitPointKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getExitPointAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getExitPointRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleChoicePoint
+entryRuleChoicePoint returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getChoicePointRule()); }
+ iv_ruleChoicePoint=ruleChoicePoint
+ { $current=$iv_ruleChoicePoint.current; }
+ EOF
+;
+
+// Rule ChoicePoint
+ruleChoicePoint returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='ChoicePoint'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getChoicePointAccess().getChoicePointKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getChoicePointAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getChoicePointRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleTransition
+entryRuleTransition returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTransitionRule()); }
+ iv_ruleTransition=ruleTransition
+ { $current=$iv_ruleTransition.current; }
+ EOF
+;
+
+// Rule Transition
+ruleTransition returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getTransitionAccess().getInitialTransitionParserRuleCall_0());
+ }
+ this_InitialTransition_0=ruleInitialTransition
+ {
+ $current = $this_InitialTransition_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getTransitionAccess().getNonInitialTransitionParserRuleCall_1());
+ }
+ this_NonInitialTransition_1=ruleNonInitialTransition
+ {
+ $current = $this_NonInitialTransition_1.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleNonInitialTransition
+entryRuleNonInitialTransition returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getNonInitialTransitionRule()); }
+ iv_ruleNonInitialTransition=ruleNonInitialTransition
+ { $current=$iv_ruleNonInitialTransition.current; }
+ EOF
+;
+
+// Rule NonInitialTransition
+ruleNonInitialTransition returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getNonInitialTransitionAccess().getTriggeredTransitionParserRuleCall_0());
+ }
+ this_TriggeredTransition_0=ruleTriggeredTransition
+ {
+ $current = $this_TriggeredTransition_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getNonInitialTransitionAccess().getContinuationTransitionParserRuleCall_1());
+ }
+ this_ContinuationTransition_1=ruleContinuationTransition
+ {
+ $current = $this_ContinuationTransition_1.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getNonInitialTransitionAccess().getCPBranchTransitionParserRuleCall_2());
+ }
+ this_CPBranchTransition_2=ruleCPBranchTransition
+ {
+ $current = $this_CPBranchTransition_2.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleInitialTransition
+entryRuleInitialTransition returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getInitialTransitionRule()); }
+ iv_ruleInitialTransition=ruleInitialTransition
+ { $current=$iv_ruleInitialTransition.current; }
+ EOF
+;
+
+// Rule InitialTransition
+ruleInitialTransition returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Transition'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getInitialTransitionAccess().getTransitionKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getInitialTransitionAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getInitialTransitionRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)? otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getInitialTransitionAccess().getColonKeyword_2());
+ }
+ otherlv_3='initial'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getInitialTransitionAccess().getInitialKeyword_3());
+ }
+ otherlv_4='->'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getInitialTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
+ }
+ lv_to_5_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getInitialTransitionRule());
+ }
+ set(
+ $current,
+ "to",
+ lv_to_5_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_6='{'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getInitialTransitionAccess().getLeftCurlyBracketKeyword_6());
+ }
+( otherlv_7='action'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getInitialTransitionAccess().getActionKeyword_7_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getInitialTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0());
+ }
+ lv_action_8_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getInitialTransitionRule());
+ }
+ set(
+ $current,
+ "action",
+ lv_action_8_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getInitialTransitionAccess().getRightCurlyBracketKeyword_8());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleContinuationTransition
+entryRuleContinuationTransition returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getContinuationTransitionRule()); }
+ iv_ruleContinuationTransition=ruleContinuationTransition
+ { $current=$iv_ruleContinuationTransition.current; }
+ EOF
+;
+
+// Rule ContinuationTransition
+ruleContinuationTransition returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Transition'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getContinuationTransitionAccess().getTransitionKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getContinuationTransitionAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getContinuationTransitionRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)? otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getContinuationTransitionAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getContinuationTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0());
+ }
+ lv_from_3_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getContinuationTransitionRule());
+ }
+ set(
+ $current,
+ "from",
+ lv_from_3_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_4='->'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getContinuationTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getContinuationTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
+ }
+ lv_to_5_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getContinuationTransitionRule());
+ }
+ set(
+ $current,
+ "to",
+ lv_to_5_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_6='{'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getContinuationTransitionAccess().getLeftCurlyBracketKeyword_6());
+ }
+( otherlv_7='action'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getContinuationTransitionAccess().getActionKeyword_7_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getContinuationTransitionAccess().getActionDetailCodeParserRuleCall_7_1_0());
+ }
+ lv_action_8_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getContinuationTransitionRule());
+ }
+ set(
+ $current,
+ "action",
+ lv_action_8_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getContinuationTransitionAccess().getRightCurlyBracketKeyword_8());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleTriggeredTransition
+entryRuleTriggeredTransition returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTriggeredTransitionRule()); }
+ iv_ruleTriggeredTransition=ruleTriggeredTransition
+ { $current=$iv_ruleTriggeredTransition.current; }
+ EOF
+;
+
+// Rule TriggeredTransition
+ruleTriggeredTransition returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Transition'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getTriggeredTransitionAccess().getTransitionKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getTriggeredTransitionAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getTriggeredTransitionRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)? otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getTriggeredTransitionAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0());
+ }
+ lv_from_3_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
+ }
+ set(
+ $current,
+ "from",
+ lv_from_3_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_4='->'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getTriggeredTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
+ }
+ lv_to_5_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
+ }
+ set(
+ $current,
+ "to",
+ lv_to_5_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_6='{'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_6());
+ }
+ otherlv_7='triggers'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getTriggeredTransitionAccess().getTriggersKeyword_7());
+ }
+ otherlv_8='{'
+ {
+ newLeafNode(otherlv_8, grammarAccess.getTriggeredTransitionAccess().getLeftCurlyBracketKeyword_8());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_9_0());
+ }
+ lv_triggers_9_0=ruleTrigger {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
+ }
+ add(
+ $current,
+ "triggers",
+ lv_triggers_9_0,
+ "Trigger");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)( otherlv_10='or'
+ {
+ newLeafNode(otherlv_10, grammarAccess.getTriggeredTransitionAccess().getOrKeyword_10_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getTriggersTriggerParserRuleCall_10_1_0());
+ }
+ lv_triggers_11_0=ruleTrigger {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
+ }
+ add(
+ $current,
+ "triggers",
+ lv_triggers_11_0,
+ "Trigger");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))* otherlv_12='}'
+ {
+ newLeafNode(otherlv_12, grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_11());
+ }
+( otherlv_13='action'
+ {
+ newLeafNode(otherlv_13, grammarAccess.getTriggeredTransitionAccess().getActionKeyword_12_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggeredTransitionAccess().getActionDetailCodeParserRuleCall_12_1_0());
+ }
+ lv_action_14_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggeredTransitionRule());
+ }
+ set(
+ $current,
+ "action",
+ lv_action_14_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_15='}'
+ {
+ newLeafNode(otherlv_15, grammarAccess.getTriggeredTransitionAccess().getRightCurlyBracketKeyword_13());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleCPBranchTransition
+entryRuleCPBranchTransition returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getCPBranchTransitionRule()); }
+ iv_ruleCPBranchTransition=ruleCPBranchTransition
+ { $current=$iv_ruleCPBranchTransition.current; }
+ EOF
+;
+
+// Rule CPBranchTransition
+ruleCPBranchTransition returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='Transition'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getCPBranchTransitionAccess().getTransitionKeyword_0());
+ }
+(
+(
+ lv_name_1_0=RULE_ID
+ {
+ newLeafNode(lv_name_1_0, grammarAccess.getCPBranchTransitionAccess().getNameIDTerminalRuleCall_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getCPBranchTransitionRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "name",
+ lv_name_1_0,
+ "ID");
+ }
+
+)
+)? otherlv_2=':'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getCPBranchTransitionAccess().getColonKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getFromTransitionTerminalParserRuleCall_3_0());
+ }
+ lv_from_3_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
+ }
+ set(
+ $current,
+ "from",
+ lv_from_3_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_4='->'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getCPBranchTransitionAccess().getHyphenMinusGreaterThanSignKeyword_4());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getToTransitionTerminalParserRuleCall_5_0());
+ }
+ lv_to_5_0=ruleTransitionTerminal {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
+ }
+ set(
+ $current,
+ "to",
+ lv_to_5_0,
+ "TransitionTerminal");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_6='{'
+ {
+ newLeafNode(otherlv_6, grammarAccess.getCPBranchTransitionAccess().getLeftCurlyBracketKeyword_6());
+ }
+ otherlv_7='cond'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getCPBranchTransitionAccess().getCondKeyword_7());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getConditionDetailCodeParserRuleCall_8_0());
+ }
+ lv_condition_8_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
+ }
+ set(
+ $current,
+ "condition",
+ lv_condition_8_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)( otherlv_9='action'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getCPBranchTransitionAccess().getActionKeyword_9_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getCPBranchTransitionAccess().getActionDetailCodeParserRuleCall_9_1_0());
+ }
+ lv_action_10_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getCPBranchTransitionRule());
+ }
+ set(
+ $current,
+ "action",
+ lv_action_10_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))? otherlv_11='}'
+ {
+ newLeafNode(otherlv_11, grammarAccess.getCPBranchTransitionAccess().getRightCurlyBracketKeyword_10());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleTransitionTerminal
+entryRuleTransitionTerminal returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTransitionTerminalRule()); }
+ iv_ruleTransitionTerminal=ruleTransitionTerminal
+ { $current=$iv_ruleTransitionTerminal.current; }
+ EOF
+;
+
+// Rule TransitionTerminal
+ruleTransitionTerminal returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getTransitionTerminalAccess().getStateTerminalParserRuleCall_0());
+ }
+ this_StateTerminal_0=ruleStateTerminal
+ {
+ $current = $this_StateTerminal_0.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getTransitionTerminalAccess().getTrPointTerminalParserRuleCall_1());
+ }
+ this_TrPointTerminal_1=ruleTrPointTerminal
+ {
+ $current = $this_TrPointTerminal_1.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getTransitionTerminalAccess().getSubStateTrPointTerminalParserRuleCall_2());
+ }
+ this_SubStateTrPointTerminal_2=ruleSubStateTrPointTerminal
+ {
+ $current = $this_SubStateTrPointTerminal_2.current;
+ afterParserOrEnumRuleCall();
+ }
+
+ |
+ {
+ newCompositeNode(grammarAccess.getTransitionTerminalAccess().getChoicepointTerminalParserRuleCall_3());
+ }
+ this_ChoicepointTerminal_3=ruleChoicepointTerminal
+ {
+ $current = $this_ChoicepointTerminal_3.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleStateTerminal
+entryRuleStateTerminal returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getStateTerminalRule()); }
+ iv_ruleStateTerminal=ruleStateTerminal
+ { $current=$iv_ruleStateTerminal.current; }
+ EOF
+;
+
+// Rule StateTerminal
+ruleStateTerminal returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getStateTerminalRule());
+ }
+ }
+ otherlv_0=RULE_ID
+ {
+ newLeafNode(otherlv_0, grammarAccess.getStateTerminalAccess().getStateBaseStateCrossReference_0());
+ }
+
+)
+)
+;
+
+
+
+
+
+// Entry rule entryRuleTrPointTerminal
+entryRuleTrPointTerminal returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTrPointTerminalRule()); }
+ iv_ruleTrPointTerminal=ruleTrPointTerminal
+ { $current=$iv_ruleTrPointTerminal.current; }
+ EOF
+;
+
+// Rule TrPointTerminal
+ruleTrPointTerminal returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='my'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getTrPointTerminalAccess().getMyKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getTrPointTerminalRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getTrPointTerminalAccess().getTrPointTrPointCrossReference_1_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleSubStateTrPointTerminal
+entryRuleSubStateTrPointTerminal returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSubStateTrPointTerminalRule()); }
+ iv_ruleSubStateTrPointTerminal=ruleSubStateTrPointTerminal
+ { $current=$iv_ruleSubStateTrPointTerminal.current; }
+ EOF
+;
+
+// Rule SubStateTrPointTerminal
+ruleSubStateTrPointTerminal returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSubStateTrPointTerminalRule());
+ }
+ }
+ otherlv_0=RULE_ID
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSubStateTrPointTerminalAccess().getTrPointTrPointCrossReference_0_0());
+ }
+
+)
+) otherlv_1='of'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getSubStateTrPointTerminalAccess().getOfKeyword_1());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSubStateTrPointTerminalRule());
+ }
+ }
+ otherlv_2=RULE_ID
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSubStateTrPointTerminalAccess().getStateBaseStateCrossReference_2_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleChoicepointTerminal
+entryRuleChoicepointTerminal returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getChoicepointTerminalRule()); }
+ iv_ruleChoicepointTerminal=ruleChoicepointTerminal
+ { $current=$iv_ruleChoicepointTerminal.current; }
+ EOF
+;
+
+// Rule ChoicepointTerminal
+ruleChoicepointTerminal returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='cp'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getChoicepointTerminalAccess().getCpKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getChoicepointTerminalRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getChoicepointTerminalAccess().getCpChoicePointCrossReference_1_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleTrigger
+entryRuleTrigger returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getTriggerRule()); }
+ iv_ruleTrigger=ruleTrigger
+ { $current=$iv_ruleTrigger.current; }
+ EOF
+;
+
+// Rule Trigger
+ruleTrigger returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='<'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getTriggerAccess().getLessThanSignKeyword_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_1_0());
+ }
+ lv_msgFromIfPairs_1_0=ruleMessageFromIf {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggerRule());
+ }
+ add(
+ $current,
+ "msgFromIfPairs",
+ lv_msgFromIfPairs_1_0,
+ "MessageFromIf");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)( otherlv_2='|'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getTriggerAccess().getVerticalLineKeyword_2_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggerAccess().getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0());
+ }
+ lv_msgFromIfPairs_3_0=ruleMessageFromIf {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggerRule());
+ }
+ add(
+ $current,
+ "msgFromIfPairs",
+ lv_msgFromIfPairs_3_0,
+ "MessageFromIf");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))*(
+(
+ {
+ newCompositeNode(grammarAccess.getTriggerAccess().getGuardGuardParserRuleCall_3_0());
+ }
+ lv_guard_4_0=ruleGuard {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getTriggerRule());
+ }
+ set(
+ $current,
+ "guard",
+ lv_guard_4_0,
+ "Guard");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)? otherlv_5='>'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getTriggerAccess().getGreaterThanSignKeyword_4());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleMessageFromIf
+entryRuleMessageFromIf returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getMessageFromIfRule()); }
+ iv_ruleMessageFromIf=ruleMessageFromIf
+ { $current=$iv_ruleMessageFromIf.current; }
+ EOF
+;
+
+// Rule MessageFromIf
+ruleMessageFromIf returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+((
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getMessageFromIfRule());
+ }
+ }
+ otherlv_0=RULE_ID
+ {
+ newLeafNode(otherlv_0, grammarAccess.getMessageFromIfAccess().getMessageMessageCrossReference_0_0());
+ }
+
+)
+) otherlv_1=':'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getMessageFromIfAccess().getColonKeyword_1());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getMessageFromIfRule());
+ }
+ }
+ otherlv_2=RULE_ID
+ {
+ newLeafNode(otherlv_2, grammarAccess.getMessageFromIfAccess().getFromInterfaceItemCrossReference_2_0());
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleGuard
+entryRuleGuard returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getGuardRule()); }
+ iv_ruleGuard=ruleGuard
+ { $current=$iv_ruleGuard.current; }
+ EOF
+;
+
+// Rule Guard
+ruleGuard returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='guard'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getGuardAccess().getGuardKeyword_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getGuardAccess().getGuardDetailCodeParserRuleCall_1_0());
+ }
+ lv_guard_1_0=ruleDetailCode {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getGuardRule());
+ }
+ set(
+ $current,
+ "guard",
+ lv_guard_1_0,
+ "DetailCode");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleImport
+entryRuleImport returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getImportRule()); }
+ iv_ruleImport=ruleImport
+ { $current=$iv_ruleImport.current; }
+ EOF
+;
+
+// Rule Import
+ruleImport returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='import'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0());
+ }
+ lv_importedNamespace_1_0=ruleImportedFQN {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getImportRule());
+ }
+ set(
+ $current,
+ "importedNamespace",
+ lv_importedNamespace_1_0,
+ "ImportedFQN");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+))
+;
+
+
+
+
+
+// Entry rule entryRuleImportedFQN
+entryRuleImportedFQN returns [String current=null]
+ :
+ { newCompositeNode(grammarAccess.getImportedFQNRule()); }
+ iv_ruleImportedFQN=ruleImportedFQN
+ { $current=$iv_ruleImportedFQN.current.getText(); }
+ EOF
+;
+
+// Rule ImportedFQN
+ruleImportedFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+(
+ {
+ newCompositeNode(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
+ }
+ this_FQN_0=ruleFQN {
+ $current.merge(this_FQN_0);
+ }
+
+ {
+ afterParserOrEnumRuleCall();
+ }
+(
+ kw='.'
+ {
+ $current.merge(kw);
+ newLeafNode(kw, grammarAccess.getImportedFQNAccess().getFullStopKeyword_1_0());
+ }
+
+ kw='*'
+ {
+ $current.merge(kw);
+ newLeafNode(kw, grammarAccess.getImportedFQNAccess().getAsteriskKeyword_1_1());
+ }
+)?)
+ ;
+
+
+
+
+
+// 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());
+ }
+)*)
+ ;
+
+
+
+
+
+// Rule PrimitiveType
+rulePrimitiveType returns [Enumerator current=null]
+ @init { enterRule(); }
+ @after { leaveRule(); }:
+(( enumLiteral_0='void'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_0, grammarAccess.getPrimitiveTypeAccess().getVoidEnumLiteralDeclaration_0());
+ }
+)
+ |( enumLiteral_1='int8'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_1, grammarAccess.getPrimitiveTypeAccess().getInt8EnumLiteralDeclaration_1());
+ }
+)
+ |( enumLiteral_2='int16'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_2, grammarAccess.getPrimitiveTypeAccess().getInt16EnumLiteralDeclaration_2());
+ }
+)
+ |( enumLiteral_3='int32'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_3, grammarAccess.getPrimitiveTypeAccess().getInt32EnumLiteralDeclaration_3());
+ }
+)
+ |( enumLiteral_4='uint8'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_4, grammarAccess.getPrimitiveTypeAccess().getUint8EnumLiteralDeclaration_4());
+ }
+)
+ |( enumLiteral_5='uint16'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_5, grammarAccess.getPrimitiveTypeAccess().getUint16EnumLiteralDeclaration_5());
+ }
+)
+ |( enumLiteral_6='uint32'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_6, grammarAccess.getPrimitiveTypeAccess().getUint32EnumLiteralDeclaration_6());
+ }
+)
+ |( enumLiteral_7='float32'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_7, grammarAccess.getPrimitiveTypeAccess().getFloat32EnumLiteralDeclaration_7());
+ }
+)
+ |( enumLiteral_8='float64'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_8, grammarAccess.getPrimitiveTypeAccess().getFloat64EnumLiteralDeclaration_8());
+ }
+)
+ |( enumLiteral_9='boolean'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_9, grammarAccess.getPrimitiveTypeAccess().getBooleanEnumLiteralDeclaration_9());
+ }
+)
+ |( enumLiteral_10='string'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_10, grammarAccess.getPrimitiveTypeAccess().getStringEnumLiteralDeclaration_10());
+ }
+)
+ |( enumLiteral_11='char'
+ {
+ $current = grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
+ newLeafNode(enumLiteral_11, grammarAccess.getPrimitiveTypeAccess().getCharEnumLiteralDeclaration_11());
+ }
+));
+
+
+
+RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
+
+RULE_INT : ('0'..'9')+;
+
+RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
+
+RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
+
+RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
+
+RULE_WS : (' '|'\t'|'\r'|'\n')+;
+
+RULE_ANY_OTHER : .;
+
+
diff --git a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/services/RoomGrammarAccess.java b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/services/RoomGrammarAccess.java
index 8cccbbebe..cf87e90e3 100644
--- a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/services/RoomGrammarAccess.java
+++ b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/services/RoomGrammarAccess.java
@@ -1,4401 +1,4401 @@
-/*
-* generated by Xtext
-*/
-
-package org.eclipse.etrice.core.services;
-
-import com.google.inject.Singleton;
-import com.google.inject.Inject;
-
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.service.GrammarProvider;
-import org.eclipse.xtext.service.AbstractElementFinder.*;
-
-import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
-
-@Singleton
-public class RoomGrammarAccess extends AbstractGrammarElementFinder {
-
-
- public class RoomModelElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RoomModel");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cRoomModelKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameFQNParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cImportsAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cImportsImportParserRuleCall_3_0 = (RuleCall)cImportsAssignment_3.eContents().get(0);
- private final Alternatives cAlternatives_4 = (Alternatives)cGroup.eContents().get(4);
- private final Assignment cDataClassesAssignment_4_0 = (Assignment)cAlternatives_4.eContents().get(0);
- private final RuleCall cDataClassesDataClassParserRuleCall_4_0_0 = (RuleCall)cDataClassesAssignment_4_0.eContents().get(0);
- private final Assignment cProtocolClassesAssignment_4_1 = (Assignment)cAlternatives_4.eContents().get(1);
- private final RuleCall cProtocolClassesProtocolClassParserRuleCall_4_1_0 = (RuleCall)cProtocolClassesAssignment_4_1.eContents().get(0);
- private final Assignment cActorClassesAssignment_4_2 = (Assignment)cAlternatives_4.eContents().get(2);
- private final RuleCall cActorClassesActorClassParserRuleCall_4_2_0 = (RuleCall)cActorClassesAssignment_4_2.eContents().get(0);
- private final Assignment cSubSystemClassesAssignment_4_3 = (Assignment)cAlternatives_4.eContents().get(3);
- private final RuleCall cSubSystemClassesSubSystemClassParserRuleCall_4_3_0 = (RuleCall)cSubSystemClassesAssignment_4_3.eContents().get(0);
- private final Assignment cSystemsAssignment_4_4 = (Assignment)cAlternatives_4.eContents().get(4);
- private final RuleCall cSystemsLogicalSystemParserRuleCall_4_4_0 = (RuleCall)cSystemsAssignment_4_4.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-
- //RoomModel:
- // "RoomModel" name=FQN "{" imports+=Import* (dataClasses+=DataClass | protocolClasses+=ProtocolClass |
- // actorClasses+=ActorClass | subSystemClasses+=SubSystemClass | systems+=LogicalSystem)+ "}";
- public ParserRule getRule() { return rule; }
-
- //"RoomModel" name=FQN "{" imports+=Import* (dataClasses+=DataClass | protocolClasses+=ProtocolClass |
- //actorClasses+=ActorClass | subSystemClasses+=SubSystemClass | systems+=LogicalSystem)+ "}"
- public Group getGroup() { return cGroup; }
-
- //"RoomModel"
- public Keyword getRoomModelKeyword_0() { return cRoomModelKeyword_0; }
-
- //name=FQN
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //FQN
- public RuleCall getNameFQNParserRuleCall_1_0() { return cNameFQNParserRuleCall_1_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //imports+=Import*
- public Assignment getImportsAssignment_3() { return cImportsAssignment_3; }
-
- //Import
- public RuleCall getImportsImportParserRuleCall_3_0() { return cImportsImportParserRuleCall_3_0; }
-
- //(dataClasses+=DataClass | protocolClasses+=ProtocolClass | actorClasses+=ActorClass | subSystemClasses+=SubSystemClass |
- //systems+=LogicalSystem)+
- public Alternatives getAlternatives_4() { return cAlternatives_4; }
-
- //dataClasses+=DataClass
- public Assignment getDataClassesAssignment_4_0() { return cDataClassesAssignment_4_0; }
-
- //DataClass
- public RuleCall getDataClassesDataClassParserRuleCall_4_0_0() { return cDataClassesDataClassParserRuleCall_4_0_0; }
-
- //protocolClasses+=ProtocolClass
- public Assignment getProtocolClassesAssignment_4_1() { return cProtocolClassesAssignment_4_1; }
-
- //ProtocolClass
- public RuleCall getProtocolClassesProtocolClassParserRuleCall_4_1_0() { return cProtocolClassesProtocolClassParserRuleCall_4_1_0; }
-
- //actorClasses+=ActorClass
- public Assignment getActorClassesAssignment_4_2() { return cActorClassesAssignment_4_2; }
-
- //ActorClass
- public RuleCall getActorClassesActorClassParserRuleCall_4_2_0() { return cActorClassesActorClassParserRuleCall_4_2_0; }
-
- //subSystemClasses+=SubSystemClass
- public Assignment getSubSystemClassesAssignment_4_3() { return cSubSystemClassesAssignment_4_3; }
-
- //SubSystemClass
- public RuleCall getSubSystemClassesSubSystemClassParserRuleCall_4_3_0() { return cSubSystemClassesSubSystemClassParserRuleCall_4_3_0; }
-
- //systems+=LogicalSystem
- public Assignment getSystemsAssignment_4_4() { return cSystemsAssignment_4_4; }
-
- //LogicalSystem
- public RuleCall getSystemsLogicalSystemParserRuleCall_4_4_0() { return cSystemsLogicalSystemParserRuleCall_4_4_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
- }
-
- public class RoomClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RoomClass");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cDataClassParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cProtocolClassParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cStructureClassParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //RoomClass:
- // DataClass | ProtocolClass | StructureClass;
- public ParserRule getRule() { return rule; }
-
- //DataClass | ProtocolClass | StructureClass
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //DataClass
- public RuleCall getDataClassParserRuleCall_0() { return cDataClassParserRuleCall_0; }
-
- //ProtocolClass
- public RuleCall getProtocolClassParserRuleCall_1() { return cProtocolClassParserRuleCall_1; }
-
- //StructureClass
- public RuleCall getStructureClassParserRuleCall_2() { return cStructureClassParserRuleCall_2; }
- }
-
- public class StructureClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StructureClass");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cActorContainerClassParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cLogicalSystemParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //StructureClass:
- // ActorContainerClass | LogicalSystem;
- public ParserRule getRule() { return rule; }
-
- //ActorContainerClass | LogicalSystem
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //ActorContainerClass
- public RuleCall getActorContainerClassParserRuleCall_0() { return cActorContainerClassParserRuleCall_0; }
-
- //LogicalSystem
- public RuleCall getLogicalSystemParserRuleCall_1() { return cLogicalSystemParserRuleCall_1; }
- }
-
- public class ActorContainerClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorContainerClass");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cActorClassParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cSubSystemClassParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //ActorContainerClass:
- // ActorClass | SubSystemClass;
- public ParserRule getRule() { return rule; }
-
- //ActorClass | SubSystemClass
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //ActorClass
- public RuleCall getActorClassParserRuleCall_0() { return cActorClassParserRuleCall_0; }
-
- //SubSystemClass
- public RuleCall getSubSystemClassParserRuleCall_1() { return cSubSystemClassParserRuleCall_1; }
- }
-
- public class TypedIDElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TypedID");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cNameAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final RuleCall cNameIDTerminalRuleCall_0_0 = (RuleCall)cNameAssignment_0.eContents().get(0);
- private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cTypeTypeParserRuleCall_2_0 = (RuleCall)cTypeAssignment_2.eContents().get(0);
-
- //TypedID:
- // name=ID ":" type=Type;
- public ParserRule getRule() { return rule; }
-
- //name=ID ":" type=Type
- public Group getGroup() { return cGroup; }
-
- //name=ID
- public Assignment getNameAssignment_0() { return cNameAssignment_0; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_0_0() { return cNameIDTerminalRuleCall_0_0; }
-
- //":"
- public Keyword getColonKeyword_1() { return cColonKeyword_1; }
-
- //type=Type
- public Assignment getTypeAssignment_2() { return cTypeAssignment_2; }
-
- //Type
- public RuleCall getTypeTypeParserRuleCall_2_0() { return cTypeTypeParserRuleCall_2_0; }
- }
-
- public class FreeTypedIDElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FreeTypedID");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cNameAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final RuleCall cNameIDTerminalRuleCall_0_0 = (RuleCall)cNameAssignment_0.eContents().get(0);
- private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cTypeFreeTypeParserRuleCall_2_0 = (RuleCall)cTypeAssignment_2.eContents().get(0);
-
- //FreeTypedID:
- // name=ID ":" type=FreeType;
- public ParserRule getRule() { return rule; }
-
- //name=ID ":" type=FreeType
- public Group getGroup() { return cGroup; }
-
- //name=ID
- public Assignment getNameAssignment_0() { return cNameAssignment_0; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_0_0() { return cNameIDTerminalRuleCall_0_0; }
-
- //":"
- public Keyword getColonKeyword_1() { return cColonKeyword_1; }
-
- //type=FreeType
- public Assignment getTypeAssignment_2() { return cTypeAssignment_2; }
-
- //FreeType
- public RuleCall getTypeFreeTypeParserRuleCall_2_0() { return cTypeFreeTypeParserRuleCall_2_0; }
- }
-
- public class TypeElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Type");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final Assignment cPrimAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
- private final RuleCall cPrimPrimitiveTypeEnumRuleCall_0_0 = (RuleCall)cPrimAssignment_0.eContents().get(0);
- private final Assignment cTypeAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
- private final CrossReference cTypeDataClassCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0);
- private final RuleCall cTypeDataClassFQNParserRuleCall_1_0_1 = (RuleCall)cTypeDataClassCrossReference_1_0.eContents().get(1);
-
- //Type:
- // prim=PrimitiveType | type=[DataClass|FQN];
- public ParserRule getRule() { return rule; }
-
- //prim=PrimitiveType | type=[DataClass|FQN]
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //prim=PrimitiveType
- public Assignment getPrimAssignment_0() { return cPrimAssignment_0; }
-
- //PrimitiveType
- public RuleCall getPrimPrimitiveTypeEnumRuleCall_0_0() { return cPrimPrimitiveTypeEnumRuleCall_0_0; }
-
- //type=[DataClass|FQN]
- public Assignment getTypeAssignment_1() { return cTypeAssignment_1; }
-
- //[DataClass|FQN]
- public CrossReference getTypeDataClassCrossReference_1_0() { return cTypeDataClassCrossReference_1_0; }
-
- //FQN
- public RuleCall getTypeDataClassFQNParserRuleCall_1_0_1() { return cTypeDataClassFQNParserRuleCall_1_0_1; }
- }
-
- public class FreeTypeElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FreeType");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final Assignment cPrimAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
- private final RuleCall cPrimPrimitiveTypeEnumRuleCall_0_0 = (RuleCall)cPrimAssignment_0.eContents().get(0);
- private final Assignment cTypeAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
- private final RuleCall cTypeIDTerminalRuleCall_1_0 = (RuleCall)cTypeAssignment_1.eContents().get(0);
-
- //FreeType:
- // prim=PrimitiveType | type=ID;
- public ParserRule getRule() { return rule; }
-
- //prim=PrimitiveType | type=ID
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //prim=PrimitiveType
- public Assignment getPrimAssignment_0() { return cPrimAssignment_0; }
-
- //PrimitiveType
- public RuleCall getPrimPrimitiveTypeEnumRuleCall_0_0() { return cPrimPrimitiveTypeEnumRuleCall_0_0; }
-
- //type=ID
- public Assignment getTypeAssignment_1() { return cTypeAssignment_1; }
-
- //ID
- public RuleCall getTypeIDTerminalRuleCall_1_0() { return cTypeIDTerminalRuleCall_1_0; }
- }
-
- public class DataClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DataClass");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cDataClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
- private final Keyword cExtendsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
- private final Assignment cBaseAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
- private final CrossReference cBaseDataClassCrossReference_2_1_0 = (CrossReference)cBaseAssignment_2_1.eContents().get(0);
- private final RuleCall cBaseDataClassFQNParserRuleCall_2_1_0_1 = (RuleCall)cBaseDataClassCrossReference_2_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
- private final Assignment cImportsAssignment_4 = (Assignment)cGroup.eContents().get(4);
- private final RuleCall cImportsImportParserRuleCall_4_0 = (RuleCall)cImportsAssignment_4.eContents().get(0);
- private final Assignment cAttributesAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cAttributesAttributeParserRuleCall_5_0 = (RuleCall)cAttributesAssignment_5.eContents().get(0);
- private final Assignment cOperationsAssignment_6 = (Assignment)cGroup.eContents().get(6);
- private final RuleCall cOperationsOperationParserRuleCall_6_0 = (RuleCall)cOperationsAssignment_6.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
-
- //// TODOHRR: define detail level language?
- //
- //DataClass:
- // "DataClass" name=ID ("extends" base=[DataClass|FQN])? "{" imports+=Import* attributes+=Attribute+
- // operations+=Operation* "}";
- public ParserRule getRule() { return rule; }
-
- //"DataClass" name=ID ("extends" base=[DataClass|FQN])? "{" imports+=Import* attributes+=Attribute+ operations+=Operation*
- //"}"
- public Group getGroup() { return cGroup; }
-
- //"DataClass"
- public Keyword getDataClassKeyword_0() { return cDataClassKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //("extends" base=[DataClass|FQN])?
- public Group getGroup_2() { return cGroup_2; }
-
- //"extends"
- public Keyword getExtendsKeyword_2_0() { return cExtendsKeyword_2_0; }
-
- //base=[DataClass|FQN]
- public Assignment getBaseAssignment_2_1() { return cBaseAssignment_2_1; }
-
- //[DataClass|FQN]
- public CrossReference getBaseDataClassCrossReference_2_1_0() { return cBaseDataClassCrossReference_2_1_0; }
-
- //FQN
- public RuleCall getBaseDataClassFQNParserRuleCall_2_1_0_1() { return cBaseDataClassFQNParserRuleCall_2_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
-
- //imports+=Import*
- public Assignment getImportsAssignment_4() { return cImportsAssignment_4; }
-
- //Import
- public RuleCall getImportsImportParserRuleCall_4_0() { return cImportsImportParserRuleCall_4_0; }
-
- //attributes+=Attribute+
- public Assignment getAttributesAssignment_5() { return cAttributesAssignment_5; }
-
- //Attribute
- public RuleCall getAttributesAttributeParserRuleCall_5_0() { return cAttributesAttributeParserRuleCall_5_0; }
-
- //operations+=Operation*
- public Assignment getOperationsAssignment_6() { return cOperationsAssignment_6; }
-
- //Operation
- public RuleCall getOperationsOperationParserRuleCall_6_0() { return cOperationsOperationParserRuleCall_6_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
- }
-
- public class AttributeElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Attribute");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cAttributeKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
- private final Keyword cLeftSquareBracketKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
- private final Assignment cSizeAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
- private final RuleCall cSizeINTTerminalRuleCall_2_1_0 = (RuleCall)cSizeAssignment_2_1.eContents().get(0);
- private final Keyword cRightSquareBracketKeyword_2_2 = (Keyword)cGroup_2.eContents().get(2);
- private final Keyword cColonKeyword_3 = (Keyword)cGroup.eContents().get(3);
- private final Assignment cTypeAssignment_4 = (Assignment)cGroup.eContents().get(4);
- private final RuleCall cTypeTypeParserRuleCall_4_0 = (RuleCall)cTypeAssignment_4.eContents().get(0);
-
- //Attribute:
- // "Attribute" name=ID ("[" size=INT "]")? ":" type=Type;
- public ParserRule getRule() { return rule; }
-
- //"Attribute" name=ID ("[" size=INT "]")? ":" type=Type
- public Group getGroup() { return cGroup; }
-
- //"Attribute"
- public Keyword getAttributeKeyword_0() { return cAttributeKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //("[" size=INT "]")?
- public Group getGroup_2() { return cGroup_2; }
-
- //"["
- public Keyword getLeftSquareBracketKeyword_2_0() { return cLeftSquareBracketKeyword_2_0; }
-
- //size=INT
- public Assignment getSizeAssignment_2_1() { return cSizeAssignment_2_1; }
-
- //INT
- public RuleCall getSizeINTTerminalRuleCall_2_1_0() { return cSizeINTTerminalRuleCall_2_1_0; }
-
- //"]"
- public Keyword getRightSquareBracketKeyword_2_2() { return cRightSquareBracketKeyword_2_2; }
-
- //":"
- public Keyword getColonKeyword_3() { return cColonKeyword_3; }
-
- //type=Type
- public Assignment getTypeAssignment_4() { return cTypeAssignment_4; }
-
- //Type
- public RuleCall getTypeTypeParserRuleCall_4_0() { return cTypeTypeParserRuleCall_4_0; }
- }
-
- public class OperationElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Operation");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cOperationKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Assignment cArgumentsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
- private final RuleCall cArgumentsFreeTypedIDParserRuleCall_3_0_0 = (RuleCall)cArgumentsAssignment_3_0.eContents().get(0);
- private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
- private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
- private final Assignment cArgumentsAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
- private final RuleCall cArgumentsFreeTypedIDParserRuleCall_3_1_1_0 = (RuleCall)cArgumentsAssignment_3_1_1.eContents().get(0);
- private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
- private final Keyword cColonKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
- private final Assignment cReturntypeAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
- private final RuleCall cReturntypeFreeTypeParserRuleCall_5_1_0 = (RuleCall)cReturntypeAssignment_5_1.eContents().get(0);
- private final Assignment cDetailCodeAssignment_6 = (Assignment)cGroup.eContents().get(6);
- private final RuleCall cDetailCodeDetailCodeParserRuleCall_6_0 = (RuleCall)cDetailCodeAssignment_6.eContents().get(0);
-
- //// TODOHRR: pass arguments and return value by value/reference
- //
- //Operation:
- // "Operation" name=ID "(" (arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)? ")" (":" returntype=FreeType)?
- // detailCode=DetailCode;
- public ParserRule getRule() { return rule; }
-
- //"Operation" name=ID "(" (arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)? ")" (":" returntype=FreeType)?
- //detailCode=DetailCode
- public Group getGroup() { return cGroup; }
-
- //"Operation"
- public Keyword getOperationKeyword_0() { return cOperationKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //"("
- public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
-
- //(arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)?
- public Group getGroup_3() { return cGroup_3; }
-
- //arguments+=FreeTypedID
- public Assignment getArgumentsAssignment_3_0() { return cArgumentsAssignment_3_0; }
-
- //FreeTypedID
- public RuleCall getArgumentsFreeTypedIDParserRuleCall_3_0_0() { return cArgumentsFreeTypedIDParserRuleCall_3_0_0; }
-
- //("," arguments+=FreeTypedID)*
- public Group getGroup_3_1() { return cGroup_3_1; }
-
- //","
- public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
-
- //arguments+=FreeTypedID
- public Assignment getArgumentsAssignment_3_1_1() { return cArgumentsAssignment_3_1_1; }
-
- //FreeTypedID
- public RuleCall getArgumentsFreeTypedIDParserRuleCall_3_1_1_0() { return cArgumentsFreeTypedIDParserRuleCall_3_1_1_0; }
-
- //")"
- public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
-
- //(":" returntype=FreeType)?
- public Group getGroup_5() { return cGroup_5; }
-
- //":"
- public Keyword getColonKeyword_5_0() { return cColonKeyword_5_0; }
-
- //returntype=FreeType
- public Assignment getReturntypeAssignment_5_1() { return cReturntypeAssignment_5_1; }
-
- //FreeType
- public RuleCall getReturntypeFreeTypeParserRuleCall_5_1_0() { return cReturntypeFreeTypeParserRuleCall_5_1_0; }
-
- //detailCode=DetailCode
- public Assignment getDetailCodeAssignment_6() { return cDetailCodeAssignment_6; }
-
- //DetailCode
- public RuleCall getDetailCodeDetailCodeParserRuleCall_6_0() { return cDetailCodeDetailCodeParserRuleCall_6_0; }
- }
-
- public class ProtocolClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProtocolClass");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cProtocolClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
- private final Keyword cExtendsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
- private final Assignment cBaseAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
- private final CrossReference cBaseProtocolClassCrossReference_2_1_0 = (CrossReference)cBaseAssignment_2_1.eContents().get(0);
- private final RuleCall cBaseProtocolClassFQNParserRuleCall_2_1_0_1 = (RuleCall)cBaseProtocolClassCrossReference_2_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
- private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
- private final Keyword cUsercode1Keyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
- private final Assignment cUserCode1Assignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
- private final RuleCall cUserCode1DetailCodeParserRuleCall_4_1_0 = (RuleCall)cUserCode1Assignment_4_1.eContents().get(0);
- private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
- private final Keyword cUsercode2Keyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
- private final Assignment cUserCode2Assignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
- private final RuleCall cUserCode2DetailCodeParserRuleCall_5_1_0 = (RuleCall)cUserCode2Assignment_5_1.eContents().get(0);
- private final Keyword cIncomingKeyword_6 = (Keyword)cGroup.eContents().get(6);
- private final Keyword cLeftCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
- private final Assignment cIncomingMessagesAssignment_8 = (Assignment)cGroup.eContents().get(8);
- private final RuleCall cIncomingMessagesMessageParserRuleCall_8_0 = (RuleCall)cIncomingMessagesAssignment_8.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
- private final Keyword cOutgoingKeyword_10 = (Keyword)cGroup.eContents().get(10);
- private final Keyword cLeftCurlyBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
- private final Assignment cOutgoingMessagesAssignment_12 = (Assignment)cGroup.eContents().get(12);
- private final RuleCall cOutgoingMessagesMessageParserRuleCall_12_0 = (RuleCall)cOutgoingMessagesAssignment_12.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_13 = (Keyword)cGroup.eContents().get(13);
- private final Group cGroup_14 = (Group)cGroup.eContents().get(14);
- private final Keyword cRegularKeyword_14_0 = (Keyword)cGroup_14.eContents().get(0);
- private final Keyword cPortClassKeyword_14_1 = (Keyword)cGroup_14.eContents().get(1);
- private final Assignment cRegularAssignment_14_2 = (Assignment)cGroup_14.eContents().get(2);
- private final RuleCall cRegularPortClassParserRuleCall_14_2_0 = (RuleCall)cRegularAssignment_14_2.eContents().get(0);
- private final Group cGroup_15 = (Group)cGroup.eContents().get(15);
- private final Keyword cConjugateKeyword_15_0 = (Keyword)cGroup_15.eContents().get(0);
- private final Keyword cPortClassKeyword_15_1 = (Keyword)cGroup_15.eContents().get(1);
- private final Assignment cConjugateAssignment_15_2 = (Assignment)cGroup_15.eContents().get(2);
- private final RuleCall cConjugatePortClassParserRuleCall_15_2_0 = (RuleCall)cConjugateAssignment_15_2.eContents().get(0);
- private final Assignment cSemanticsAssignment_16 = (Assignment)cGroup.eContents().get(16);
- private final RuleCall cSemanticsProtocolSemanticsParserRuleCall_16_0 = (RuleCall)cSemanticsAssignment_16.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_17 = (Keyword)cGroup.eContents().get(17);
-
- //// **************************************************************
- //
- //// protocol class
- //
- //ProtocolClass:
- // "ProtocolClass" name=ID ("extends" base=[ProtocolClass|FQN])? "{" ("usercode1" userCode1=DetailCode)? ("usercode2"
- // userCode2=DetailCode)? "incoming" "{" incomingMessages+=Message* "}" "outgoing" "{" outgoingMessages+=Message* "}"
- // ("regular" "PortClass" regular=PortClass)? ("conjugate" "PortClass" conjugate=PortClass)? semantics=ProtocolSemantics?
- // "}";
- public ParserRule getRule() { return rule; }
-
- //"ProtocolClass" name=ID ("extends" base=[ProtocolClass|FQN])? "{" ("usercode1" userCode1=DetailCode)? ("usercode2"
- //userCode2=DetailCode)? "incoming" "{" incomingMessages+=Message* "}" "outgoing" "{" outgoingMessages+=Message* "}"
- //("regular" "PortClass" regular=PortClass)? ("conjugate" "PortClass" conjugate=PortClass)? semantics=ProtocolSemantics?
- //"}"
- public Group getGroup() { return cGroup; }
-
- //"ProtocolClass"
- public Keyword getProtocolClassKeyword_0() { return cProtocolClassKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //("extends" base=[ProtocolClass|FQN])?
- public Group getGroup_2() { return cGroup_2; }
-
- //"extends"
- public Keyword getExtendsKeyword_2_0() { return cExtendsKeyword_2_0; }
-
- //base=[ProtocolClass|FQN]
- public Assignment getBaseAssignment_2_1() { return cBaseAssignment_2_1; }
-
- //[ProtocolClass|FQN]
- public CrossReference getBaseProtocolClassCrossReference_2_1_0() { return cBaseProtocolClassCrossReference_2_1_0; }
-
- //FQN
- public RuleCall getBaseProtocolClassFQNParserRuleCall_2_1_0_1() { return cBaseProtocolClassFQNParserRuleCall_2_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
-
- //("usercode1" userCode1=DetailCode)?
- public Group getGroup_4() { return cGroup_4; }
-
- //"usercode1"
- public Keyword getUsercode1Keyword_4_0() { return cUsercode1Keyword_4_0; }
-
- //userCode1=DetailCode
- public Assignment getUserCode1Assignment_4_1() { return cUserCode1Assignment_4_1; }
-
- //DetailCode
- public RuleCall getUserCode1DetailCodeParserRuleCall_4_1_0() { return cUserCode1DetailCodeParserRuleCall_4_1_0; }
-
- //("usercode2" userCode2=DetailCode)?
- public Group getGroup_5() { return cGroup_5; }
-
- //"usercode2"
- public Keyword getUsercode2Keyword_5_0() { return cUsercode2Keyword_5_0; }
-
- //userCode2=DetailCode
- public Assignment getUserCode2Assignment_5_1() { return cUserCode2Assignment_5_1; }
-
- //DetailCode
- public RuleCall getUserCode2DetailCodeParserRuleCall_5_1_0() { return cUserCode2DetailCodeParserRuleCall_5_1_0; }
-
- //"incoming"
- public Keyword getIncomingKeyword_6() { return cIncomingKeyword_6; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_7() { return cLeftCurlyBracketKeyword_7; }
-
- //incomingMessages+=Message*
- public Assignment getIncomingMessagesAssignment_8() { return cIncomingMessagesAssignment_8; }
-
- //Message
- public RuleCall getIncomingMessagesMessageParserRuleCall_8_0() { return cIncomingMessagesMessageParserRuleCall_8_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
-
- //"outgoing"
- public Keyword getOutgoingKeyword_10() { return cOutgoingKeyword_10; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_11() { return cLeftCurlyBracketKeyword_11; }
-
- //outgoingMessages+=Message*
- public Assignment getOutgoingMessagesAssignment_12() { return cOutgoingMessagesAssignment_12; }
-
- //Message
- public RuleCall getOutgoingMessagesMessageParserRuleCall_12_0() { return cOutgoingMessagesMessageParserRuleCall_12_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_13() { return cRightCurlyBracketKeyword_13; }
-
- //("regular" "PortClass" regular=PortClass)?
- public Group getGroup_14() { return cGroup_14; }
-
- //"regular"
- public Keyword getRegularKeyword_14_0() { return cRegularKeyword_14_0; }
-
- //"PortClass"
- public Keyword getPortClassKeyword_14_1() { return cPortClassKeyword_14_1; }
-
- //regular=PortClass
- public Assignment getRegularAssignment_14_2() { return cRegularAssignment_14_2; }
-
- //PortClass
- public RuleCall getRegularPortClassParserRuleCall_14_2_0() { return cRegularPortClassParserRuleCall_14_2_0; }
-
- //("conjugate" "PortClass" conjugate=PortClass)?
- public Group getGroup_15() { return cGroup_15; }
-
- //"conjugate"
- public Keyword getConjugateKeyword_15_0() { return cConjugateKeyword_15_0; }
-
- //"PortClass"
- public Keyword getPortClassKeyword_15_1() { return cPortClassKeyword_15_1; }
-
- //conjugate=PortClass
- public Assignment getConjugateAssignment_15_2() { return cConjugateAssignment_15_2; }
-
- //PortClass
- public RuleCall getConjugatePortClassParserRuleCall_15_2_0() { return cConjugatePortClassParserRuleCall_15_2_0; }
-
- //semantics=ProtocolSemantics?
- public Assignment getSemanticsAssignment_16() { return cSemanticsAssignment_16; }
-
- //ProtocolSemantics
- public RuleCall getSemanticsProtocolSemanticsParserRuleCall_16_0() { return cSemanticsProtocolSemanticsParserRuleCall_16_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_17() { return cRightCurlyBracketKeyword_17; }
- }
-
- public class MessageElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Message");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cMessageKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Assignment cArgumentsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
- private final RuleCall cArgumentsTypedIDParserRuleCall_3_0_0 = (RuleCall)cArgumentsAssignment_3_0.eContents().get(0);
- private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
- private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
- private final Assignment cArgumentsAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
- private final RuleCall cArgumentsTypedIDParserRuleCall_3_1_1_0 = (RuleCall)cArgumentsAssignment_3_1_1.eContents().get(0);
- private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
-
- //Message:
- // "Message" name=ID "(" (arguments+=TypedID ("," arguments+=TypedID)*)? ")";
- public ParserRule getRule() { return rule; }
-
- //"Message" name=ID "(" (arguments+=TypedID ("," arguments+=TypedID)*)? ")"
- public Group getGroup() { return cGroup; }
-
- //"Message"
- public Keyword getMessageKeyword_0() { return cMessageKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //"("
- public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
-
- //(arguments+=TypedID ("," arguments+=TypedID)*)?
- public Group getGroup_3() { return cGroup_3; }
-
- //arguments+=TypedID
- public Assignment getArgumentsAssignment_3_0() { return cArgumentsAssignment_3_0; }
-
- //TypedID
- public RuleCall getArgumentsTypedIDParserRuleCall_3_0_0() { return cArgumentsTypedIDParserRuleCall_3_0_0; }
-
- //("," arguments+=TypedID)*
- public Group getGroup_3_1() { return cGroup_3_1; }
-
- //","
- public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
-
- //arguments+=TypedID
- public Assignment getArgumentsAssignment_3_1_1() { return cArgumentsAssignment_3_1_1; }
-
- //TypedID
- public RuleCall getArgumentsTypedIDParserRuleCall_3_1_1_0() { return cArgumentsTypedIDParserRuleCall_3_1_1_0; }
-
- //")"
- public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
- }
-
- public class PortClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PortClass");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
- private final Keyword cUsercodeKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
- private final Assignment cUserCodeAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
- private final RuleCall cUserCodeDetailCodeParserRuleCall_1_1_0 = (RuleCall)cUserCodeAssignment_1_1.eContents().get(0);
- private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
- private final Assignment cAttributesAssignment_2_0 = (Assignment)cAlternatives_2.eContents().get(0);
- private final RuleCall cAttributesAttributeParserRuleCall_2_0_0 = (RuleCall)cAttributesAssignment_2_0.eContents().get(0);
- private final Assignment cOperationsAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
- private final RuleCall cOperationsOperationParserRuleCall_2_1_0 = (RuleCall)cOperationsAssignment_2_1.eContents().get(0);
- private final Assignment cMsgHandlersAssignment_2_2 = (Assignment)cAlternatives_2.eContents().get(2);
- private final RuleCall cMsgHandlersMessageHandlerParserRuleCall_2_2_0 = (RuleCall)cMsgHandlersAssignment_2_2.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-
- //PortClass:
- // "{" ("usercode" userCode=DetailCode)? (attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+
- // "}";
- public ParserRule getRule() { return rule; }
-
- //"{" ("usercode" userCode=DetailCode)? (attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+ "}"
- public Group getGroup() { return cGroup; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
-
- //("usercode" userCode=DetailCode)?
- public Group getGroup_1() { return cGroup_1; }
-
- //"usercode"
- public Keyword getUsercodeKeyword_1_0() { return cUsercodeKeyword_1_0; }
-
- //userCode=DetailCode
- public Assignment getUserCodeAssignment_1_1() { return cUserCodeAssignment_1_1; }
-
- //DetailCode
- public RuleCall getUserCodeDetailCodeParserRuleCall_1_1_0() { return cUserCodeDetailCodeParserRuleCall_1_1_0; }
-
- //(attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+
- public Alternatives getAlternatives_2() { return cAlternatives_2; }
-
- //attributes+=Attribute
- public Assignment getAttributesAssignment_2_0() { return cAttributesAssignment_2_0; }
-
- //Attribute
- public RuleCall getAttributesAttributeParserRuleCall_2_0_0() { return cAttributesAttributeParserRuleCall_2_0_0; }
-
- //operations+=Operation
- public Assignment getOperationsAssignment_2_1() { return cOperationsAssignment_2_1; }
-
- //Operation
- public RuleCall getOperationsOperationParserRuleCall_2_1_0() { return cOperationsOperationParserRuleCall_2_1_0; }
-
- //msgHandlers+=MessageHandler
- public Assignment getMsgHandlersAssignment_2_2() { return cMsgHandlersAssignment_2_2; }
-
- //MessageHandler
- public RuleCall getMsgHandlersMessageHandlerParserRuleCall_2_2_0() { return cMsgHandlersMessageHandlerParserRuleCall_2_2_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
- }
-
- public class MessageHandlerElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MessageHandler");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cHandleKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cMsgAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cMsgMessageCrossReference_1_0 = (CrossReference)cMsgAssignment_1.eContents().get(0);
- private final RuleCall cMsgMessageIDTerminalRuleCall_1_0_1 = (RuleCall)cMsgMessageCrossReference_1_0.eContents().get(1);
- private final Assignment cDetailCodeAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cDetailCodeDetailCodeParserRuleCall_2_0 = (RuleCall)cDetailCodeAssignment_2.eContents().get(0);
-
- //MessageHandler:
- // "handle" msg=[Message] detailCode=DetailCode;
- public ParserRule getRule() { return rule; }
-
- //"handle" msg=[Message] detailCode=DetailCode
- public Group getGroup() { return cGroup; }
-
- //"handle"
- public Keyword getHandleKeyword_0() { return cHandleKeyword_0; }
-
- //msg=[Message]
- public Assignment getMsgAssignment_1() { return cMsgAssignment_1; }
-
- //[Message]
- public CrossReference getMsgMessageCrossReference_1_0() { return cMsgMessageCrossReference_1_0; }
-
- //ID
- public RuleCall getMsgMessageIDTerminalRuleCall_1_0_1() { return cMsgMessageIDTerminalRuleCall_1_0_1; }
-
- //detailCode=DetailCode
- public Assignment getDetailCodeAssignment_2() { return cDetailCodeAssignment_2; }
-
- //DetailCode
- public RuleCall getDetailCodeDetailCodeParserRuleCall_2_0() { return cDetailCodeDetailCodeParserRuleCall_2_0; }
- }
-
- public class ProtocolSemanticsElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProtocolSemantics");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cSemanticsKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cRulesAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cRulesSemanticsRuleParserRuleCall_2_0 = (RuleCall)cRulesAssignment_2.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-
- //ProtocolSemantics:
- // "semantics" "{" rules+=SemanticsRule+ "}";
- public ParserRule getRule() { return rule; }
-
- //"semantics" "{" rules+=SemanticsRule+ "}"
- public Group getGroup() { return cGroup; }
-
- //"semantics"
- public Keyword getSemanticsKeyword_0() { return cSemanticsKeyword_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; }
-
- //rules+=SemanticsRule+
- public Assignment getRulesAssignment_2() { return cRulesAssignment_2; }
-
- //SemanticsRule
- public RuleCall getRulesSemanticsRuleParserRuleCall_2_0() { return cRulesSemanticsRuleParserRuleCall_2_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
- }
-
- public class SemanticsRuleElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SemanticsRule");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cSemanticsInRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cSemanticsOutRuleParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //SemanticsRule:
- // SemanticsInRule | SemanticsOutRule;
- public ParserRule getRule() { return rule; }
-
- //SemanticsInRule | SemanticsOutRule
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //SemanticsInRule
- public RuleCall getSemanticsInRuleParserRuleCall_0() { return cSemanticsInRuleParserRuleCall_0; }
-
- //SemanticsOutRule
- public RuleCall getSemanticsOutRuleParserRuleCall_1() { return cSemanticsOutRuleParserRuleCall_1; }
- }
-
- public class SemanticsInRuleElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SemanticsInRule");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cInKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cMsgAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cMsgMessageCrossReference_1_0 = (CrossReference)cMsgAssignment_1.eContents().get(0);
- private final RuleCall cMsgMessageIDTerminalRuleCall_1_0_1 = (RuleCall)cMsgMessageCrossReference_1_0.eContents().get(1);
- private final Keyword cHyphenMinusGreaterThanSignKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
- private final Assignment cFollowUpsAssignment_4 = (Assignment)cGroup.eContents().get(4);
- private final RuleCall cFollowUpsSemanticsRuleParserRuleCall_4_0 = (RuleCall)cFollowUpsAssignment_4.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-
- //SemanticsInRule:
- // "in" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
- public ParserRule getRule() { return rule; }
-
- //"in" msg=[Message] "->" "{" followUps+=SemanticsRule* "}"
- public Group getGroup() { return cGroup; }
-
- //"in"
- public Keyword getInKeyword_0() { return cInKeyword_0; }
-
- //msg=[Message]
- public Assignment getMsgAssignment_1() { return cMsgAssignment_1; }
-
- //[Message]
- public CrossReference getMsgMessageCrossReference_1_0() { return cMsgMessageCrossReference_1_0; }
-
- //ID
- public RuleCall getMsgMessageIDTerminalRuleCall_1_0_1() { return cMsgMessageIDTerminalRuleCall_1_0_1; }
-
- //"->"
- public Keyword getHyphenMinusGreaterThanSignKeyword_2() { return cHyphenMinusGreaterThanSignKeyword_2; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
-
- //followUps+=SemanticsRule*
- public Assignment getFollowUpsAssignment_4() { return cFollowUpsAssignment_4; }
-
- //SemanticsRule
- public RuleCall getFollowUpsSemanticsRuleParserRuleCall_4_0() { return cFollowUpsSemanticsRuleParserRuleCall_4_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
- }
-
- public class SemanticsOutRuleElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SemanticsOutRule");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cOutKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cMsgAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cMsgMessageCrossReference_1_0 = (CrossReference)cMsgAssignment_1.eContents().get(0);
- private final RuleCall cMsgMessageIDTerminalRuleCall_1_0_1 = (RuleCall)cMsgMessageCrossReference_1_0.eContents().get(1);
- private final Keyword cHyphenMinusGreaterThanSignKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
- private final Assignment cFollowUpsAssignment_4 = (Assignment)cGroup.eContents().get(4);
- private final RuleCall cFollowUpsSemanticsRuleParserRuleCall_4_0 = (RuleCall)cFollowUpsAssignment_4.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-
- //SemanticsOutRule:
- // "out" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
- public ParserRule getRule() { return rule; }
-
- //"out" msg=[Message] "->" "{" followUps+=SemanticsRule* "}"
- public Group getGroup() { return cGroup; }
-
- //"out"
- public Keyword getOutKeyword_0() { return cOutKeyword_0; }
-
- //msg=[Message]
- public Assignment getMsgAssignment_1() { return cMsgAssignment_1; }
-
- //[Message]
- public CrossReference getMsgMessageCrossReference_1_0() { return cMsgMessageCrossReference_1_0; }
-
- //ID
- public RuleCall getMsgMessageIDTerminalRuleCall_1_0_1() { return cMsgMessageIDTerminalRuleCall_1_0_1; }
-
- //"->"
- public Keyword getHyphenMinusGreaterThanSignKeyword_2() { return cHyphenMinusGreaterThanSignKeyword_2; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
-
- //followUps+=SemanticsRule*
- public Assignment getFollowUpsAssignment_4() { return cFollowUpsAssignment_4; }
-
- //SemanticsRule
- public RuleCall getFollowUpsSemanticsRuleParserRuleCall_4_0() { return cFollowUpsSemanticsRuleParserRuleCall_4_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
- }
-
- public class ActorClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorClass");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cAbstractAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final Keyword cAbstractAbstractKeyword_0_0 = (Keyword)cAbstractAssignment_0.eContents().get(0);
- private final Keyword cActorClassKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Keyword cExtendsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
- private final Assignment cBaseAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
- private final CrossReference cBaseActorClassCrossReference_3_1_0 = (CrossReference)cBaseAssignment_3_1.eContents().get(0);
- private final RuleCall cBaseActorClassFQNParserRuleCall_3_1_0_1 = (RuleCall)cBaseActorClassCrossReference_3_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
- private final Keyword cInterfaceKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
- private final Assignment cIfPortsAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
- private final RuleCall cIfPortsPortParserRuleCall_5_2_0 = (RuleCall)cIfPortsAssignment_5_2.eContents().get(0);
- private final Assignment cIfSPPsAssignment_5_3 = (Assignment)cGroup_5.eContents().get(3);
- private final RuleCall cIfSPPsSPPRefParserRuleCall_5_3_0 = (RuleCall)cIfSPPsAssignment_5_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
- private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
- private final Keyword cStructureKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_6_1 = (Keyword)cGroup_6.eContents().get(1);
- private final Group cGroup_6_2 = (Group)cGroup_6.eContents().get(2);
- private final Keyword cUsercode1Keyword_6_2_0 = (Keyword)cGroup_6_2.eContents().get(0);
- private final Assignment cUserCode1Assignment_6_2_1 = (Assignment)cGroup_6_2.eContents().get(1);
- private final RuleCall cUserCode1DetailCodeParserRuleCall_6_2_1_0 = (RuleCall)cUserCode1Assignment_6_2_1.eContents().get(0);
- private final Group cGroup_6_3 = (Group)cGroup_6.eContents().get(3);
- private final Keyword cUsercode2Keyword_6_3_0 = (Keyword)cGroup_6_3.eContents().get(0);
- private final Assignment cUserCode2Assignment_6_3_1 = (Assignment)cGroup_6_3.eContents().get(1);
- private final RuleCall cUserCode2DetailCodeParserRuleCall_6_3_1_0 = (RuleCall)cUserCode2Assignment_6_3_1.eContents().get(0);
- private final Alternatives cAlternatives_6_4 = (Alternatives)cGroup_6.eContents().get(4);
- private final Assignment cIntPortsAssignment_6_4_0 = (Assignment)cAlternatives_6_4.eContents().get(0);
- private final RuleCall cIntPortsPortParserRuleCall_6_4_0_0 = (RuleCall)cIntPortsAssignment_6_4_0.eContents().get(0);
- private final Assignment cExtPortsAssignment_6_4_1 = (Assignment)cAlternatives_6_4.eContents().get(1);
- private final RuleCall cExtPortsExternalPortParserRuleCall_6_4_1_0 = (RuleCall)cExtPortsAssignment_6_4_1.eContents().get(0);
- private final Assignment cServiceImplementationsAssignment_6_5 = (Assignment)cGroup_6.eContents().get(5);
- private final RuleCall cServiceImplementationsServiceImplementationParserRuleCall_6_5_0 = (RuleCall)cServiceImplementationsAssignment_6_5.eContents().get(0);
- private final Assignment cStrSAPsAssignment_6_6 = (Assignment)cGroup_6.eContents().get(6);
- private final RuleCall cStrSAPsSAPRefParserRuleCall_6_6_0 = (RuleCall)cStrSAPsAssignment_6_6.eContents().get(0);
- private final Assignment cAttributesAssignment_6_7 = (Assignment)cGroup_6.eContents().get(7);
- private final RuleCall cAttributesAttributeParserRuleCall_6_7_0 = (RuleCall)cAttributesAssignment_6_7.eContents().get(0);
- private final Assignment cActorRefsAssignment_6_8 = (Assignment)cGroup_6.eContents().get(8);
- private final RuleCall cActorRefsActorRefParserRuleCall_6_8_0 = (RuleCall)cActorRefsAssignment_6_8.eContents().get(0);
- private final Assignment cBindingsAssignment_6_9 = (Assignment)cGroup_6.eContents().get(9);
- private final RuleCall cBindingsBindingParserRuleCall_6_9_0 = (RuleCall)cBindingsAssignment_6_9.eContents().get(0);
- private final Assignment cConnectionsAssignment_6_10 = (Assignment)cGroup_6.eContents().get(10);
- private final RuleCall cConnectionsLayerConnectionParserRuleCall_6_10_0 = (RuleCall)cConnectionsAssignment_6_10.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_6_11 = (Keyword)cGroup_6.eContents().get(11);
- private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
- private final Keyword cBehaviorKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_7_1 = (Keyword)cGroup_7.eContents().get(1);
- private final Assignment cOperationsAssignment_7_2 = (Assignment)cGroup_7.eContents().get(2);
- private final RuleCall cOperationsOperationParserRuleCall_7_2_0 = (RuleCall)cOperationsAssignment_7_2.eContents().get(0);
- private final Assignment cStateMachineAssignment_7_3 = (Assignment)cGroup_7.eContents().get(3);
- private final RuleCall cStateMachineStateMachineParserRuleCall_7_3_0 = (RuleCall)cStateMachineAssignment_7_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_7_4 = (Keyword)cGroup_7.eContents().get(4);
- private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
-
- //// **************************************************************
- //
- //// actor class
- //
- //// some notes on ports
- //
- ////
- //
- //// in ROOM ports can be contained in the structure and/or the interface
- //
- //// p in s ==> internal end port
- //
- //// p in i ==> relay port
- //
- //// p in i and p in s ==> external end port
- //
- //// since double containment is not supported we decided to define external ports as reference to interface ports
- //
- //ActorClass:
- // abstract?="abstract"? "ActorClass" name=ID ("extends" base=[ActorClass|FQN])? "{" ("Interface" "{" ifPorts+=Port*
- // ifSPPs+=SPPRef* "}")? ("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)?
- // (intPorts+=Port | extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef*
- // attributes+=Attribute* actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")? ("Behavior" "{"
- // operations+=Operation* stateMachine=StateMachine? "}")? "}";
- public ParserRule getRule() { return rule; }
-
- //abstract?="abstract"? "ActorClass" name=ID ("extends" base=[ActorClass|FQN])? "{" ("Interface" "{" ifPorts+=Port*
- //ifSPPs+=SPPRef* "}")? ("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)?
- //(intPorts+=Port | extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef*
- //attributes+=Attribute* actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")? ("Behavior" "{"
- //operations+=Operation* stateMachine=StateMachine? "}")? "}"
- public Group getGroup() { return cGroup; }
-
- //abstract?="abstract"?
- public Assignment getAbstractAssignment_0() { return cAbstractAssignment_0; }
-
- //"abstract"
- public Keyword getAbstractAbstractKeyword_0_0() { return cAbstractAbstractKeyword_0_0; }
-
- //"ActorClass"
- public Keyword getActorClassKeyword_1() { return cActorClassKeyword_1; }
-
- //name=ID
- public Assignment getNameAssignment_2() { return cNameAssignment_2; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
-
- //("extends" base=[ActorClass|FQN])?
- public Group getGroup_3() { return cGroup_3; }
-
- //"extends"
- public Keyword getExtendsKeyword_3_0() { return cExtendsKeyword_3_0; }
-
- //base=[ActorClass|FQN]
- public Assignment getBaseAssignment_3_1() { return cBaseAssignment_3_1; }
-
- //[ActorClass|FQN]
- public CrossReference getBaseActorClassCrossReference_3_1_0() { return cBaseActorClassCrossReference_3_1_0; }
-
- //FQN
- public RuleCall getBaseActorClassFQNParserRuleCall_3_1_0_1() { return cBaseActorClassFQNParserRuleCall_3_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
-
- //("Interface" "{" ifPorts+=Port* ifSPPs+=SPPRef* "}")?
- public Group getGroup_5() { return cGroup_5; }
-
- //"Interface"
- public Keyword getInterfaceKeyword_5_0() { return cInterfaceKeyword_5_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_5_1() { return cLeftCurlyBracketKeyword_5_1; }
-
- //ifPorts+=Port*
- public Assignment getIfPortsAssignment_5_2() { return cIfPortsAssignment_5_2; }
-
- //Port
- public RuleCall getIfPortsPortParserRuleCall_5_2_0() { return cIfPortsPortParserRuleCall_5_2_0; }
-
- //ifSPPs+=SPPRef*
- public Assignment getIfSPPsAssignment_5_3() { return cIfSPPsAssignment_5_3; }
-
- //SPPRef
- public RuleCall getIfSPPsSPPRefParserRuleCall_5_3_0() { return cIfSPPsSPPRefParserRuleCall_5_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
-
- //("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)? (intPorts+=Port |
- //extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef* attributes+=Attribute*
- //actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")?
- public Group getGroup_6() { return cGroup_6; }
-
- //"Structure"
- public Keyword getStructureKeyword_6_0() { return cStructureKeyword_6_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_6_1() { return cLeftCurlyBracketKeyword_6_1; }
-
- //("usercode1" userCode1=DetailCode)?
- public Group getGroup_6_2() { return cGroup_6_2; }
-
- //"usercode1"
- public Keyword getUsercode1Keyword_6_2_0() { return cUsercode1Keyword_6_2_0; }
-
- //userCode1=DetailCode
- public Assignment getUserCode1Assignment_6_2_1() { return cUserCode1Assignment_6_2_1; }
-
- //DetailCode
- public RuleCall getUserCode1DetailCodeParserRuleCall_6_2_1_0() { return cUserCode1DetailCodeParserRuleCall_6_2_1_0; }
-
- //("usercode2" userCode2=DetailCode)?
- public Group getGroup_6_3() { return cGroup_6_3; }
-
- //"usercode2"
- public Keyword getUsercode2Keyword_6_3_0() { return cUsercode2Keyword_6_3_0; }
-
- //userCode2=DetailCode
- public Assignment getUserCode2Assignment_6_3_1() { return cUserCode2Assignment_6_3_1; }
-
- //DetailCode
- public RuleCall getUserCode2DetailCodeParserRuleCall_6_3_1_0() { return cUserCode2DetailCodeParserRuleCall_6_3_1_0; }
-
- //(intPorts+=Port | extPorts+=ExternalPort)*
- public Alternatives getAlternatives_6_4() { return cAlternatives_6_4; }
-
- //intPorts+=Port
- public Assignment getIntPortsAssignment_6_4_0() { return cIntPortsAssignment_6_4_0; }
-
- //Port
- public RuleCall getIntPortsPortParserRuleCall_6_4_0_0() { return cIntPortsPortParserRuleCall_6_4_0_0; }
-
- //extPorts+=ExternalPort
- public Assignment getExtPortsAssignment_6_4_1() { return cExtPortsAssignment_6_4_1; }
-
- //ExternalPort
- public RuleCall getExtPortsExternalPortParserRuleCall_6_4_1_0() { return cExtPortsExternalPortParserRuleCall_6_4_1_0; }
-
- //serviceImplementations+=ServiceImplementation*
- public Assignment getServiceImplementationsAssignment_6_5() { return cServiceImplementationsAssignment_6_5; }
-
- //ServiceImplementation
- public RuleCall getServiceImplementationsServiceImplementationParserRuleCall_6_5_0() { return cServiceImplementationsServiceImplementationParserRuleCall_6_5_0; }
-
- //strSAPs+=SAPRef*
- public Assignment getStrSAPsAssignment_6_6() { return cStrSAPsAssignment_6_6; }
-
- //SAPRef
- public RuleCall getStrSAPsSAPRefParserRuleCall_6_6_0() { return cStrSAPsSAPRefParserRuleCall_6_6_0; }
-
- //attributes+=Attribute*
- public Assignment getAttributesAssignment_6_7() { return cAttributesAssignment_6_7; }
-
- //Attribute
- public RuleCall getAttributesAttributeParserRuleCall_6_7_0() { return cAttributesAttributeParserRuleCall_6_7_0; }
-
- //actorRefs+=ActorRef*
- public Assignment getActorRefsAssignment_6_8() { return cActorRefsAssignment_6_8; }
-
- //ActorRef
- public RuleCall getActorRefsActorRefParserRuleCall_6_8_0() { return cActorRefsActorRefParserRuleCall_6_8_0; }
-
- //bindings+=Binding*
- public Assignment getBindingsAssignment_6_9() { return cBindingsAssignment_6_9; }
-
- //Binding
- public RuleCall getBindingsBindingParserRuleCall_6_9_0() { return cBindingsBindingParserRuleCall_6_9_0; }
-
- //connections+=LayerConnection*
- public Assignment getConnectionsAssignment_6_10() { return cConnectionsAssignment_6_10; }
-
- //LayerConnection
- public RuleCall getConnectionsLayerConnectionParserRuleCall_6_10_0() { return cConnectionsLayerConnectionParserRuleCall_6_10_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_6_11() { return cRightCurlyBracketKeyword_6_11; }
-
- //("Behavior" "{" operations+=Operation* stateMachine=StateMachine? "}")?
- public Group getGroup_7() { return cGroup_7; }
-
- //"Behavior"
- public Keyword getBehaviorKeyword_7_0() { return cBehaviorKeyword_7_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_7_1() { return cLeftCurlyBracketKeyword_7_1; }
-
- //operations+=Operation*
- public Assignment getOperationsAssignment_7_2() { return cOperationsAssignment_7_2; }
-
- //Operation
- public RuleCall getOperationsOperationParserRuleCall_7_2_0() { return cOperationsOperationParserRuleCall_7_2_0; }
-
- //stateMachine=StateMachine?
- public Assignment getStateMachineAssignment_7_3() { return cStateMachineAssignment_7_3; }
-
- //StateMachine
- public RuleCall getStateMachineStateMachineParserRuleCall_7_3_0() { return cStateMachineStateMachineParserRuleCall_7_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_7_4() { return cRightCurlyBracketKeyword_7_4; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
- }
-
- public class InterfaceItemElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InterfaceItem");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cPortParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cSAPRefParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cSPPRefParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //InterfaceItem:
- // Port | SAPRef | SPPRef;
- public ParserRule getRule() { return rule; }
-
- //Port | SAPRef | SPPRef
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //Port
- public RuleCall getPortParserRuleCall_0() { return cPortParserRuleCall_0; }
-
- //SAPRef
- public RuleCall getSAPRefParserRuleCall_1() { return cSAPRefParserRuleCall_1; }
-
- //SPPRef
- public RuleCall getSPPRefParserRuleCall_2() { return cSPPRefParserRuleCall_2; }
- }
-
- public class PortElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Port");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cConjugatedAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final Keyword cConjugatedConjugatedKeyword_0_0 = (Keyword)cConjugatedAssignment_0.eContents().get(0);
- private final Keyword cPortKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Keyword cLeftSquareBracketKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
- private final Assignment cMultiplicityAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
- private final RuleCall cMultiplicityINTTerminalRuleCall_3_1_0 = (RuleCall)cMultiplicityAssignment_3_1.eContents().get(0);
- private final Keyword cRightSquareBracketKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
- private final Keyword cColonKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Assignment cProtocolAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final CrossReference cProtocolProtocolClassCrossReference_5_0 = (CrossReference)cProtocolAssignment_5.eContents().get(0);
- private final RuleCall cProtocolProtocolClassFQNParserRuleCall_5_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_5_0.eContents().get(1);
-
- //Port:
- // conjugated?="conjugated"? "Port" name=ID ("[" multiplicity=INT "]")? ":" protocol=[ProtocolClass|FQN];
- public ParserRule getRule() { return rule; }
-
- //conjugated?="conjugated"? "Port" name=ID ("[" multiplicity=INT "]")? ":" protocol=[ProtocolClass|FQN]
- public Group getGroup() { return cGroup; }
-
- //conjugated?="conjugated"?
- public Assignment getConjugatedAssignment_0() { return cConjugatedAssignment_0; }
-
- //"conjugated"
- public Keyword getConjugatedConjugatedKeyword_0_0() { return cConjugatedConjugatedKeyword_0_0; }
-
- //"Port"
- public Keyword getPortKeyword_1() { return cPortKeyword_1; }
-
- //name=ID
- public Assignment getNameAssignment_2() { return cNameAssignment_2; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
-
- //("[" multiplicity=INT "]")?
- public Group getGroup_3() { return cGroup_3; }
-
- //"["
- public Keyword getLeftSquareBracketKeyword_3_0() { return cLeftSquareBracketKeyword_3_0; }
-
- //multiplicity=INT
- public Assignment getMultiplicityAssignment_3_1() { return cMultiplicityAssignment_3_1; }
-
- //INT
- public RuleCall getMultiplicityINTTerminalRuleCall_3_1_0() { return cMultiplicityINTTerminalRuleCall_3_1_0; }
-
- //"]"
- public Keyword getRightSquareBracketKeyword_3_2() { return cRightSquareBracketKeyword_3_2; }
-
- //":"
- public Keyword getColonKeyword_4() { return cColonKeyword_4; }
-
- //protocol=[ProtocolClass|FQN]
- public Assignment getProtocolAssignment_5() { return cProtocolAssignment_5; }
-
- //[ProtocolClass|FQN]
- public CrossReference getProtocolProtocolClassCrossReference_5_0() { return cProtocolProtocolClassCrossReference_5_0; }
-
- //FQN
- public RuleCall getProtocolProtocolClassFQNParserRuleCall_5_0_1() { return cProtocolProtocolClassFQNParserRuleCall_5_0_1; }
- }
-
- public class ExternalPortElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ExternalPort");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cExternalKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Keyword cPortKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cIfportAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final CrossReference cIfportPortCrossReference_2_0 = (CrossReference)cIfportAssignment_2.eContents().get(0);
- private final RuleCall cIfportPortIDTerminalRuleCall_2_0_1 = (RuleCall)cIfportPortCrossReference_2_0.eContents().get(1);
-
- //ExternalPort:
- // "external" "Port" ifport=[Port];
- public ParserRule getRule() { return rule; }
-
- //"external" "Port" ifport=[Port]
- public Group getGroup() { return cGroup; }
-
- //"external"
- public Keyword getExternalKeyword_0() { return cExternalKeyword_0; }
-
- //"Port"
- public Keyword getPortKeyword_1() { return cPortKeyword_1; }
-
- //ifport=[Port]
- public Assignment getIfportAssignment_2() { return cIfportAssignment_2; }
-
- //[Port]
- public CrossReference getIfportPortCrossReference_2_0() { return cIfportPortCrossReference_2_0; }
-
- //ID
- public RuleCall getIfportPortIDTerminalRuleCall_2_0_1() { return cIfportPortIDTerminalRuleCall_2_0_1; }
- }
-
- public class SAPRefElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SAPRef");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cSAPKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cProtocolAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final CrossReference cProtocolProtocolClassCrossReference_3_0 = (CrossReference)cProtocolAssignment_3.eContents().get(0);
- private final RuleCall cProtocolProtocolClassFQNParserRuleCall_3_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_3_0.eContents().get(1);
-
- //SAPRef: // we omitted the SAP type (Timing/Frame/Exception)
- //
- // "SAP" name=ID ":" protocol=[ProtocolClass|FQN];
- public ParserRule getRule() { return rule; }
-
- //// we omitted the SAP type (Timing/Frame/Exception)
- //
- //"SAP" name=ID ":" protocol=[ProtocolClass|FQN]
- public Group getGroup() { return cGroup; }
-
- //// we omitted the SAP type (Timing/Frame/Exception)
- //
- //"SAP"
- public Keyword getSAPKeyword_0() { return cSAPKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //protocol=[ProtocolClass|FQN]
- public Assignment getProtocolAssignment_3() { return cProtocolAssignment_3; }
-
- //[ProtocolClass|FQN]
- public CrossReference getProtocolProtocolClassCrossReference_3_0() { return cProtocolProtocolClassCrossReference_3_0; }
-
- //FQN
- public RuleCall getProtocolProtocolClassFQNParserRuleCall_3_0_1() { return cProtocolProtocolClassFQNParserRuleCall_3_0_1; }
- }
-
- public class SPPRefElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SPPRef");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cSPPKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cProtocolAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final CrossReference cProtocolProtocolClassCrossReference_3_0 = (CrossReference)cProtocolAssignment_3.eContents().get(0);
- private final RuleCall cProtocolProtocolClassFQNParserRuleCall_3_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_3_0.eContents().get(1);
-
- //SPPRef:
- // "SPP" name=ID ":" protocol=[ProtocolClass|FQN];
- public ParserRule getRule() { return rule; }
-
- //"SPP" name=ID ":" protocol=[ProtocolClass|FQN]
- public Group getGroup() { return cGroup; }
-
- //"SPP"
- public Keyword getSPPKeyword_0() { return cSPPKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //protocol=[ProtocolClass|FQN]
- public Assignment getProtocolAssignment_3() { return cProtocolAssignment_3; }
-
- //[ProtocolClass|FQN]
- public CrossReference getProtocolProtocolClassCrossReference_3_0() { return cProtocolProtocolClassCrossReference_3_0; }
-
- //FQN
- public RuleCall getProtocolProtocolClassFQNParserRuleCall_3_0_1() { return cProtocolProtocolClassFQNParserRuleCall_3_0_1; }
- }
-
- public class ServiceImplementationElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ServiceImplementation");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cServiceImplementationKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Keyword cOfKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cSppAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final CrossReference cSppSPPRefCrossReference_2_0 = (CrossReference)cSppAssignment_2.eContents().get(0);
- private final RuleCall cSppSPPRefIDTerminalRuleCall_2_0_1 = (RuleCall)cSppSPPRefCrossReference_2_0.eContents().get(1);
-
- //ServiceImplementation:
- // "ServiceImplementation" "of" spp=[SPPRef];
- public ParserRule getRule() { return rule; }
-
- //"ServiceImplementation" "of" spp=[SPPRef]
- public Group getGroup() { return cGroup; }
-
- //"ServiceImplementation"
- public Keyword getServiceImplementationKeyword_0() { return cServiceImplementationKeyword_0; }
-
- //"of"
- public Keyword getOfKeyword_1() { return cOfKeyword_1; }
-
- //spp=[SPPRef]
- public Assignment getSppAssignment_2() { return cSppAssignment_2; }
-
- //[SPPRef]
- public CrossReference getSppSPPRefCrossReference_2_0() { return cSppSPPRefCrossReference_2_0; }
-
- //ID
- public RuleCall getSppSPPRefIDTerminalRuleCall_2_0_1() { return cSppSPPRefIDTerminalRuleCall_2_0_1; }
- }
-
- public class LogicalSystemElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LogicalSystem");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLogicalSystemKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cSubSystemsAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cSubSystemsSubSystemRefParserRuleCall_3_0 = (RuleCall)cSubSystemsAssignment_3.eContents().get(0);
- private final Assignment cBindingsAssignment_4 = (Assignment)cGroup.eContents().get(4);
- private final RuleCall cBindingsBindingParserRuleCall_4_0 = (RuleCall)cBindingsAssignment_4.eContents().get(0);
- private final Assignment cConnectionsAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cConnectionsLayerConnectionParserRuleCall_5_0 = (RuleCall)cConnectionsAssignment_5.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-
- //LogicalSystem:
- // "LogicalSystem" name=ID "{" subSystems+=SubSystemRef+ bindings+=Binding* connections+=LayerConnection* "}";
- public ParserRule getRule() { return rule; }
-
- //"LogicalSystem" name=ID "{" subSystems+=SubSystemRef+ bindings+=Binding* connections+=LayerConnection* "}"
- public Group getGroup() { return cGroup; }
-
- //"LogicalSystem"
- public Keyword getLogicalSystemKeyword_0() { return cLogicalSystemKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //subSystems+=SubSystemRef+
- public Assignment getSubSystemsAssignment_3() { return cSubSystemsAssignment_3; }
-
- //SubSystemRef
- public RuleCall getSubSystemsSubSystemRefParserRuleCall_3_0() { return cSubSystemsSubSystemRefParserRuleCall_3_0; }
-
- //bindings+=Binding*
- public Assignment getBindingsAssignment_4() { return cBindingsAssignment_4; }
-
- //Binding
- public RuleCall getBindingsBindingParserRuleCall_4_0() { return cBindingsBindingParserRuleCall_4_0; }
-
- //connections+=LayerConnection*
- public Assignment getConnectionsAssignment_5() { return cConnectionsAssignment_5; }
-
- //LayerConnection
- public RuleCall getConnectionsLayerConnectionParserRuleCall_5_0() { return cConnectionsLayerConnectionParserRuleCall_5_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
- }
-
- public class ActorContainerRefElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorContainerRef");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cSubSystemRefParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cActorRefParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //ActorContainerRef:
- // SubSystemRef | ActorRef;
- public ParserRule getRule() { return rule; }
-
- //SubSystemRef | ActorRef
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //SubSystemRef
- public RuleCall getSubSystemRefParserRuleCall_0() { return cSubSystemRefParserRuleCall_0; }
-
- //ActorRef
- public RuleCall getActorRefParserRuleCall_1() { return cActorRefParserRuleCall_1; }
- }
-
- public class SubSystemRefElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubSystemRef");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cSubSystemRefKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cTypeAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final CrossReference cTypeSubSystemClassCrossReference_3_0 = (CrossReference)cTypeAssignment_3.eContents().get(0);
- private final RuleCall cTypeSubSystemClassFQNParserRuleCall_3_0_1 = (RuleCall)cTypeSubSystemClassCrossReference_3_0.eContents().get(1);
-
- //SubSystemRef:
- // "SubSystemRef" name=ID ":" type=[SubSystemClass|FQN];
- public ParserRule getRule() { return rule; }
-
- //"SubSystemRef" name=ID ":" type=[SubSystemClass|FQN]
- public Group getGroup() { return cGroup; }
-
- //"SubSystemRef"
- public Keyword getSubSystemRefKeyword_0() { return cSubSystemRefKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //type=[SubSystemClass|FQN]
- public Assignment getTypeAssignment_3() { return cTypeAssignment_3; }
-
- //[SubSystemClass|FQN]
- public CrossReference getTypeSubSystemClassCrossReference_3_0() { return cTypeSubSystemClassCrossReference_3_0; }
-
- //FQN
- public RuleCall getTypeSubSystemClassFQNParserRuleCall_3_0_1() { return cTypeSubSystemClassFQNParserRuleCall_3_0_1; }
- }
-
- public class SubSystemClassElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubSystemClass");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cSubSystemClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cRelayPortsAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cRelayPortsPortParserRuleCall_3_0 = (RuleCall)cRelayPortsAssignment_3.eContents().get(0);
- private final Assignment cIfSPPsAssignment_4 = (Assignment)cGroup.eContents().get(4);
- private final RuleCall cIfSPPsSPPRefParserRuleCall_4_0 = (RuleCall)cIfSPPsAssignment_4.eContents().get(0);
- private final Assignment cActorRefsAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cActorRefsActorRefParserRuleCall_5_0 = (RuleCall)cActorRefsAssignment_5.eContents().get(0);
- private final Assignment cBindingsAssignment_6 = (Assignment)cGroup.eContents().get(6);
- private final RuleCall cBindingsBindingParserRuleCall_6_0 = (RuleCall)cBindingsAssignment_6.eContents().get(0);
- private final Assignment cConnectionsAssignment_7 = (Assignment)cGroup.eContents().get(7);
- private final RuleCall cConnectionsLayerConnectionParserRuleCall_7_0 = (RuleCall)cConnectionsAssignment_7.eContents().get(0);
- private final Assignment cThreadsAssignment_8 = (Assignment)cGroup.eContents().get(8);
- private final RuleCall cThreadsLogicalThreadParserRuleCall_8_0 = (RuleCall)cThreadsAssignment_8.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
-
- //SubSystemClass:
- // "SubSystemClass" name=ID "{" relayPorts+=Port* ifSPPs+=SPPRef* actorRefs+=ActorRef+ bindings+=Binding*
- // connections+=LayerConnection* threads+=LogicalThread* "}";
- public ParserRule getRule() { return rule; }
-
- //"SubSystemClass" name=ID "{" relayPorts+=Port* ifSPPs+=SPPRef* actorRefs+=ActorRef+ bindings+=Binding*
- //connections+=LayerConnection* threads+=LogicalThread* "}"
- public Group getGroup() { return cGroup; }
-
- //"SubSystemClass"
- public Keyword getSubSystemClassKeyword_0() { return cSubSystemClassKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //relayPorts+=Port*
- public Assignment getRelayPortsAssignment_3() { return cRelayPortsAssignment_3; }
-
- //Port
- public RuleCall getRelayPortsPortParserRuleCall_3_0() { return cRelayPortsPortParserRuleCall_3_0; }
-
- //ifSPPs+=SPPRef*
- public Assignment getIfSPPsAssignment_4() { return cIfSPPsAssignment_4; }
-
- //SPPRef
- public RuleCall getIfSPPsSPPRefParserRuleCall_4_0() { return cIfSPPsSPPRefParserRuleCall_4_0; }
-
- //actorRefs+=ActorRef+
- public Assignment getActorRefsAssignment_5() { return cActorRefsAssignment_5; }
-
- //ActorRef
- public RuleCall getActorRefsActorRefParserRuleCall_5_0() { return cActorRefsActorRefParserRuleCall_5_0; }
-
- //bindings+=Binding*
- public Assignment getBindingsAssignment_6() { return cBindingsAssignment_6; }
-
- //Binding
- public RuleCall getBindingsBindingParserRuleCall_6_0() { return cBindingsBindingParserRuleCall_6_0; }
-
- //connections+=LayerConnection*
- public Assignment getConnectionsAssignment_7() { return cConnectionsAssignment_7; }
-
- //LayerConnection
- public RuleCall getConnectionsLayerConnectionParserRuleCall_7_0() { return cConnectionsLayerConnectionParserRuleCall_7_0; }
-
- //threads+=LogicalThread*
- public Assignment getThreadsAssignment_8() { return cThreadsAssignment_8; }
-
- //LogicalThread
- public RuleCall getThreadsLogicalThreadParserRuleCall_8_0() { return cThreadsLogicalThreadParserRuleCall_8_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
- }
-
- public class LogicalThreadElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LogicalThread");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLogicalThreadKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cInstancesAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cInstancesActorInstancePathParserRuleCall_3_0 = (RuleCall)cInstancesAssignment_3.eContents().get(0);
- private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
- private final Keyword cCommaKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
- private final Assignment cInstancesAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
- private final RuleCall cInstancesActorInstancePathParserRuleCall_4_1_0 = (RuleCall)cInstancesAssignment_4_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-
- //LogicalThread:
- // "LogicalThread" name=ID "{" instances+=ActorInstancePath ("," instances+=ActorInstancePath)* "}";
- public ParserRule getRule() { return rule; }
-
- //"LogicalThread" name=ID "{" instances+=ActorInstancePath ("," instances+=ActorInstancePath)* "}"
- public Group getGroup() { return cGroup; }
-
- //"LogicalThread"
- public Keyword getLogicalThreadKeyword_0() { return cLogicalThreadKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //instances+=ActorInstancePath
- public Assignment getInstancesAssignment_3() { return cInstancesAssignment_3; }
-
- //ActorInstancePath
- public RuleCall getInstancesActorInstancePathParserRuleCall_3_0() { return cInstancesActorInstancePathParserRuleCall_3_0; }
-
- //("," instances+=ActorInstancePath)*
- public Group getGroup_4() { return cGroup_4; }
-
- //","
- public Keyword getCommaKeyword_4_0() { return cCommaKeyword_4_0; }
-
- //instances+=ActorInstancePath
- public Assignment getInstancesAssignment_4_1() { return cInstancesAssignment_4_1; }
-
- //ActorInstancePath
- public RuleCall getInstancesActorInstancePathParserRuleCall_4_1_0() { return cInstancesActorInstancePathParserRuleCall_4_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
- }
-
- public class ActorInstancePathElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorInstancePath");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cSegmentsAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final RuleCall cSegmentsIDTerminalRuleCall_0_0 = (RuleCall)cSegmentsAssignment_0.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 Assignment cSegmentsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
- private final RuleCall cSegmentsIDTerminalRuleCall_1_1_0 = (RuleCall)cSegmentsAssignment_1_1.eContents().get(0);
-
- //ActorInstancePath:
- // segments+=ID ("." segments+=ID)*;
- public ParserRule getRule() { return rule; }
-
- //segments+=ID ("." segments+=ID)*
- public Group getGroup() { return cGroup; }
-
- //segments+=ID
- public Assignment getSegmentsAssignment_0() { return cSegmentsAssignment_0; }
-
- //ID
- public RuleCall getSegmentsIDTerminalRuleCall_0_0() { return cSegmentsIDTerminalRuleCall_0_0; }
-
- //("." segments+=ID)*
- public Group getGroup_1() { return cGroup_1; }
-
- //"."
- public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
-
- //segments+=ID
- public Assignment getSegmentsAssignment_1_1() { return cSegmentsAssignment_1_1; }
-
- //ID
- public RuleCall getSegmentsIDTerminalRuleCall_1_1_0() { return cSegmentsIDTerminalRuleCall_1_1_0; }
- }
-
- public class BindingElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Binding");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cBindingKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cEndpoint1Assignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cEndpoint1BindingEndPointParserRuleCall_1_0 = (RuleCall)cEndpoint1Assignment_1.eContents().get(0);
- private final Keyword cAndKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cEndpoint2Assignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cEndpoint2BindingEndPointParserRuleCall_3_0 = (RuleCall)cEndpoint2Assignment_3.eContents().get(0);
-
- //// TODOHRR: bindings for replicated ports
- //
- //// (1) declare several bindings
- //
- //// (2) use a notation with 1 to n bindings
- //
- //Binding:
- // "Binding" endpoint1=BindingEndPoint "and" endpoint2=BindingEndPoint;
- public ParserRule getRule() { return rule; }
-
- //"Binding" endpoint1=BindingEndPoint "and" endpoint2=BindingEndPoint
- public Group getGroup() { return cGroup; }
-
- //"Binding"
- public Keyword getBindingKeyword_0() { return cBindingKeyword_0; }
-
- //endpoint1=BindingEndPoint
- public Assignment getEndpoint1Assignment_1() { return cEndpoint1Assignment_1; }
-
- //BindingEndPoint
- public RuleCall getEndpoint1BindingEndPointParserRuleCall_1_0() { return cEndpoint1BindingEndPointParserRuleCall_1_0; }
-
- //"and"
- public Keyword getAndKeyword_2() { return cAndKeyword_2; }
-
- //endpoint2=BindingEndPoint
- public Assignment getEndpoint2Assignment_3() { return cEndpoint2Assignment_3; }
-
- //BindingEndPoint
- public RuleCall getEndpoint2BindingEndPointParserRuleCall_3_0() { return cEndpoint2BindingEndPointParserRuleCall_3_0; }
- }
-
- public class BindingEndPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BindingEndPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Group cGroup_0 = (Group)cGroup.eContents().get(0);
- private final Assignment cActorRefAssignment_0_0 = (Assignment)cGroup_0.eContents().get(0);
- private final CrossReference cActorRefActorContainerRefCrossReference_0_0_0 = (CrossReference)cActorRefAssignment_0_0.eContents().get(0);
- private final RuleCall cActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1 = (RuleCall)cActorRefActorContainerRefCrossReference_0_0_0.eContents().get(1);
- private final Keyword cFullStopKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
- private final Assignment cPortAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cPortPortCrossReference_1_0 = (CrossReference)cPortAssignment_1.eContents().get(0);
- private final RuleCall cPortPortIDTerminalRuleCall_1_0_1 = (RuleCall)cPortPortCrossReference_1_0.eContents().get(1);
-
- //BindingEndPoint:
- // (actorRef=[ActorContainerRef] ".")? port=[Port];
- public ParserRule getRule() { return rule; }
-
- //(actorRef=[ActorContainerRef] ".")? port=[Port]
- public Group getGroup() { return cGroup; }
-
- //(actorRef=[ActorContainerRef] ".")?
- public Group getGroup_0() { return cGroup_0; }
-
- //actorRef=[ActorContainerRef]
- public Assignment getActorRefAssignment_0_0() { return cActorRefAssignment_0_0; }
-
- //[ActorContainerRef]
- public CrossReference getActorRefActorContainerRefCrossReference_0_0_0() { return cActorRefActorContainerRefCrossReference_0_0_0; }
-
- //ID
- public RuleCall getActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1() { return cActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1; }
-
- //"."
- public Keyword getFullStopKeyword_0_1() { return cFullStopKeyword_0_1; }
-
- //port=[Port]
- public Assignment getPortAssignment_1() { return cPortAssignment_1; }
-
- //[Port]
- public CrossReference getPortPortCrossReference_1_0() { return cPortPortCrossReference_1_0; }
-
- //ID
- public RuleCall getPortPortIDTerminalRuleCall_1_0_1() { return cPortPortIDTerminalRuleCall_1_0_1; }
- }
-
- public class LayerConnectionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LayerConnection");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLayerConnectionKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cFromAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cFromSAPointParserRuleCall_1_0 = (RuleCall)cFromAssignment_1.eContents().get(0);
- private final Keyword cSatisfied_byKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cToAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cToSPPointParserRuleCall_3_0 = (RuleCall)cToAssignment_3.eContents().get(0);
-
- //LayerConnection:
- // "LayerConnection" from=SAPoint "satisfied_by" to=SPPoint;
- public ParserRule getRule() { return rule; }
-
- //"LayerConnection" from=SAPoint "satisfied_by" to=SPPoint
- public Group getGroup() { return cGroup; }
-
- //"LayerConnection"
- public Keyword getLayerConnectionKeyword_0() { return cLayerConnectionKeyword_0; }
-
- //from=SAPoint
- public Assignment getFromAssignment_1() { return cFromAssignment_1; }
-
- //SAPoint
- public RuleCall getFromSAPointParserRuleCall_1_0() { return cFromSAPointParserRuleCall_1_0; }
-
- //"satisfied_by"
- public Keyword getSatisfied_byKeyword_2() { return cSatisfied_byKeyword_2; }
-
- //to=SPPoint
- public Assignment getToAssignment_3() { return cToAssignment_3; }
-
- //SPPoint
- public RuleCall getToSPPointParserRuleCall_3_0() { return cToSPPointParserRuleCall_3_0; }
- }
-
- public class SAPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SAPoint");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cRefSAPointParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cRelaySAPointParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //SAPoint:
- // RefSAPoint | RelaySAPoint;
- public ParserRule getRule() { return rule; }
-
- //RefSAPoint | RelaySAPoint
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //RefSAPoint
- public RuleCall getRefSAPointParserRuleCall_0() { return cRefSAPointParserRuleCall_0; }
-
- //RelaySAPoint
- public RuleCall getRelaySAPointParserRuleCall_1() { return cRelaySAPointParserRuleCall_1; }
- }
-
- public class RefSAPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RefSAPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cRefKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cRefAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cRefActorContainerRefCrossReference_1_0 = (CrossReference)cRefAssignment_1.eContents().get(0);
- private final RuleCall cRefActorContainerRefIDTerminalRuleCall_1_0_1 = (RuleCall)cRefActorContainerRefCrossReference_1_0.eContents().get(1);
-
- //RefSAPoint: // satisfies a sub actor
- //
- // "ref" ref=[ActorContainerRef];
- public ParserRule getRule() { return rule; }
-
- //// satisfies a sub actor
- //
- //"ref" ref=[ActorContainerRef]
- public Group getGroup() { return cGroup; }
-
- //// satisfies a sub actor
- //
- //"ref"
- public Keyword getRefKeyword_0() { return cRefKeyword_0; }
-
- //ref=[ActorContainerRef]
- public Assignment getRefAssignment_1() { return cRefAssignment_1; }
-
- //[ActorContainerRef]
- public CrossReference getRefActorContainerRefCrossReference_1_0() { return cRefActorContainerRefCrossReference_1_0; }
-
- //ID
- public RuleCall getRefActorContainerRefIDTerminalRuleCall_1_0_1() { return cRefActorContainerRefIDTerminalRuleCall_1_0_1; }
- }
-
- public class RelaySAPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RelaySAPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cRelay_sapKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cRelayAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cRelaySPPRefCrossReference_1_0 = (CrossReference)cRelayAssignment_1.eContents().get(0);
- private final RuleCall cRelaySPPRefIDTerminalRuleCall_1_0_1 = (RuleCall)cRelaySPPRefCrossReference_1_0.eContents().get(1);
-
- //RelaySAPoint: // relays from own interface
- //
- // "relay_sap" relay=[SPPRef];
- public ParserRule getRule() { return rule; }
-
- //// relays from own interface
- //
- //"relay_sap" relay=[SPPRef]
- public Group getGroup() { return cGroup; }
-
- //// relays from own interface
- //
- //"relay_sap"
- public Keyword getRelay_sapKeyword_0() { return cRelay_sapKeyword_0; }
-
- //relay=[SPPRef]
- public Assignment getRelayAssignment_1() { return cRelayAssignment_1; }
-
- //[SPPRef]
- public CrossReference getRelaySPPRefCrossReference_1_0() { return cRelaySPPRefCrossReference_1_0; }
-
- //ID
- public RuleCall getRelaySPPRefIDTerminalRuleCall_1_0_1() { return cRelaySPPRefIDTerminalRuleCall_1_0_1; }
- }
-
- public class SPPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SPPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cRefAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final CrossReference cRefActorContainerRefCrossReference_0_0 = (CrossReference)cRefAssignment_0.eContents().get(0);
- private final RuleCall cRefActorContainerRefIDTerminalRuleCall_0_0_1 = (RuleCall)cRefActorContainerRefCrossReference_0_0.eContents().get(1);
- private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cServiceAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final CrossReference cServiceSPPRefCrossReference_2_0 = (CrossReference)cServiceAssignment_2.eContents().get(0);
- private final RuleCall cServiceSPPRefIDTerminalRuleCall_2_0_1 = (RuleCall)cServiceSPPRefCrossReference_2_0.eContents().get(1);
-
- //SPPoint:
- // ref=[ActorContainerRef] "." service=[SPPRef];
- public ParserRule getRule() { return rule; }
-
- //ref=[ActorContainerRef] "." service=[SPPRef]
- public Group getGroup() { return cGroup; }
-
- //ref=[ActorContainerRef]
- public Assignment getRefAssignment_0() { return cRefAssignment_0; }
-
- //[ActorContainerRef]
- public CrossReference getRefActorContainerRefCrossReference_0_0() { return cRefActorContainerRefCrossReference_0_0; }
-
- //ID
- public RuleCall getRefActorContainerRefIDTerminalRuleCall_0_0_1() { return cRefActorContainerRefIDTerminalRuleCall_0_0_1; }
-
- //"."
- public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
-
- //service=[SPPRef]
- public Assignment getServiceAssignment_2() { return cServiceAssignment_2; }
-
- //[SPPRef]
- public CrossReference getServiceSPPRefCrossReference_2_0() { return cServiceSPPRefCrossReference_2_0; }
-
- //ID
- public RuleCall getServiceSPPRefIDTerminalRuleCall_2_0_1() { return cServiceSPPRefIDTerminalRuleCall_2_0_1; }
- }
-
- public class ActorRefElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorRef");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cActorRefKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cTypeAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final CrossReference cTypeActorClassCrossReference_3_0 = (CrossReference)cTypeAssignment_3.eContents().get(0);
- private final RuleCall cTypeActorClassFQNParserRuleCall_3_0_1 = (RuleCall)cTypeActorClassCrossReference_3_0.eContents().get(1);
-
- //// TODOHRR: support replicated actors
- //
- //ActorRef:
- // "ActorRef" name=ID ":" type=[ActorClass|FQN];
- public ParserRule getRule() { return rule; }
-
- //"ActorRef" name=ID ":" type=[ActorClass|FQN]
- public Group getGroup() { return cGroup; }
-
- //"ActorRef"
- public Keyword getActorRefKeyword_0() { return cActorRefKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //type=[ActorClass|FQN]
- public Assignment getTypeAssignment_3() { return cTypeAssignment_3; }
-
- //[ActorClass|FQN]
- public CrossReference getTypeActorClassCrossReference_3_0() { return cTypeActorClassCrossReference_3_0; }
-
- //FQN
- public RuleCall getTypeActorClassFQNParserRuleCall_3_0_1() { return cTypeActorClassFQNParserRuleCall_3_0_1; }
- }
-
- public class StateGraphNodeElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateGraphNode");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cStateParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cChoicePointParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cTrPointParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //// **************************************************************
- //
- //// state machine
- //
- //StateGraphNode:
- // State | ChoicePoint | TrPoint;
- public ParserRule getRule() { return rule; }
-
- //State | ChoicePoint | TrPoint
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //State
- public RuleCall getStateParserRuleCall_0() { return cStateParserRuleCall_0; }
-
- //ChoicePoint
- public RuleCall getChoicePointParserRuleCall_1() { return cChoicePointParserRuleCall_1; }
-
- //TrPoint
- public RuleCall getTrPointParserRuleCall_2() { return cTrPointParserRuleCall_2; }
- }
-
- public class StateGraphItemElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateGraphItem");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cStateGraphNodeParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cTransitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //StateGraphItem:
- // StateGraphNode | Transition;
- public ParserRule getRule() { return rule; }
-
- //StateGraphNode | Transition
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //StateGraphNode
- public RuleCall getStateGraphNodeParserRuleCall_0() { return cStateGraphNodeParserRuleCall_0; }
-
- //Transition
- public RuleCall getTransitionParserRuleCall_1() { return cTransitionParserRuleCall_1; }
- }
-
- public class StateElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "State");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cBaseStateParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cRefinedStateParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //State:
- // BaseState | RefinedState;
- public ParserRule getRule() { return rule; }
-
- //BaseState | RefinedState
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //BaseState
- public RuleCall getBaseStateParserRuleCall_0() { return cBaseStateParserRuleCall_0; }
-
- //RefinedState
- public RuleCall getRefinedStateParserRuleCall_1() { return cRefinedStateParserRuleCall_1; }
- }
-
- public class StateGraphElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateGraph");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
- private final Assignment cStatesAssignment_1_0 = (Assignment)cAlternatives_1.eContents().get(0);
- private final RuleCall cStatesStateParserRuleCall_1_0_0 = (RuleCall)cStatesAssignment_1_0.eContents().get(0);
- private final Assignment cTrPointsAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
- private final RuleCall cTrPointsTrPointParserRuleCall_1_1_0 = (RuleCall)cTrPointsAssignment_1_1.eContents().get(0);
- private final Assignment cChPointsAssignment_1_2 = (Assignment)cAlternatives_1.eContents().get(2);
- private final RuleCall cChPointsChoicePointParserRuleCall_1_2_0 = (RuleCall)cChPointsAssignment_1_2.eContents().get(0);
- private final Assignment cTransitionsAssignment_1_3 = (Assignment)cAlternatives_1.eContents().get(3);
- private final RuleCall cTransitionsTransitionParserRuleCall_1_3_0 = (RuleCall)cTransitionsAssignment_1_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-
- //StateGraph:
- // "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
- public ParserRule getRule() { return rule; }
-
- //"{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}"
- public Group getGroup() { return cGroup; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
-
- //(states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+
- public Alternatives getAlternatives_1() { return cAlternatives_1; }
-
- //states+=State
- public Assignment getStatesAssignment_1_0() { return cStatesAssignment_1_0; }
-
- //State
- public RuleCall getStatesStateParserRuleCall_1_0_0() { return cStatesStateParserRuleCall_1_0_0; }
-
- //trPoints+=TrPoint
- public Assignment getTrPointsAssignment_1_1() { return cTrPointsAssignment_1_1; }
-
- //TrPoint
- public RuleCall getTrPointsTrPointParserRuleCall_1_1_0() { return cTrPointsTrPointParserRuleCall_1_1_0; }
-
- //chPoints+=ChoicePoint
- public Assignment getChPointsAssignment_1_2() { return cChPointsAssignment_1_2; }
-
- //ChoicePoint
- public RuleCall getChPointsChoicePointParserRuleCall_1_2_0() { return cChPointsChoicePointParserRuleCall_1_2_0; }
-
- //transitions+=Transition
- public Assignment getTransitionsAssignment_1_3() { return cTransitionsAssignment_1_3; }
-
- //Transition
- public RuleCall getTransitionsTransitionParserRuleCall_1_3_0() { return cTransitionsTransitionParserRuleCall_1_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_2() { return cRightCurlyBracketKeyword_2; }
- }
-
- public class StateMachineElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateMachine");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cStateMachineKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
- private final Assignment cStatesAssignment_2_0 = (Assignment)cAlternatives_2.eContents().get(0);
- private final RuleCall cStatesStateParserRuleCall_2_0_0 = (RuleCall)cStatesAssignment_2_0.eContents().get(0);
- private final Assignment cTrPointsAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
- private final RuleCall cTrPointsTrPointParserRuleCall_2_1_0 = (RuleCall)cTrPointsAssignment_2_1.eContents().get(0);
- private final Assignment cChPointsAssignment_2_2 = (Assignment)cAlternatives_2.eContents().get(2);
- private final RuleCall cChPointsChoicePointParserRuleCall_2_2_0 = (RuleCall)cChPointsAssignment_2_2.eContents().get(0);
- private final Assignment cTransitionsAssignment_2_3 = (Assignment)cAlternatives_2.eContents().get(3);
- private final RuleCall cTransitionsTransitionParserRuleCall_2_3_0 = (RuleCall)cTransitionsAssignment_2_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-
- //StateMachine returns StateGraph:
- // "StateMachine" "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
- public ParserRule getRule() { return rule; }
-
- //"StateMachine" "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}"
- public Group getGroup() { return cGroup; }
-
- //"StateMachine"
- public Keyword getStateMachineKeyword_0() { return cStateMachineKeyword_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; }
-
- //(states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+
- public Alternatives getAlternatives_2() { return cAlternatives_2; }
-
- //states+=State
- public Assignment getStatesAssignment_2_0() { return cStatesAssignment_2_0; }
-
- //State
- public RuleCall getStatesStateParserRuleCall_2_0_0() { return cStatesStateParserRuleCall_2_0_0; }
-
- //trPoints+=TrPoint
- public Assignment getTrPointsAssignment_2_1() { return cTrPointsAssignment_2_1; }
-
- //TrPoint
- public RuleCall getTrPointsTrPointParserRuleCall_2_1_0() { return cTrPointsTrPointParserRuleCall_2_1_0; }
-
- //chPoints+=ChoicePoint
- public Assignment getChPointsAssignment_2_2() { return cChPointsAssignment_2_2; }
-
- //ChoicePoint
- public RuleCall getChPointsChoicePointParserRuleCall_2_2_0() { return cChPointsChoicePointParserRuleCall_2_2_0; }
-
- //transitions+=Transition
- public Assignment getTransitionsAssignment_2_3() { return cTransitionsAssignment_2_3; }
-
- //Transition
- public RuleCall getTransitionsTransitionParserRuleCall_2_3_0() { return cTransitionsTransitionParserRuleCall_2_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
- }
-
- public class BaseStateElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BaseState");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cStateKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Keyword cEntryKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
- private final Assignment cEntryCodeAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
- private final RuleCall cEntryCodeDetailCodeParserRuleCall_3_1_0 = (RuleCall)cEntryCodeAssignment_3_1.eContents().get(0);
- private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
- private final Keyword cExitKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
- private final Assignment cExitCodeAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
- private final RuleCall cExitCodeDetailCodeParserRuleCall_4_1_0 = (RuleCall)cExitCodeAssignment_4_1.eContents().get(0);
- private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
- private final Keyword cSubgraphKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
- private final Assignment cSubgraphAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
- private final RuleCall cSubgraphStateGraphParserRuleCall_5_1_0 = (RuleCall)cSubgraphAssignment_5_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-
- //// entry and exit code have multiplicity many: in BaseState to be able to add derived class codes here,
- //
- //// in RefinedState to still have both features in the common base class State
- //
- //BaseState:
- // "State" name=ID "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph" subgraph=StateGraph)?
- // "}";
- public ParserRule getRule() { return rule; }
-
- //"State" name=ID "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph" subgraph=StateGraph)? "}"
- public Group getGroup() { return cGroup; }
-
- //"State"
- public Keyword getStateKeyword_0() { return cStateKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //("entry" entryCode=DetailCode)?
- public Group getGroup_3() { return cGroup_3; }
-
- //"entry"
- public Keyword getEntryKeyword_3_0() { return cEntryKeyword_3_0; }
-
- //entryCode=DetailCode
- public Assignment getEntryCodeAssignment_3_1() { return cEntryCodeAssignment_3_1; }
-
- //DetailCode
- public RuleCall getEntryCodeDetailCodeParserRuleCall_3_1_0() { return cEntryCodeDetailCodeParserRuleCall_3_1_0; }
-
- //("exit" exitCode=DetailCode)?
- public Group getGroup_4() { return cGroup_4; }
-
- //"exit"
- public Keyword getExitKeyword_4_0() { return cExitKeyword_4_0; }
-
- //exitCode=DetailCode
- public Assignment getExitCodeAssignment_4_1() { return cExitCodeAssignment_4_1; }
-
- //DetailCode
- public RuleCall getExitCodeDetailCodeParserRuleCall_4_1_0() { return cExitCodeDetailCodeParserRuleCall_4_1_0; }
-
- //("subgraph" subgraph=StateGraph)?
- public Group getGroup_5() { return cGroup_5; }
-
- //"subgraph"
- public Keyword getSubgraphKeyword_5_0() { return cSubgraphKeyword_5_0; }
-
- //subgraph=StateGraph
- public Assignment getSubgraphAssignment_5_1() { return cSubgraphAssignment_5_1; }
-
- //StateGraph
- public RuleCall getSubgraphStateGraphParserRuleCall_5_1_0() { return cSubgraphStateGraphParserRuleCall_5_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
- }
-
- public class RefinedStateElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RefinedState");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cRefinedStateKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cBaseAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cBaseBaseStateCrossReference_1_0 = (CrossReference)cBaseAssignment_1.eContents().get(0);
- private final RuleCall cBaseBaseStateFQNParserRuleCall_1_0_1 = (RuleCall)cBaseBaseStateCrossReference_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Keyword cEntryKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
- private final Assignment cEntryCodeAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
- private final RuleCall cEntryCodeDetailCodeParserRuleCall_3_1_0 = (RuleCall)cEntryCodeAssignment_3_1.eContents().get(0);
- private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
- private final Keyword cExitKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
- private final Assignment cExitCodeAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
- private final RuleCall cExitCodeDetailCodeParserRuleCall_4_1_0 = (RuleCall)cExitCodeAssignment_4_1.eContents().get(0);
- private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
- private final Keyword cSubgraphKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
- private final Assignment cSubgraphAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
- private final RuleCall cSubgraphStateGraphParserRuleCall_5_1_0 = (RuleCall)cSubgraphAssignment_5_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-
- //RefinedState:
- // "RefinedState" base=[BaseState|FQN] "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph"
- // subgraph=StateGraph)? "}";
- public ParserRule getRule() { return rule; }
-
- //"RefinedState" base=[BaseState|FQN] "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph"
- //subgraph=StateGraph)? "}"
- public Group getGroup() { return cGroup; }
-
- //"RefinedState"
- public Keyword getRefinedStateKeyword_0() { return cRefinedStateKeyword_0; }
-
- //base=[BaseState|FQN]
- public Assignment getBaseAssignment_1() { return cBaseAssignment_1; }
-
- //[BaseState|FQN]
- public CrossReference getBaseBaseStateCrossReference_1_0() { return cBaseBaseStateCrossReference_1_0; }
-
- //FQN
- public RuleCall getBaseBaseStateFQNParserRuleCall_1_0_1() { return cBaseBaseStateFQNParserRuleCall_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //("entry" entryCode=DetailCode)?
- public Group getGroup_3() { return cGroup_3; }
-
- //"entry"
- public Keyword getEntryKeyword_3_0() { return cEntryKeyword_3_0; }
-
- //entryCode=DetailCode
- public Assignment getEntryCodeAssignment_3_1() { return cEntryCodeAssignment_3_1; }
-
- //DetailCode
- public RuleCall getEntryCodeDetailCodeParserRuleCall_3_1_0() { return cEntryCodeDetailCodeParserRuleCall_3_1_0; }
-
- //("exit" exitCode=DetailCode)?
- public Group getGroup_4() { return cGroup_4; }
-
- //"exit"
- public Keyword getExitKeyword_4_0() { return cExitKeyword_4_0; }
-
- //exitCode=DetailCode
- public Assignment getExitCodeAssignment_4_1() { return cExitCodeAssignment_4_1; }
-
- //DetailCode
- public RuleCall getExitCodeDetailCodeParserRuleCall_4_1_0() { return cExitCodeDetailCodeParserRuleCall_4_1_0; }
-
- //("subgraph" subgraph=StateGraph)?
- public Group getGroup_5() { return cGroup_5; }
-
- //"subgraph"
- public Keyword getSubgraphKeyword_5_0() { return cSubgraphKeyword_5_0; }
-
- //subgraph=StateGraph
- public Assignment getSubgraphAssignment_5_1() { return cSubgraphAssignment_5_1; }
-
- //StateGraph
- public RuleCall getSubgraphStateGraphParserRuleCall_5_1_0() { return cSubgraphStateGraphParserRuleCall_5_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
- }
-
- public class DetailCodeElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DetailCode");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cCommandsAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cCommandsSTRINGTerminalRuleCall_1_0 = (RuleCall)cCommandsAssignment_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-
- //// TODOHRR: provide a means to call super class code (cf. ROOM p. 310f)
- //
- //// super() keyword or flag like in Trice
- //
- //DetailCode:
- // "{" commands+=STRING+ "}";
- public ParserRule getRule() { return rule; }
-
- //"{" commands+=STRING+ "}"
- public Group getGroup() { return cGroup; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
-
- //commands+=STRING+
- public Assignment getCommandsAssignment_1() { return cCommandsAssignment_1; }
-
- //STRING
- public RuleCall getCommandsSTRINGTerminalRuleCall_1_0() { return cCommandsSTRINGTerminalRuleCall_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_2() { return cRightCurlyBracketKeyword_2; }
- }
-
- public class TrPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TrPoint");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cTransitionPointParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cEntryPointParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cExitPointParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //TrPoint:
- // TransitionPoint | EntryPoint | ExitPoint;
- public ParserRule getRule() { return rule; }
-
- //TransitionPoint | EntryPoint | ExitPoint
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //TransitionPoint
- public RuleCall getTransitionPointParserRuleCall_0() { return cTransitionPointParserRuleCall_0; }
-
- //EntryPoint
- public RuleCall getEntryPointParserRuleCall_1() { return cEntryPointParserRuleCall_1; }
-
- //ExitPoint
- public RuleCall getExitPointParserRuleCall_2() { return cExitPointParserRuleCall_2; }
- }
-
- public class TransitionPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TransitionPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cHandlerAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final Keyword cHandlerHandlerKeyword_0_0 = (Keyword)cHandlerAssignment_0.eContents().get(0);
- private final Keyword cTransitionPointKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
-
- //TransitionPoint:
- // handler?="handler"? "TransitionPoint" name=ID;
- public ParserRule getRule() { return rule; }
-
- //handler?="handler"? "TransitionPoint" name=ID
- public Group getGroup() { return cGroup; }
-
- //handler?="handler"?
- public Assignment getHandlerAssignment_0() { return cHandlerAssignment_0; }
-
- //"handler"
- public Keyword getHandlerHandlerKeyword_0_0() { return cHandlerHandlerKeyword_0_0; }
-
- //"TransitionPoint"
- public Keyword getTransitionPointKeyword_1() { return cTransitionPointKeyword_1; }
-
- //name=ID
- public Assignment getNameAssignment_2() { return cNameAssignment_2; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
- }
-
- public class EntryPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EntryPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cEntryPointKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-
- //EntryPoint:
- // "EntryPoint" name=ID;
- public ParserRule getRule() { return rule; }
-
- //"EntryPoint" name=ID
- public Group getGroup() { return cGroup; }
-
- //"EntryPoint"
- public Keyword getEntryPointKeyword_0() { return cEntryPointKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
- }
-
- public class ExitPointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ExitPoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cExitPointKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-
- //ExitPoint:
- // "ExitPoint" name=ID;
- public ParserRule getRule() { return rule; }
-
- //"ExitPoint" name=ID
- public Group getGroup() { return cGroup; }
-
- //"ExitPoint"
- public Keyword getExitPointKeyword_0() { return cExitPointKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
- }
-
- public class ChoicePointElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ChoicePoint");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cChoicePointKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-
- //ChoicePoint:
- // "ChoicePoint" name=ID;
- public ParserRule getRule() { return rule; }
-
- //"ChoicePoint" name=ID
- public Group getGroup() { return cGroup; }
-
- //"ChoicePoint"
- public Keyword getChoicePointKeyword_0() { return cChoicePointKeyword_0; }
-
- //name=ID
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
- }
-
- public class TransitionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Transition");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cInitialTransitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cNonInitialTransitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //Transition:
- // InitialTransition | NonInitialTransition;
- public ParserRule getRule() { return rule; }
-
- //InitialTransition | NonInitialTransition
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //InitialTransition
- public RuleCall getInitialTransitionParserRuleCall_0() { return cInitialTransitionParserRuleCall_0; }
-
- //NonInitialTransition
- public RuleCall getNonInitialTransitionParserRuleCall_1() { return cNonInitialTransitionParserRuleCall_1; }
- }
-
- public class NonInitialTransitionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "NonInitialTransition");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cTriggeredTransitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cContinuationTransitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cCPBranchTransitionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //NonInitialTransition:
- // TriggeredTransition | ContinuationTransition | CPBranchTransition;
- public ParserRule getRule() { return rule; }
-
- //TriggeredTransition | ContinuationTransition | CPBranchTransition
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //TriggeredTransition
- public RuleCall getTriggeredTransitionParserRuleCall_0() { return cTriggeredTransitionParserRuleCall_0; }
-
- //ContinuationTransition
- public RuleCall getContinuationTransitionParserRuleCall_1() { return cContinuationTransitionParserRuleCall_1; }
-
- //CPBranchTransition
- public RuleCall getCPBranchTransitionParserRuleCall_2() { return cCPBranchTransitionParserRuleCall_2; }
- }
-
- public class InitialTransitionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InitialTransition");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Keyword cInitialKeyword_3 = (Keyword)cGroup.eContents().get(3);
- private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
- private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
- private final Keyword cActionKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
- private final Assignment cActionAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1);
- private final RuleCall cActionDetailCodeParserRuleCall_7_1_0 = (RuleCall)cActionAssignment_7_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
-
- //InitialTransition:
- // "Transition" name=ID? ":" "initial" "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
- public ParserRule getRule() { return rule; }
-
- //"Transition" name=ID? ":" "initial" "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}"
- public Group getGroup() { return cGroup; }
-
- //"Transition"
- public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
-
- //name=ID?
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //"initial"
- public Keyword getInitialKeyword_3() { return cInitialKeyword_3; }
-
- //"->"
- public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
-
- //to=TransitionTerminal
- public Assignment getToAssignment_5() { return cToAssignment_5; }
-
- //TransitionTerminal
- public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
-
- //("action" action=DetailCode)?
- public Group getGroup_7() { return cGroup_7; }
-
- //"action"
- public Keyword getActionKeyword_7_0() { return cActionKeyword_7_0; }
-
- //action=DetailCode
- public Assignment getActionAssignment_7_1() { return cActionAssignment_7_1; }
-
- //DetailCode
- public RuleCall getActionDetailCodeParserRuleCall_7_1_0() { return cActionDetailCodeParserRuleCall_7_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
- }
-
- public class ContinuationTransitionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ContinuationTransition");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cFromTransitionTerminalParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
- private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
- private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
- private final Keyword cActionKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
- private final Assignment cActionAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1);
- private final RuleCall cActionDetailCodeParserRuleCall_7_1_0 = (RuleCall)cActionAssignment_7_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
-
- //ContinuationTransition:
- // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
- public ParserRule getRule() { return rule; }
-
- //"Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}"
- public Group getGroup() { return cGroup; }
-
- //"Transition"
- public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
-
- //name=ID?
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //from=TransitionTerminal
- public Assignment getFromAssignment_3() { return cFromAssignment_3; }
-
- //TransitionTerminal
- public RuleCall getFromTransitionTerminalParserRuleCall_3_0() { return cFromTransitionTerminalParserRuleCall_3_0; }
-
- //"->"
- public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
-
- //to=TransitionTerminal
- public Assignment getToAssignment_5() { return cToAssignment_5; }
-
- //TransitionTerminal
- public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
-
- //("action" action=DetailCode)?
- public Group getGroup_7() { return cGroup_7; }
-
- //"action"
- public Keyword getActionKeyword_7_0() { return cActionKeyword_7_0; }
-
- //action=DetailCode
- public Assignment getActionAssignment_7_1() { return cActionAssignment_7_1; }
-
- //DetailCode
- public RuleCall getActionDetailCodeParserRuleCall_7_1_0() { return cActionDetailCodeParserRuleCall_7_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
- }
-
- public class TriggeredTransitionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TriggeredTransition");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cFromTransitionTerminalParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
- private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
- private final Keyword cTriggersKeyword_7 = (Keyword)cGroup.eContents().get(7);
- private final Keyword cLeftCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
- private final Assignment cTriggersAssignment_9 = (Assignment)cGroup.eContents().get(9);
- private final RuleCall cTriggersTriggerParserRuleCall_9_0 = (RuleCall)cTriggersAssignment_9.eContents().get(0);
- private final Group cGroup_10 = (Group)cGroup.eContents().get(10);
- private final Keyword cOrKeyword_10_0 = (Keyword)cGroup_10.eContents().get(0);
- private final Assignment cTriggersAssignment_10_1 = (Assignment)cGroup_10.eContents().get(1);
- private final RuleCall cTriggersTriggerParserRuleCall_10_1_0 = (RuleCall)cTriggersAssignment_10_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
- private final Group cGroup_12 = (Group)cGroup.eContents().get(12);
- private final Keyword cActionKeyword_12_0 = (Keyword)cGroup_12.eContents().get(0);
- private final Assignment cActionAssignment_12_1 = (Assignment)cGroup_12.eContents().get(1);
- private final RuleCall cActionDetailCodeParserRuleCall_12_1_0 = (RuleCall)cActionAssignment_12_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_13 = (Keyword)cGroup.eContents().get(13);
-
- //TriggeredTransition:
- // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "triggers" "{" triggers+=Trigger
- // ("or" triggers+=Trigger)* "}" ("action" action=DetailCode)? "}";
- public ParserRule getRule() { return rule; }
-
- //"Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "triggers" "{" triggers+=Trigger ("or"
- //triggers+=Trigger)* "}" ("action" action=DetailCode)? "}"
- public Group getGroup() { return cGroup; }
-
- //"Transition"
- public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
-
- //name=ID?
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //from=TransitionTerminal
- public Assignment getFromAssignment_3() { return cFromAssignment_3; }
-
- //TransitionTerminal
- public RuleCall getFromTransitionTerminalParserRuleCall_3_0() { return cFromTransitionTerminalParserRuleCall_3_0; }
-
- //"->"
- public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
-
- //to=TransitionTerminal
- public Assignment getToAssignment_5() { return cToAssignment_5; }
-
- //TransitionTerminal
- public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
-
- //"triggers"
- public Keyword getTriggersKeyword_7() { return cTriggersKeyword_7; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_8() { return cLeftCurlyBracketKeyword_8; }
-
- //triggers+=Trigger
- public Assignment getTriggersAssignment_9() { return cTriggersAssignment_9; }
-
- //Trigger
- public RuleCall getTriggersTriggerParserRuleCall_9_0() { return cTriggersTriggerParserRuleCall_9_0; }
-
- //("or" triggers+=Trigger)*
- public Group getGroup_10() { return cGroup_10; }
-
- //"or"
- public Keyword getOrKeyword_10_0() { return cOrKeyword_10_0; }
-
- //triggers+=Trigger
- public Assignment getTriggersAssignment_10_1() { return cTriggersAssignment_10_1; }
-
- //Trigger
- public RuleCall getTriggersTriggerParserRuleCall_10_1_0() { return cTriggersTriggerParserRuleCall_10_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_11() { return cRightCurlyBracketKeyword_11; }
-
- //("action" action=DetailCode)?
- public Group getGroup_12() { return cGroup_12; }
-
- //"action"
- public Keyword getActionKeyword_12_0() { return cActionKeyword_12_0; }
-
- //action=DetailCode
- public Assignment getActionAssignment_12_1() { return cActionAssignment_12_1; }
-
- //DetailCode
- public RuleCall getActionDetailCodeParserRuleCall_12_1_0() { return cActionDetailCodeParserRuleCall_12_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_13() { return cRightCurlyBracketKeyword_13; }
- }
-
- public class CPBranchTransitionElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "CPBranchTransition");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
- private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cFromTransitionTerminalParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
- private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
- private final Keyword cCondKeyword_7 = (Keyword)cGroup.eContents().get(7);
- private final Assignment cConditionAssignment_8 = (Assignment)cGroup.eContents().get(8);
- private final RuleCall cConditionDetailCodeParserRuleCall_8_0 = (RuleCall)cConditionAssignment_8.eContents().get(0);
- private final Group cGroup_9 = (Group)cGroup.eContents().get(9);
- private final Keyword cActionKeyword_9_0 = (Keyword)cGroup_9.eContents().get(0);
- private final Assignment cActionAssignment_9_1 = (Assignment)cGroup_9.eContents().get(1);
- private final RuleCall cActionDetailCodeParserRuleCall_9_1_0 = (RuleCall)cActionAssignment_9_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_10 = (Keyword)cGroup.eContents().get(10);
-
- //CPBranchTransition:
- // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "cond" condition=DetailCode ("action"
- // action=DetailCode)? "}";
- public ParserRule getRule() { return rule; }
-
- //"Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "cond" condition=DetailCode ("action"
- //action=DetailCode)? "}"
- public Group getGroup() { return cGroup; }
-
- //"Transition"
- public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
-
- //name=ID?
- public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
- //ID
- public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
-
- //":"
- public Keyword getColonKeyword_2() { return cColonKeyword_2; }
-
- //from=TransitionTerminal
- public Assignment getFromAssignment_3() { return cFromAssignment_3; }
-
- //TransitionTerminal
- public RuleCall getFromTransitionTerminalParserRuleCall_3_0() { return cFromTransitionTerminalParserRuleCall_3_0; }
-
- //"->"
- public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
-
- //to=TransitionTerminal
- public Assignment getToAssignment_5() { return cToAssignment_5; }
-
- //TransitionTerminal
- public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
-
- //"cond"
- public Keyword getCondKeyword_7() { return cCondKeyword_7; }
-
- //condition=DetailCode
- public Assignment getConditionAssignment_8() { return cConditionAssignment_8; }
-
- //DetailCode
- public RuleCall getConditionDetailCodeParserRuleCall_8_0() { return cConditionDetailCodeParserRuleCall_8_0; }
-
- //("action" action=DetailCode)?
- public Group getGroup_9() { return cGroup_9; }
-
- //"action"
- public Keyword getActionKeyword_9_0() { return cActionKeyword_9_0; }
-
- //action=DetailCode
- public Assignment getActionAssignment_9_1() { return cActionAssignment_9_1; }
-
- //DetailCode
- public RuleCall getActionDetailCodeParserRuleCall_9_1_0() { return cActionDetailCodeParserRuleCall_9_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_10() { return cRightCurlyBracketKeyword_10; }
- }
-
- public class TransitionTerminalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TransitionTerminal");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cStateTerminalParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cTrPointTerminalParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cSubStateTrPointTerminalParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
- private final RuleCall cChoicepointTerminalParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
-
- //TransitionTerminal:
- // StateTerminal | TrPointTerminal | SubStateTrPointTerminal | ChoicepointTerminal;
- public ParserRule getRule() { return rule; }
-
- //StateTerminal | TrPointTerminal | SubStateTrPointTerminal | ChoicepointTerminal
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //StateTerminal
- public RuleCall getStateTerminalParserRuleCall_0() { return cStateTerminalParserRuleCall_0; }
-
- //TrPointTerminal
- public RuleCall getTrPointTerminalParserRuleCall_1() { return cTrPointTerminalParserRuleCall_1; }
-
- //SubStateTrPointTerminal
- public RuleCall getSubStateTrPointTerminalParserRuleCall_2() { return cSubStateTrPointTerminalParserRuleCall_2; }
-
- //ChoicepointTerminal
- public RuleCall getChoicepointTerminalParserRuleCall_3() { return cChoicepointTerminalParserRuleCall_3; }
- }
-
- public class StateTerminalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateTerminal");
- private final Assignment cStateAssignment = (Assignment)rule.eContents().get(1);
- private final CrossReference cStateBaseStateCrossReference_0 = (CrossReference)cStateAssignment.eContents().get(0);
- private final RuleCall cStateBaseStateIDTerminalRuleCall_0_1 = (RuleCall)cStateBaseStateCrossReference_0.eContents().get(1);
-
- //StateTerminal:
- // state=[BaseState];
- public ParserRule getRule() { return rule; }
-
- //state=[BaseState]
- public Assignment getStateAssignment() { return cStateAssignment; }
-
- //[BaseState]
- public CrossReference getStateBaseStateCrossReference_0() { return cStateBaseStateCrossReference_0; }
-
- //ID
- public RuleCall getStateBaseStateIDTerminalRuleCall_0_1() { return cStateBaseStateIDTerminalRuleCall_0_1; }
- }
-
- public class TrPointTerminalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TrPointTerminal");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cMyKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cTrPointAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cTrPointTrPointCrossReference_1_0 = (CrossReference)cTrPointAssignment_1.eContents().get(0);
- private final RuleCall cTrPointTrPointIDTerminalRuleCall_1_0_1 = (RuleCall)cTrPointTrPointCrossReference_1_0.eContents().get(1);
-
- //TrPointTerminal:
- // "my" trPoint=[TrPoint];
- public ParserRule getRule() { return rule; }
-
- //"my" trPoint=[TrPoint]
- public Group getGroup() { return cGroup; }
-
- //"my"
- public Keyword getMyKeyword_0() { return cMyKeyword_0; }
-
- //trPoint=[TrPoint]
- public Assignment getTrPointAssignment_1() { return cTrPointAssignment_1; }
-
- //[TrPoint]
- public CrossReference getTrPointTrPointCrossReference_1_0() { return cTrPointTrPointCrossReference_1_0; }
-
- //ID
- public RuleCall getTrPointTrPointIDTerminalRuleCall_1_0_1() { return cTrPointTrPointIDTerminalRuleCall_1_0_1; }
- }
-
- public class SubStateTrPointTerminalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubStateTrPointTerminal");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cTrPointAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final CrossReference cTrPointTrPointCrossReference_0_0 = (CrossReference)cTrPointAssignment_0.eContents().get(0);
- private final RuleCall cTrPointTrPointIDTerminalRuleCall_0_0_1 = (RuleCall)cTrPointTrPointCrossReference_0_0.eContents().get(1);
- private final Keyword cOfKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cStateAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final CrossReference cStateBaseStateCrossReference_2_0 = (CrossReference)cStateAssignment_2.eContents().get(0);
- private final RuleCall cStateBaseStateIDTerminalRuleCall_2_0_1 = (RuleCall)cStateBaseStateCrossReference_2_0.eContents().get(1);
-
- //SubStateTrPointTerminal:
- // trPoint=[TrPoint] "of" state=[BaseState];
- public ParserRule getRule() { return rule; }
-
- //trPoint=[TrPoint] "of" state=[BaseState]
- public Group getGroup() { return cGroup; }
-
- //trPoint=[TrPoint]
- public Assignment getTrPointAssignment_0() { return cTrPointAssignment_0; }
-
- //[TrPoint]
- public CrossReference getTrPointTrPointCrossReference_0_0() { return cTrPointTrPointCrossReference_0_0; }
-
- //ID
- public RuleCall getTrPointTrPointIDTerminalRuleCall_0_0_1() { return cTrPointTrPointIDTerminalRuleCall_0_0_1; }
-
- //"of"
- public Keyword getOfKeyword_1() { return cOfKeyword_1; }
-
- //state=[BaseState]
- public Assignment getStateAssignment_2() { return cStateAssignment_2; }
-
- //[BaseState]
- public CrossReference getStateBaseStateCrossReference_2_0() { return cStateBaseStateCrossReference_2_0; }
-
- //ID
- public RuleCall getStateBaseStateIDTerminalRuleCall_2_0_1() { return cStateBaseStateIDTerminalRuleCall_2_0_1; }
- }
-
- public class ChoicepointTerminalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ChoicepointTerminal");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cCpKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cCpAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cCpChoicePointCrossReference_1_0 = (CrossReference)cCpAssignment_1.eContents().get(0);
- private final RuleCall cCpChoicePointIDTerminalRuleCall_1_0_1 = (RuleCall)cCpChoicePointCrossReference_1_0.eContents().get(1);
-
- //ChoicepointTerminal:
- // "cp" cp=[ChoicePoint];
- public ParserRule getRule() { return rule; }
-
- //"cp" cp=[ChoicePoint]
- public Group getGroup() { return cGroup; }
-
- //"cp"
- public Keyword getCpKeyword_0() { return cCpKeyword_0; }
-
- //cp=[ChoicePoint]
- public Assignment getCpAssignment_1() { return cCpAssignment_1; }
-
- //[ChoicePoint]
- public CrossReference getCpChoicePointCrossReference_1_0() { return cCpChoicePointCrossReference_1_0; }
-
- //ID
- public RuleCall getCpChoicePointIDTerminalRuleCall_1_0_1() { return cCpChoicePointIDTerminalRuleCall_1_0_1; }
- }
-
- public class TriggerElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Trigger");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cLessThanSignKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cMsgFromIfPairsAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cMsgFromIfPairsMessageFromIfParserRuleCall_1_0 = (RuleCall)cMsgFromIfPairsAssignment_1.eContents().get(0);
- private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
- private final Keyword cVerticalLineKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
- private final Assignment cMsgFromIfPairsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
- private final RuleCall cMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0 = (RuleCall)cMsgFromIfPairsAssignment_2_1.eContents().get(0);
- private final Assignment cGuardAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cGuardGuardParserRuleCall_3_0 = (RuleCall)cGuardAssignment_3.eContents().get(0);
- private final Keyword cGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
-
- ////TransitionSource: TransitionTerminal|ChoicePointCaseRef|ChoicePointDefaultRef;
- //
- ////TransitionSource: TransitionTerminal|ChoicePointRef;
- //
- ////TransitionDest: TransitionTerminal|ChoicePointRef;
- //
- ////ChoicePointCaseRef: 'cp' cp=[ChoicePoint|ID] 'case' case=[ChoicePointCase|ID];
- //
- ////ChoicePointDefaultRef: 'cp' cp=[ChoicePoint|ID] 'default';
- //
- ////ChoicePointRef: 'cp' cp=[ChoicePoint|ID];
- //
- //Trigger:
- // "<" msgFromIfPairs+=MessageFromIf ("|" msgFromIfPairs+=MessageFromIf)* guard=Guard? ">";
- public ParserRule getRule() { return rule; }
-
- //"<" msgFromIfPairs+=MessageFromIf ("|" msgFromIfPairs+=MessageFromIf)* guard=Guard? ">"
- public Group getGroup() { return cGroup; }
-
- //"<"
- public Keyword getLessThanSignKeyword_0() { return cLessThanSignKeyword_0; }
-
- //msgFromIfPairs+=MessageFromIf
- public Assignment getMsgFromIfPairsAssignment_1() { return cMsgFromIfPairsAssignment_1; }
-
- //MessageFromIf
- public RuleCall getMsgFromIfPairsMessageFromIfParserRuleCall_1_0() { return cMsgFromIfPairsMessageFromIfParserRuleCall_1_0; }
-
- //("|" msgFromIfPairs+=MessageFromIf)*
- public Group getGroup_2() { return cGroup_2; }
-
- //"|"
- public Keyword getVerticalLineKeyword_2_0() { return cVerticalLineKeyword_2_0; }
-
- //msgFromIfPairs+=MessageFromIf
- public Assignment getMsgFromIfPairsAssignment_2_1() { return cMsgFromIfPairsAssignment_2_1; }
-
- //MessageFromIf
- public RuleCall getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0() { return cMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0; }
-
- //guard=Guard?
- public Assignment getGuardAssignment_3() { return cGuardAssignment_3; }
-
- //Guard
- public RuleCall getGuardGuardParserRuleCall_3_0() { return cGuardGuardParserRuleCall_3_0; }
-
- //">"
- public Keyword getGreaterThanSignKeyword_4() { return cGreaterThanSignKeyword_4; }
- }
-
- public class MessageFromIfElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MessageFromIf");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cMessageAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final CrossReference cMessageMessageCrossReference_0_0 = (CrossReference)cMessageAssignment_0.eContents().get(0);
- private final RuleCall cMessageMessageIDTerminalRuleCall_0_0_1 = (RuleCall)cMessageMessageCrossReference_0_0.eContents().get(1);
- private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Assignment cFromAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final CrossReference cFromInterfaceItemCrossReference_2_0 = (CrossReference)cFromAssignment_2.eContents().get(0);
- private final RuleCall cFromInterfaceItemIDTerminalRuleCall_2_0_1 = (RuleCall)cFromInterfaceItemCrossReference_2_0.eContents().get(1);
-
- //MessageFromIf:
- // message=[Message] ":" from=[InterfaceItem];
- public ParserRule getRule() { return rule; }
-
- //message=[Message] ":" from=[InterfaceItem]
- public Group getGroup() { return cGroup; }
-
- //message=[Message]
- public Assignment getMessageAssignment_0() { return cMessageAssignment_0; }
-
- //[Message]
- public CrossReference getMessageMessageCrossReference_0_0() { return cMessageMessageCrossReference_0_0; }
-
- //ID
- public RuleCall getMessageMessageIDTerminalRuleCall_0_0_1() { return cMessageMessageIDTerminalRuleCall_0_0_1; }
-
- //":"
- public Keyword getColonKeyword_1() { return cColonKeyword_1; }
-
- //from=[InterfaceItem]
- public Assignment getFromAssignment_2() { return cFromAssignment_2; }
-
- //[InterfaceItem]
- public CrossReference getFromInterfaceItemCrossReference_2_0() { return cFromInterfaceItemCrossReference_2_0; }
-
- //ID
- public RuleCall getFromInterfaceItemIDTerminalRuleCall_2_0_1() { return cFromInterfaceItemIDTerminalRuleCall_2_0_1; }
- }
-
- public class GuardElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Guard");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cGuardKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cGuardAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cGuardDetailCodeParserRuleCall_1_0 = (RuleCall)cGuardAssignment_1.eContents().get(0);
-
- //Guard:
- // "guard" guard=DetailCode;
- public ParserRule getRule() { return rule; }
-
- //"guard" guard=DetailCode
- public Group getGroup() { return cGroup; }
-
- //"guard"
- public Keyword getGuardKeyword_0() { return cGuardKeyword_0; }
-
- //guard=DetailCode
- public Assignment getGuardAssignment_1() { return cGuardAssignment_1; }
-
- //DetailCode
- public RuleCall getGuardDetailCodeParserRuleCall_1_0() { return cGuardDetailCodeParserRuleCall_1_0; }
- }
-
- public class ImportElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Import");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cImportedNamespaceAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cImportedNamespaceImportedFQNParserRuleCall_1_0 = (RuleCall)cImportedNamespaceAssignment_1.eContents().get(0);
-
- //// **************************************************************
- //
- //// general
- //
- //Import:
- // "import" importedNamespace=ImportedFQN;
- public ParserRule getRule() { return rule; }
-
- //"import" importedNamespace=ImportedFQN
- public Group getGroup() { return cGroup; }
-
- //"import"
- public Keyword getImportKeyword_0() { return cImportKeyword_0; }
-
- //importedNamespace=ImportedFQN
- public Assignment getImportedNamespaceAssignment_1() { return cImportedNamespaceAssignment_1; }
-
- //ImportedFQN
- public RuleCall getImportedNamespaceImportedFQNParserRuleCall_1_0() { return cImportedNamespaceImportedFQNParserRuleCall_1_0; }
- }
-
- public class ImportedFQNElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ImportedFQN");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final RuleCall cFQNParserRuleCall_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 Keyword cAsteriskKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
-
- //ImportedFQN:
- // FQN ("." "*")?;
- public ParserRule getRule() { return rule; }
-
- //FQN ("." "*")?
- public Group getGroup() { return cGroup; }
-
- //FQN
- public RuleCall getFQNParserRuleCall_0() { return cFQNParserRuleCall_0; }
-
- //("." "*")?
- public Group getGroup_1() { return cGroup_1; }
-
- //"."
- public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
-
- //"*"
- public Keyword getAsteriskKeyword_1_1() { return cAsteriskKeyword_1_1; }
- }
-
- 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);
-
- //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 PrimitiveTypeElements extends AbstractEnumRuleElementFinder {
- private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "PrimitiveType");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final EnumLiteralDeclaration cVoidEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
- private final Keyword cVoidVoidKeyword_0_0 = (Keyword)cVoidEnumLiteralDeclaration_0.eContents().get(0);
- private final EnumLiteralDeclaration cInt8EnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
- private final Keyword cInt8Int8Keyword_1_0 = (Keyword)cInt8EnumLiteralDeclaration_1.eContents().get(0);
- private final EnumLiteralDeclaration cInt16EnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
- private final Keyword cInt16Int16Keyword_2_0 = (Keyword)cInt16EnumLiteralDeclaration_2.eContents().get(0);
- private final EnumLiteralDeclaration cInt32EnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3);
- private final Keyword cInt32Int32Keyword_3_0 = (Keyword)cInt32EnumLiteralDeclaration_3.eContents().get(0);
- private final EnumLiteralDeclaration cUint8EnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4);
- private final Keyword cUint8Uint8Keyword_4_0 = (Keyword)cUint8EnumLiteralDeclaration_4.eContents().get(0);
- private final EnumLiteralDeclaration cUint16EnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5);
- private final Keyword cUint16Uint16Keyword_5_0 = (Keyword)cUint16EnumLiteralDeclaration_5.eContents().get(0);
- private final EnumLiteralDeclaration cUint32EnumLiteralDeclaration_6 = (EnumLiteralDeclaration)cAlternatives.eContents().get(6);
- private final Keyword cUint32Uint32Keyword_6_0 = (Keyword)cUint32EnumLiteralDeclaration_6.eContents().get(0);
- private final EnumLiteralDeclaration cFloat32EnumLiteralDeclaration_7 = (EnumLiteralDeclaration)cAlternatives.eContents().get(7);
- private final Keyword cFloat32Float32Keyword_7_0 = (Keyword)cFloat32EnumLiteralDeclaration_7.eContents().get(0);
- private final EnumLiteralDeclaration cFloat64EnumLiteralDeclaration_8 = (EnumLiteralDeclaration)cAlternatives.eContents().get(8);
- private final Keyword cFloat64Float64Keyword_8_0 = (Keyword)cFloat64EnumLiteralDeclaration_8.eContents().get(0);
- private final EnumLiteralDeclaration cBooleanEnumLiteralDeclaration_9 = (EnumLiteralDeclaration)cAlternatives.eContents().get(9);
- private final Keyword cBooleanBooleanKeyword_9_0 = (Keyword)cBooleanEnumLiteralDeclaration_9.eContents().get(0);
- private final EnumLiteralDeclaration cStringEnumLiteralDeclaration_10 = (EnumLiteralDeclaration)cAlternatives.eContents().get(10);
- private final Keyword cStringStringKeyword_10_0 = (Keyword)cStringEnumLiteralDeclaration_10.eContents().get(0);
- private final EnumLiteralDeclaration cCharEnumLiteralDeclaration_11 = (EnumLiteralDeclaration)cAlternatives.eContents().get(11);
- private final Keyword cCharCharKeyword_11_0 = (Keyword)cCharEnumLiteralDeclaration_11.eContents().get(0);
-
- //// **************************************************************
- //
- //// data class
- //
- //// cf. decision DSL2: fixed size data types
- //
- //// convert appropriately for Java and issue an error if size not available
- //
- //enum PrimitiveType:
- // void | int8 | int16 | int32 | uint8 | uint16 | uint32 | float32 | float64 | boolean | string | char;
- public EnumRule getRule() { return rule; }
-
- //void | int8 | int16 | int32 | uint8 | uint16 | uint32 | float32 | float64 | boolean | string | char
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //void
- public EnumLiteralDeclaration getVoidEnumLiteralDeclaration_0() { return cVoidEnumLiteralDeclaration_0; }
-
- //"void"
- public Keyword getVoidVoidKeyword_0_0() { return cVoidVoidKeyword_0_0; }
-
- //int8
- public EnumLiteralDeclaration getInt8EnumLiteralDeclaration_1() { return cInt8EnumLiteralDeclaration_1; }
-
- //"int8"
- public Keyword getInt8Int8Keyword_1_0() { return cInt8Int8Keyword_1_0; }
-
- //int16
- public EnumLiteralDeclaration getInt16EnumLiteralDeclaration_2() { return cInt16EnumLiteralDeclaration_2; }
-
- //"int16"
- public Keyword getInt16Int16Keyword_2_0() { return cInt16Int16Keyword_2_0; }
-
- //int32
- public EnumLiteralDeclaration getInt32EnumLiteralDeclaration_3() { return cInt32EnumLiteralDeclaration_3; }
-
- //"int32"
- public Keyword getInt32Int32Keyword_3_0() { return cInt32Int32Keyword_3_0; }
-
- //uint8
- public EnumLiteralDeclaration getUint8EnumLiteralDeclaration_4() { return cUint8EnumLiteralDeclaration_4; }
-
- //"uint8"
- public Keyword getUint8Uint8Keyword_4_0() { return cUint8Uint8Keyword_4_0; }
-
- //uint16
- public EnumLiteralDeclaration getUint16EnumLiteralDeclaration_5() { return cUint16EnumLiteralDeclaration_5; }
-
- //"uint16"
- public Keyword getUint16Uint16Keyword_5_0() { return cUint16Uint16Keyword_5_0; }
-
- //uint32
- public EnumLiteralDeclaration getUint32EnumLiteralDeclaration_6() { return cUint32EnumLiteralDeclaration_6; }
-
- //"uint32"
- public Keyword getUint32Uint32Keyword_6_0() { return cUint32Uint32Keyword_6_0; }
-
- //float32
- public EnumLiteralDeclaration getFloat32EnumLiteralDeclaration_7() { return cFloat32EnumLiteralDeclaration_7; }
-
- //"float32"
- public Keyword getFloat32Float32Keyword_7_0() { return cFloat32Float32Keyword_7_0; }
-
- //float64
- public EnumLiteralDeclaration getFloat64EnumLiteralDeclaration_8() { return cFloat64EnumLiteralDeclaration_8; }
-
- //"float64"
- public Keyword getFloat64Float64Keyword_8_0() { return cFloat64Float64Keyword_8_0; }
-
- //boolean
- public EnumLiteralDeclaration getBooleanEnumLiteralDeclaration_9() { return cBooleanEnumLiteralDeclaration_9; }
-
- //"boolean"
- public Keyword getBooleanBooleanKeyword_9_0() { return cBooleanBooleanKeyword_9_0; }
-
- //string
- public EnumLiteralDeclaration getStringEnumLiteralDeclaration_10() { return cStringEnumLiteralDeclaration_10; }
-
- //"string"
- public Keyword getStringStringKeyword_10_0() { return cStringStringKeyword_10_0; }
-
- //char
- public EnumLiteralDeclaration getCharEnumLiteralDeclaration_11() { return cCharEnumLiteralDeclaration_11; }
-
- //"char"
- public Keyword getCharCharKeyword_11_0() { return cCharCharKeyword_11_0; }
- }
-
- private RoomModelElements pRoomModel;
- private RoomClassElements pRoomClass;
- private StructureClassElements pStructureClass;
- private ActorContainerClassElements pActorContainerClass;
- private PrimitiveTypeElements unknownRulePrimitiveType;
- private TypedIDElements pTypedID;
- private FreeTypedIDElements pFreeTypedID;
- private TypeElements pType;
- private FreeTypeElements pFreeType;
- private DataClassElements pDataClass;
- private AttributeElements pAttribute;
- private OperationElements pOperation;
- private ProtocolClassElements pProtocolClass;
- private MessageElements pMessage;
- private PortClassElements pPortClass;
- private MessageHandlerElements pMessageHandler;
- private ProtocolSemanticsElements pProtocolSemantics;
- private SemanticsRuleElements pSemanticsRule;
- private SemanticsInRuleElements pSemanticsInRule;
- private SemanticsOutRuleElements pSemanticsOutRule;
- private ActorClassElements pActorClass;
- private InterfaceItemElements pInterfaceItem;
- private PortElements pPort;
- private ExternalPortElements pExternalPort;
- private SAPRefElements pSAPRef;
- private SPPRefElements pSPPRef;
- private ServiceImplementationElements pServiceImplementation;
- private LogicalSystemElements pLogicalSystem;
- private ActorContainerRefElements pActorContainerRef;
- private SubSystemRefElements pSubSystemRef;
- private SubSystemClassElements pSubSystemClass;
- private LogicalThreadElements pLogicalThread;
- private ActorInstancePathElements pActorInstancePath;
- private BindingElements pBinding;
- private BindingEndPointElements pBindingEndPoint;
- private LayerConnectionElements pLayerConnection;
- private SAPointElements pSAPoint;
- private RefSAPointElements pRefSAPoint;
- private RelaySAPointElements pRelaySAPoint;
- private SPPointElements pSPPoint;
- private ActorRefElements pActorRef;
- private StateGraphNodeElements pStateGraphNode;
- private StateGraphItemElements pStateGraphItem;
- private StateElements pState;
- private StateGraphElements pStateGraph;
- private StateMachineElements pStateMachine;
- private BaseStateElements pBaseState;
- private RefinedStateElements pRefinedState;
- private DetailCodeElements pDetailCode;
- private TrPointElements pTrPoint;
- private TransitionPointElements pTransitionPoint;
- private EntryPointElements pEntryPoint;
- private ExitPointElements pExitPoint;
- private ChoicePointElements pChoicePoint;
- private TransitionElements pTransition;
- private NonInitialTransitionElements pNonInitialTransition;
- private InitialTransitionElements pInitialTransition;
- private ContinuationTransitionElements pContinuationTransition;
- private TriggeredTransitionElements pTriggeredTransition;
- private CPBranchTransitionElements pCPBranchTransition;
- private TransitionTerminalElements pTransitionTerminal;
- private StateTerminalElements pStateTerminal;
- private TrPointTerminalElements pTrPointTerminal;
- private SubStateTrPointTerminalElements pSubStateTrPointTerminal;
- private ChoicepointTerminalElements pChoicepointTerminal;
- private TriggerElements pTrigger;
- private MessageFromIfElements pMessageFromIf;
- private GuardElements pGuard;
- private ImportElements pImport;
- private ImportedFQNElements pImportedFQN;
- private FQNElements pFQN;
-
- private final GrammarProvider grammarProvider;
-
- private TerminalsGrammarAccess gaTerminals;
-
- @Inject
- public RoomGrammarAccess(GrammarProvider grammarProvider,
- TerminalsGrammarAccess gaTerminals) {
- this.grammarProvider = grammarProvider;
- this.gaTerminals = gaTerminals;
- }
-
- public Grammar getGrammar() {
- return grammarProvider.getGrammar(this);
- }
-
-
- public TerminalsGrammarAccess getTerminalsGrammarAccess() {
- return gaTerminals;
- }
-
-
- //RoomModel:
- // "RoomModel" name=FQN "{" imports+=Import* (dataClasses+=DataClass | protocolClasses+=ProtocolClass |
- // actorClasses+=ActorClass | subSystemClasses+=SubSystemClass | systems+=LogicalSystem)+ "}";
- public RoomModelElements getRoomModelAccess() {
- return (pRoomModel != null) ? pRoomModel : (pRoomModel = new RoomModelElements());
- }
-
- public ParserRule getRoomModelRule() {
- return getRoomModelAccess().getRule();
- }
-
- //RoomClass:
- // DataClass | ProtocolClass | StructureClass;
- public RoomClassElements getRoomClassAccess() {
- return (pRoomClass != null) ? pRoomClass : (pRoomClass = new RoomClassElements());
- }
-
- public ParserRule getRoomClassRule() {
- return getRoomClassAccess().getRule();
- }
-
- //StructureClass:
- // ActorContainerClass | LogicalSystem;
- public StructureClassElements getStructureClassAccess() {
- return (pStructureClass != null) ? pStructureClass : (pStructureClass = new StructureClassElements());
- }
-
- public ParserRule getStructureClassRule() {
- return getStructureClassAccess().getRule();
- }
-
- //ActorContainerClass:
- // ActorClass | SubSystemClass;
- public ActorContainerClassElements getActorContainerClassAccess() {
- return (pActorContainerClass != null) ? pActorContainerClass : (pActorContainerClass = new ActorContainerClassElements());
- }
-
- public ParserRule getActorContainerClassRule() {
- return getActorContainerClassAccess().getRule();
- }
-
- //// **************************************************************
- //
- //// data class
- //
- //// cf. decision DSL2: fixed size data types
- //
- //// convert appropriately for Java and issue an error if size not available
- //
- //enum PrimitiveType:
- // void | int8 | int16 | int32 | uint8 | uint16 | uint32 | float32 | float64 | boolean | string | char;
- public PrimitiveTypeElements getPrimitiveTypeAccess() {
- return (unknownRulePrimitiveType != null) ? unknownRulePrimitiveType : (unknownRulePrimitiveType = new PrimitiveTypeElements());
- }
-
- public EnumRule getPrimitiveTypeRule() {
- return getPrimitiveTypeAccess().getRule();
- }
-
- //TypedID:
- // name=ID ":" type=Type;
- public TypedIDElements getTypedIDAccess() {
- return (pTypedID != null) ? pTypedID : (pTypedID = new TypedIDElements());
- }
-
- public ParserRule getTypedIDRule() {
- return getTypedIDAccess().getRule();
- }
-
- //FreeTypedID:
- // name=ID ":" type=FreeType;
- public FreeTypedIDElements getFreeTypedIDAccess() {
- return (pFreeTypedID != null) ? pFreeTypedID : (pFreeTypedID = new FreeTypedIDElements());
- }
-
- public ParserRule getFreeTypedIDRule() {
- return getFreeTypedIDAccess().getRule();
- }
-
- //Type:
- // prim=PrimitiveType | type=[DataClass|FQN];
- public TypeElements getTypeAccess() {
- return (pType != null) ? pType : (pType = new TypeElements());
- }
-
- public ParserRule getTypeRule() {
- return getTypeAccess().getRule();
- }
-
- //FreeType:
- // prim=PrimitiveType | type=ID;
- public FreeTypeElements getFreeTypeAccess() {
- return (pFreeType != null) ? pFreeType : (pFreeType = new FreeTypeElements());
- }
-
- public ParserRule getFreeTypeRule() {
- return getFreeTypeAccess().getRule();
- }
-
- //// TODOHRR: define detail level language?
- //
- //DataClass:
- // "DataClass" name=ID ("extends" base=[DataClass|FQN])? "{" imports+=Import* attributes+=Attribute+
- // operations+=Operation* "}";
- public DataClassElements getDataClassAccess() {
- return (pDataClass != null) ? pDataClass : (pDataClass = new DataClassElements());
- }
-
- public ParserRule getDataClassRule() {
- return getDataClassAccess().getRule();
- }
-
- //Attribute:
- // "Attribute" name=ID ("[" size=INT "]")? ":" type=Type;
- public AttributeElements getAttributeAccess() {
- return (pAttribute != null) ? pAttribute : (pAttribute = new AttributeElements());
- }
-
- public ParserRule getAttributeRule() {
- return getAttributeAccess().getRule();
- }
-
- //// TODOHRR: pass arguments and return value by value/reference
- //
- //Operation:
- // "Operation" name=ID "(" (arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)? ")" (":" returntype=FreeType)?
- // detailCode=DetailCode;
- public OperationElements getOperationAccess() {
- return (pOperation != null) ? pOperation : (pOperation = new OperationElements());
- }
-
- public ParserRule getOperationRule() {
- return getOperationAccess().getRule();
- }
-
- //// **************************************************************
- //
- //// protocol class
- //
- //ProtocolClass:
- // "ProtocolClass" name=ID ("extends" base=[ProtocolClass|FQN])? "{" ("usercode1" userCode1=DetailCode)? ("usercode2"
- // userCode2=DetailCode)? "incoming" "{" incomingMessages+=Message* "}" "outgoing" "{" outgoingMessages+=Message* "}"
- // ("regular" "PortClass" regular=PortClass)? ("conjugate" "PortClass" conjugate=PortClass)? semantics=ProtocolSemantics?
- // "}";
- public ProtocolClassElements getProtocolClassAccess() {
- return (pProtocolClass != null) ? pProtocolClass : (pProtocolClass = new ProtocolClassElements());
- }
-
- public ParserRule getProtocolClassRule() {
- return getProtocolClassAccess().getRule();
- }
-
- //Message:
- // "Message" name=ID "(" (arguments+=TypedID ("," arguments+=TypedID)*)? ")";
- public MessageElements getMessageAccess() {
- return (pMessage != null) ? pMessage : (pMessage = new MessageElements());
- }
-
- public ParserRule getMessageRule() {
- return getMessageAccess().getRule();
- }
-
- //PortClass:
- // "{" ("usercode" userCode=DetailCode)? (attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+
- // "}";
- public PortClassElements getPortClassAccess() {
- return (pPortClass != null) ? pPortClass : (pPortClass = new PortClassElements());
- }
-
- public ParserRule getPortClassRule() {
- return getPortClassAccess().getRule();
- }
-
- //MessageHandler:
- // "handle" msg=[Message] detailCode=DetailCode;
- public MessageHandlerElements getMessageHandlerAccess() {
- return (pMessageHandler != null) ? pMessageHandler : (pMessageHandler = new MessageHandlerElements());
- }
-
- public ParserRule getMessageHandlerRule() {
- return getMessageHandlerAccess().getRule();
- }
-
- //ProtocolSemantics:
- // "semantics" "{" rules+=SemanticsRule+ "}";
- public ProtocolSemanticsElements getProtocolSemanticsAccess() {
- return (pProtocolSemantics != null) ? pProtocolSemantics : (pProtocolSemantics = new ProtocolSemanticsElements());
- }
-
- public ParserRule getProtocolSemanticsRule() {
- return getProtocolSemanticsAccess().getRule();
- }
-
- //SemanticsRule:
- // SemanticsInRule | SemanticsOutRule;
- public SemanticsRuleElements getSemanticsRuleAccess() {
- return (pSemanticsRule != null) ? pSemanticsRule : (pSemanticsRule = new SemanticsRuleElements());
- }
-
- public ParserRule getSemanticsRuleRule() {
- return getSemanticsRuleAccess().getRule();
- }
-
- //SemanticsInRule:
- // "in" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
- public SemanticsInRuleElements getSemanticsInRuleAccess() {
- return (pSemanticsInRule != null) ? pSemanticsInRule : (pSemanticsInRule = new SemanticsInRuleElements());
- }
-
- public ParserRule getSemanticsInRuleRule() {
- return getSemanticsInRuleAccess().getRule();
- }
-
- //SemanticsOutRule:
- // "out" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
- public SemanticsOutRuleElements getSemanticsOutRuleAccess() {
- return (pSemanticsOutRule != null) ? pSemanticsOutRule : (pSemanticsOutRule = new SemanticsOutRuleElements());
- }
-
- public ParserRule getSemanticsOutRuleRule() {
- return getSemanticsOutRuleAccess().getRule();
- }
-
- //// **************************************************************
- //
- //// actor class
- //
- //// some notes on ports
- //
- ////
- //
- //// in ROOM ports can be contained in the structure and/or the interface
- //
- //// p in s ==> internal end port
- //
- //// p in i ==> relay port
- //
- //// p in i and p in s ==> external end port
- //
- //// since double containment is not supported we decided to define external ports as reference to interface ports
- //
- //ActorClass:
- // abstract?="abstract"? "ActorClass" name=ID ("extends" base=[ActorClass|FQN])? "{" ("Interface" "{" ifPorts+=Port*
- // ifSPPs+=SPPRef* "}")? ("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)?
- // (intPorts+=Port | extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef*
- // attributes+=Attribute* actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")? ("Behavior" "{"
- // operations+=Operation* stateMachine=StateMachine? "}")? "}";
- public ActorClassElements getActorClassAccess() {
- return (pActorClass != null) ? pActorClass : (pActorClass = new ActorClassElements());
- }
-
- public ParserRule getActorClassRule() {
- return getActorClassAccess().getRule();
- }
-
- //InterfaceItem:
- // Port | SAPRef | SPPRef;
- public InterfaceItemElements getInterfaceItemAccess() {
- return (pInterfaceItem != null) ? pInterfaceItem : (pInterfaceItem = new InterfaceItemElements());
- }
-
- public ParserRule getInterfaceItemRule() {
- return getInterfaceItemAccess().getRule();
- }
-
- //Port:
- // conjugated?="conjugated"? "Port" name=ID ("[" multiplicity=INT "]")? ":" protocol=[ProtocolClass|FQN];
- public PortElements getPortAccess() {
- return (pPort != null) ? pPort : (pPort = new PortElements());
- }
-
- public ParserRule getPortRule() {
- return getPortAccess().getRule();
- }
-
- //ExternalPort:
- // "external" "Port" ifport=[Port];
- public ExternalPortElements getExternalPortAccess() {
- return (pExternalPort != null) ? pExternalPort : (pExternalPort = new ExternalPortElements());
- }
-
- public ParserRule getExternalPortRule() {
- return getExternalPortAccess().getRule();
- }
-
- //SAPRef: // we omitted the SAP type (Timing/Frame/Exception)
- //
- // "SAP" name=ID ":" protocol=[ProtocolClass|FQN];
- public SAPRefElements getSAPRefAccess() {
- return (pSAPRef != null) ? pSAPRef : (pSAPRef = new SAPRefElements());
- }
-
- public ParserRule getSAPRefRule() {
- return getSAPRefAccess().getRule();
- }
-
- //SPPRef:
- // "SPP" name=ID ":" protocol=[ProtocolClass|FQN];
- public SPPRefElements getSPPRefAccess() {
- return (pSPPRef != null) ? pSPPRef : (pSPPRef = new SPPRefElements());
- }
-
- public ParserRule getSPPRefRule() {
- return getSPPRefAccess().getRule();
- }
-
- //ServiceImplementation:
- // "ServiceImplementation" "of" spp=[SPPRef];
- public ServiceImplementationElements getServiceImplementationAccess() {
- return (pServiceImplementation != null) ? pServiceImplementation : (pServiceImplementation = new ServiceImplementationElements());
- }
-
- public ParserRule getServiceImplementationRule() {
- return getServiceImplementationAccess().getRule();
- }
-
- //LogicalSystem:
- // "LogicalSystem" name=ID "{" subSystems+=SubSystemRef+ bindings+=Binding* connections+=LayerConnection* "}";
- public LogicalSystemElements getLogicalSystemAccess() {
- return (pLogicalSystem != null) ? pLogicalSystem : (pLogicalSystem = new LogicalSystemElements());
- }
-
- public ParserRule getLogicalSystemRule() {
- return getLogicalSystemAccess().getRule();
- }
-
- //ActorContainerRef:
- // SubSystemRef | ActorRef;
- public ActorContainerRefElements getActorContainerRefAccess() {
- return (pActorContainerRef != null) ? pActorContainerRef : (pActorContainerRef = new ActorContainerRefElements());
- }
-
- public ParserRule getActorContainerRefRule() {
- return getActorContainerRefAccess().getRule();
- }
-
- //SubSystemRef:
- // "SubSystemRef" name=ID ":" type=[SubSystemClass|FQN];
- public SubSystemRefElements getSubSystemRefAccess() {
- return (pSubSystemRef != null) ? pSubSystemRef : (pSubSystemRef = new SubSystemRefElements());
- }
-
- public ParserRule getSubSystemRefRule() {
- return getSubSystemRefAccess().getRule();
- }
-
- //SubSystemClass:
- // "SubSystemClass" name=ID "{" relayPorts+=Port* ifSPPs+=SPPRef* actorRefs+=ActorRef+ bindings+=Binding*
- // connections+=LayerConnection* threads+=LogicalThread* "}";
- public SubSystemClassElements getSubSystemClassAccess() {
- return (pSubSystemClass != null) ? pSubSystemClass : (pSubSystemClass = new SubSystemClassElements());
- }
-
- public ParserRule getSubSystemClassRule() {
- return getSubSystemClassAccess().getRule();
- }
-
- //LogicalThread:
- // "LogicalThread" name=ID "{" instances+=ActorInstancePath ("," instances+=ActorInstancePath)* "}";
- public LogicalThreadElements getLogicalThreadAccess() {
- return (pLogicalThread != null) ? pLogicalThread : (pLogicalThread = new LogicalThreadElements());
- }
-
- public ParserRule getLogicalThreadRule() {
- return getLogicalThreadAccess().getRule();
- }
-
- //ActorInstancePath:
- // segments+=ID ("." segments+=ID)*;
- public ActorInstancePathElements getActorInstancePathAccess() {
- return (pActorInstancePath != null) ? pActorInstancePath : (pActorInstancePath = new ActorInstancePathElements());
- }
-
- public ParserRule getActorInstancePathRule() {
- return getActorInstancePathAccess().getRule();
- }
-
- //// TODOHRR: bindings for replicated ports
- //
- //// (1) declare several bindings
- //
- //// (2) use a notation with 1 to n bindings
- //
- //Binding:
- // "Binding" endpoint1=BindingEndPoint "and" endpoint2=BindingEndPoint;
- public BindingElements getBindingAccess() {
- return (pBinding != null) ? pBinding : (pBinding = new BindingElements());
- }
-
- public ParserRule getBindingRule() {
- return getBindingAccess().getRule();
- }
-
- //BindingEndPoint:
- // (actorRef=[ActorContainerRef] ".")? port=[Port];
- public BindingEndPointElements getBindingEndPointAccess() {
- return (pBindingEndPoint != null) ? pBindingEndPoint : (pBindingEndPoint = new BindingEndPointElements());
- }
-
- public ParserRule getBindingEndPointRule() {
- return getBindingEndPointAccess().getRule();
- }
-
- //LayerConnection:
- // "LayerConnection" from=SAPoint "satisfied_by" to=SPPoint;
- public LayerConnectionElements getLayerConnectionAccess() {
- return (pLayerConnection != null) ? pLayerConnection : (pLayerConnection = new LayerConnectionElements());
- }
-
- public ParserRule getLayerConnectionRule() {
- return getLayerConnectionAccess().getRule();
- }
-
- //SAPoint:
- // RefSAPoint | RelaySAPoint;
- public SAPointElements getSAPointAccess() {
- return (pSAPoint != null) ? pSAPoint : (pSAPoint = new SAPointElements());
- }
-
- public ParserRule getSAPointRule() {
- return getSAPointAccess().getRule();
- }
-
- //RefSAPoint: // satisfies a sub actor
- //
- // "ref" ref=[ActorContainerRef];
- public RefSAPointElements getRefSAPointAccess() {
- return (pRefSAPoint != null) ? pRefSAPoint : (pRefSAPoint = new RefSAPointElements());
- }
-
- public ParserRule getRefSAPointRule() {
- return getRefSAPointAccess().getRule();
- }
-
- //RelaySAPoint: // relays from own interface
- //
- // "relay_sap" relay=[SPPRef];
- public RelaySAPointElements getRelaySAPointAccess() {
- return (pRelaySAPoint != null) ? pRelaySAPoint : (pRelaySAPoint = new RelaySAPointElements());
- }
-
- public ParserRule getRelaySAPointRule() {
- return getRelaySAPointAccess().getRule();
- }
-
- //SPPoint:
- // ref=[ActorContainerRef] "." service=[SPPRef];
- public SPPointElements getSPPointAccess() {
- return (pSPPoint != null) ? pSPPoint : (pSPPoint = new SPPointElements());
- }
-
- public ParserRule getSPPointRule() {
- return getSPPointAccess().getRule();
- }
-
- //// TODOHRR: support replicated actors
- //
- //ActorRef:
- // "ActorRef" name=ID ":" type=[ActorClass|FQN];
- public ActorRefElements getActorRefAccess() {
- return (pActorRef != null) ? pActorRef : (pActorRef = new ActorRefElements());
- }
-
- public ParserRule getActorRefRule() {
- return getActorRefAccess().getRule();
- }
-
- //// **************************************************************
- //
- //// state machine
- //
- //StateGraphNode:
- // State | ChoicePoint | TrPoint;
- public StateGraphNodeElements getStateGraphNodeAccess() {
- return (pStateGraphNode != null) ? pStateGraphNode : (pStateGraphNode = new StateGraphNodeElements());
- }
-
- public ParserRule getStateGraphNodeRule() {
- return getStateGraphNodeAccess().getRule();
- }
-
- //StateGraphItem:
- // StateGraphNode | Transition;
- public StateGraphItemElements getStateGraphItemAccess() {
- return (pStateGraphItem != null) ? pStateGraphItem : (pStateGraphItem = new StateGraphItemElements());
- }
-
- public ParserRule getStateGraphItemRule() {
- return getStateGraphItemAccess().getRule();
- }
-
- //State:
- // BaseState | RefinedState;
- public StateElements getStateAccess() {
- return (pState != null) ? pState : (pState = new StateElements());
- }
-
- public ParserRule getStateRule() {
- return getStateAccess().getRule();
- }
-
- //StateGraph:
- // "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
- public StateGraphElements getStateGraphAccess() {
- return (pStateGraph != null) ? pStateGraph : (pStateGraph = new StateGraphElements());
- }
-
- public ParserRule getStateGraphRule() {
- return getStateGraphAccess().getRule();
- }
-
- //StateMachine returns StateGraph:
- // "StateMachine" "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
- public StateMachineElements getStateMachineAccess() {
- return (pStateMachine != null) ? pStateMachine : (pStateMachine = new StateMachineElements());
- }
-
- public ParserRule getStateMachineRule() {
- return getStateMachineAccess().getRule();
- }
-
- //// entry and exit code have multiplicity many: in BaseState to be able to add derived class codes here,
- //
- //// in RefinedState to still have both features in the common base class State
- //
- //BaseState:
- // "State" name=ID "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph" subgraph=StateGraph)?
- // "}";
- public BaseStateElements getBaseStateAccess() {
- return (pBaseState != null) ? pBaseState : (pBaseState = new BaseStateElements());
- }
-
- public ParserRule getBaseStateRule() {
- return getBaseStateAccess().getRule();
- }
-
- //RefinedState:
- // "RefinedState" base=[BaseState|FQN] "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph"
- // subgraph=StateGraph)? "}";
- public RefinedStateElements getRefinedStateAccess() {
- return (pRefinedState != null) ? pRefinedState : (pRefinedState = new RefinedStateElements());
- }
-
- public ParserRule getRefinedStateRule() {
- return getRefinedStateAccess().getRule();
- }
-
- //// TODOHRR: provide a means to call super class code (cf. ROOM p. 310f)
- //
- //// super() keyword or flag like in Trice
- //
- //DetailCode:
- // "{" commands+=STRING+ "}";
- public DetailCodeElements getDetailCodeAccess() {
- return (pDetailCode != null) ? pDetailCode : (pDetailCode = new DetailCodeElements());
- }
-
- public ParserRule getDetailCodeRule() {
- return getDetailCodeAccess().getRule();
- }
-
- //TrPoint:
- // TransitionPoint | EntryPoint | ExitPoint;
- public TrPointElements getTrPointAccess() {
- return (pTrPoint != null) ? pTrPoint : (pTrPoint = new TrPointElements());
- }
-
- public ParserRule getTrPointRule() {
- return getTrPointAccess().getRule();
- }
-
- //TransitionPoint:
- // handler?="handler"? "TransitionPoint" name=ID;
- public TransitionPointElements getTransitionPointAccess() {
- return (pTransitionPoint != null) ? pTransitionPoint : (pTransitionPoint = new TransitionPointElements());
- }
-
- public ParserRule getTransitionPointRule() {
- return getTransitionPointAccess().getRule();
- }
-
- //EntryPoint:
- // "EntryPoint" name=ID;
- public EntryPointElements getEntryPointAccess() {
- return (pEntryPoint != null) ? pEntryPoint : (pEntryPoint = new EntryPointElements());
- }
-
- public ParserRule getEntryPointRule() {
- return getEntryPointAccess().getRule();
- }
-
- //ExitPoint:
- // "ExitPoint" name=ID;
- public ExitPointElements getExitPointAccess() {
- return (pExitPoint != null) ? pExitPoint : (pExitPoint = new ExitPointElements());
- }
-
- public ParserRule getExitPointRule() {
- return getExitPointAccess().getRule();
- }
-
- //ChoicePoint:
- // "ChoicePoint" name=ID;
- public ChoicePointElements getChoicePointAccess() {
- return (pChoicePoint != null) ? pChoicePoint : (pChoicePoint = new ChoicePointElements());
- }
-
- public ParserRule getChoicePointRule() {
- return getChoicePointAccess().getRule();
- }
-
- //Transition:
- // InitialTransition | NonInitialTransition;
- public TransitionElements getTransitionAccess() {
- return (pTransition != null) ? pTransition : (pTransition = new TransitionElements());
- }
-
- public ParserRule getTransitionRule() {
- return getTransitionAccess().getRule();
- }
-
- //NonInitialTransition:
- // TriggeredTransition | ContinuationTransition | CPBranchTransition;
- public NonInitialTransitionElements getNonInitialTransitionAccess() {
- return (pNonInitialTransition != null) ? pNonInitialTransition : (pNonInitialTransition = new NonInitialTransitionElements());
- }
-
- public ParserRule getNonInitialTransitionRule() {
- return getNonInitialTransitionAccess().getRule();
- }
-
- //InitialTransition:
- // "Transition" name=ID? ":" "initial" "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
- public InitialTransitionElements getInitialTransitionAccess() {
- return (pInitialTransition != null) ? pInitialTransition : (pInitialTransition = new InitialTransitionElements());
- }
-
- public ParserRule getInitialTransitionRule() {
- return getInitialTransitionAccess().getRule();
- }
-
- //ContinuationTransition:
- // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
- public ContinuationTransitionElements getContinuationTransitionAccess() {
- return (pContinuationTransition != null) ? pContinuationTransition : (pContinuationTransition = new ContinuationTransitionElements());
- }
-
- public ParserRule getContinuationTransitionRule() {
- return getContinuationTransitionAccess().getRule();
- }
-
- //TriggeredTransition:
- // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "triggers" "{" triggers+=Trigger
- // ("or" triggers+=Trigger)* "}" ("action" action=DetailCode)? "}";
- public TriggeredTransitionElements getTriggeredTransitionAccess() {
- return (pTriggeredTransition != null) ? pTriggeredTransition : (pTriggeredTransition = new TriggeredTransitionElements());
- }
-
- public ParserRule getTriggeredTransitionRule() {
- return getTriggeredTransitionAccess().getRule();
- }
-
- //CPBranchTransition:
- // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "cond" condition=DetailCode ("action"
- // action=DetailCode)? "}";
- public CPBranchTransitionElements getCPBranchTransitionAccess() {
- return (pCPBranchTransition != null) ? pCPBranchTransition : (pCPBranchTransition = new CPBranchTransitionElements());
- }
-
- public ParserRule getCPBranchTransitionRule() {
- return getCPBranchTransitionAccess().getRule();
- }
-
- //TransitionTerminal:
- // StateTerminal | TrPointTerminal | SubStateTrPointTerminal | ChoicepointTerminal;
- public TransitionTerminalElements getTransitionTerminalAccess() {
- return (pTransitionTerminal != null) ? pTransitionTerminal : (pTransitionTerminal = new TransitionTerminalElements());
- }
-
- public ParserRule getTransitionTerminalRule() {
- return getTransitionTerminalAccess().getRule();
- }
-
- //StateTerminal:
- // state=[BaseState];
- public StateTerminalElements getStateTerminalAccess() {
- return (pStateTerminal != null) ? pStateTerminal : (pStateTerminal = new StateTerminalElements());
- }
-
- public ParserRule getStateTerminalRule() {
- return getStateTerminalAccess().getRule();
- }
-
- //TrPointTerminal:
- // "my" trPoint=[TrPoint];
- public TrPointTerminalElements getTrPointTerminalAccess() {
- return (pTrPointTerminal != null) ? pTrPointTerminal : (pTrPointTerminal = new TrPointTerminalElements());
- }
-
- public ParserRule getTrPointTerminalRule() {
- return getTrPointTerminalAccess().getRule();
- }
-
- //SubStateTrPointTerminal:
- // trPoint=[TrPoint] "of" state=[BaseState];
- public SubStateTrPointTerminalElements getSubStateTrPointTerminalAccess() {
- return (pSubStateTrPointTerminal != null) ? pSubStateTrPointTerminal : (pSubStateTrPointTerminal = new SubStateTrPointTerminalElements());
- }
-
- public ParserRule getSubStateTrPointTerminalRule() {
- return getSubStateTrPointTerminalAccess().getRule();
- }
-
- //ChoicepointTerminal:
- // "cp" cp=[ChoicePoint];
- public ChoicepointTerminalElements getChoicepointTerminalAccess() {
- return (pChoicepointTerminal != null) ? pChoicepointTerminal : (pChoicepointTerminal = new ChoicepointTerminalElements());
- }
-
- public ParserRule getChoicepointTerminalRule() {
- return getChoicepointTerminalAccess().getRule();
- }
-
- ////TransitionSource: TransitionTerminal|ChoicePointCaseRef|ChoicePointDefaultRef;
- //
- ////TransitionSource: TransitionTerminal|ChoicePointRef;
- //
- ////TransitionDest: TransitionTerminal|ChoicePointRef;
- //
- ////ChoicePointCaseRef: 'cp' cp=[ChoicePoint|ID] 'case' case=[ChoicePointCase|ID];
- //
- ////ChoicePointDefaultRef: 'cp' cp=[ChoicePoint|ID] 'default';
- //
- ////ChoicePointRef: 'cp' cp=[ChoicePoint|ID];
- //
- //Trigger:
- // "<" msgFromIfPairs+=MessageFromIf ("|" msgFromIfPairs+=MessageFromIf)* guard=Guard? ">";
- public TriggerElements getTriggerAccess() {
- return (pTrigger != null) ? pTrigger : (pTrigger = new TriggerElements());
- }
-
- public ParserRule getTriggerRule() {
- return getTriggerAccess().getRule();
- }
-
- //MessageFromIf:
- // message=[Message] ":" from=[InterfaceItem];
- public MessageFromIfElements getMessageFromIfAccess() {
- return (pMessageFromIf != null) ? pMessageFromIf : (pMessageFromIf = new MessageFromIfElements());
- }
-
- public ParserRule getMessageFromIfRule() {
- return getMessageFromIfAccess().getRule();
- }
-
- //Guard:
- // "guard" guard=DetailCode;
- public GuardElements getGuardAccess() {
- return (pGuard != null) ? pGuard : (pGuard = new GuardElements());
- }
-
- public ParserRule getGuardRule() {
- return getGuardAccess().getRule();
- }
-
- //// **************************************************************
- //
- //// general
- //
- //Import:
- // "import" importedNamespace=ImportedFQN;
- public ImportElements getImportAccess() {
- return (pImport != null) ? pImport : (pImport = new ImportElements());
- }
-
- public ParserRule getImportRule() {
- return getImportAccess().getRule();
- }
-
- //ImportedFQN:
- // FQN ("." "*")?;
- public ImportedFQNElements getImportedFQNAccess() {
- return (pImportedFQN != null) ? pImportedFQN : (pImportedFQN = new ImportedFQNElements());
- }
-
- public ParserRule getImportedFQNRule() {
- return getImportedFQNAccess().getRule();
- }
-
- //FQN:
- // ID ("." ID)*;
- public FQNElements getFQNAccess() {
- return (pFQN != null) ? pFQN : (pFQN = new FQNElements());
- }
-
- public ParserRule getFQNRule() {
- return getFQNAccess().getRule();
- }
-
- //terminal ID:
- // "^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
- public TerminalRule getIDRule() {
- return gaTerminals.getIDRule();
- }
-
- //terminal INT returns ecore::EInt:
- // "0".."9"+;
- public TerminalRule getINTRule() {
- return gaTerminals.getINTRule();
- }
-
- //terminal STRING:
- // "\"" ("\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\""))* "\"" | "\'" ("\\" ("b" | "t" |
- // "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\'"))* "\'";
- public TerminalRule getSTRINGRule() {
- return gaTerminals.getSTRINGRule();
- }
-
- //terminal ML_COMMENT:
- // "/ *"->"* /";
- public TerminalRule getML_COMMENTRule() {
- return gaTerminals.getML_COMMENTRule();
- }
-
- //terminal SL_COMMENT:
- // "//" !("\n" | "\r")* ("\r"? "\n")?;
- public TerminalRule getSL_COMMENTRule() {
- return gaTerminals.getSL_COMMENTRule();
- }
-
- //terminal WS:
- // (" " | "\t" | "\r" | "\n")+;
- public TerminalRule getWSRule() {
- return gaTerminals.getWSRule();
- }
-
- //terminal ANY_OTHER:
- // .;
- public TerminalRule getANY_OTHERRule() {
- return gaTerminals.getANY_OTHERRule();
- }
-}
+/*
+* generated by Xtext
+*/
+
+package org.eclipse.etrice.core.services;
+
+import com.google.inject.Singleton;
+import com.google.inject.Inject;
+
+import org.eclipse.xtext.*;
+import org.eclipse.xtext.service.GrammarProvider;
+import org.eclipse.xtext.service.AbstractElementFinder.*;
+
+import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
+
+@Singleton
+public class RoomGrammarAccess extends AbstractGrammarElementFinder {
+
+
+ public class RoomModelElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RoomModel");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cRoomModelKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameFQNParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cImportsAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cImportsImportParserRuleCall_3_0 = (RuleCall)cImportsAssignment_3.eContents().get(0);
+ private final Alternatives cAlternatives_4 = (Alternatives)cGroup.eContents().get(4);
+ private final Assignment cDataClassesAssignment_4_0 = (Assignment)cAlternatives_4.eContents().get(0);
+ private final RuleCall cDataClassesDataClassParserRuleCall_4_0_0 = (RuleCall)cDataClassesAssignment_4_0.eContents().get(0);
+ private final Assignment cProtocolClassesAssignment_4_1 = (Assignment)cAlternatives_4.eContents().get(1);
+ private final RuleCall cProtocolClassesProtocolClassParserRuleCall_4_1_0 = (RuleCall)cProtocolClassesAssignment_4_1.eContents().get(0);
+ private final Assignment cActorClassesAssignment_4_2 = (Assignment)cAlternatives_4.eContents().get(2);
+ private final RuleCall cActorClassesActorClassParserRuleCall_4_2_0 = (RuleCall)cActorClassesAssignment_4_2.eContents().get(0);
+ private final Assignment cSubSystemClassesAssignment_4_3 = (Assignment)cAlternatives_4.eContents().get(3);
+ private final RuleCall cSubSystemClassesSubSystemClassParserRuleCall_4_3_0 = (RuleCall)cSubSystemClassesAssignment_4_3.eContents().get(0);
+ private final Assignment cSystemsAssignment_4_4 = (Assignment)cAlternatives_4.eContents().get(4);
+ private final RuleCall cSystemsLogicalSystemParserRuleCall_4_4_0 = (RuleCall)cSystemsAssignment_4_4.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
+
+ //RoomModel:
+ // "RoomModel" name=FQN "{" imports+=Import* (dataClasses+=DataClass | protocolClasses+=ProtocolClass |
+ // actorClasses+=ActorClass | subSystemClasses+=SubSystemClass | systems+=LogicalSystem)+ "}";
+ public ParserRule getRule() { return rule; }
+
+ //"RoomModel" name=FQN "{" imports+=Import* (dataClasses+=DataClass | protocolClasses+=ProtocolClass |
+ //actorClasses+=ActorClass | subSystemClasses+=SubSystemClass | systems+=LogicalSystem)+ "}"
+ public Group getGroup() { return cGroup; }
+
+ //"RoomModel"
+ public Keyword getRoomModelKeyword_0() { return cRoomModelKeyword_0; }
+
+ //name=FQN
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //FQN
+ public RuleCall getNameFQNParserRuleCall_1_0() { return cNameFQNParserRuleCall_1_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //imports+=Import*
+ public Assignment getImportsAssignment_3() { return cImportsAssignment_3; }
+
+ //Import
+ public RuleCall getImportsImportParserRuleCall_3_0() { return cImportsImportParserRuleCall_3_0; }
+
+ //(dataClasses+=DataClass | protocolClasses+=ProtocolClass | actorClasses+=ActorClass | subSystemClasses+=SubSystemClass |
+ //systems+=LogicalSystem)+
+ public Alternatives getAlternatives_4() { return cAlternatives_4; }
+
+ //dataClasses+=DataClass
+ public Assignment getDataClassesAssignment_4_0() { return cDataClassesAssignment_4_0; }
+
+ //DataClass
+ public RuleCall getDataClassesDataClassParserRuleCall_4_0_0() { return cDataClassesDataClassParserRuleCall_4_0_0; }
+
+ //protocolClasses+=ProtocolClass
+ public Assignment getProtocolClassesAssignment_4_1() { return cProtocolClassesAssignment_4_1; }
+
+ //ProtocolClass
+ public RuleCall getProtocolClassesProtocolClassParserRuleCall_4_1_0() { return cProtocolClassesProtocolClassParserRuleCall_4_1_0; }
+
+ //actorClasses+=ActorClass
+ public Assignment getActorClassesAssignment_4_2() { return cActorClassesAssignment_4_2; }
+
+ //ActorClass
+ public RuleCall getActorClassesActorClassParserRuleCall_4_2_0() { return cActorClassesActorClassParserRuleCall_4_2_0; }
+
+ //subSystemClasses+=SubSystemClass
+ public Assignment getSubSystemClassesAssignment_4_3() { return cSubSystemClassesAssignment_4_3; }
+
+ //SubSystemClass
+ public RuleCall getSubSystemClassesSubSystemClassParserRuleCall_4_3_0() { return cSubSystemClassesSubSystemClassParserRuleCall_4_3_0; }
+
+ //systems+=LogicalSystem
+ public Assignment getSystemsAssignment_4_4() { return cSystemsAssignment_4_4; }
+
+ //LogicalSystem
+ public RuleCall getSystemsLogicalSystemParserRuleCall_4_4_0() { return cSystemsLogicalSystemParserRuleCall_4_4_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
+ }
+
+ public class RoomClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RoomClass");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cDataClassParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cProtocolClassParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cStructureClassParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+
+ //RoomClass:
+ // DataClass | ProtocolClass | StructureClass;
+ public ParserRule getRule() { return rule; }
+
+ //DataClass | ProtocolClass | StructureClass
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //DataClass
+ public RuleCall getDataClassParserRuleCall_0() { return cDataClassParserRuleCall_0; }
+
+ //ProtocolClass
+ public RuleCall getProtocolClassParserRuleCall_1() { return cProtocolClassParserRuleCall_1; }
+
+ //StructureClass
+ public RuleCall getStructureClassParserRuleCall_2() { return cStructureClassParserRuleCall_2; }
+ }
+
+ public class StructureClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StructureClass");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cActorContainerClassParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cLogicalSystemParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //StructureClass:
+ // ActorContainerClass | LogicalSystem;
+ public ParserRule getRule() { return rule; }
+
+ //ActorContainerClass | LogicalSystem
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //ActorContainerClass
+ public RuleCall getActorContainerClassParserRuleCall_0() { return cActorContainerClassParserRuleCall_0; }
+
+ //LogicalSystem
+ public RuleCall getLogicalSystemParserRuleCall_1() { return cLogicalSystemParserRuleCall_1; }
+ }
+
+ public class ActorContainerClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorContainerClass");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cActorClassParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cSubSystemClassParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //ActorContainerClass:
+ // ActorClass | SubSystemClass;
+ public ParserRule getRule() { return rule; }
+
+ //ActorClass | SubSystemClass
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //ActorClass
+ public RuleCall getActorClassParserRuleCall_0() { return cActorClassParserRuleCall_0; }
+
+ //SubSystemClass
+ public RuleCall getSubSystemClassParserRuleCall_1() { return cSubSystemClassParserRuleCall_1; }
+ }
+
+ public class TypedIDElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TypedID");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cNameAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final RuleCall cNameIDTerminalRuleCall_0_0 = (RuleCall)cNameAssignment_0.eContents().get(0);
+ private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cTypeTypeParserRuleCall_2_0 = (RuleCall)cTypeAssignment_2.eContents().get(0);
+
+ //TypedID:
+ // name=ID ":" type=Type;
+ public ParserRule getRule() { return rule; }
+
+ //name=ID ":" type=Type
+ public Group getGroup() { return cGroup; }
+
+ //name=ID
+ public Assignment getNameAssignment_0() { return cNameAssignment_0; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_0_0() { return cNameIDTerminalRuleCall_0_0; }
+
+ //":"
+ public Keyword getColonKeyword_1() { return cColonKeyword_1; }
+
+ //type=Type
+ public Assignment getTypeAssignment_2() { return cTypeAssignment_2; }
+
+ //Type
+ public RuleCall getTypeTypeParserRuleCall_2_0() { return cTypeTypeParserRuleCall_2_0; }
+ }
+
+ public class FreeTypedIDElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FreeTypedID");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cNameAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final RuleCall cNameIDTerminalRuleCall_0_0 = (RuleCall)cNameAssignment_0.eContents().get(0);
+ private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cTypeFreeTypeParserRuleCall_2_0 = (RuleCall)cTypeAssignment_2.eContents().get(0);
+
+ //FreeTypedID:
+ // name=ID ":" type=FreeType;
+ public ParserRule getRule() { return rule; }
+
+ //name=ID ":" type=FreeType
+ public Group getGroup() { return cGroup; }
+
+ //name=ID
+ public Assignment getNameAssignment_0() { return cNameAssignment_0; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_0_0() { return cNameIDTerminalRuleCall_0_0; }
+
+ //":"
+ public Keyword getColonKeyword_1() { return cColonKeyword_1; }
+
+ //type=FreeType
+ public Assignment getTypeAssignment_2() { return cTypeAssignment_2; }
+
+ //FreeType
+ public RuleCall getTypeFreeTypeParserRuleCall_2_0() { return cTypeFreeTypeParserRuleCall_2_0; }
+ }
+
+ public class TypeElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Type");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final Assignment cPrimAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
+ private final RuleCall cPrimPrimitiveTypeEnumRuleCall_0_0 = (RuleCall)cPrimAssignment_0.eContents().get(0);
+ private final Assignment cTypeAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
+ private final CrossReference cTypeDataClassCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0);
+ private final RuleCall cTypeDataClassFQNParserRuleCall_1_0_1 = (RuleCall)cTypeDataClassCrossReference_1_0.eContents().get(1);
+
+ //Type:
+ // prim=PrimitiveType | type=[DataClass|FQN];
+ public ParserRule getRule() { return rule; }
+
+ //prim=PrimitiveType | type=[DataClass|FQN]
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //prim=PrimitiveType
+ public Assignment getPrimAssignment_0() { return cPrimAssignment_0; }
+
+ //PrimitiveType
+ public RuleCall getPrimPrimitiveTypeEnumRuleCall_0_0() { return cPrimPrimitiveTypeEnumRuleCall_0_0; }
+
+ //type=[DataClass|FQN]
+ public Assignment getTypeAssignment_1() { return cTypeAssignment_1; }
+
+ //[DataClass|FQN]
+ public CrossReference getTypeDataClassCrossReference_1_0() { return cTypeDataClassCrossReference_1_0; }
+
+ //FQN
+ public RuleCall getTypeDataClassFQNParserRuleCall_1_0_1() { return cTypeDataClassFQNParserRuleCall_1_0_1; }
+ }
+
+ public class FreeTypeElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FreeType");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final Assignment cPrimAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
+ private final RuleCall cPrimPrimitiveTypeEnumRuleCall_0_0 = (RuleCall)cPrimAssignment_0.eContents().get(0);
+ private final Assignment cTypeAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
+ private final RuleCall cTypeIDTerminalRuleCall_1_0 = (RuleCall)cTypeAssignment_1.eContents().get(0);
+
+ //FreeType:
+ // prim=PrimitiveType | type=ID;
+ public ParserRule getRule() { return rule; }
+
+ //prim=PrimitiveType | type=ID
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //prim=PrimitiveType
+ public Assignment getPrimAssignment_0() { return cPrimAssignment_0; }
+
+ //PrimitiveType
+ public RuleCall getPrimPrimitiveTypeEnumRuleCall_0_0() { return cPrimPrimitiveTypeEnumRuleCall_0_0; }
+
+ //type=ID
+ public Assignment getTypeAssignment_1() { return cTypeAssignment_1; }
+
+ //ID
+ public RuleCall getTypeIDTerminalRuleCall_1_0() { return cTypeIDTerminalRuleCall_1_0; }
+ }
+
+ public class DataClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DataClass");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cDataClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
+ private final Keyword cExtendsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
+ private final Assignment cBaseAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
+ private final CrossReference cBaseDataClassCrossReference_2_1_0 = (CrossReference)cBaseAssignment_2_1.eContents().get(0);
+ private final RuleCall cBaseDataClassFQNParserRuleCall_2_1_0_1 = (RuleCall)cBaseDataClassCrossReference_2_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+ private final Assignment cImportsAssignment_4 = (Assignment)cGroup.eContents().get(4);
+ private final RuleCall cImportsImportParserRuleCall_4_0 = (RuleCall)cImportsAssignment_4.eContents().get(0);
+ private final Assignment cAttributesAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cAttributesAttributeParserRuleCall_5_0 = (RuleCall)cAttributesAssignment_5.eContents().get(0);
+ private final Assignment cOperationsAssignment_6 = (Assignment)cGroup.eContents().get(6);
+ private final RuleCall cOperationsOperationParserRuleCall_6_0 = (RuleCall)cOperationsAssignment_6.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
+
+ //// TODOHRR: define detail level language?
+ //
+ //DataClass:
+ // "DataClass" name=ID ("extends" base=[DataClass|FQN])? "{" imports+=Import* attributes+=Attribute+
+ // operations+=Operation* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"DataClass" name=ID ("extends" base=[DataClass|FQN])? "{" imports+=Import* attributes+=Attribute+ operations+=Operation*
+ //"}"
+ public Group getGroup() { return cGroup; }
+
+ //"DataClass"
+ public Keyword getDataClassKeyword_0() { return cDataClassKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //("extends" base=[DataClass|FQN])?
+ public Group getGroup_2() { return cGroup_2; }
+
+ //"extends"
+ public Keyword getExtendsKeyword_2_0() { return cExtendsKeyword_2_0; }
+
+ //base=[DataClass|FQN]
+ public Assignment getBaseAssignment_2_1() { return cBaseAssignment_2_1; }
+
+ //[DataClass|FQN]
+ public CrossReference getBaseDataClassCrossReference_2_1_0() { return cBaseDataClassCrossReference_2_1_0; }
+
+ //FQN
+ public RuleCall getBaseDataClassFQNParserRuleCall_2_1_0_1() { return cBaseDataClassFQNParserRuleCall_2_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
+
+ //imports+=Import*
+ public Assignment getImportsAssignment_4() { return cImportsAssignment_4; }
+
+ //Import
+ public RuleCall getImportsImportParserRuleCall_4_0() { return cImportsImportParserRuleCall_4_0; }
+
+ //attributes+=Attribute+
+ public Assignment getAttributesAssignment_5() { return cAttributesAssignment_5; }
+
+ //Attribute
+ public RuleCall getAttributesAttributeParserRuleCall_5_0() { return cAttributesAttributeParserRuleCall_5_0; }
+
+ //operations+=Operation*
+ public Assignment getOperationsAssignment_6() { return cOperationsAssignment_6; }
+
+ //Operation
+ public RuleCall getOperationsOperationParserRuleCall_6_0() { return cOperationsOperationParserRuleCall_6_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
+ }
+
+ public class AttributeElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Attribute");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cAttributeKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
+ private final Keyword cLeftSquareBracketKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
+ private final Assignment cSizeAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
+ private final RuleCall cSizeINTTerminalRuleCall_2_1_0 = (RuleCall)cSizeAssignment_2_1.eContents().get(0);
+ private final Keyword cRightSquareBracketKeyword_2_2 = (Keyword)cGroup_2.eContents().get(2);
+ private final Keyword cColonKeyword_3 = (Keyword)cGroup.eContents().get(3);
+ private final Assignment cTypeAssignment_4 = (Assignment)cGroup.eContents().get(4);
+ private final RuleCall cTypeTypeParserRuleCall_4_0 = (RuleCall)cTypeAssignment_4.eContents().get(0);
+
+ //Attribute:
+ // "Attribute" name=ID ("[" size=INT "]")? ":" type=Type;
+ public ParserRule getRule() { return rule; }
+
+ //"Attribute" name=ID ("[" size=INT "]")? ":" type=Type
+ public Group getGroup() { return cGroup; }
+
+ //"Attribute"
+ public Keyword getAttributeKeyword_0() { return cAttributeKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //("[" size=INT "]")?
+ public Group getGroup_2() { return cGroup_2; }
+
+ //"["
+ public Keyword getLeftSquareBracketKeyword_2_0() { return cLeftSquareBracketKeyword_2_0; }
+
+ //size=INT
+ public Assignment getSizeAssignment_2_1() { return cSizeAssignment_2_1; }
+
+ //INT
+ public RuleCall getSizeINTTerminalRuleCall_2_1_0() { return cSizeINTTerminalRuleCall_2_1_0; }
+
+ //"]"
+ public Keyword getRightSquareBracketKeyword_2_2() { return cRightSquareBracketKeyword_2_2; }
+
+ //":"
+ public Keyword getColonKeyword_3() { return cColonKeyword_3; }
+
+ //type=Type
+ public Assignment getTypeAssignment_4() { return cTypeAssignment_4; }
+
+ //Type
+ public RuleCall getTypeTypeParserRuleCall_4_0() { return cTypeTypeParserRuleCall_4_0; }
+ }
+
+ public class OperationElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Operation");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cOperationKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Assignment cArgumentsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
+ private final RuleCall cArgumentsFreeTypedIDParserRuleCall_3_0_0 = (RuleCall)cArgumentsAssignment_3_0.eContents().get(0);
+ private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
+ private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
+ private final Assignment cArgumentsAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
+ private final RuleCall cArgumentsFreeTypedIDParserRuleCall_3_1_1_0 = (RuleCall)cArgumentsAssignment_3_1_1.eContents().get(0);
+ private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
+ private final Keyword cColonKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
+ private final Assignment cReturntypeAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
+ private final RuleCall cReturntypeFreeTypeParserRuleCall_5_1_0 = (RuleCall)cReturntypeAssignment_5_1.eContents().get(0);
+ private final Assignment cDetailCodeAssignment_6 = (Assignment)cGroup.eContents().get(6);
+ private final RuleCall cDetailCodeDetailCodeParserRuleCall_6_0 = (RuleCall)cDetailCodeAssignment_6.eContents().get(0);
+
+ //// TODOHRR: pass arguments and return value by value/reference
+ //
+ //Operation:
+ // "Operation" name=ID "(" (arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)? ")" (":" returntype=FreeType)?
+ // detailCode=DetailCode;
+ public ParserRule getRule() { return rule; }
+
+ //"Operation" name=ID "(" (arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)? ")" (":" returntype=FreeType)?
+ //detailCode=DetailCode
+ public Group getGroup() { return cGroup; }
+
+ //"Operation"
+ public Keyword getOperationKeyword_0() { return cOperationKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //"("
+ public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
+
+ //(arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //arguments+=FreeTypedID
+ public Assignment getArgumentsAssignment_3_0() { return cArgumentsAssignment_3_0; }
+
+ //FreeTypedID
+ public RuleCall getArgumentsFreeTypedIDParserRuleCall_3_0_0() { return cArgumentsFreeTypedIDParserRuleCall_3_0_0; }
+
+ //("," arguments+=FreeTypedID)*
+ public Group getGroup_3_1() { return cGroup_3_1; }
+
+ //","
+ public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
+
+ //arguments+=FreeTypedID
+ public Assignment getArgumentsAssignment_3_1_1() { return cArgumentsAssignment_3_1_1; }
+
+ //FreeTypedID
+ public RuleCall getArgumentsFreeTypedIDParserRuleCall_3_1_1_0() { return cArgumentsFreeTypedIDParserRuleCall_3_1_1_0; }
+
+ //")"
+ public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
+
+ //(":" returntype=FreeType)?
+ public Group getGroup_5() { return cGroup_5; }
+
+ //":"
+ public Keyword getColonKeyword_5_0() { return cColonKeyword_5_0; }
+
+ //returntype=FreeType
+ public Assignment getReturntypeAssignment_5_1() { return cReturntypeAssignment_5_1; }
+
+ //FreeType
+ public RuleCall getReturntypeFreeTypeParserRuleCall_5_1_0() { return cReturntypeFreeTypeParserRuleCall_5_1_0; }
+
+ //detailCode=DetailCode
+ public Assignment getDetailCodeAssignment_6() { return cDetailCodeAssignment_6; }
+
+ //DetailCode
+ public RuleCall getDetailCodeDetailCodeParserRuleCall_6_0() { return cDetailCodeDetailCodeParserRuleCall_6_0; }
+ }
+
+ public class ProtocolClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProtocolClass");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cProtocolClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
+ private final Keyword cExtendsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
+ private final Assignment cBaseAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
+ private final CrossReference cBaseProtocolClassCrossReference_2_1_0 = (CrossReference)cBaseAssignment_2_1.eContents().get(0);
+ private final RuleCall cBaseProtocolClassFQNParserRuleCall_2_1_0_1 = (RuleCall)cBaseProtocolClassCrossReference_2_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+ private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
+ private final Keyword cUsercode1Keyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
+ private final Assignment cUserCode1Assignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
+ private final RuleCall cUserCode1DetailCodeParserRuleCall_4_1_0 = (RuleCall)cUserCode1Assignment_4_1.eContents().get(0);
+ private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
+ private final Keyword cUsercode2Keyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
+ private final Assignment cUserCode2Assignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
+ private final RuleCall cUserCode2DetailCodeParserRuleCall_5_1_0 = (RuleCall)cUserCode2Assignment_5_1.eContents().get(0);
+ private final Keyword cIncomingKeyword_6 = (Keyword)cGroup.eContents().get(6);
+ private final Keyword cLeftCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
+ private final Assignment cIncomingMessagesAssignment_8 = (Assignment)cGroup.eContents().get(8);
+ private final RuleCall cIncomingMessagesMessageParserRuleCall_8_0 = (RuleCall)cIncomingMessagesAssignment_8.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
+ private final Keyword cOutgoingKeyword_10 = (Keyword)cGroup.eContents().get(10);
+ private final Keyword cLeftCurlyBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
+ private final Assignment cOutgoingMessagesAssignment_12 = (Assignment)cGroup.eContents().get(12);
+ private final RuleCall cOutgoingMessagesMessageParserRuleCall_12_0 = (RuleCall)cOutgoingMessagesAssignment_12.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_13 = (Keyword)cGroup.eContents().get(13);
+ private final Group cGroup_14 = (Group)cGroup.eContents().get(14);
+ private final Keyword cRegularKeyword_14_0 = (Keyword)cGroup_14.eContents().get(0);
+ private final Keyword cPortClassKeyword_14_1 = (Keyword)cGroup_14.eContents().get(1);
+ private final Assignment cRegularAssignment_14_2 = (Assignment)cGroup_14.eContents().get(2);
+ private final RuleCall cRegularPortClassParserRuleCall_14_2_0 = (RuleCall)cRegularAssignment_14_2.eContents().get(0);
+ private final Group cGroup_15 = (Group)cGroup.eContents().get(15);
+ private final Keyword cConjugateKeyword_15_0 = (Keyword)cGroup_15.eContents().get(0);
+ private final Keyword cPortClassKeyword_15_1 = (Keyword)cGroup_15.eContents().get(1);
+ private final Assignment cConjugateAssignment_15_2 = (Assignment)cGroup_15.eContents().get(2);
+ private final RuleCall cConjugatePortClassParserRuleCall_15_2_0 = (RuleCall)cConjugateAssignment_15_2.eContents().get(0);
+ private final Assignment cSemanticsAssignment_16 = (Assignment)cGroup.eContents().get(16);
+ private final RuleCall cSemanticsProtocolSemanticsParserRuleCall_16_0 = (RuleCall)cSemanticsAssignment_16.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_17 = (Keyword)cGroup.eContents().get(17);
+
+ //// **************************************************************
+ //
+ //// protocol class
+ //
+ //ProtocolClass:
+ // "ProtocolClass" name=ID ("extends" base=[ProtocolClass|FQN])? "{" ("usercode1" userCode1=DetailCode)? ("usercode2"
+ // userCode2=DetailCode)? "incoming" "{" incomingMessages+=Message* "}" "outgoing" "{" outgoingMessages+=Message* "}"
+ // ("regular" "PortClass" regular=PortClass)? ("conjugate" "PortClass" conjugate=PortClass)? semantics=ProtocolSemantics?
+ // "}";
+ public ParserRule getRule() { return rule; }
+
+ //"ProtocolClass" name=ID ("extends" base=[ProtocolClass|FQN])? "{" ("usercode1" userCode1=DetailCode)? ("usercode2"
+ //userCode2=DetailCode)? "incoming" "{" incomingMessages+=Message* "}" "outgoing" "{" outgoingMessages+=Message* "}"
+ //("regular" "PortClass" regular=PortClass)? ("conjugate" "PortClass" conjugate=PortClass)? semantics=ProtocolSemantics?
+ //"}"
+ public Group getGroup() { return cGroup; }
+
+ //"ProtocolClass"
+ public Keyword getProtocolClassKeyword_0() { return cProtocolClassKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //("extends" base=[ProtocolClass|FQN])?
+ public Group getGroup_2() { return cGroup_2; }
+
+ //"extends"
+ public Keyword getExtendsKeyword_2_0() { return cExtendsKeyword_2_0; }
+
+ //base=[ProtocolClass|FQN]
+ public Assignment getBaseAssignment_2_1() { return cBaseAssignment_2_1; }
+
+ //[ProtocolClass|FQN]
+ public CrossReference getBaseProtocolClassCrossReference_2_1_0() { return cBaseProtocolClassCrossReference_2_1_0; }
+
+ //FQN
+ public RuleCall getBaseProtocolClassFQNParserRuleCall_2_1_0_1() { return cBaseProtocolClassFQNParserRuleCall_2_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
+
+ //("usercode1" userCode1=DetailCode)?
+ public Group getGroup_4() { return cGroup_4; }
+
+ //"usercode1"
+ public Keyword getUsercode1Keyword_4_0() { return cUsercode1Keyword_4_0; }
+
+ //userCode1=DetailCode
+ public Assignment getUserCode1Assignment_4_1() { return cUserCode1Assignment_4_1; }
+
+ //DetailCode
+ public RuleCall getUserCode1DetailCodeParserRuleCall_4_1_0() { return cUserCode1DetailCodeParserRuleCall_4_1_0; }
+
+ //("usercode2" userCode2=DetailCode)?
+ public Group getGroup_5() { return cGroup_5; }
+
+ //"usercode2"
+ public Keyword getUsercode2Keyword_5_0() { return cUsercode2Keyword_5_0; }
+
+ //userCode2=DetailCode
+ public Assignment getUserCode2Assignment_5_1() { return cUserCode2Assignment_5_1; }
+
+ //DetailCode
+ public RuleCall getUserCode2DetailCodeParserRuleCall_5_1_0() { return cUserCode2DetailCodeParserRuleCall_5_1_0; }
+
+ //"incoming"
+ public Keyword getIncomingKeyword_6() { return cIncomingKeyword_6; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_7() { return cLeftCurlyBracketKeyword_7; }
+
+ //incomingMessages+=Message*
+ public Assignment getIncomingMessagesAssignment_8() { return cIncomingMessagesAssignment_8; }
+
+ //Message
+ public RuleCall getIncomingMessagesMessageParserRuleCall_8_0() { return cIncomingMessagesMessageParserRuleCall_8_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
+
+ //"outgoing"
+ public Keyword getOutgoingKeyword_10() { return cOutgoingKeyword_10; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_11() { return cLeftCurlyBracketKeyword_11; }
+
+ //outgoingMessages+=Message*
+ public Assignment getOutgoingMessagesAssignment_12() { return cOutgoingMessagesAssignment_12; }
+
+ //Message
+ public RuleCall getOutgoingMessagesMessageParserRuleCall_12_0() { return cOutgoingMessagesMessageParserRuleCall_12_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_13() { return cRightCurlyBracketKeyword_13; }
+
+ //("regular" "PortClass" regular=PortClass)?
+ public Group getGroup_14() { return cGroup_14; }
+
+ //"regular"
+ public Keyword getRegularKeyword_14_0() { return cRegularKeyword_14_0; }
+
+ //"PortClass"
+ public Keyword getPortClassKeyword_14_1() { return cPortClassKeyword_14_1; }
+
+ //regular=PortClass
+ public Assignment getRegularAssignment_14_2() { return cRegularAssignment_14_2; }
+
+ //PortClass
+ public RuleCall getRegularPortClassParserRuleCall_14_2_0() { return cRegularPortClassParserRuleCall_14_2_0; }
+
+ //("conjugate" "PortClass" conjugate=PortClass)?
+ public Group getGroup_15() { return cGroup_15; }
+
+ //"conjugate"
+ public Keyword getConjugateKeyword_15_0() { return cConjugateKeyword_15_0; }
+
+ //"PortClass"
+ public Keyword getPortClassKeyword_15_1() { return cPortClassKeyword_15_1; }
+
+ //conjugate=PortClass
+ public Assignment getConjugateAssignment_15_2() { return cConjugateAssignment_15_2; }
+
+ //PortClass
+ public RuleCall getConjugatePortClassParserRuleCall_15_2_0() { return cConjugatePortClassParserRuleCall_15_2_0; }
+
+ //semantics=ProtocolSemantics?
+ public Assignment getSemanticsAssignment_16() { return cSemanticsAssignment_16; }
+
+ //ProtocolSemantics
+ public RuleCall getSemanticsProtocolSemanticsParserRuleCall_16_0() { return cSemanticsProtocolSemanticsParserRuleCall_16_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_17() { return cRightCurlyBracketKeyword_17; }
+ }
+
+ public class MessageElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Message");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cMessageKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Assignment cArgumentsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
+ private final RuleCall cArgumentsTypedIDParserRuleCall_3_0_0 = (RuleCall)cArgumentsAssignment_3_0.eContents().get(0);
+ private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
+ private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
+ private final Assignment cArgumentsAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
+ private final RuleCall cArgumentsTypedIDParserRuleCall_3_1_1_0 = (RuleCall)cArgumentsAssignment_3_1_1.eContents().get(0);
+ private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ //Message:
+ // "Message" name=ID "(" (arguments+=TypedID ("," arguments+=TypedID)*)? ")";
+ public ParserRule getRule() { return rule; }
+
+ //"Message" name=ID "(" (arguments+=TypedID ("," arguments+=TypedID)*)? ")"
+ public Group getGroup() { return cGroup; }
+
+ //"Message"
+ public Keyword getMessageKeyword_0() { return cMessageKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //"("
+ public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
+
+ //(arguments+=TypedID ("," arguments+=TypedID)*)?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //arguments+=TypedID
+ public Assignment getArgumentsAssignment_3_0() { return cArgumentsAssignment_3_0; }
+
+ //TypedID
+ public RuleCall getArgumentsTypedIDParserRuleCall_3_0_0() { return cArgumentsTypedIDParserRuleCall_3_0_0; }
+
+ //("," arguments+=TypedID)*
+ public Group getGroup_3_1() { return cGroup_3_1; }
+
+ //","
+ public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
+
+ //arguments+=TypedID
+ public Assignment getArgumentsAssignment_3_1_1() { return cArgumentsAssignment_3_1_1; }
+
+ //TypedID
+ public RuleCall getArgumentsTypedIDParserRuleCall_3_1_1_0() { return cArgumentsTypedIDParserRuleCall_3_1_1_0; }
+
+ //")"
+ public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
+ }
+
+ public class PortClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PortClass");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+ private final Keyword cUsercodeKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+ private final Assignment cUserCodeAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
+ private final RuleCall cUserCodeDetailCodeParserRuleCall_1_1_0 = (RuleCall)cUserCodeAssignment_1_1.eContents().get(0);
+ private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
+ private final Assignment cAttributesAssignment_2_0 = (Assignment)cAlternatives_2.eContents().get(0);
+ private final RuleCall cAttributesAttributeParserRuleCall_2_0_0 = (RuleCall)cAttributesAssignment_2_0.eContents().get(0);
+ private final Assignment cOperationsAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
+ private final RuleCall cOperationsOperationParserRuleCall_2_1_0 = (RuleCall)cOperationsAssignment_2_1.eContents().get(0);
+ private final Assignment cMsgHandlersAssignment_2_2 = (Assignment)cAlternatives_2.eContents().get(2);
+ private final RuleCall cMsgHandlersMessageHandlerParserRuleCall_2_2_0 = (RuleCall)cMsgHandlersAssignment_2_2.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+
+ //PortClass:
+ // "{" ("usercode" userCode=DetailCode)? (attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+
+ // "}";
+ public ParserRule getRule() { return rule; }
+
+ //"{" ("usercode" userCode=DetailCode)? (attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+ "}"
+ public Group getGroup() { return cGroup; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
+
+ //("usercode" userCode=DetailCode)?
+ public Group getGroup_1() { return cGroup_1; }
+
+ //"usercode"
+ public Keyword getUsercodeKeyword_1_0() { return cUsercodeKeyword_1_0; }
+
+ //userCode=DetailCode
+ public Assignment getUserCodeAssignment_1_1() { return cUserCodeAssignment_1_1; }
+
+ //DetailCode
+ public RuleCall getUserCodeDetailCodeParserRuleCall_1_1_0() { return cUserCodeDetailCodeParserRuleCall_1_1_0; }
+
+ //(attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+
+ public Alternatives getAlternatives_2() { return cAlternatives_2; }
+
+ //attributes+=Attribute
+ public Assignment getAttributesAssignment_2_0() { return cAttributesAssignment_2_0; }
+
+ //Attribute
+ public RuleCall getAttributesAttributeParserRuleCall_2_0_0() { return cAttributesAttributeParserRuleCall_2_0_0; }
+
+ //operations+=Operation
+ public Assignment getOperationsAssignment_2_1() { return cOperationsAssignment_2_1; }
+
+ //Operation
+ public RuleCall getOperationsOperationParserRuleCall_2_1_0() { return cOperationsOperationParserRuleCall_2_1_0; }
+
+ //msgHandlers+=MessageHandler
+ public Assignment getMsgHandlersAssignment_2_2() { return cMsgHandlersAssignment_2_2; }
+
+ //MessageHandler
+ public RuleCall getMsgHandlersMessageHandlerParserRuleCall_2_2_0() { return cMsgHandlersMessageHandlerParserRuleCall_2_2_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
+ }
+
+ public class MessageHandlerElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MessageHandler");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cHandleKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cMsgAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cMsgMessageCrossReference_1_0 = (CrossReference)cMsgAssignment_1.eContents().get(0);
+ private final RuleCall cMsgMessageIDTerminalRuleCall_1_0_1 = (RuleCall)cMsgMessageCrossReference_1_0.eContents().get(1);
+ private final Assignment cDetailCodeAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cDetailCodeDetailCodeParserRuleCall_2_0 = (RuleCall)cDetailCodeAssignment_2.eContents().get(0);
+
+ //MessageHandler:
+ // "handle" msg=[Message] detailCode=DetailCode;
+ public ParserRule getRule() { return rule; }
+
+ //"handle" msg=[Message] detailCode=DetailCode
+ public Group getGroup() { return cGroup; }
+
+ //"handle"
+ public Keyword getHandleKeyword_0() { return cHandleKeyword_0; }
+
+ //msg=[Message]
+ public Assignment getMsgAssignment_1() { return cMsgAssignment_1; }
+
+ //[Message]
+ public CrossReference getMsgMessageCrossReference_1_0() { return cMsgMessageCrossReference_1_0; }
+
+ //ID
+ public RuleCall getMsgMessageIDTerminalRuleCall_1_0_1() { return cMsgMessageIDTerminalRuleCall_1_0_1; }
+
+ //detailCode=DetailCode
+ public Assignment getDetailCodeAssignment_2() { return cDetailCodeAssignment_2; }
+
+ //DetailCode
+ public RuleCall getDetailCodeDetailCodeParserRuleCall_2_0() { return cDetailCodeDetailCodeParserRuleCall_2_0; }
+ }
+
+ public class ProtocolSemanticsElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProtocolSemantics");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cSemanticsKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cRulesAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cRulesSemanticsRuleParserRuleCall_2_0 = (RuleCall)cRulesAssignment_2.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+
+ //ProtocolSemantics:
+ // "semantics" "{" rules+=SemanticsRule+ "}";
+ public ParserRule getRule() { return rule; }
+
+ //"semantics" "{" rules+=SemanticsRule+ "}"
+ public Group getGroup() { return cGroup; }
+
+ //"semantics"
+ public Keyword getSemanticsKeyword_0() { return cSemanticsKeyword_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; }
+
+ //rules+=SemanticsRule+
+ public Assignment getRulesAssignment_2() { return cRulesAssignment_2; }
+
+ //SemanticsRule
+ public RuleCall getRulesSemanticsRuleParserRuleCall_2_0() { return cRulesSemanticsRuleParserRuleCall_2_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
+ }
+
+ public class SemanticsRuleElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SemanticsRule");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cSemanticsInRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cSemanticsOutRuleParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //SemanticsRule:
+ // SemanticsInRule | SemanticsOutRule;
+ public ParserRule getRule() { return rule; }
+
+ //SemanticsInRule | SemanticsOutRule
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //SemanticsInRule
+ public RuleCall getSemanticsInRuleParserRuleCall_0() { return cSemanticsInRuleParserRuleCall_0; }
+
+ //SemanticsOutRule
+ public RuleCall getSemanticsOutRuleParserRuleCall_1() { return cSemanticsOutRuleParserRuleCall_1; }
+ }
+
+ public class SemanticsInRuleElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SemanticsInRule");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cInKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cMsgAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cMsgMessageCrossReference_1_0 = (CrossReference)cMsgAssignment_1.eContents().get(0);
+ private final RuleCall cMsgMessageIDTerminalRuleCall_1_0_1 = (RuleCall)cMsgMessageCrossReference_1_0.eContents().get(1);
+ private final Keyword cHyphenMinusGreaterThanSignKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+ private final Assignment cFollowUpsAssignment_4 = (Assignment)cGroup.eContents().get(4);
+ private final RuleCall cFollowUpsSemanticsRuleParserRuleCall_4_0 = (RuleCall)cFollowUpsAssignment_4.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
+
+ //SemanticsInRule:
+ // "in" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"in" msg=[Message] "->" "{" followUps+=SemanticsRule* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"in"
+ public Keyword getInKeyword_0() { return cInKeyword_0; }
+
+ //msg=[Message]
+ public Assignment getMsgAssignment_1() { return cMsgAssignment_1; }
+
+ //[Message]
+ public CrossReference getMsgMessageCrossReference_1_0() { return cMsgMessageCrossReference_1_0; }
+
+ //ID
+ public RuleCall getMsgMessageIDTerminalRuleCall_1_0_1() { return cMsgMessageIDTerminalRuleCall_1_0_1; }
+
+ //"->"
+ public Keyword getHyphenMinusGreaterThanSignKeyword_2() { return cHyphenMinusGreaterThanSignKeyword_2; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
+
+ //followUps+=SemanticsRule*
+ public Assignment getFollowUpsAssignment_4() { return cFollowUpsAssignment_4; }
+
+ //SemanticsRule
+ public RuleCall getFollowUpsSemanticsRuleParserRuleCall_4_0() { return cFollowUpsSemanticsRuleParserRuleCall_4_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
+ }
+
+ public class SemanticsOutRuleElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SemanticsOutRule");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cOutKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cMsgAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cMsgMessageCrossReference_1_0 = (CrossReference)cMsgAssignment_1.eContents().get(0);
+ private final RuleCall cMsgMessageIDTerminalRuleCall_1_0_1 = (RuleCall)cMsgMessageCrossReference_1_0.eContents().get(1);
+ private final Keyword cHyphenMinusGreaterThanSignKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+ private final Assignment cFollowUpsAssignment_4 = (Assignment)cGroup.eContents().get(4);
+ private final RuleCall cFollowUpsSemanticsRuleParserRuleCall_4_0 = (RuleCall)cFollowUpsAssignment_4.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
+
+ //SemanticsOutRule:
+ // "out" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"out" msg=[Message] "->" "{" followUps+=SemanticsRule* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"out"
+ public Keyword getOutKeyword_0() { return cOutKeyword_0; }
+
+ //msg=[Message]
+ public Assignment getMsgAssignment_1() { return cMsgAssignment_1; }
+
+ //[Message]
+ public CrossReference getMsgMessageCrossReference_1_0() { return cMsgMessageCrossReference_1_0; }
+
+ //ID
+ public RuleCall getMsgMessageIDTerminalRuleCall_1_0_1() { return cMsgMessageIDTerminalRuleCall_1_0_1; }
+
+ //"->"
+ public Keyword getHyphenMinusGreaterThanSignKeyword_2() { return cHyphenMinusGreaterThanSignKeyword_2; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; }
+
+ //followUps+=SemanticsRule*
+ public Assignment getFollowUpsAssignment_4() { return cFollowUpsAssignment_4; }
+
+ //SemanticsRule
+ public RuleCall getFollowUpsSemanticsRuleParserRuleCall_4_0() { return cFollowUpsSemanticsRuleParserRuleCall_4_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
+ }
+
+ public class ActorClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorClass");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cAbstractAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final Keyword cAbstractAbstractKeyword_0_0 = (Keyword)cAbstractAssignment_0.eContents().get(0);
+ private final Keyword cActorClassKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Keyword cExtendsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
+ private final Assignment cBaseAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
+ private final CrossReference cBaseActorClassCrossReference_3_1_0 = (CrossReference)cBaseAssignment_3_1.eContents().get(0);
+ private final RuleCall cBaseActorClassFQNParserRuleCall_3_1_0_1 = (RuleCall)cBaseActorClassCrossReference_3_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
+ private final Keyword cInterfaceKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
+ private final Assignment cIfPortsAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
+ private final RuleCall cIfPortsPortParserRuleCall_5_2_0 = (RuleCall)cIfPortsAssignment_5_2.eContents().get(0);
+ private final Assignment cIfSPPsAssignment_5_3 = (Assignment)cGroup_5.eContents().get(3);
+ private final RuleCall cIfSPPsSPPRefParserRuleCall_5_3_0 = (RuleCall)cIfSPPsAssignment_5_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
+ private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
+ private final Keyword cStructureKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_6_1 = (Keyword)cGroup_6.eContents().get(1);
+ private final Group cGroup_6_2 = (Group)cGroup_6.eContents().get(2);
+ private final Keyword cUsercode1Keyword_6_2_0 = (Keyword)cGroup_6_2.eContents().get(0);
+ private final Assignment cUserCode1Assignment_6_2_1 = (Assignment)cGroup_6_2.eContents().get(1);
+ private final RuleCall cUserCode1DetailCodeParserRuleCall_6_2_1_0 = (RuleCall)cUserCode1Assignment_6_2_1.eContents().get(0);
+ private final Group cGroup_6_3 = (Group)cGroup_6.eContents().get(3);
+ private final Keyword cUsercode2Keyword_6_3_0 = (Keyword)cGroup_6_3.eContents().get(0);
+ private final Assignment cUserCode2Assignment_6_3_1 = (Assignment)cGroup_6_3.eContents().get(1);
+ private final RuleCall cUserCode2DetailCodeParserRuleCall_6_3_1_0 = (RuleCall)cUserCode2Assignment_6_3_1.eContents().get(0);
+ private final Alternatives cAlternatives_6_4 = (Alternatives)cGroup_6.eContents().get(4);
+ private final Assignment cIntPortsAssignment_6_4_0 = (Assignment)cAlternatives_6_4.eContents().get(0);
+ private final RuleCall cIntPortsPortParserRuleCall_6_4_0_0 = (RuleCall)cIntPortsAssignment_6_4_0.eContents().get(0);
+ private final Assignment cExtPortsAssignment_6_4_1 = (Assignment)cAlternatives_6_4.eContents().get(1);
+ private final RuleCall cExtPortsExternalPortParserRuleCall_6_4_1_0 = (RuleCall)cExtPortsAssignment_6_4_1.eContents().get(0);
+ private final Assignment cServiceImplementationsAssignment_6_5 = (Assignment)cGroup_6.eContents().get(5);
+ private final RuleCall cServiceImplementationsServiceImplementationParserRuleCall_6_5_0 = (RuleCall)cServiceImplementationsAssignment_6_5.eContents().get(0);
+ private final Assignment cStrSAPsAssignment_6_6 = (Assignment)cGroup_6.eContents().get(6);
+ private final RuleCall cStrSAPsSAPRefParserRuleCall_6_6_0 = (RuleCall)cStrSAPsAssignment_6_6.eContents().get(0);
+ private final Assignment cAttributesAssignment_6_7 = (Assignment)cGroup_6.eContents().get(7);
+ private final RuleCall cAttributesAttributeParserRuleCall_6_7_0 = (RuleCall)cAttributesAssignment_6_7.eContents().get(0);
+ private final Assignment cActorRefsAssignment_6_8 = (Assignment)cGroup_6.eContents().get(8);
+ private final RuleCall cActorRefsActorRefParserRuleCall_6_8_0 = (RuleCall)cActorRefsAssignment_6_8.eContents().get(0);
+ private final Assignment cBindingsAssignment_6_9 = (Assignment)cGroup_6.eContents().get(9);
+ private final RuleCall cBindingsBindingParserRuleCall_6_9_0 = (RuleCall)cBindingsAssignment_6_9.eContents().get(0);
+ private final Assignment cConnectionsAssignment_6_10 = (Assignment)cGroup_6.eContents().get(10);
+ private final RuleCall cConnectionsLayerConnectionParserRuleCall_6_10_0 = (RuleCall)cConnectionsAssignment_6_10.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_6_11 = (Keyword)cGroup_6.eContents().get(11);
+ private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
+ private final Keyword cBehaviorKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_7_1 = (Keyword)cGroup_7.eContents().get(1);
+ private final Assignment cOperationsAssignment_7_2 = (Assignment)cGroup_7.eContents().get(2);
+ private final RuleCall cOperationsOperationParserRuleCall_7_2_0 = (RuleCall)cOperationsAssignment_7_2.eContents().get(0);
+ private final Assignment cStateMachineAssignment_7_3 = (Assignment)cGroup_7.eContents().get(3);
+ private final RuleCall cStateMachineStateMachineParserRuleCall_7_3_0 = (RuleCall)cStateMachineAssignment_7_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_7_4 = (Keyword)cGroup_7.eContents().get(4);
+ private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
+
+ //// **************************************************************
+ //
+ //// actor class
+ //
+ //// some notes on ports
+ //
+ ////
+ //
+ //// in ROOM ports can be contained in the structure and/or the interface
+ //
+ //// p in s ==> internal end port
+ //
+ //// p in i ==> relay port
+ //
+ //// p in i and p in s ==> external end port
+ //
+ //// since double containment is not supported we decided to define external ports as reference to interface ports
+ //
+ //ActorClass:
+ // abstract?="abstract"? "ActorClass" name=ID ("extends" base=[ActorClass|FQN])? "{" ("Interface" "{" ifPorts+=Port*
+ // ifSPPs+=SPPRef* "}")? ("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)?
+ // (intPorts+=Port | extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef*
+ // attributes+=Attribute* actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")? ("Behavior" "{"
+ // operations+=Operation* stateMachine=StateMachine? "}")? "}";
+ public ParserRule getRule() { return rule; }
+
+ //abstract?="abstract"? "ActorClass" name=ID ("extends" base=[ActorClass|FQN])? "{" ("Interface" "{" ifPorts+=Port*
+ //ifSPPs+=SPPRef* "}")? ("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)?
+ //(intPorts+=Port | extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef*
+ //attributes+=Attribute* actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")? ("Behavior" "{"
+ //operations+=Operation* stateMachine=StateMachine? "}")? "}"
+ public Group getGroup() { return cGroup; }
+
+ //abstract?="abstract"?
+ public Assignment getAbstractAssignment_0() { return cAbstractAssignment_0; }
+
+ //"abstract"
+ public Keyword getAbstractAbstractKeyword_0_0() { return cAbstractAbstractKeyword_0_0; }
+
+ //"ActorClass"
+ public Keyword getActorClassKeyword_1() { return cActorClassKeyword_1; }
+
+ //name=ID
+ public Assignment getNameAssignment_2() { return cNameAssignment_2; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
+
+ //("extends" base=[ActorClass|FQN])?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //"extends"
+ public Keyword getExtendsKeyword_3_0() { return cExtendsKeyword_3_0; }
+
+ //base=[ActorClass|FQN]
+ public Assignment getBaseAssignment_3_1() { return cBaseAssignment_3_1; }
+
+ //[ActorClass|FQN]
+ public CrossReference getBaseActorClassCrossReference_3_1_0() { return cBaseActorClassCrossReference_3_1_0; }
+
+ //FQN
+ public RuleCall getBaseActorClassFQNParserRuleCall_3_1_0_1() { return cBaseActorClassFQNParserRuleCall_3_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
+
+ //("Interface" "{" ifPorts+=Port* ifSPPs+=SPPRef* "}")?
+ public Group getGroup_5() { return cGroup_5; }
+
+ //"Interface"
+ public Keyword getInterfaceKeyword_5_0() { return cInterfaceKeyword_5_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_5_1() { return cLeftCurlyBracketKeyword_5_1; }
+
+ //ifPorts+=Port*
+ public Assignment getIfPortsAssignment_5_2() { return cIfPortsAssignment_5_2; }
+
+ //Port
+ public RuleCall getIfPortsPortParserRuleCall_5_2_0() { return cIfPortsPortParserRuleCall_5_2_0; }
+
+ //ifSPPs+=SPPRef*
+ public Assignment getIfSPPsAssignment_5_3() { return cIfSPPsAssignment_5_3; }
+
+ //SPPRef
+ public RuleCall getIfSPPsSPPRefParserRuleCall_5_3_0() { return cIfSPPsSPPRefParserRuleCall_5_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
+
+ //("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)? (intPorts+=Port |
+ //extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef* attributes+=Attribute*
+ //actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")?
+ public Group getGroup_6() { return cGroup_6; }
+
+ //"Structure"
+ public Keyword getStructureKeyword_6_0() { return cStructureKeyword_6_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_6_1() { return cLeftCurlyBracketKeyword_6_1; }
+
+ //("usercode1" userCode1=DetailCode)?
+ public Group getGroup_6_2() { return cGroup_6_2; }
+
+ //"usercode1"
+ public Keyword getUsercode1Keyword_6_2_0() { return cUsercode1Keyword_6_2_0; }
+
+ //userCode1=DetailCode
+ public Assignment getUserCode1Assignment_6_2_1() { return cUserCode1Assignment_6_2_1; }
+
+ //DetailCode
+ public RuleCall getUserCode1DetailCodeParserRuleCall_6_2_1_0() { return cUserCode1DetailCodeParserRuleCall_6_2_1_0; }
+
+ //("usercode2" userCode2=DetailCode)?
+ public Group getGroup_6_3() { return cGroup_6_3; }
+
+ //"usercode2"
+ public Keyword getUsercode2Keyword_6_3_0() { return cUsercode2Keyword_6_3_0; }
+
+ //userCode2=DetailCode
+ public Assignment getUserCode2Assignment_6_3_1() { return cUserCode2Assignment_6_3_1; }
+
+ //DetailCode
+ public RuleCall getUserCode2DetailCodeParserRuleCall_6_3_1_0() { return cUserCode2DetailCodeParserRuleCall_6_3_1_0; }
+
+ //(intPorts+=Port | extPorts+=ExternalPort)*
+ public Alternatives getAlternatives_6_4() { return cAlternatives_6_4; }
+
+ //intPorts+=Port
+ public Assignment getIntPortsAssignment_6_4_0() { return cIntPortsAssignment_6_4_0; }
+
+ //Port
+ public RuleCall getIntPortsPortParserRuleCall_6_4_0_0() { return cIntPortsPortParserRuleCall_6_4_0_0; }
+
+ //extPorts+=ExternalPort
+ public Assignment getExtPortsAssignment_6_4_1() { return cExtPortsAssignment_6_4_1; }
+
+ //ExternalPort
+ public RuleCall getExtPortsExternalPortParserRuleCall_6_4_1_0() { return cExtPortsExternalPortParserRuleCall_6_4_1_0; }
+
+ //serviceImplementations+=ServiceImplementation*
+ public Assignment getServiceImplementationsAssignment_6_5() { return cServiceImplementationsAssignment_6_5; }
+
+ //ServiceImplementation
+ public RuleCall getServiceImplementationsServiceImplementationParserRuleCall_6_5_0() { return cServiceImplementationsServiceImplementationParserRuleCall_6_5_0; }
+
+ //strSAPs+=SAPRef*
+ public Assignment getStrSAPsAssignment_6_6() { return cStrSAPsAssignment_6_6; }
+
+ //SAPRef
+ public RuleCall getStrSAPsSAPRefParserRuleCall_6_6_0() { return cStrSAPsSAPRefParserRuleCall_6_6_0; }
+
+ //attributes+=Attribute*
+ public Assignment getAttributesAssignment_6_7() { return cAttributesAssignment_6_7; }
+
+ //Attribute
+ public RuleCall getAttributesAttributeParserRuleCall_6_7_0() { return cAttributesAttributeParserRuleCall_6_7_0; }
+
+ //actorRefs+=ActorRef*
+ public Assignment getActorRefsAssignment_6_8() { return cActorRefsAssignment_6_8; }
+
+ //ActorRef
+ public RuleCall getActorRefsActorRefParserRuleCall_6_8_0() { return cActorRefsActorRefParserRuleCall_6_8_0; }
+
+ //bindings+=Binding*
+ public Assignment getBindingsAssignment_6_9() { return cBindingsAssignment_6_9; }
+
+ //Binding
+ public RuleCall getBindingsBindingParserRuleCall_6_9_0() { return cBindingsBindingParserRuleCall_6_9_0; }
+
+ //connections+=LayerConnection*
+ public Assignment getConnectionsAssignment_6_10() { return cConnectionsAssignment_6_10; }
+
+ //LayerConnection
+ public RuleCall getConnectionsLayerConnectionParserRuleCall_6_10_0() { return cConnectionsLayerConnectionParserRuleCall_6_10_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_6_11() { return cRightCurlyBracketKeyword_6_11; }
+
+ //("Behavior" "{" operations+=Operation* stateMachine=StateMachine? "}")?
+ public Group getGroup_7() { return cGroup_7; }
+
+ //"Behavior"
+ public Keyword getBehaviorKeyword_7_0() { return cBehaviorKeyword_7_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_7_1() { return cLeftCurlyBracketKeyword_7_1; }
+
+ //operations+=Operation*
+ public Assignment getOperationsAssignment_7_2() { return cOperationsAssignment_7_2; }
+
+ //Operation
+ public RuleCall getOperationsOperationParserRuleCall_7_2_0() { return cOperationsOperationParserRuleCall_7_2_0; }
+
+ //stateMachine=StateMachine?
+ public Assignment getStateMachineAssignment_7_3() { return cStateMachineAssignment_7_3; }
+
+ //StateMachine
+ public RuleCall getStateMachineStateMachineParserRuleCall_7_3_0() { return cStateMachineStateMachineParserRuleCall_7_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_7_4() { return cRightCurlyBracketKeyword_7_4; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
+ }
+
+ public class InterfaceItemElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InterfaceItem");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cPortParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cSAPRefParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cSPPRefParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+
+ //InterfaceItem:
+ // Port | SAPRef | SPPRef;
+ public ParserRule getRule() { return rule; }
+
+ //Port | SAPRef | SPPRef
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //Port
+ public RuleCall getPortParserRuleCall_0() { return cPortParserRuleCall_0; }
+
+ //SAPRef
+ public RuleCall getSAPRefParserRuleCall_1() { return cSAPRefParserRuleCall_1; }
+
+ //SPPRef
+ public RuleCall getSPPRefParserRuleCall_2() { return cSPPRefParserRuleCall_2; }
+ }
+
+ public class PortElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Port");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cConjugatedAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final Keyword cConjugatedConjugatedKeyword_0_0 = (Keyword)cConjugatedAssignment_0.eContents().get(0);
+ private final Keyword cPortKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Keyword cLeftSquareBracketKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
+ private final Assignment cMultiplicityAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
+ private final RuleCall cMultiplicityINTTerminalRuleCall_3_1_0 = (RuleCall)cMultiplicityAssignment_3_1.eContents().get(0);
+ private final Keyword cRightSquareBracketKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
+ private final Keyword cColonKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Assignment cProtocolAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final CrossReference cProtocolProtocolClassCrossReference_5_0 = (CrossReference)cProtocolAssignment_5.eContents().get(0);
+ private final RuleCall cProtocolProtocolClassFQNParserRuleCall_5_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_5_0.eContents().get(1);
+
+ //Port:
+ // conjugated?="conjugated"? "Port" name=ID ("[" multiplicity=INT "]")? ":" protocol=[ProtocolClass|FQN];
+ public ParserRule getRule() { return rule; }
+
+ //conjugated?="conjugated"? "Port" name=ID ("[" multiplicity=INT "]")? ":" protocol=[ProtocolClass|FQN]
+ public Group getGroup() { return cGroup; }
+
+ //conjugated?="conjugated"?
+ public Assignment getConjugatedAssignment_0() { return cConjugatedAssignment_0; }
+
+ //"conjugated"
+ public Keyword getConjugatedConjugatedKeyword_0_0() { return cConjugatedConjugatedKeyword_0_0; }
+
+ //"Port"
+ public Keyword getPortKeyword_1() { return cPortKeyword_1; }
+
+ //name=ID
+ public Assignment getNameAssignment_2() { return cNameAssignment_2; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
+
+ //("[" multiplicity=INT "]")?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //"["
+ public Keyword getLeftSquareBracketKeyword_3_0() { return cLeftSquareBracketKeyword_3_0; }
+
+ //multiplicity=INT
+ public Assignment getMultiplicityAssignment_3_1() { return cMultiplicityAssignment_3_1; }
+
+ //INT
+ public RuleCall getMultiplicityINTTerminalRuleCall_3_1_0() { return cMultiplicityINTTerminalRuleCall_3_1_0; }
+
+ //"]"
+ public Keyword getRightSquareBracketKeyword_3_2() { return cRightSquareBracketKeyword_3_2; }
+
+ //":"
+ public Keyword getColonKeyword_4() { return cColonKeyword_4; }
+
+ //protocol=[ProtocolClass|FQN]
+ public Assignment getProtocolAssignment_5() { return cProtocolAssignment_5; }
+
+ //[ProtocolClass|FQN]
+ public CrossReference getProtocolProtocolClassCrossReference_5_0() { return cProtocolProtocolClassCrossReference_5_0; }
+
+ //FQN
+ public RuleCall getProtocolProtocolClassFQNParserRuleCall_5_0_1() { return cProtocolProtocolClassFQNParserRuleCall_5_0_1; }
+ }
+
+ public class ExternalPortElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ExternalPort");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cExternalKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Keyword cPortKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cIfportAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final CrossReference cIfportPortCrossReference_2_0 = (CrossReference)cIfportAssignment_2.eContents().get(0);
+ private final RuleCall cIfportPortIDTerminalRuleCall_2_0_1 = (RuleCall)cIfportPortCrossReference_2_0.eContents().get(1);
+
+ //ExternalPort:
+ // "external" "Port" ifport=[Port];
+ public ParserRule getRule() { return rule; }
+
+ //"external" "Port" ifport=[Port]
+ public Group getGroup() { return cGroup; }
+
+ //"external"
+ public Keyword getExternalKeyword_0() { return cExternalKeyword_0; }
+
+ //"Port"
+ public Keyword getPortKeyword_1() { return cPortKeyword_1; }
+
+ //ifport=[Port]
+ public Assignment getIfportAssignment_2() { return cIfportAssignment_2; }
+
+ //[Port]
+ public CrossReference getIfportPortCrossReference_2_0() { return cIfportPortCrossReference_2_0; }
+
+ //ID
+ public RuleCall getIfportPortIDTerminalRuleCall_2_0_1() { return cIfportPortIDTerminalRuleCall_2_0_1; }
+ }
+
+ public class SAPRefElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SAPRef");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cSAPKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cProtocolAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final CrossReference cProtocolProtocolClassCrossReference_3_0 = (CrossReference)cProtocolAssignment_3.eContents().get(0);
+ private final RuleCall cProtocolProtocolClassFQNParserRuleCall_3_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_3_0.eContents().get(1);
+
+ //SAPRef: // we omitted the SAP type (Timing/Frame/Exception)
+ //
+ // "SAP" name=ID ":" protocol=[ProtocolClass|FQN];
+ public ParserRule getRule() { return rule; }
+
+ //// we omitted the SAP type (Timing/Frame/Exception)
+ //
+ //"SAP" name=ID ":" protocol=[ProtocolClass|FQN]
+ public Group getGroup() { return cGroup; }
+
+ //// we omitted the SAP type (Timing/Frame/Exception)
+ //
+ //"SAP"
+ public Keyword getSAPKeyword_0() { return cSAPKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //protocol=[ProtocolClass|FQN]
+ public Assignment getProtocolAssignment_3() { return cProtocolAssignment_3; }
+
+ //[ProtocolClass|FQN]
+ public CrossReference getProtocolProtocolClassCrossReference_3_0() { return cProtocolProtocolClassCrossReference_3_0; }
+
+ //FQN
+ public RuleCall getProtocolProtocolClassFQNParserRuleCall_3_0_1() { return cProtocolProtocolClassFQNParserRuleCall_3_0_1; }
+ }
+
+ public class SPPRefElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SPPRef");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cSPPKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cProtocolAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final CrossReference cProtocolProtocolClassCrossReference_3_0 = (CrossReference)cProtocolAssignment_3.eContents().get(0);
+ private final RuleCall cProtocolProtocolClassFQNParserRuleCall_3_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_3_0.eContents().get(1);
+
+ //SPPRef:
+ // "SPP" name=ID ":" protocol=[ProtocolClass|FQN];
+ public ParserRule getRule() { return rule; }
+
+ //"SPP" name=ID ":" protocol=[ProtocolClass|FQN]
+ public Group getGroup() { return cGroup; }
+
+ //"SPP"
+ public Keyword getSPPKeyword_0() { return cSPPKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //protocol=[ProtocolClass|FQN]
+ public Assignment getProtocolAssignment_3() { return cProtocolAssignment_3; }
+
+ //[ProtocolClass|FQN]
+ public CrossReference getProtocolProtocolClassCrossReference_3_0() { return cProtocolProtocolClassCrossReference_3_0; }
+
+ //FQN
+ public RuleCall getProtocolProtocolClassFQNParserRuleCall_3_0_1() { return cProtocolProtocolClassFQNParserRuleCall_3_0_1; }
+ }
+
+ public class ServiceImplementationElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ServiceImplementation");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cServiceImplementationKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Keyword cOfKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cSppAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final CrossReference cSppSPPRefCrossReference_2_0 = (CrossReference)cSppAssignment_2.eContents().get(0);
+ private final RuleCall cSppSPPRefIDTerminalRuleCall_2_0_1 = (RuleCall)cSppSPPRefCrossReference_2_0.eContents().get(1);
+
+ //ServiceImplementation:
+ // "ServiceImplementation" "of" spp=[SPPRef];
+ public ParserRule getRule() { return rule; }
+
+ //"ServiceImplementation" "of" spp=[SPPRef]
+ public Group getGroup() { return cGroup; }
+
+ //"ServiceImplementation"
+ public Keyword getServiceImplementationKeyword_0() { return cServiceImplementationKeyword_0; }
+
+ //"of"
+ public Keyword getOfKeyword_1() { return cOfKeyword_1; }
+
+ //spp=[SPPRef]
+ public Assignment getSppAssignment_2() { return cSppAssignment_2; }
+
+ //[SPPRef]
+ public CrossReference getSppSPPRefCrossReference_2_0() { return cSppSPPRefCrossReference_2_0; }
+
+ //ID
+ public RuleCall getSppSPPRefIDTerminalRuleCall_2_0_1() { return cSppSPPRefIDTerminalRuleCall_2_0_1; }
+ }
+
+ public class LogicalSystemElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LogicalSystem");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLogicalSystemKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cSubSystemsAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cSubSystemsSubSystemRefParserRuleCall_3_0 = (RuleCall)cSubSystemsAssignment_3.eContents().get(0);
+ private final Assignment cBindingsAssignment_4 = (Assignment)cGroup.eContents().get(4);
+ private final RuleCall cBindingsBindingParserRuleCall_4_0 = (RuleCall)cBindingsAssignment_4.eContents().get(0);
+ private final Assignment cConnectionsAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cConnectionsLayerConnectionParserRuleCall_5_0 = (RuleCall)cConnectionsAssignment_5.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+
+ //LogicalSystem:
+ // "LogicalSystem" name=ID "{" subSystems+=SubSystemRef+ bindings+=Binding* connections+=LayerConnection* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"LogicalSystem" name=ID "{" subSystems+=SubSystemRef+ bindings+=Binding* connections+=LayerConnection* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"LogicalSystem"
+ public Keyword getLogicalSystemKeyword_0() { return cLogicalSystemKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //subSystems+=SubSystemRef+
+ public Assignment getSubSystemsAssignment_3() { return cSubSystemsAssignment_3; }
+
+ //SubSystemRef
+ public RuleCall getSubSystemsSubSystemRefParserRuleCall_3_0() { return cSubSystemsSubSystemRefParserRuleCall_3_0; }
+
+ //bindings+=Binding*
+ public Assignment getBindingsAssignment_4() { return cBindingsAssignment_4; }
+
+ //Binding
+ public RuleCall getBindingsBindingParserRuleCall_4_0() { return cBindingsBindingParserRuleCall_4_0; }
+
+ //connections+=LayerConnection*
+ public Assignment getConnectionsAssignment_5() { return cConnectionsAssignment_5; }
+
+ //LayerConnection
+ public RuleCall getConnectionsLayerConnectionParserRuleCall_5_0() { return cConnectionsLayerConnectionParserRuleCall_5_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
+ }
+
+ public class ActorContainerRefElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorContainerRef");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cSubSystemRefParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cActorRefParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //ActorContainerRef:
+ // SubSystemRef | ActorRef;
+ public ParserRule getRule() { return rule; }
+
+ //SubSystemRef | ActorRef
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //SubSystemRef
+ public RuleCall getSubSystemRefParserRuleCall_0() { return cSubSystemRefParserRuleCall_0; }
+
+ //ActorRef
+ public RuleCall getActorRefParserRuleCall_1() { return cActorRefParserRuleCall_1; }
+ }
+
+ public class SubSystemRefElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubSystemRef");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cSubSystemRefKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cTypeAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final CrossReference cTypeSubSystemClassCrossReference_3_0 = (CrossReference)cTypeAssignment_3.eContents().get(0);
+ private final RuleCall cTypeSubSystemClassFQNParserRuleCall_3_0_1 = (RuleCall)cTypeSubSystemClassCrossReference_3_0.eContents().get(1);
+
+ //SubSystemRef:
+ // "SubSystemRef" name=ID ":" type=[SubSystemClass|FQN];
+ public ParserRule getRule() { return rule; }
+
+ //"SubSystemRef" name=ID ":" type=[SubSystemClass|FQN]
+ public Group getGroup() { return cGroup; }
+
+ //"SubSystemRef"
+ public Keyword getSubSystemRefKeyword_0() { return cSubSystemRefKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //type=[SubSystemClass|FQN]
+ public Assignment getTypeAssignment_3() { return cTypeAssignment_3; }
+
+ //[SubSystemClass|FQN]
+ public CrossReference getTypeSubSystemClassCrossReference_3_0() { return cTypeSubSystemClassCrossReference_3_0; }
+
+ //FQN
+ public RuleCall getTypeSubSystemClassFQNParserRuleCall_3_0_1() { return cTypeSubSystemClassFQNParserRuleCall_3_0_1; }
+ }
+
+ public class SubSystemClassElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubSystemClass");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cSubSystemClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cRelayPortsAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cRelayPortsPortParserRuleCall_3_0 = (RuleCall)cRelayPortsAssignment_3.eContents().get(0);
+ private final Assignment cIfSPPsAssignment_4 = (Assignment)cGroup.eContents().get(4);
+ private final RuleCall cIfSPPsSPPRefParserRuleCall_4_0 = (RuleCall)cIfSPPsAssignment_4.eContents().get(0);
+ private final Assignment cActorRefsAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cActorRefsActorRefParserRuleCall_5_0 = (RuleCall)cActorRefsAssignment_5.eContents().get(0);
+ private final Assignment cBindingsAssignment_6 = (Assignment)cGroup.eContents().get(6);
+ private final RuleCall cBindingsBindingParserRuleCall_6_0 = (RuleCall)cBindingsAssignment_6.eContents().get(0);
+ private final Assignment cConnectionsAssignment_7 = (Assignment)cGroup.eContents().get(7);
+ private final RuleCall cConnectionsLayerConnectionParserRuleCall_7_0 = (RuleCall)cConnectionsAssignment_7.eContents().get(0);
+ private final Assignment cThreadsAssignment_8 = (Assignment)cGroup.eContents().get(8);
+ private final RuleCall cThreadsLogicalThreadParserRuleCall_8_0 = (RuleCall)cThreadsAssignment_8.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
+
+ //SubSystemClass:
+ // "SubSystemClass" name=ID "{" relayPorts+=Port* ifSPPs+=SPPRef* actorRefs+=ActorRef+ bindings+=Binding*
+ // connections+=LayerConnection* threads+=LogicalThread* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"SubSystemClass" name=ID "{" relayPorts+=Port* ifSPPs+=SPPRef* actorRefs+=ActorRef+ bindings+=Binding*
+ //connections+=LayerConnection* threads+=LogicalThread* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"SubSystemClass"
+ public Keyword getSubSystemClassKeyword_0() { return cSubSystemClassKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //relayPorts+=Port*
+ public Assignment getRelayPortsAssignment_3() { return cRelayPortsAssignment_3; }
+
+ //Port
+ public RuleCall getRelayPortsPortParserRuleCall_3_0() { return cRelayPortsPortParserRuleCall_3_0; }
+
+ //ifSPPs+=SPPRef*
+ public Assignment getIfSPPsAssignment_4() { return cIfSPPsAssignment_4; }
+
+ //SPPRef
+ public RuleCall getIfSPPsSPPRefParserRuleCall_4_0() { return cIfSPPsSPPRefParserRuleCall_4_0; }
+
+ //actorRefs+=ActorRef+
+ public Assignment getActorRefsAssignment_5() { return cActorRefsAssignment_5; }
+
+ //ActorRef
+ public RuleCall getActorRefsActorRefParserRuleCall_5_0() { return cActorRefsActorRefParserRuleCall_5_0; }
+
+ //bindings+=Binding*
+ public Assignment getBindingsAssignment_6() { return cBindingsAssignment_6; }
+
+ //Binding
+ public RuleCall getBindingsBindingParserRuleCall_6_0() { return cBindingsBindingParserRuleCall_6_0; }
+
+ //connections+=LayerConnection*
+ public Assignment getConnectionsAssignment_7() { return cConnectionsAssignment_7; }
+
+ //LayerConnection
+ public RuleCall getConnectionsLayerConnectionParserRuleCall_7_0() { return cConnectionsLayerConnectionParserRuleCall_7_0; }
+
+ //threads+=LogicalThread*
+ public Assignment getThreadsAssignment_8() { return cThreadsAssignment_8; }
+
+ //LogicalThread
+ public RuleCall getThreadsLogicalThreadParserRuleCall_8_0() { return cThreadsLogicalThreadParserRuleCall_8_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
+ }
+
+ public class LogicalThreadElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LogicalThread");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLogicalThreadKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cInstancesAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cInstancesActorInstancePathParserRuleCall_3_0 = (RuleCall)cInstancesAssignment_3.eContents().get(0);
+ private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
+ private final Keyword cCommaKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
+ private final Assignment cInstancesAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
+ private final RuleCall cInstancesActorInstancePathParserRuleCall_4_1_0 = (RuleCall)cInstancesAssignment_4_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
+
+ //LogicalThread:
+ // "LogicalThread" name=ID "{" instances+=ActorInstancePath ("," instances+=ActorInstancePath)* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"LogicalThread" name=ID "{" instances+=ActorInstancePath ("," instances+=ActorInstancePath)* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"LogicalThread"
+ public Keyword getLogicalThreadKeyword_0() { return cLogicalThreadKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //instances+=ActorInstancePath
+ public Assignment getInstancesAssignment_3() { return cInstancesAssignment_3; }
+
+ //ActorInstancePath
+ public RuleCall getInstancesActorInstancePathParserRuleCall_3_0() { return cInstancesActorInstancePathParserRuleCall_3_0; }
+
+ //("," instances+=ActorInstancePath)*
+ public Group getGroup_4() { return cGroup_4; }
+
+ //","
+ public Keyword getCommaKeyword_4_0() { return cCommaKeyword_4_0; }
+
+ //instances+=ActorInstancePath
+ public Assignment getInstancesAssignment_4_1() { return cInstancesAssignment_4_1; }
+
+ //ActorInstancePath
+ public RuleCall getInstancesActorInstancePathParserRuleCall_4_1_0() { return cInstancesActorInstancePathParserRuleCall_4_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
+ }
+
+ public class ActorInstancePathElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorInstancePath");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cSegmentsAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final RuleCall cSegmentsIDTerminalRuleCall_0_0 = (RuleCall)cSegmentsAssignment_0.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 Assignment cSegmentsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
+ private final RuleCall cSegmentsIDTerminalRuleCall_1_1_0 = (RuleCall)cSegmentsAssignment_1_1.eContents().get(0);
+
+ //ActorInstancePath:
+ // segments+=ID ("." segments+=ID)*;
+ public ParserRule getRule() { return rule; }
+
+ //segments+=ID ("." segments+=ID)*
+ public Group getGroup() { return cGroup; }
+
+ //segments+=ID
+ public Assignment getSegmentsAssignment_0() { return cSegmentsAssignment_0; }
+
+ //ID
+ public RuleCall getSegmentsIDTerminalRuleCall_0_0() { return cSegmentsIDTerminalRuleCall_0_0; }
+
+ //("." segments+=ID)*
+ public Group getGroup_1() { return cGroup_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
+
+ //segments+=ID
+ public Assignment getSegmentsAssignment_1_1() { return cSegmentsAssignment_1_1; }
+
+ //ID
+ public RuleCall getSegmentsIDTerminalRuleCall_1_1_0() { return cSegmentsIDTerminalRuleCall_1_1_0; }
+ }
+
+ public class BindingElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Binding");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cBindingKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cEndpoint1Assignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cEndpoint1BindingEndPointParserRuleCall_1_0 = (RuleCall)cEndpoint1Assignment_1.eContents().get(0);
+ private final Keyword cAndKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cEndpoint2Assignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cEndpoint2BindingEndPointParserRuleCall_3_0 = (RuleCall)cEndpoint2Assignment_3.eContents().get(0);
+
+ //// TODOHRR: bindings for replicated ports
+ //
+ //// (1) declare several bindings
+ //
+ //// (2) use a notation with 1 to n bindings
+ //
+ //Binding:
+ // "Binding" endpoint1=BindingEndPoint "and" endpoint2=BindingEndPoint;
+ public ParserRule getRule() { return rule; }
+
+ //"Binding" endpoint1=BindingEndPoint "and" endpoint2=BindingEndPoint
+ public Group getGroup() { return cGroup; }
+
+ //"Binding"
+ public Keyword getBindingKeyword_0() { return cBindingKeyword_0; }
+
+ //endpoint1=BindingEndPoint
+ public Assignment getEndpoint1Assignment_1() { return cEndpoint1Assignment_1; }
+
+ //BindingEndPoint
+ public RuleCall getEndpoint1BindingEndPointParserRuleCall_1_0() { return cEndpoint1BindingEndPointParserRuleCall_1_0; }
+
+ //"and"
+ public Keyword getAndKeyword_2() { return cAndKeyword_2; }
+
+ //endpoint2=BindingEndPoint
+ public Assignment getEndpoint2Assignment_3() { return cEndpoint2Assignment_3; }
+
+ //BindingEndPoint
+ public RuleCall getEndpoint2BindingEndPointParserRuleCall_3_0() { return cEndpoint2BindingEndPointParserRuleCall_3_0; }
+ }
+
+ public class BindingEndPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BindingEndPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Group cGroup_0 = (Group)cGroup.eContents().get(0);
+ private final Assignment cActorRefAssignment_0_0 = (Assignment)cGroup_0.eContents().get(0);
+ private final CrossReference cActorRefActorContainerRefCrossReference_0_0_0 = (CrossReference)cActorRefAssignment_0_0.eContents().get(0);
+ private final RuleCall cActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1 = (RuleCall)cActorRefActorContainerRefCrossReference_0_0_0.eContents().get(1);
+ private final Keyword cFullStopKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
+ private final Assignment cPortAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cPortPortCrossReference_1_0 = (CrossReference)cPortAssignment_1.eContents().get(0);
+ private final RuleCall cPortPortIDTerminalRuleCall_1_0_1 = (RuleCall)cPortPortCrossReference_1_0.eContents().get(1);
+
+ //BindingEndPoint:
+ // (actorRef=[ActorContainerRef] ".")? port=[Port];
+ public ParserRule getRule() { return rule; }
+
+ //(actorRef=[ActorContainerRef] ".")? port=[Port]
+ public Group getGroup() { return cGroup; }
+
+ //(actorRef=[ActorContainerRef] ".")?
+ public Group getGroup_0() { return cGroup_0; }
+
+ //actorRef=[ActorContainerRef]
+ public Assignment getActorRefAssignment_0_0() { return cActorRefAssignment_0_0; }
+
+ //[ActorContainerRef]
+ public CrossReference getActorRefActorContainerRefCrossReference_0_0_0() { return cActorRefActorContainerRefCrossReference_0_0_0; }
+
+ //ID
+ public RuleCall getActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1() { return cActorRefActorContainerRefIDTerminalRuleCall_0_0_0_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_0_1() { return cFullStopKeyword_0_1; }
+
+ //port=[Port]
+ public Assignment getPortAssignment_1() { return cPortAssignment_1; }
+
+ //[Port]
+ public CrossReference getPortPortCrossReference_1_0() { return cPortPortCrossReference_1_0; }
+
+ //ID
+ public RuleCall getPortPortIDTerminalRuleCall_1_0_1() { return cPortPortIDTerminalRuleCall_1_0_1; }
+ }
+
+ public class LayerConnectionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LayerConnection");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLayerConnectionKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cFromAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cFromSAPointParserRuleCall_1_0 = (RuleCall)cFromAssignment_1.eContents().get(0);
+ private final Keyword cSatisfied_byKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cToAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cToSPPointParserRuleCall_3_0 = (RuleCall)cToAssignment_3.eContents().get(0);
+
+ //LayerConnection:
+ // "LayerConnection" from=SAPoint "satisfied_by" to=SPPoint;
+ public ParserRule getRule() { return rule; }
+
+ //"LayerConnection" from=SAPoint "satisfied_by" to=SPPoint
+ public Group getGroup() { return cGroup; }
+
+ //"LayerConnection"
+ public Keyword getLayerConnectionKeyword_0() { return cLayerConnectionKeyword_0; }
+
+ //from=SAPoint
+ public Assignment getFromAssignment_1() { return cFromAssignment_1; }
+
+ //SAPoint
+ public RuleCall getFromSAPointParserRuleCall_1_0() { return cFromSAPointParserRuleCall_1_0; }
+
+ //"satisfied_by"
+ public Keyword getSatisfied_byKeyword_2() { return cSatisfied_byKeyword_2; }
+
+ //to=SPPoint
+ public Assignment getToAssignment_3() { return cToAssignment_3; }
+
+ //SPPoint
+ public RuleCall getToSPPointParserRuleCall_3_0() { return cToSPPointParserRuleCall_3_0; }
+ }
+
+ public class SAPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SAPoint");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cRefSAPointParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cRelaySAPointParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //SAPoint:
+ // RefSAPoint | RelaySAPoint;
+ public ParserRule getRule() { return rule; }
+
+ //RefSAPoint | RelaySAPoint
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //RefSAPoint
+ public RuleCall getRefSAPointParserRuleCall_0() { return cRefSAPointParserRuleCall_0; }
+
+ //RelaySAPoint
+ public RuleCall getRelaySAPointParserRuleCall_1() { return cRelaySAPointParserRuleCall_1; }
+ }
+
+ public class RefSAPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RefSAPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cRefKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cRefAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cRefActorContainerRefCrossReference_1_0 = (CrossReference)cRefAssignment_1.eContents().get(0);
+ private final RuleCall cRefActorContainerRefIDTerminalRuleCall_1_0_1 = (RuleCall)cRefActorContainerRefCrossReference_1_0.eContents().get(1);
+
+ //RefSAPoint: // satisfies a sub actor
+ //
+ // "ref" ref=[ActorContainerRef];
+ public ParserRule getRule() { return rule; }
+
+ //// satisfies a sub actor
+ //
+ //"ref" ref=[ActorContainerRef]
+ public Group getGroup() { return cGroup; }
+
+ //// satisfies a sub actor
+ //
+ //"ref"
+ public Keyword getRefKeyword_0() { return cRefKeyword_0; }
+
+ //ref=[ActorContainerRef]
+ public Assignment getRefAssignment_1() { return cRefAssignment_1; }
+
+ //[ActorContainerRef]
+ public CrossReference getRefActorContainerRefCrossReference_1_0() { return cRefActorContainerRefCrossReference_1_0; }
+
+ //ID
+ public RuleCall getRefActorContainerRefIDTerminalRuleCall_1_0_1() { return cRefActorContainerRefIDTerminalRuleCall_1_0_1; }
+ }
+
+ public class RelaySAPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RelaySAPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cRelay_sapKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cRelayAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cRelaySPPRefCrossReference_1_0 = (CrossReference)cRelayAssignment_1.eContents().get(0);
+ private final RuleCall cRelaySPPRefIDTerminalRuleCall_1_0_1 = (RuleCall)cRelaySPPRefCrossReference_1_0.eContents().get(1);
+
+ //RelaySAPoint: // relays from own interface
+ //
+ // "relay_sap" relay=[SPPRef];
+ public ParserRule getRule() { return rule; }
+
+ //// relays from own interface
+ //
+ //"relay_sap" relay=[SPPRef]
+ public Group getGroup() { return cGroup; }
+
+ //// relays from own interface
+ //
+ //"relay_sap"
+ public Keyword getRelay_sapKeyword_0() { return cRelay_sapKeyword_0; }
+
+ //relay=[SPPRef]
+ public Assignment getRelayAssignment_1() { return cRelayAssignment_1; }
+
+ //[SPPRef]
+ public CrossReference getRelaySPPRefCrossReference_1_0() { return cRelaySPPRefCrossReference_1_0; }
+
+ //ID
+ public RuleCall getRelaySPPRefIDTerminalRuleCall_1_0_1() { return cRelaySPPRefIDTerminalRuleCall_1_0_1; }
+ }
+
+ public class SPPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SPPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cRefAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final CrossReference cRefActorContainerRefCrossReference_0_0 = (CrossReference)cRefAssignment_0.eContents().get(0);
+ private final RuleCall cRefActorContainerRefIDTerminalRuleCall_0_0_1 = (RuleCall)cRefActorContainerRefCrossReference_0_0.eContents().get(1);
+ private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cServiceAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final CrossReference cServiceSPPRefCrossReference_2_0 = (CrossReference)cServiceAssignment_2.eContents().get(0);
+ private final RuleCall cServiceSPPRefIDTerminalRuleCall_2_0_1 = (RuleCall)cServiceSPPRefCrossReference_2_0.eContents().get(1);
+
+ //SPPoint:
+ // ref=[ActorContainerRef] "." service=[SPPRef];
+ public ParserRule getRule() { return rule; }
+
+ //ref=[ActorContainerRef] "." service=[SPPRef]
+ public Group getGroup() { return cGroup; }
+
+ //ref=[ActorContainerRef]
+ public Assignment getRefAssignment_0() { return cRefAssignment_0; }
+
+ //[ActorContainerRef]
+ public CrossReference getRefActorContainerRefCrossReference_0_0() { return cRefActorContainerRefCrossReference_0_0; }
+
+ //ID
+ public RuleCall getRefActorContainerRefIDTerminalRuleCall_0_0_1() { return cRefActorContainerRefIDTerminalRuleCall_0_0_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
+
+ //service=[SPPRef]
+ public Assignment getServiceAssignment_2() { return cServiceAssignment_2; }
+
+ //[SPPRef]
+ public CrossReference getServiceSPPRefCrossReference_2_0() { return cServiceSPPRefCrossReference_2_0; }
+
+ //ID
+ public RuleCall getServiceSPPRefIDTerminalRuleCall_2_0_1() { return cServiceSPPRefIDTerminalRuleCall_2_0_1; }
+ }
+
+ public class ActorRefElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorRef");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cActorRefKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cTypeAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final CrossReference cTypeActorClassCrossReference_3_0 = (CrossReference)cTypeAssignment_3.eContents().get(0);
+ private final RuleCall cTypeActorClassFQNParserRuleCall_3_0_1 = (RuleCall)cTypeActorClassCrossReference_3_0.eContents().get(1);
+
+ //// TODOHRR: support replicated actors
+ //
+ //ActorRef:
+ // "ActorRef" name=ID ":" type=[ActorClass|FQN];
+ public ParserRule getRule() { return rule; }
+
+ //"ActorRef" name=ID ":" type=[ActorClass|FQN]
+ public Group getGroup() { return cGroup; }
+
+ //"ActorRef"
+ public Keyword getActorRefKeyword_0() { return cActorRefKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //type=[ActorClass|FQN]
+ public Assignment getTypeAssignment_3() { return cTypeAssignment_3; }
+
+ //[ActorClass|FQN]
+ public CrossReference getTypeActorClassCrossReference_3_0() { return cTypeActorClassCrossReference_3_0; }
+
+ //FQN
+ public RuleCall getTypeActorClassFQNParserRuleCall_3_0_1() { return cTypeActorClassFQNParserRuleCall_3_0_1; }
+ }
+
+ public class StateGraphNodeElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateGraphNode");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cStateParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cChoicePointParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cTrPointParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+
+ //// **************************************************************
+ //
+ //// state machine
+ //
+ //StateGraphNode:
+ // State | ChoicePoint | TrPoint;
+ public ParserRule getRule() { return rule; }
+
+ //State | ChoicePoint | TrPoint
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //State
+ public RuleCall getStateParserRuleCall_0() { return cStateParserRuleCall_0; }
+
+ //ChoicePoint
+ public RuleCall getChoicePointParserRuleCall_1() { return cChoicePointParserRuleCall_1; }
+
+ //TrPoint
+ public RuleCall getTrPointParserRuleCall_2() { return cTrPointParserRuleCall_2; }
+ }
+
+ public class StateGraphItemElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateGraphItem");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cStateGraphNodeParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cTransitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //StateGraphItem:
+ // StateGraphNode | Transition;
+ public ParserRule getRule() { return rule; }
+
+ //StateGraphNode | Transition
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //StateGraphNode
+ public RuleCall getStateGraphNodeParserRuleCall_0() { return cStateGraphNodeParserRuleCall_0; }
+
+ //Transition
+ public RuleCall getTransitionParserRuleCall_1() { return cTransitionParserRuleCall_1; }
+ }
+
+ public class StateElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "State");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cBaseStateParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cRefinedStateParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //State:
+ // BaseState | RefinedState;
+ public ParserRule getRule() { return rule; }
+
+ //BaseState | RefinedState
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //BaseState
+ public RuleCall getBaseStateParserRuleCall_0() { return cBaseStateParserRuleCall_0; }
+
+ //RefinedState
+ public RuleCall getRefinedStateParserRuleCall_1() { return cRefinedStateParserRuleCall_1; }
+ }
+
+ public class StateGraphElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateGraph");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
+ private final Assignment cStatesAssignment_1_0 = (Assignment)cAlternatives_1.eContents().get(0);
+ private final RuleCall cStatesStateParserRuleCall_1_0_0 = (RuleCall)cStatesAssignment_1_0.eContents().get(0);
+ private final Assignment cTrPointsAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
+ private final RuleCall cTrPointsTrPointParserRuleCall_1_1_0 = (RuleCall)cTrPointsAssignment_1_1.eContents().get(0);
+ private final Assignment cChPointsAssignment_1_2 = (Assignment)cAlternatives_1.eContents().get(2);
+ private final RuleCall cChPointsChoicePointParserRuleCall_1_2_0 = (RuleCall)cChPointsAssignment_1_2.eContents().get(0);
+ private final Assignment cTransitionsAssignment_1_3 = (Assignment)cAlternatives_1.eContents().get(3);
+ private final RuleCall cTransitionsTransitionParserRuleCall_1_3_0 = (RuleCall)cTransitionsAssignment_1_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+
+ //StateGraph:
+ // "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
+ public ParserRule getRule() { return rule; }
+
+ //"{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}"
+ public Group getGroup() { return cGroup; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
+
+ //(states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+
+ public Alternatives getAlternatives_1() { return cAlternatives_1; }
+
+ //states+=State
+ public Assignment getStatesAssignment_1_0() { return cStatesAssignment_1_0; }
+
+ //State
+ public RuleCall getStatesStateParserRuleCall_1_0_0() { return cStatesStateParserRuleCall_1_0_0; }
+
+ //trPoints+=TrPoint
+ public Assignment getTrPointsAssignment_1_1() { return cTrPointsAssignment_1_1; }
+
+ //TrPoint
+ public RuleCall getTrPointsTrPointParserRuleCall_1_1_0() { return cTrPointsTrPointParserRuleCall_1_1_0; }
+
+ //chPoints+=ChoicePoint
+ public Assignment getChPointsAssignment_1_2() { return cChPointsAssignment_1_2; }
+
+ //ChoicePoint
+ public RuleCall getChPointsChoicePointParserRuleCall_1_2_0() { return cChPointsChoicePointParserRuleCall_1_2_0; }
+
+ //transitions+=Transition
+ public Assignment getTransitionsAssignment_1_3() { return cTransitionsAssignment_1_3; }
+
+ //Transition
+ public RuleCall getTransitionsTransitionParserRuleCall_1_3_0() { return cTransitionsTransitionParserRuleCall_1_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_2() { return cRightCurlyBracketKeyword_2; }
+ }
+
+ public class StateMachineElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateMachine");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cStateMachineKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
+ private final Assignment cStatesAssignment_2_0 = (Assignment)cAlternatives_2.eContents().get(0);
+ private final RuleCall cStatesStateParserRuleCall_2_0_0 = (RuleCall)cStatesAssignment_2_0.eContents().get(0);
+ private final Assignment cTrPointsAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
+ private final RuleCall cTrPointsTrPointParserRuleCall_2_1_0 = (RuleCall)cTrPointsAssignment_2_1.eContents().get(0);
+ private final Assignment cChPointsAssignment_2_2 = (Assignment)cAlternatives_2.eContents().get(2);
+ private final RuleCall cChPointsChoicePointParserRuleCall_2_2_0 = (RuleCall)cChPointsAssignment_2_2.eContents().get(0);
+ private final Assignment cTransitionsAssignment_2_3 = (Assignment)cAlternatives_2.eContents().get(3);
+ private final RuleCall cTransitionsTransitionParserRuleCall_2_3_0 = (RuleCall)cTransitionsAssignment_2_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+
+ //StateMachine returns StateGraph:
+ // "StateMachine" "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
+ public ParserRule getRule() { return rule; }
+
+ //"StateMachine" "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}"
+ public Group getGroup() { return cGroup; }
+
+ //"StateMachine"
+ public Keyword getStateMachineKeyword_0() { return cStateMachineKeyword_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; }
+
+ //(states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+
+ public Alternatives getAlternatives_2() { return cAlternatives_2; }
+
+ //states+=State
+ public Assignment getStatesAssignment_2_0() { return cStatesAssignment_2_0; }
+
+ //State
+ public RuleCall getStatesStateParserRuleCall_2_0_0() { return cStatesStateParserRuleCall_2_0_0; }
+
+ //trPoints+=TrPoint
+ public Assignment getTrPointsAssignment_2_1() { return cTrPointsAssignment_2_1; }
+
+ //TrPoint
+ public RuleCall getTrPointsTrPointParserRuleCall_2_1_0() { return cTrPointsTrPointParserRuleCall_2_1_0; }
+
+ //chPoints+=ChoicePoint
+ public Assignment getChPointsAssignment_2_2() { return cChPointsAssignment_2_2; }
+
+ //ChoicePoint
+ public RuleCall getChPointsChoicePointParserRuleCall_2_2_0() { return cChPointsChoicePointParserRuleCall_2_2_0; }
+
+ //transitions+=Transition
+ public Assignment getTransitionsAssignment_2_3() { return cTransitionsAssignment_2_3; }
+
+ //Transition
+ public RuleCall getTransitionsTransitionParserRuleCall_2_3_0() { return cTransitionsTransitionParserRuleCall_2_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
+ }
+
+ public class BaseStateElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BaseState");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cStateKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Keyword cEntryKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
+ private final Assignment cEntryCodeAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
+ private final RuleCall cEntryCodeDetailCodeParserRuleCall_3_1_0 = (RuleCall)cEntryCodeAssignment_3_1.eContents().get(0);
+ private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
+ private final Keyword cExitKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
+ private final Assignment cExitCodeAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
+ private final RuleCall cExitCodeDetailCodeParserRuleCall_4_1_0 = (RuleCall)cExitCodeAssignment_4_1.eContents().get(0);
+ private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
+ private final Keyword cSubgraphKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
+ private final Assignment cSubgraphAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
+ private final RuleCall cSubgraphStateGraphParserRuleCall_5_1_0 = (RuleCall)cSubgraphAssignment_5_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+
+ //// entry and exit code have multiplicity many: in BaseState to be able to add derived class codes here,
+ //
+ //// in RefinedState to still have both features in the common base class State
+ //
+ //BaseState:
+ // "State" name=ID "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph" subgraph=StateGraph)?
+ // "}";
+ public ParserRule getRule() { return rule; }
+
+ //"State" name=ID "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph" subgraph=StateGraph)? "}"
+ public Group getGroup() { return cGroup; }
+
+ //"State"
+ public Keyword getStateKeyword_0() { return cStateKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //("entry" entryCode=DetailCode)?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //"entry"
+ public Keyword getEntryKeyword_3_0() { return cEntryKeyword_3_0; }
+
+ //entryCode=DetailCode
+ public Assignment getEntryCodeAssignment_3_1() { return cEntryCodeAssignment_3_1; }
+
+ //DetailCode
+ public RuleCall getEntryCodeDetailCodeParserRuleCall_3_1_0() { return cEntryCodeDetailCodeParserRuleCall_3_1_0; }
+
+ //("exit" exitCode=DetailCode)?
+ public Group getGroup_4() { return cGroup_4; }
+
+ //"exit"
+ public Keyword getExitKeyword_4_0() { return cExitKeyword_4_0; }
+
+ //exitCode=DetailCode
+ public Assignment getExitCodeAssignment_4_1() { return cExitCodeAssignment_4_1; }
+
+ //DetailCode
+ public RuleCall getExitCodeDetailCodeParserRuleCall_4_1_0() { return cExitCodeDetailCodeParserRuleCall_4_1_0; }
+
+ //("subgraph" subgraph=StateGraph)?
+ public Group getGroup_5() { return cGroup_5; }
+
+ //"subgraph"
+ public Keyword getSubgraphKeyword_5_0() { return cSubgraphKeyword_5_0; }
+
+ //subgraph=StateGraph
+ public Assignment getSubgraphAssignment_5_1() { return cSubgraphAssignment_5_1; }
+
+ //StateGraph
+ public RuleCall getSubgraphStateGraphParserRuleCall_5_1_0() { return cSubgraphStateGraphParserRuleCall_5_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
+ }
+
+ public class RefinedStateElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RefinedState");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cRefinedStateKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cBaseAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cBaseBaseStateCrossReference_1_0 = (CrossReference)cBaseAssignment_1.eContents().get(0);
+ private final RuleCall cBaseBaseStateFQNParserRuleCall_1_0_1 = (RuleCall)cBaseBaseStateCrossReference_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Keyword cEntryKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
+ private final Assignment cEntryCodeAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
+ private final RuleCall cEntryCodeDetailCodeParserRuleCall_3_1_0 = (RuleCall)cEntryCodeAssignment_3_1.eContents().get(0);
+ private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
+ private final Keyword cExitKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
+ private final Assignment cExitCodeAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
+ private final RuleCall cExitCodeDetailCodeParserRuleCall_4_1_0 = (RuleCall)cExitCodeAssignment_4_1.eContents().get(0);
+ private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
+ private final Keyword cSubgraphKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
+ private final Assignment cSubgraphAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
+ private final RuleCall cSubgraphStateGraphParserRuleCall_5_1_0 = (RuleCall)cSubgraphAssignment_5_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+
+ //RefinedState:
+ // "RefinedState" base=[BaseState|FQN] "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph"
+ // subgraph=StateGraph)? "}";
+ public ParserRule getRule() { return rule; }
+
+ //"RefinedState" base=[BaseState|FQN] "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph"
+ //subgraph=StateGraph)? "}"
+ public Group getGroup() { return cGroup; }
+
+ //"RefinedState"
+ public Keyword getRefinedStateKeyword_0() { return cRefinedStateKeyword_0; }
+
+ //base=[BaseState|FQN]
+ public Assignment getBaseAssignment_1() { return cBaseAssignment_1; }
+
+ //[BaseState|FQN]
+ public CrossReference getBaseBaseStateCrossReference_1_0() { return cBaseBaseStateCrossReference_1_0; }
+
+ //FQN
+ public RuleCall getBaseBaseStateFQNParserRuleCall_1_0_1() { return cBaseBaseStateFQNParserRuleCall_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //("entry" entryCode=DetailCode)?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //"entry"
+ public Keyword getEntryKeyword_3_0() { return cEntryKeyword_3_0; }
+
+ //entryCode=DetailCode
+ public Assignment getEntryCodeAssignment_3_1() { return cEntryCodeAssignment_3_1; }
+
+ //DetailCode
+ public RuleCall getEntryCodeDetailCodeParserRuleCall_3_1_0() { return cEntryCodeDetailCodeParserRuleCall_3_1_0; }
+
+ //("exit" exitCode=DetailCode)?
+ public Group getGroup_4() { return cGroup_4; }
+
+ //"exit"
+ public Keyword getExitKeyword_4_0() { return cExitKeyword_4_0; }
+
+ //exitCode=DetailCode
+ public Assignment getExitCodeAssignment_4_1() { return cExitCodeAssignment_4_1; }
+
+ //DetailCode
+ public RuleCall getExitCodeDetailCodeParserRuleCall_4_1_0() { return cExitCodeDetailCodeParserRuleCall_4_1_0; }
+
+ //("subgraph" subgraph=StateGraph)?
+ public Group getGroup_5() { return cGroup_5; }
+
+ //"subgraph"
+ public Keyword getSubgraphKeyword_5_0() { return cSubgraphKeyword_5_0; }
+
+ //subgraph=StateGraph
+ public Assignment getSubgraphAssignment_5_1() { return cSubgraphAssignment_5_1; }
+
+ //StateGraph
+ public RuleCall getSubgraphStateGraphParserRuleCall_5_1_0() { return cSubgraphStateGraphParserRuleCall_5_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
+ }
+
+ public class DetailCodeElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DetailCode");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cCommandsAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cCommandsSTRINGTerminalRuleCall_1_0 = (RuleCall)cCommandsAssignment_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+
+ //// TODOHRR: provide a means to call super class code (cf. ROOM p. 310f)
+ //
+ //// super() keyword or flag like in Trice
+ //
+ //DetailCode:
+ // "{" commands+=STRING+ "}";
+ public ParserRule getRule() { return rule; }
+
+ //"{" commands+=STRING+ "}"
+ public Group getGroup() { return cGroup; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
+
+ //commands+=STRING+
+ public Assignment getCommandsAssignment_1() { return cCommandsAssignment_1; }
+
+ //STRING
+ public RuleCall getCommandsSTRINGTerminalRuleCall_1_0() { return cCommandsSTRINGTerminalRuleCall_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_2() { return cRightCurlyBracketKeyword_2; }
+ }
+
+ public class TrPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TrPoint");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cTransitionPointParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cEntryPointParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cExitPointParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+
+ //TrPoint:
+ // TransitionPoint | EntryPoint | ExitPoint;
+ public ParserRule getRule() { return rule; }
+
+ //TransitionPoint | EntryPoint | ExitPoint
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //TransitionPoint
+ public RuleCall getTransitionPointParserRuleCall_0() { return cTransitionPointParserRuleCall_0; }
+
+ //EntryPoint
+ public RuleCall getEntryPointParserRuleCall_1() { return cEntryPointParserRuleCall_1; }
+
+ //ExitPoint
+ public RuleCall getExitPointParserRuleCall_2() { return cExitPointParserRuleCall_2; }
+ }
+
+ public class TransitionPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TransitionPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cHandlerAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final Keyword cHandlerHandlerKeyword_0_0 = (Keyword)cHandlerAssignment_0.eContents().get(0);
+ private final Keyword cTransitionPointKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
+
+ //TransitionPoint:
+ // handler?="handler"? "TransitionPoint" name=ID;
+ public ParserRule getRule() { return rule; }
+
+ //handler?="handler"? "TransitionPoint" name=ID
+ public Group getGroup() { return cGroup; }
+
+ //handler?="handler"?
+ public Assignment getHandlerAssignment_0() { return cHandlerAssignment_0; }
+
+ //"handler"
+ public Keyword getHandlerHandlerKeyword_0_0() { return cHandlerHandlerKeyword_0_0; }
+
+ //"TransitionPoint"
+ public Keyword getTransitionPointKeyword_1() { return cTransitionPointKeyword_1; }
+
+ //name=ID
+ public Assignment getNameAssignment_2() { return cNameAssignment_2; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
+ }
+
+ public class EntryPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EntryPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cEntryPointKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+
+ //EntryPoint:
+ // "EntryPoint" name=ID;
+ public ParserRule getRule() { return rule; }
+
+ //"EntryPoint" name=ID
+ public Group getGroup() { return cGroup; }
+
+ //"EntryPoint"
+ public Keyword getEntryPointKeyword_0() { return cEntryPointKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+ }
+
+ public class ExitPointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ExitPoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cExitPointKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+
+ //ExitPoint:
+ // "ExitPoint" name=ID;
+ public ParserRule getRule() { return rule; }
+
+ //"ExitPoint" name=ID
+ public Group getGroup() { return cGroup; }
+
+ //"ExitPoint"
+ public Keyword getExitPointKeyword_0() { return cExitPointKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+ }
+
+ public class ChoicePointElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ChoicePoint");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cChoicePointKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+
+ //ChoicePoint:
+ // "ChoicePoint" name=ID;
+ public ParserRule getRule() { return rule; }
+
+ //"ChoicePoint" name=ID
+ public Group getGroup() { return cGroup; }
+
+ //"ChoicePoint"
+ public Keyword getChoicePointKeyword_0() { return cChoicePointKeyword_0; }
+
+ //name=ID
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+ }
+
+ public class TransitionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Transition");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cInitialTransitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cNonInitialTransitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //Transition:
+ // InitialTransition | NonInitialTransition;
+ public ParserRule getRule() { return rule; }
+
+ //InitialTransition | NonInitialTransition
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //InitialTransition
+ public RuleCall getInitialTransitionParserRuleCall_0() { return cInitialTransitionParserRuleCall_0; }
+
+ //NonInitialTransition
+ public RuleCall getNonInitialTransitionParserRuleCall_1() { return cNonInitialTransitionParserRuleCall_1; }
+ }
+
+ public class NonInitialTransitionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "NonInitialTransition");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cTriggeredTransitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cContinuationTransitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cCPBranchTransitionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+
+ //NonInitialTransition:
+ // TriggeredTransition | ContinuationTransition | CPBranchTransition;
+ public ParserRule getRule() { return rule; }
+
+ //TriggeredTransition | ContinuationTransition | CPBranchTransition
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //TriggeredTransition
+ public RuleCall getTriggeredTransitionParserRuleCall_0() { return cTriggeredTransitionParserRuleCall_0; }
+
+ //ContinuationTransition
+ public RuleCall getContinuationTransitionParserRuleCall_1() { return cContinuationTransitionParserRuleCall_1; }
+
+ //CPBranchTransition
+ public RuleCall getCPBranchTransitionParserRuleCall_2() { return cCPBranchTransitionParserRuleCall_2; }
+ }
+
+ public class InitialTransitionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InitialTransition");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Keyword cInitialKeyword_3 = (Keyword)cGroup.eContents().get(3);
+ private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+ private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
+ private final Keyword cActionKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
+ private final Assignment cActionAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1);
+ private final RuleCall cActionDetailCodeParserRuleCall_7_1_0 = (RuleCall)cActionAssignment_7_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
+
+ //InitialTransition:
+ // "Transition" name=ID? ":" "initial" "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
+ public ParserRule getRule() { return rule; }
+
+ //"Transition" name=ID? ":" "initial" "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}"
+ public Group getGroup() { return cGroup; }
+
+ //"Transition"
+ public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
+
+ //name=ID?
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //"initial"
+ public Keyword getInitialKeyword_3() { return cInitialKeyword_3; }
+
+ //"->"
+ public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
+
+ //to=TransitionTerminal
+ public Assignment getToAssignment_5() { return cToAssignment_5; }
+
+ //TransitionTerminal
+ public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
+
+ //("action" action=DetailCode)?
+ public Group getGroup_7() { return cGroup_7; }
+
+ //"action"
+ public Keyword getActionKeyword_7_0() { return cActionKeyword_7_0; }
+
+ //action=DetailCode
+ public Assignment getActionAssignment_7_1() { return cActionAssignment_7_1; }
+
+ //DetailCode
+ public RuleCall getActionDetailCodeParserRuleCall_7_1_0() { return cActionDetailCodeParserRuleCall_7_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
+ }
+
+ public class ContinuationTransitionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ContinuationTransition");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cFromTransitionTerminalParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
+ private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+ private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
+ private final Keyword cActionKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
+ private final Assignment cActionAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1);
+ private final RuleCall cActionDetailCodeParserRuleCall_7_1_0 = (RuleCall)cActionAssignment_7_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
+
+ //ContinuationTransition:
+ // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
+ public ParserRule getRule() { return rule; }
+
+ //"Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}"
+ public Group getGroup() { return cGroup; }
+
+ //"Transition"
+ public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
+
+ //name=ID?
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //from=TransitionTerminal
+ public Assignment getFromAssignment_3() { return cFromAssignment_3; }
+
+ //TransitionTerminal
+ public RuleCall getFromTransitionTerminalParserRuleCall_3_0() { return cFromTransitionTerminalParserRuleCall_3_0; }
+
+ //"->"
+ public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
+
+ //to=TransitionTerminal
+ public Assignment getToAssignment_5() { return cToAssignment_5; }
+
+ //TransitionTerminal
+ public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
+
+ //("action" action=DetailCode)?
+ public Group getGroup_7() { return cGroup_7; }
+
+ //"action"
+ public Keyword getActionKeyword_7_0() { return cActionKeyword_7_0; }
+
+ //action=DetailCode
+ public Assignment getActionAssignment_7_1() { return cActionAssignment_7_1; }
+
+ //DetailCode
+ public RuleCall getActionDetailCodeParserRuleCall_7_1_0() { return cActionDetailCodeParserRuleCall_7_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
+ }
+
+ public class TriggeredTransitionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TriggeredTransition");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cFromTransitionTerminalParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
+ private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+ private final Keyword cTriggersKeyword_7 = (Keyword)cGroup.eContents().get(7);
+ private final Keyword cLeftCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
+ private final Assignment cTriggersAssignment_9 = (Assignment)cGroup.eContents().get(9);
+ private final RuleCall cTriggersTriggerParserRuleCall_9_0 = (RuleCall)cTriggersAssignment_9.eContents().get(0);
+ private final Group cGroup_10 = (Group)cGroup.eContents().get(10);
+ private final Keyword cOrKeyword_10_0 = (Keyword)cGroup_10.eContents().get(0);
+ private final Assignment cTriggersAssignment_10_1 = (Assignment)cGroup_10.eContents().get(1);
+ private final RuleCall cTriggersTriggerParserRuleCall_10_1_0 = (RuleCall)cTriggersAssignment_10_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
+ private final Group cGroup_12 = (Group)cGroup.eContents().get(12);
+ private final Keyword cActionKeyword_12_0 = (Keyword)cGroup_12.eContents().get(0);
+ private final Assignment cActionAssignment_12_1 = (Assignment)cGroup_12.eContents().get(1);
+ private final RuleCall cActionDetailCodeParserRuleCall_12_1_0 = (RuleCall)cActionAssignment_12_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_13 = (Keyword)cGroup.eContents().get(13);
+
+ //TriggeredTransition:
+ // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "triggers" "{" triggers+=Trigger
+ // ("or" triggers+=Trigger)* "}" ("action" action=DetailCode)? "}";
+ public ParserRule getRule() { return rule; }
+
+ //"Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "triggers" "{" triggers+=Trigger ("or"
+ //triggers+=Trigger)* "}" ("action" action=DetailCode)? "}"
+ public Group getGroup() { return cGroup; }
+
+ //"Transition"
+ public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
+
+ //name=ID?
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //from=TransitionTerminal
+ public Assignment getFromAssignment_3() { return cFromAssignment_3; }
+
+ //TransitionTerminal
+ public RuleCall getFromTransitionTerminalParserRuleCall_3_0() { return cFromTransitionTerminalParserRuleCall_3_0; }
+
+ //"->"
+ public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
+
+ //to=TransitionTerminal
+ public Assignment getToAssignment_5() { return cToAssignment_5; }
+
+ //TransitionTerminal
+ public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
+
+ //"triggers"
+ public Keyword getTriggersKeyword_7() { return cTriggersKeyword_7; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_8() { return cLeftCurlyBracketKeyword_8; }
+
+ //triggers+=Trigger
+ public Assignment getTriggersAssignment_9() { return cTriggersAssignment_9; }
+
+ //Trigger
+ public RuleCall getTriggersTriggerParserRuleCall_9_0() { return cTriggersTriggerParserRuleCall_9_0; }
+
+ //("or" triggers+=Trigger)*
+ public Group getGroup_10() { return cGroup_10; }
+
+ //"or"
+ public Keyword getOrKeyword_10_0() { return cOrKeyword_10_0; }
+
+ //triggers+=Trigger
+ public Assignment getTriggersAssignment_10_1() { return cTriggersAssignment_10_1; }
+
+ //Trigger
+ public RuleCall getTriggersTriggerParserRuleCall_10_1_0() { return cTriggersTriggerParserRuleCall_10_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_11() { return cRightCurlyBracketKeyword_11; }
+
+ //("action" action=DetailCode)?
+ public Group getGroup_12() { return cGroup_12; }
+
+ //"action"
+ public Keyword getActionKeyword_12_0() { return cActionKeyword_12_0; }
+
+ //action=DetailCode
+ public Assignment getActionAssignment_12_1() { return cActionAssignment_12_1; }
+
+ //DetailCode
+ public RuleCall getActionDetailCodeParserRuleCall_12_1_0() { return cActionDetailCodeParserRuleCall_12_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_13() { return cRightCurlyBracketKeyword_13; }
+ }
+
+ public class CPBranchTransitionElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "CPBranchTransition");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cTransitionKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
+ private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cFromTransitionTerminalParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
+ private final Keyword cHyphenMinusGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final Assignment cToAssignment_5 = (Assignment)cGroup.eContents().get(5);
+ private final RuleCall cToTransitionTerminalParserRuleCall_5_0 = (RuleCall)cToAssignment_5.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+ private final Keyword cCondKeyword_7 = (Keyword)cGroup.eContents().get(7);
+ private final Assignment cConditionAssignment_8 = (Assignment)cGroup.eContents().get(8);
+ private final RuleCall cConditionDetailCodeParserRuleCall_8_0 = (RuleCall)cConditionAssignment_8.eContents().get(0);
+ private final Group cGroup_9 = (Group)cGroup.eContents().get(9);
+ private final Keyword cActionKeyword_9_0 = (Keyword)cGroup_9.eContents().get(0);
+ private final Assignment cActionAssignment_9_1 = (Assignment)cGroup_9.eContents().get(1);
+ private final RuleCall cActionDetailCodeParserRuleCall_9_1_0 = (RuleCall)cActionAssignment_9_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_10 = (Keyword)cGroup.eContents().get(10);
+
+ //CPBranchTransition:
+ // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "cond" condition=DetailCode ("action"
+ // action=DetailCode)? "}";
+ public ParserRule getRule() { return rule; }
+
+ //"Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "cond" condition=DetailCode ("action"
+ //action=DetailCode)? "}"
+ public Group getGroup() { return cGroup; }
+
+ //"Transition"
+ public Keyword getTransitionKeyword_0() { return cTransitionKeyword_0; }
+
+ //name=ID?
+ public Assignment getNameAssignment_1() { return cNameAssignment_1; }
+
+ //ID
+ public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
+
+ //":"
+ public Keyword getColonKeyword_2() { return cColonKeyword_2; }
+
+ //from=TransitionTerminal
+ public Assignment getFromAssignment_3() { return cFromAssignment_3; }
+
+ //TransitionTerminal
+ public RuleCall getFromTransitionTerminalParserRuleCall_3_0() { return cFromTransitionTerminalParserRuleCall_3_0; }
+
+ //"->"
+ public Keyword getHyphenMinusGreaterThanSignKeyword_4() { return cHyphenMinusGreaterThanSignKeyword_4; }
+
+ //to=TransitionTerminal
+ public Assignment getToAssignment_5() { return cToAssignment_5; }
+
+ //TransitionTerminal
+ public RuleCall getToTransitionTerminalParserRuleCall_5_0() { return cToTransitionTerminalParserRuleCall_5_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
+
+ //"cond"
+ public Keyword getCondKeyword_7() { return cCondKeyword_7; }
+
+ //condition=DetailCode
+ public Assignment getConditionAssignment_8() { return cConditionAssignment_8; }
+
+ //DetailCode
+ public RuleCall getConditionDetailCodeParserRuleCall_8_0() { return cConditionDetailCodeParserRuleCall_8_0; }
+
+ //("action" action=DetailCode)?
+ public Group getGroup_9() { return cGroup_9; }
+
+ //"action"
+ public Keyword getActionKeyword_9_0() { return cActionKeyword_9_0; }
+
+ //action=DetailCode
+ public Assignment getActionAssignment_9_1() { return cActionAssignment_9_1; }
+
+ //DetailCode
+ public RuleCall getActionDetailCodeParserRuleCall_9_1_0() { return cActionDetailCodeParserRuleCall_9_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_10() { return cRightCurlyBracketKeyword_10; }
+ }
+
+ public class TransitionTerminalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TransitionTerminal");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cStateTerminalParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cTrPointTerminalParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cSubStateTrPointTerminalParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+ private final RuleCall cChoicepointTerminalParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
+
+ //TransitionTerminal:
+ // StateTerminal | TrPointTerminal | SubStateTrPointTerminal | ChoicepointTerminal;
+ public ParserRule getRule() { return rule; }
+
+ //StateTerminal | TrPointTerminal | SubStateTrPointTerminal | ChoicepointTerminal
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //StateTerminal
+ public RuleCall getStateTerminalParserRuleCall_0() { return cStateTerminalParserRuleCall_0; }
+
+ //TrPointTerminal
+ public RuleCall getTrPointTerminalParserRuleCall_1() { return cTrPointTerminalParserRuleCall_1; }
+
+ //SubStateTrPointTerminal
+ public RuleCall getSubStateTrPointTerminalParserRuleCall_2() { return cSubStateTrPointTerminalParserRuleCall_2; }
+
+ //ChoicepointTerminal
+ public RuleCall getChoicepointTerminalParserRuleCall_3() { return cChoicepointTerminalParserRuleCall_3; }
+ }
+
+ public class StateTerminalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StateTerminal");
+ private final Assignment cStateAssignment = (Assignment)rule.eContents().get(1);
+ private final CrossReference cStateBaseStateCrossReference_0 = (CrossReference)cStateAssignment.eContents().get(0);
+ private final RuleCall cStateBaseStateIDTerminalRuleCall_0_1 = (RuleCall)cStateBaseStateCrossReference_0.eContents().get(1);
+
+ //StateTerminal:
+ // state=[BaseState];
+ public ParserRule getRule() { return rule; }
+
+ //state=[BaseState]
+ public Assignment getStateAssignment() { return cStateAssignment; }
+
+ //[BaseState]
+ public CrossReference getStateBaseStateCrossReference_0() { return cStateBaseStateCrossReference_0; }
+
+ //ID
+ public RuleCall getStateBaseStateIDTerminalRuleCall_0_1() { return cStateBaseStateIDTerminalRuleCall_0_1; }
+ }
+
+ public class TrPointTerminalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TrPointTerminal");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cMyKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cTrPointAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cTrPointTrPointCrossReference_1_0 = (CrossReference)cTrPointAssignment_1.eContents().get(0);
+ private final RuleCall cTrPointTrPointIDTerminalRuleCall_1_0_1 = (RuleCall)cTrPointTrPointCrossReference_1_0.eContents().get(1);
+
+ //TrPointTerminal:
+ // "my" trPoint=[TrPoint];
+ public ParserRule getRule() { return rule; }
+
+ //"my" trPoint=[TrPoint]
+ public Group getGroup() { return cGroup; }
+
+ //"my"
+ public Keyword getMyKeyword_0() { return cMyKeyword_0; }
+
+ //trPoint=[TrPoint]
+ public Assignment getTrPointAssignment_1() { return cTrPointAssignment_1; }
+
+ //[TrPoint]
+ public CrossReference getTrPointTrPointCrossReference_1_0() { return cTrPointTrPointCrossReference_1_0; }
+
+ //ID
+ public RuleCall getTrPointTrPointIDTerminalRuleCall_1_0_1() { return cTrPointTrPointIDTerminalRuleCall_1_0_1; }
+ }
+
+ public class SubStateTrPointTerminalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubStateTrPointTerminal");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cTrPointAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final CrossReference cTrPointTrPointCrossReference_0_0 = (CrossReference)cTrPointAssignment_0.eContents().get(0);
+ private final RuleCall cTrPointTrPointIDTerminalRuleCall_0_0_1 = (RuleCall)cTrPointTrPointCrossReference_0_0.eContents().get(1);
+ private final Keyword cOfKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cStateAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final CrossReference cStateBaseStateCrossReference_2_0 = (CrossReference)cStateAssignment_2.eContents().get(0);
+ private final RuleCall cStateBaseStateIDTerminalRuleCall_2_0_1 = (RuleCall)cStateBaseStateCrossReference_2_0.eContents().get(1);
+
+ //SubStateTrPointTerminal:
+ // trPoint=[TrPoint] "of" state=[BaseState];
+ public ParserRule getRule() { return rule; }
+
+ //trPoint=[TrPoint] "of" state=[BaseState]
+ public Group getGroup() { return cGroup; }
+
+ //trPoint=[TrPoint]
+ public Assignment getTrPointAssignment_0() { return cTrPointAssignment_0; }
+
+ //[TrPoint]
+ public CrossReference getTrPointTrPointCrossReference_0_0() { return cTrPointTrPointCrossReference_0_0; }
+
+ //ID
+ public RuleCall getTrPointTrPointIDTerminalRuleCall_0_0_1() { return cTrPointTrPointIDTerminalRuleCall_0_0_1; }
+
+ //"of"
+ public Keyword getOfKeyword_1() { return cOfKeyword_1; }
+
+ //state=[BaseState]
+ public Assignment getStateAssignment_2() { return cStateAssignment_2; }
+
+ //[BaseState]
+ public CrossReference getStateBaseStateCrossReference_2_0() { return cStateBaseStateCrossReference_2_0; }
+
+ //ID
+ public RuleCall getStateBaseStateIDTerminalRuleCall_2_0_1() { return cStateBaseStateIDTerminalRuleCall_2_0_1; }
+ }
+
+ public class ChoicepointTerminalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ChoicepointTerminal");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cCpKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cCpAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cCpChoicePointCrossReference_1_0 = (CrossReference)cCpAssignment_1.eContents().get(0);
+ private final RuleCall cCpChoicePointIDTerminalRuleCall_1_0_1 = (RuleCall)cCpChoicePointCrossReference_1_0.eContents().get(1);
+
+ //ChoicepointTerminal:
+ // "cp" cp=[ChoicePoint];
+ public ParserRule getRule() { return rule; }
+
+ //"cp" cp=[ChoicePoint]
+ public Group getGroup() { return cGroup; }
+
+ //"cp"
+ public Keyword getCpKeyword_0() { return cCpKeyword_0; }
+
+ //cp=[ChoicePoint]
+ public Assignment getCpAssignment_1() { return cCpAssignment_1; }
+
+ //[ChoicePoint]
+ public CrossReference getCpChoicePointCrossReference_1_0() { return cCpChoicePointCrossReference_1_0; }
+
+ //ID
+ public RuleCall getCpChoicePointIDTerminalRuleCall_1_0_1() { return cCpChoicePointIDTerminalRuleCall_1_0_1; }
+ }
+
+ public class TriggerElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Trigger");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cLessThanSignKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cMsgFromIfPairsAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cMsgFromIfPairsMessageFromIfParserRuleCall_1_0 = (RuleCall)cMsgFromIfPairsAssignment_1.eContents().get(0);
+ private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
+ private final Keyword cVerticalLineKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
+ private final Assignment cMsgFromIfPairsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
+ private final RuleCall cMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0 = (RuleCall)cMsgFromIfPairsAssignment_2_1.eContents().get(0);
+ private final Assignment cGuardAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cGuardGuardParserRuleCall_3_0 = (RuleCall)cGuardAssignment_3.eContents().get(0);
+ private final Keyword cGreaterThanSignKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ ////TransitionSource: TransitionTerminal|ChoicePointCaseRef|ChoicePointDefaultRef;
+ //
+ ////TransitionSource: TransitionTerminal|ChoicePointRef;
+ //
+ ////TransitionDest: TransitionTerminal|ChoicePointRef;
+ //
+ ////ChoicePointCaseRef: 'cp' cp=[ChoicePoint|ID] 'case' case=[ChoicePointCase|ID];
+ //
+ ////ChoicePointDefaultRef: 'cp' cp=[ChoicePoint|ID] 'default';
+ //
+ ////ChoicePointRef: 'cp' cp=[ChoicePoint|ID];
+ //
+ //Trigger:
+ // "<" msgFromIfPairs+=MessageFromIf ("|" msgFromIfPairs+=MessageFromIf)* guard=Guard? ">";
+ public ParserRule getRule() { return rule; }
+
+ //"<" msgFromIfPairs+=MessageFromIf ("|" msgFromIfPairs+=MessageFromIf)* guard=Guard? ">"
+ public Group getGroup() { return cGroup; }
+
+ //"<"
+ public Keyword getLessThanSignKeyword_0() { return cLessThanSignKeyword_0; }
+
+ //msgFromIfPairs+=MessageFromIf
+ public Assignment getMsgFromIfPairsAssignment_1() { return cMsgFromIfPairsAssignment_1; }
+
+ //MessageFromIf
+ public RuleCall getMsgFromIfPairsMessageFromIfParserRuleCall_1_0() { return cMsgFromIfPairsMessageFromIfParserRuleCall_1_0; }
+
+ //("|" msgFromIfPairs+=MessageFromIf)*
+ public Group getGroup_2() { return cGroup_2; }
+
+ //"|"
+ public Keyword getVerticalLineKeyword_2_0() { return cVerticalLineKeyword_2_0; }
+
+ //msgFromIfPairs+=MessageFromIf
+ public Assignment getMsgFromIfPairsAssignment_2_1() { return cMsgFromIfPairsAssignment_2_1; }
+
+ //MessageFromIf
+ public RuleCall getMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0() { return cMsgFromIfPairsMessageFromIfParserRuleCall_2_1_0; }
+
+ //guard=Guard?
+ public Assignment getGuardAssignment_3() { return cGuardAssignment_3; }
+
+ //Guard
+ public RuleCall getGuardGuardParserRuleCall_3_0() { return cGuardGuardParserRuleCall_3_0; }
+
+ //">"
+ public Keyword getGreaterThanSignKeyword_4() { return cGreaterThanSignKeyword_4; }
+ }
+
+ public class MessageFromIfElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MessageFromIf");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cMessageAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final CrossReference cMessageMessageCrossReference_0_0 = (CrossReference)cMessageAssignment_0.eContents().get(0);
+ private final RuleCall cMessageMessageIDTerminalRuleCall_0_0_1 = (RuleCall)cMessageMessageCrossReference_0_0.eContents().get(1);
+ private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Assignment cFromAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final CrossReference cFromInterfaceItemCrossReference_2_0 = (CrossReference)cFromAssignment_2.eContents().get(0);
+ private final RuleCall cFromInterfaceItemIDTerminalRuleCall_2_0_1 = (RuleCall)cFromInterfaceItemCrossReference_2_0.eContents().get(1);
+
+ //MessageFromIf:
+ // message=[Message] ":" from=[InterfaceItem];
+ public ParserRule getRule() { return rule; }
+
+ //message=[Message] ":" from=[InterfaceItem]
+ public Group getGroup() { return cGroup; }
+
+ //message=[Message]
+ public Assignment getMessageAssignment_0() { return cMessageAssignment_0; }
+
+ //[Message]
+ public CrossReference getMessageMessageCrossReference_0_0() { return cMessageMessageCrossReference_0_0; }
+
+ //ID
+ public RuleCall getMessageMessageIDTerminalRuleCall_0_0_1() { return cMessageMessageIDTerminalRuleCall_0_0_1; }
+
+ //":"
+ public Keyword getColonKeyword_1() { return cColonKeyword_1; }
+
+ //from=[InterfaceItem]
+ public Assignment getFromAssignment_2() { return cFromAssignment_2; }
+
+ //[InterfaceItem]
+ public CrossReference getFromInterfaceItemCrossReference_2_0() { return cFromInterfaceItemCrossReference_2_0; }
+
+ //ID
+ public RuleCall getFromInterfaceItemIDTerminalRuleCall_2_0_1() { return cFromInterfaceItemIDTerminalRuleCall_2_0_1; }
+ }
+
+ public class GuardElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Guard");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cGuardKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cGuardAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cGuardDetailCodeParserRuleCall_1_0 = (RuleCall)cGuardAssignment_1.eContents().get(0);
+
+ //Guard:
+ // "guard" guard=DetailCode;
+ public ParserRule getRule() { return rule; }
+
+ //"guard" guard=DetailCode
+ public Group getGroup() { return cGroup; }
+
+ //"guard"
+ public Keyword getGuardKeyword_0() { return cGuardKeyword_0; }
+
+ //guard=DetailCode
+ public Assignment getGuardAssignment_1() { return cGuardAssignment_1; }
+
+ //DetailCode
+ public RuleCall getGuardDetailCodeParserRuleCall_1_0() { return cGuardDetailCodeParserRuleCall_1_0; }
+ }
+
+ public class ImportElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Import");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cImportedNamespaceAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cImportedNamespaceImportedFQNParserRuleCall_1_0 = (RuleCall)cImportedNamespaceAssignment_1.eContents().get(0);
+
+ //// **************************************************************
+ //
+ //// general
+ //
+ //Import:
+ // "import" importedNamespace=ImportedFQN;
+ public ParserRule getRule() { return rule; }
+
+ //"import" importedNamespace=ImportedFQN
+ public Group getGroup() { return cGroup; }
+
+ //"import"
+ public Keyword getImportKeyword_0() { return cImportKeyword_0; }
+
+ //importedNamespace=ImportedFQN
+ public Assignment getImportedNamespaceAssignment_1() { return cImportedNamespaceAssignment_1; }
+
+ //ImportedFQN
+ public RuleCall getImportedNamespaceImportedFQNParserRuleCall_1_0() { return cImportedNamespaceImportedFQNParserRuleCall_1_0; }
+ }
+
+ public class ImportedFQNElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ImportedFQN");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final RuleCall cFQNParserRuleCall_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 Keyword cAsteriskKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
+
+ //ImportedFQN:
+ // FQN ("." "*")?;
+ public ParserRule getRule() { return rule; }
+
+ //FQN ("." "*")?
+ public Group getGroup() { return cGroup; }
+
+ //FQN
+ public RuleCall getFQNParserRuleCall_0() { return cFQNParserRuleCall_0; }
+
+ //("." "*")?
+ public Group getGroup_1() { return cGroup_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
+
+ //"*"
+ public Keyword getAsteriskKeyword_1_1() { return cAsteriskKeyword_1_1; }
+ }
+
+ 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);
+
+ //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 PrimitiveTypeElements extends AbstractEnumRuleElementFinder {
+ private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "PrimitiveType");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final EnumLiteralDeclaration cVoidEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
+ private final Keyword cVoidVoidKeyword_0_0 = (Keyword)cVoidEnumLiteralDeclaration_0.eContents().get(0);
+ private final EnumLiteralDeclaration cInt8EnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
+ private final Keyword cInt8Int8Keyword_1_0 = (Keyword)cInt8EnumLiteralDeclaration_1.eContents().get(0);
+ private final EnumLiteralDeclaration cInt16EnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
+ private final Keyword cInt16Int16Keyword_2_0 = (Keyword)cInt16EnumLiteralDeclaration_2.eContents().get(0);
+ private final EnumLiteralDeclaration cInt32EnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3);
+ private final Keyword cInt32Int32Keyword_3_0 = (Keyword)cInt32EnumLiteralDeclaration_3.eContents().get(0);
+ private final EnumLiteralDeclaration cUint8EnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4);
+ private final Keyword cUint8Uint8Keyword_4_0 = (Keyword)cUint8EnumLiteralDeclaration_4.eContents().get(0);
+ private final EnumLiteralDeclaration cUint16EnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5);
+ private final Keyword cUint16Uint16Keyword_5_0 = (Keyword)cUint16EnumLiteralDeclaration_5.eContents().get(0);
+ private final EnumLiteralDeclaration cUint32EnumLiteralDeclaration_6 = (EnumLiteralDeclaration)cAlternatives.eContents().get(6);
+ private final Keyword cUint32Uint32Keyword_6_0 = (Keyword)cUint32EnumLiteralDeclaration_6.eContents().get(0);
+ private final EnumLiteralDeclaration cFloat32EnumLiteralDeclaration_7 = (EnumLiteralDeclaration)cAlternatives.eContents().get(7);
+ private final Keyword cFloat32Float32Keyword_7_0 = (Keyword)cFloat32EnumLiteralDeclaration_7.eContents().get(0);
+ private final EnumLiteralDeclaration cFloat64EnumLiteralDeclaration_8 = (EnumLiteralDeclaration)cAlternatives.eContents().get(8);
+ private final Keyword cFloat64Float64Keyword_8_0 = (Keyword)cFloat64EnumLiteralDeclaration_8.eContents().get(0);
+ private final EnumLiteralDeclaration cBooleanEnumLiteralDeclaration_9 = (EnumLiteralDeclaration)cAlternatives.eContents().get(9);
+ private final Keyword cBooleanBooleanKeyword_9_0 = (Keyword)cBooleanEnumLiteralDeclaration_9.eContents().get(0);
+ private final EnumLiteralDeclaration cStringEnumLiteralDeclaration_10 = (EnumLiteralDeclaration)cAlternatives.eContents().get(10);
+ private final Keyword cStringStringKeyword_10_0 = (Keyword)cStringEnumLiteralDeclaration_10.eContents().get(0);
+ private final EnumLiteralDeclaration cCharEnumLiteralDeclaration_11 = (EnumLiteralDeclaration)cAlternatives.eContents().get(11);
+ private final Keyword cCharCharKeyword_11_0 = (Keyword)cCharEnumLiteralDeclaration_11.eContents().get(0);
+
+ //// **************************************************************
+ //
+ //// data class
+ //
+ //// cf. decision DSL2: fixed size data types
+ //
+ //// convert appropriately for Java and issue an error if size not available
+ //
+ //enum PrimitiveType:
+ // void | int8 | int16 | int32 | uint8 | uint16 | uint32 | float32 | float64 | boolean | string | char;
+ public EnumRule getRule() { return rule; }
+
+ //void | int8 | int16 | int32 | uint8 | uint16 | uint32 | float32 | float64 | boolean | string | char
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //void
+ public EnumLiteralDeclaration getVoidEnumLiteralDeclaration_0() { return cVoidEnumLiteralDeclaration_0; }
+
+ //"void"
+ public Keyword getVoidVoidKeyword_0_0() { return cVoidVoidKeyword_0_0; }
+
+ //int8
+ public EnumLiteralDeclaration getInt8EnumLiteralDeclaration_1() { return cInt8EnumLiteralDeclaration_1; }
+
+ //"int8"
+ public Keyword getInt8Int8Keyword_1_0() { return cInt8Int8Keyword_1_0; }
+
+ //int16
+ public EnumLiteralDeclaration getInt16EnumLiteralDeclaration_2() { return cInt16EnumLiteralDeclaration_2; }
+
+ //"int16"
+ public Keyword getInt16Int16Keyword_2_0() { return cInt16Int16Keyword_2_0; }
+
+ //int32
+ public EnumLiteralDeclaration getInt32EnumLiteralDeclaration_3() { return cInt32EnumLiteralDeclaration_3; }
+
+ //"int32"
+ public Keyword getInt32Int32Keyword_3_0() { return cInt32Int32Keyword_3_0; }
+
+ //uint8
+ public EnumLiteralDeclaration getUint8EnumLiteralDeclaration_4() { return cUint8EnumLiteralDeclaration_4; }
+
+ //"uint8"
+ public Keyword getUint8Uint8Keyword_4_0() { return cUint8Uint8Keyword_4_0; }
+
+ //uint16
+ public EnumLiteralDeclaration getUint16EnumLiteralDeclaration_5() { return cUint16EnumLiteralDeclaration_5; }
+
+ //"uint16"
+ public Keyword getUint16Uint16Keyword_5_0() { return cUint16Uint16Keyword_5_0; }
+
+ //uint32
+ public EnumLiteralDeclaration getUint32EnumLiteralDeclaration_6() { return cUint32EnumLiteralDeclaration_6; }
+
+ //"uint32"
+ public Keyword getUint32Uint32Keyword_6_0() { return cUint32Uint32Keyword_6_0; }
+
+ //float32
+ public EnumLiteralDeclaration getFloat32EnumLiteralDeclaration_7() { return cFloat32EnumLiteralDeclaration_7; }
+
+ //"float32"
+ public Keyword getFloat32Float32Keyword_7_0() { return cFloat32Float32Keyword_7_0; }
+
+ //float64
+ public EnumLiteralDeclaration getFloat64EnumLiteralDeclaration_8() { return cFloat64EnumLiteralDeclaration_8; }
+
+ //"float64"
+ public Keyword getFloat64Float64Keyword_8_0() { return cFloat64Float64Keyword_8_0; }
+
+ //boolean
+ public EnumLiteralDeclaration getBooleanEnumLiteralDeclaration_9() { return cBooleanEnumLiteralDeclaration_9; }
+
+ //"boolean"
+ public Keyword getBooleanBooleanKeyword_9_0() { return cBooleanBooleanKeyword_9_0; }
+
+ //string
+ public EnumLiteralDeclaration getStringEnumLiteralDeclaration_10() { return cStringEnumLiteralDeclaration_10; }
+
+ //"string"
+ public Keyword getStringStringKeyword_10_0() { return cStringStringKeyword_10_0; }
+
+ //char
+ public EnumLiteralDeclaration getCharEnumLiteralDeclaration_11() { return cCharEnumLiteralDeclaration_11; }
+
+ //"char"
+ public Keyword getCharCharKeyword_11_0() { return cCharCharKeyword_11_0; }
+ }
+
+ private RoomModelElements pRoomModel;
+ private RoomClassElements pRoomClass;
+ private StructureClassElements pStructureClass;
+ private ActorContainerClassElements pActorContainerClass;
+ private PrimitiveTypeElements unknownRulePrimitiveType;
+ private TypedIDElements pTypedID;
+ private FreeTypedIDElements pFreeTypedID;
+ private TypeElements pType;
+ private FreeTypeElements pFreeType;
+ private DataClassElements pDataClass;
+ private AttributeElements pAttribute;
+ private OperationElements pOperation;
+ private ProtocolClassElements pProtocolClass;
+ private MessageElements pMessage;
+ private PortClassElements pPortClass;
+ private MessageHandlerElements pMessageHandler;
+ private ProtocolSemanticsElements pProtocolSemantics;
+ private SemanticsRuleElements pSemanticsRule;
+ private SemanticsInRuleElements pSemanticsInRule;
+ private SemanticsOutRuleElements pSemanticsOutRule;
+ private ActorClassElements pActorClass;
+ private InterfaceItemElements pInterfaceItem;
+ private PortElements pPort;
+ private ExternalPortElements pExternalPort;
+ private SAPRefElements pSAPRef;
+ private SPPRefElements pSPPRef;
+ private ServiceImplementationElements pServiceImplementation;
+ private LogicalSystemElements pLogicalSystem;
+ private ActorContainerRefElements pActorContainerRef;
+ private SubSystemRefElements pSubSystemRef;
+ private SubSystemClassElements pSubSystemClass;
+ private LogicalThreadElements pLogicalThread;
+ private ActorInstancePathElements pActorInstancePath;
+ private BindingElements pBinding;
+ private BindingEndPointElements pBindingEndPoint;
+ private LayerConnectionElements pLayerConnection;
+ private SAPointElements pSAPoint;
+ private RefSAPointElements pRefSAPoint;
+ private RelaySAPointElements pRelaySAPoint;
+ private SPPointElements pSPPoint;
+ private ActorRefElements pActorRef;
+ private StateGraphNodeElements pStateGraphNode;
+ private StateGraphItemElements pStateGraphItem;
+ private StateElements pState;
+ private StateGraphElements pStateGraph;
+ private StateMachineElements pStateMachine;
+ private BaseStateElements pBaseState;
+ private RefinedStateElements pRefinedState;
+ private DetailCodeElements pDetailCode;
+ private TrPointElements pTrPoint;
+ private TransitionPointElements pTransitionPoint;
+ private EntryPointElements pEntryPoint;
+ private ExitPointElements pExitPoint;
+ private ChoicePointElements pChoicePoint;
+ private TransitionElements pTransition;
+ private NonInitialTransitionElements pNonInitialTransition;
+ private InitialTransitionElements pInitialTransition;
+ private ContinuationTransitionElements pContinuationTransition;
+ private TriggeredTransitionElements pTriggeredTransition;
+ private CPBranchTransitionElements pCPBranchTransition;
+ private TransitionTerminalElements pTransitionTerminal;
+ private StateTerminalElements pStateTerminal;
+ private TrPointTerminalElements pTrPointTerminal;
+ private SubStateTrPointTerminalElements pSubStateTrPointTerminal;
+ private ChoicepointTerminalElements pChoicepointTerminal;
+ private TriggerElements pTrigger;
+ private MessageFromIfElements pMessageFromIf;
+ private GuardElements pGuard;
+ private ImportElements pImport;
+ private ImportedFQNElements pImportedFQN;
+ private FQNElements pFQN;
+
+ private final GrammarProvider grammarProvider;
+
+ private TerminalsGrammarAccess gaTerminals;
+
+ @Inject
+ public RoomGrammarAccess(GrammarProvider grammarProvider,
+ TerminalsGrammarAccess gaTerminals) {
+ this.grammarProvider = grammarProvider;
+ this.gaTerminals = gaTerminals;
+ }
+
+ public Grammar getGrammar() {
+ return grammarProvider.getGrammar(this);
+ }
+
+
+ public TerminalsGrammarAccess getTerminalsGrammarAccess() {
+ return gaTerminals;
+ }
+
+
+ //RoomModel:
+ // "RoomModel" name=FQN "{" imports+=Import* (dataClasses+=DataClass | protocolClasses+=ProtocolClass |
+ // actorClasses+=ActorClass | subSystemClasses+=SubSystemClass | systems+=LogicalSystem)+ "}";
+ public RoomModelElements getRoomModelAccess() {
+ return (pRoomModel != null) ? pRoomModel : (pRoomModel = new RoomModelElements());
+ }
+
+ public ParserRule getRoomModelRule() {
+ return getRoomModelAccess().getRule();
+ }
+
+ //RoomClass:
+ // DataClass | ProtocolClass | StructureClass;
+ public RoomClassElements getRoomClassAccess() {
+ return (pRoomClass != null) ? pRoomClass : (pRoomClass = new RoomClassElements());
+ }
+
+ public ParserRule getRoomClassRule() {
+ return getRoomClassAccess().getRule();
+ }
+
+ //StructureClass:
+ // ActorContainerClass | LogicalSystem;
+ public StructureClassElements getStructureClassAccess() {
+ return (pStructureClass != null) ? pStructureClass : (pStructureClass = new StructureClassElements());
+ }
+
+ public ParserRule getStructureClassRule() {
+ return getStructureClassAccess().getRule();
+ }
+
+ //ActorContainerClass:
+ // ActorClass | SubSystemClass;
+ public ActorContainerClassElements getActorContainerClassAccess() {
+ return (pActorContainerClass != null) ? pActorContainerClass : (pActorContainerClass = new ActorContainerClassElements());
+ }
+
+ public ParserRule getActorContainerClassRule() {
+ return getActorContainerClassAccess().getRule();
+ }
+
+ //// **************************************************************
+ //
+ //// data class
+ //
+ //// cf. decision DSL2: fixed size data types
+ //
+ //// convert appropriately for Java and issue an error if size not available
+ //
+ //enum PrimitiveType:
+ // void | int8 | int16 | int32 | uint8 | uint16 | uint32 | float32 | float64 | boolean | string | char;
+ public PrimitiveTypeElements getPrimitiveTypeAccess() {
+ return (unknownRulePrimitiveType != null) ? unknownRulePrimitiveType : (unknownRulePrimitiveType = new PrimitiveTypeElements());
+ }
+
+ public EnumRule getPrimitiveTypeRule() {
+ return getPrimitiveTypeAccess().getRule();
+ }
+
+ //TypedID:
+ // name=ID ":" type=Type;
+ public TypedIDElements getTypedIDAccess() {
+ return (pTypedID != null) ? pTypedID : (pTypedID = new TypedIDElements());
+ }
+
+ public ParserRule getTypedIDRule() {
+ return getTypedIDAccess().getRule();
+ }
+
+ //FreeTypedID:
+ // name=ID ":" type=FreeType;
+ public FreeTypedIDElements getFreeTypedIDAccess() {
+ return (pFreeTypedID != null) ? pFreeTypedID : (pFreeTypedID = new FreeTypedIDElements());
+ }
+
+ public ParserRule getFreeTypedIDRule() {
+ return getFreeTypedIDAccess().getRule();
+ }
+
+ //Type:
+ // prim=PrimitiveType | type=[DataClass|FQN];
+ public TypeElements getTypeAccess() {
+ return (pType != null) ? pType : (pType = new TypeElements());
+ }
+
+ public ParserRule getTypeRule() {
+ return getTypeAccess().getRule();
+ }
+
+ //FreeType:
+ // prim=PrimitiveType | type=ID;
+ public FreeTypeElements getFreeTypeAccess() {
+ return (pFreeType != null) ? pFreeType : (pFreeType = new FreeTypeElements());
+ }
+
+ public ParserRule getFreeTypeRule() {
+ return getFreeTypeAccess().getRule();
+ }
+
+ //// TODOHRR: define detail level language?
+ //
+ //DataClass:
+ // "DataClass" name=ID ("extends" base=[DataClass|FQN])? "{" imports+=Import* attributes+=Attribute+
+ // operations+=Operation* "}";
+ public DataClassElements getDataClassAccess() {
+ return (pDataClass != null) ? pDataClass : (pDataClass = new DataClassElements());
+ }
+
+ public ParserRule getDataClassRule() {
+ return getDataClassAccess().getRule();
+ }
+
+ //Attribute:
+ // "Attribute" name=ID ("[" size=INT "]")? ":" type=Type;
+ public AttributeElements getAttributeAccess() {
+ return (pAttribute != null) ? pAttribute : (pAttribute = new AttributeElements());
+ }
+
+ public ParserRule getAttributeRule() {
+ return getAttributeAccess().getRule();
+ }
+
+ //// TODOHRR: pass arguments and return value by value/reference
+ //
+ //Operation:
+ // "Operation" name=ID "(" (arguments+=FreeTypedID ("," arguments+=FreeTypedID)*)? ")" (":" returntype=FreeType)?
+ // detailCode=DetailCode;
+ public OperationElements getOperationAccess() {
+ return (pOperation != null) ? pOperation : (pOperation = new OperationElements());
+ }
+
+ public ParserRule getOperationRule() {
+ return getOperationAccess().getRule();
+ }
+
+ //// **************************************************************
+ //
+ //// protocol class
+ //
+ //ProtocolClass:
+ // "ProtocolClass" name=ID ("extends" base=[ProtocolClass|FQN])? "{" ("usercode1" userCode1=DetailCode)? ("usercode2"
+ // userCode2=DetailCode)? "incoming" "{" incomingMessages+=Message* "}" "outgoing" "{" outgoingMessages+=Message* "}"
+ // ("regular" "PortClass" regular=PortClass)? ("conjugate" "PortClass" conjugate=PortClass)? semantics=ProtocolSemantics?
+ // "}";
+ public ProtocolClassElements getProtocolClassAccess() {
+ return (pProtocolClass != null) ? pProtocolClass : (pProtocolClass = new ProtocolClassElements());
+ }
+
+ public ParserRule getProtocolClassRule() {
+ return getProtocolClassAccess().getRule();
+ }
+
+ //Message:
+ // "Message" name=ID "(" (arguments+=TypedID ("," arguments+=TypedID)*)? ")";
+ public MessageElements getMessageAccess() {
+ return (pMessage != null) ? pMessage : (pMessage = new MessageElements());
+ }
+
+ public ParserRule getMessageRule() {
+ return getMessageAccess().getRule();
+ }
+
+ //PortClass:
+ // "{" ("usercode" userCode=DetailCode)? (attributes+=Attribute | operations+=Operation | msgHandlers+=MessageHandler)+
+ // "}";
+ public PortClassElements getPortClassAccess() {
+ return (pPortClass != null) ? pPortClass : (pPortClass = new PortClassElements());
+ }
+
+ public ParserRule getPortClassRule() {
+ return getPortClassAccess().getRule();
+ }
+
+ //MessageHandler:
+ // "handle" msg=[Message] detailCode=DetailCode;
+ public MessageHandlerElements getMessageHandlerAccess() {
+ return (pMessageHandler != null) ? pMessageHandler : (pMessageHandler = new MessageHandlerElements());
+ }
+
+ public ParserRule getMessageHandlerRule() {
+ return getMessageHandlerAccess().getRule();
+ }
+
+ //ProtocolSemantics:
+ // "semantics" "{" rules+=SemanticsRule+ "}";
+ public ProtocolSemanticsElements getProtocolSemanticsAccess() {
+ return (pProtocolSemantics != null) ? pProtocolSemantics : (pProtocolSemantics = new ProtocolSemanticsElements());
+ }
+
+ public ParserRule getProtocolSemanticsRule() {
+ return getProtocolSemanticsAccess().getRule();
+ }
+
+ //SemanticsRule:
+ // SemanticsInRule | SemanticsOutRule;
+ public SemanticsRuleElements getSemanticsRuleAccess() {
+ return (pSemanticsRule != null) ? pSemanticsRule : (pSemanticsRule = new SemanticsRuleElements());
+ }
+
+ public ParserRule getSemanticsRuleRule() {
+ return getSemanticsRuleAccess().getRule();
+ }
+
+ //SemanticsInRule:
+ // "in" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
+ public SemanticsInRuleElements getSemanticsInRuleAccess() {
+ return (pSemanticsInRule != null) ? pSemanticsInRule : (pSemanticsInRule = new SemanticsInRuleElements());
+ }
+
+ public ParserRule getSemanticsInRuleRule() {
+ return getSemanticsInRuleAccess().getRule();
+ }
+
+ //SemanticsOutRule:
+ // "out" msg=[Message] "->" "{" followUps+=SemanticsRule* "}";
+ public SemanticsOutRuleElements getSemanticsOutRuleAccess() {
+ return (pSemanticsOutRule != null) ? pSemanticsOutRule : (pSemanticsOutRule = new SemanticsOutRuleElements());
+ }
+
+ public ParserRule getSemanticsOutRuleRule() {
+ return getSemanticsOutRuleAccess().getRule();
+ }
+
+ //// **************************************************************
+ //
+ //// actor class
+ //
+ //// some notes on ports
+ //
+ ////
+ //
+ //// in ROOM ports can be contained in the structure and/or the interface
+ //
+ //// p in s ==> internal end port
+ //
+ //// p in i ==> relay port
+ //
+ //// p in i and p in s ==> external end port
+ //
+ //// since double containment is not supported we decided to define external ports as reference to interface ports
+ //
+ //ActorClass:
+ // abstract?="abstract"? "ActorClass" name=ID ("extends" base=[ActorClass|FQN])? "{" ("Interface" "{" ifPorts+=Port*
+ // ifSPPs+=SPPRef* "}")? ("Structure" "{" ("usercode1" userCode1=DetailCode)? ("usercode2" userCode2=DetailCode)?
+ // (intPorts+=Port | extPorts+=ExternalPort)* serviceImplementations+=ServiceImplementation* strSAPs+=SAPRef*
+ // attributes+=Attribute* actorRefs+=ActorRef* bindings+=Binding* connections+=LayerConnection* "}")? ("Behavior" "{"
+ // operations+=Operation* stateMachine=StateMachine? "}")? "}";
+ public ActorClassElements getActorClassAccess() {
+ return (pActorClass != null) ? pActorClass : (pActorClass = new ActorClassElements());
+ }
+
+ public ParserRule getActorClassRule() {
+ return getActorClassAccess().getRule();
+ }
+
+ //InterfaceItem:
+ // Port | SAPRef | SPPRef;
+ public InterfaceItemElements getInterfaceItemAccess() {
+ return (pInterfaceItem != null) ? pInterfaceItem : (pInterfaceItem = new InterfaceItemElements());
+ }
+
+ public ParserRule getInterfaceItemRule() {
+ return getInterfaceItemAccess().getRule();
+ }
+
+ //Port:
+ // conjugated?="conjugated"? "Port" name=ID ("[" multiplicity=INT "]")? ":" protocol=[ProtocolClass|FQN];
+ public PortElements getPortAccess() {
+ return (pPort != null) ? pPort : (pPort = new PortElements());
+ }
+
+ public ParserRule getPortRule() {
+ return getPortAccess().getRule();
+ }
+
+ //ExternalPort:
+ // "external" "Port" ifport=[Port];
+ public ExternalPortElements getExternalPortAccess() {
+ return (pExternalPort != null) ? pExternalPort : (pExternalPort = new ExternalPortElements());
+ }
+
+ public ParserRule getExternalPortRule() {
+ return getExternalPortAccess().getRule();
+ }
+
+ //SAPRef: // we omitted the SAP type (Timing/Frame/Exception)
+ //
+ // "SAP" name=ID ":" protocol=[ProtocolClass|FQN];
+ public SAPRefElements getSAPRefAccess() {
+ return (pSAPRef != null) ? pSAPRef : (pSAPRef = new SAPRefElements());
+ }
+
+ public ParserRule getSAPRefRule() {
+ return getSAPRefAccess().getRule();
+ }
+
+ //SPPRef:
+ // "SPP" name=ID ":" protocol=[ProtocolClass|FQN];
+ public SPPRefElements getSPPRefAccess() {
+ return (pSPPRef != null) ? pSPPRef : (pSPPRef = new SPPRefElements());
+ }
+
+ public ParserRule getSPPRefRule() {
+ return getSPPRefAccess().getRule();
+ }
+
+ //ServiceImplementation:
+ // "ServiceImplementation" "of" spp=[SPPRef];
+ public ServiceImplementationElements getServiceImplementationAccess() {
+ return (pServiceImplementation != null) ? pServiceImplementation : (pServiceImplementation = new ServiceImplementationElements());
+ }
+
+ public ParserRule getServiceImplementationRule() {
+ return getServiceImplementationAccess().getRule();
+ }
+
+ //LogicalSystem:
+ // "LogicalSystem" name=ID "{" subSystems+=SubSystemRef+ bindings+=Binding* connections+=LayerConnection* "}";
+ public LogicalSystemElements getLogicalSystemAccess() {
+ return (pLogicalSystem != null) ? pLogicalSystem : (pLogicalSystem = new LogicalSystemElements());
+ }
+
+ public ParserRule getLogicalSystemRule() {
+ return getLogicalSystemAccess().getRule();
+ }
+
+ //ActorContainerRef:
+ // SubSystemRef | ActorRef;
+ public ActorContainerRefElements getActorContainerRefAccess() {
+ return (pActorContainerRef != null) ? pActorContainerRef : (pActorContainerRef = new ActorContainerRefElements());
+ }
+
+ public ParserRule getActorContainerRefRule() {
+ return getActorContainerRefAccess().getRule();
+ }
+
+ //SubSystemRef:
+ // "SubSystemRef" name=ID ":" type=[SubSystemClass|FQN];
+ public SubSystemRefElements getSubSystemRefAccess() {
+ return (pSubSystemRef != null) ? pSubSystemRef : (pSubSystemRef = new SubSystemRefElements());
+ }
+
+ public ParserRule getSubSystemRefRule() {
+ return getSubSystemRefAccess().getRule();
+ }
+
+ //SubSystemClass:
+ // "SubSystemClass" name=ID "{" relayPorts+=Port* ifSPPs+=SPPRef* actorRefs+=ActorRef+ bindings+=Binding*
+ // connections+=LayerConnection* threads+=LogicalThread* "}";
+ public SubSystemClassElements getSubSystemClassAccess() {
+ return (pSubSystemClass != null) ? pSubSystemClass : (pSubSystemClass = new SubSystemClassElements());
+ }
+
+ public ParserRule getSubSystemClassRule() {
+ return getSubSystemClassAccess().getRule();
+ }
+
+ //LogicalThread:
+ // "LogicalThread" name=ID "{" instances+=ActorInstancePath ("," instances+=ActorInstancePath)* "}";
+ public LogicalThreadElements getLogicalThreadAccess() {
+ return (pLogicalThread != null) ? pLogicalThread : (pLogicalThread = new LogicalThreadElements());
+ }
+
+ public ParserRule getLogicalThreadRule() {
+ return getLogicalThreadAccess().getRule();
+ }
+
+ //ActorInstancePath:
+ // segments+=ID ("." segments+=ID)*;
+ public ActorInstancePathElements getActorInstancePathAccess() {
+ return (pActorInstancePath != null) ? pActorInstancePath : (pActorInstancePath = new ActorInstancePathElements());
+ }
+
+ public ParserRule getActorInstancePathRule() {
+ return getActorInstancePathAccess().getRule();
+ }
+
+ //// TODOHRR: bindings for replicated ports
+ //
+ //// (1) declare several bindings
+ //
+ //// (2) use a notation with 1 to n bindings
+ //
+ //Binding:
+ // "Binding" endpoint1=BindingEndPoint "and" endpoint2=BindingEndPoint;
+ public BindingElements getBindingAccess() {
+ return (pBinding != null) ? pBinding : (pBinding = new BindingElements());
+ }
+
+ public ParserRule getBindingRule() {
+ return getBindingAccess().getRule();
+ }
+
+ //BindingEndPoint:
+ // (actorRef=[ActorContainerRef] ".")? port=[Port];
+ public BindingEndPointElements getBindingEndPointAccess() {
+ return (pBindingEndPoint != null) ? pBindingEndPoint : (pBindingEndPoint = new BindingEndPointElements());
+ }
+
+ public ParserRule getBindingEndPointRule() {
+ return getBindingEndPointAccess().getRule();
+ }
+
+ //LayerConnection:
+ // "LayerConnection" from=SAPoint "satisfied_by" to=SPPoint;
+ public LayerConnectionElements getLayerConnectionAccess() {
+ return (pLayerConnection != null) ? pLayerConnection : (pLayerConnection = new LayerConnectionElements());
+ }
+
+ public ParserRule getLayerConnectionRule() {
+ return getLayerConnectionAccess().getRule();
+ }
+
+ //SAPoint:
+ // RefSAPoint | RelaySAPoint;
+ public SAPointElements getSAPointAccess() {
+ return (pSAPoint != null) ? pSAPoint : (pSAPoint = new SAPointElements());
+ }
+
+ public ParserRule getSAPointRule() {
+ return getSAPointAccess().getRule();
+ }
+
+ //RefSAPoint: // satisfies a sub actor
+ //
+ // "ref" ref=[ActorContainerRef];
+ public RefSAPointElements getRefSAPointAccess() {
+ return (pRefSAPoint != null) ? pRefSAPoint : (pRefSAPoint = new RefSAPointElements());
+ }
+
+ public ParserRule getRefSAPointRule() {
+ return getRefSAPointAccess().getRule();
+ }
+
+ //RelaySAPoint: // relays from own interface
+ //
+ // "relay_sap" relay=[SPPRef];
+ public RelaySAPointElements getRelaySAPointAccess() {
+ return (pRelaySAPoint != null) ? pRelaySAPoint : (pRelaySAPoint = new RelaySAPointElements());
+ }
+
+ public ParserRule getRelaySAPointRule() {
+ return getRelaySAPointAccess().getRule();
+ }
+
+ //SPPoint:
+ // ref=[ActorContainerRef] "." service=[SPPRef];
+ public SPPointElements getSPPointAccess() {
+ return (pSPPoint != null) ? pSPPoint : (pSPPoint = new SPPointElements());
+ }
+
+ public ParserRule getSPPointRule() {
+ return getSPPointAccess().getRule();
+ }
+
+ //// TODOHRR: support replicated actors
+ //
+ //ActorRef:
+ // "ActorRef" name=ID ":" type=[ActorClass|FQN];
+ public ActorRefElements getActorRefAccess() {
+ return (pActorRef != null) ? pActorRef : (pActorRef = new ActorRefElements());
+ }
+
+ public ParserRule getActorRefRule() {
+ return getActorRefAccess().getRule();
+ }
+
+ //// **************************************************************
+ //
+ //// state machine
+ //
+ //StateGraphNode:
+ // State | ChoicePoint | TrPoint;
+ public StateGraphNodeElements getStateGraphNodeAccess() {
+ return (pStateGraphNode != null) ? pStateGraphNode : (pStateGraphNode = new StateGraphNodeElements());
+ }
+
+ public ParserRule getStateGraphNodeRule() {
+ return getStateGraphNodeAccess().getRule();
+ }
+
+ //StateGraphItem:
+ // StateGraphNode | Transition;
+ public StateGraphItemElements getStateGraphItemAccess() {
+ return (pStateGraphItem != null) ? pStateGraphItem : (pStateGraphItem = new StateGraphItemElements());
+ }
+
+ public ParserRule getStateGraphItemRule() {
+ return getStateGraphItemAccess().getRule();
+ }
+
+ //State:
+ // BaseState | RefinedState;
+ public StateElements getStateAccess() {
+ return (pState != null) ? pState : (pState = new StateElements());
+ }
+
+ public ParserRule getStateRule() {
+ return getStateAccess().getRule();
+ }
+
+ //StateGraph:
+ // "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
+ public StateGraphElements getStateGraphAccess() {
+ return (pStateGraph != null) ? pStateGraph : (pStateGraph = new StateGraphElements());
+ }
+
+ public ParserRule getStateGraphRule() {
+ return getStateGraphAccess().getRule();
+ }
+
+ //StateMachine returns StateGraph:
+ // "StateMachine" "{" (states+=State | trPoints+=TrPoint | chPoints+=ChoicePoint | transitions+=Transition)+ "}";
+ public StateMachineElements getStateMachineAccess() {
+ return (pStateMachine != null) ? pStateMachine : (pStateMachine = new StateMachineElements());
+ }
+
+ public ParserRule getStateMachineRule() {
+ return getStateMachineAccess().getRule();
+ }
+
+ //// entry and exit code have multiplicity many: in BaseState to be able to add derived class codes here,
+ //
+ //// in RefinedState to still have both features in the common base class State
+ //
+ //BaseState:
+ // "State" name=ID "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph" subgraph=StateGraph)?
+ // "}";
+ public BaseStateElements getBaseStateAccess() {
+ return (pBaseState != null) ? pBaseState : (pBaseState = new BaseStateElements());
+ }
+
+ public ParserRule getBaseStateRule() {
+ return getBaseStateAccess().getRule();
+ }
+
+ //RefinedState:
+ // "RefinedState" base=[BaseState|FQN] "{" ("entry" entryCode=DetailCode)? ("exit" exitCode=DetailCode)? ("subgraph"
+ // subgraph=StateGraph)? "}";
+ public RefinedStateElements getRefinedStateAccess() {
+ return (pRefinedState != null) ? pRefinedState : (pRefinedState = new RefinedStateElements());
+ }
+
+ public ParserRule getRefinedStateRule() {
+ return getRefinedStateAccess().getRule();
+ }
+
+ //// TODOHRR: provide a means to call super class code (cf. ROOM p. 310f)
+ //
+ //// super() keyword or flag like in Trice
+ //
+ //DetailCode:
+ // "{" commands+=STRING+ "}";
+ public DetailCodeElements getDetailCodeAccess() {
+ return (pDetailCode != null) ? pDetailCode : (pDetailCode = new DetailCodeElements());
+ }
+
+ public ParserRule getDetailCodeRule() {
+ return getDetailCodeAccess().getRule();
+ }
+
+ //TrPoint:
+ // TransitionPoint | EntryPoint | ExitPoint;
+ public TrPointElements getTrPointAccess() {
+ return (pTrPoint != null) ? pTrPoint : (pTrPoint = new TrPointElements());
+ }
+
+ public ParserRule getTrPointRule() {
+ return getTrPointAccess().getRule();
+ }
+
+ //TransitionPoint:
+ // handler?="handler"? "TransitionPoint" name=ID;
+ public TransitionPointElements getTransitionPointAccess() {
+ return (pTransitionPoint != null) ? pTransitionPoint : (pTransitionPoint = new TransitionPointElements());
+ }
+
+ public ParserRule getTransitionPointRule() {
+ return getTransitionPointAccess().getRule();
+ }
+
+ //EntryPoint:
+ // "EntryPoint" name=ID;
+ public EntryPointElements getEntryPointAccess() {
+ return (pEntryPoint != null) ? pEntryPoint : (pEntryPoint = new EntryPointElements());
+ }
+
+ public ParserRule getEntryPointRule() {
+ return getEntryPointAccess().getRule();
+ }
+
+ //ExitPoint:
+ // "ExitPoint" name=ID;
+ public ExitPointElements getExitPointAccess() {
+ return (pExitPoint != null) ? pExitPoint : (pExitPoint = new ExitPointElements());
+ }
+
+ public ParserRule getExitPointRule() {
+ return getExitPointAccess().getRule();
+ }
+
+ //ChoicePoint:
+ // "ChoicePoint" name=ID;
+ public ChoicePointElements getChoicePointAccess() {
+ return (pChoicePoint != null) ? pChoicePoint : (pChoicePoint = new ChoicePointElements());
+ }
+
+ public ParserRule getChoicePointRule() {
+ return getChoicePointAccess().getRule();
+ }
+
+ //Transition:
+ // InitialTransition | NonInitialTransition;
+ public TransitionElements getTransitionAccess() {
+ return (pTransition != null) ? pTransition : (pTransition = new TransitionElements());
+ }
+
+ public ParserRule getTransitionRule() {
+ return getTransitionAccess().getRule();
+ }
+
+ //NonInitialTransition:
+ // TriggeredTransition | ContinuationTransition | CPBranchTransition;
+ public NonInitialTransitionElements getNonInitialTransitionAccess() {
+ return (pNonInitialTransition != null) ? pNonInitialTransition : (pNonInitialTransition = new NonInitialTransitionElements());
+ }
+
+ public ParserRule getNonInitialTransitionRule() {
+ return getNonInitialTransitionAccess().getRule();
+ }
+
+ //InitialTransition:
+ // "Transition" name=ID? ":" "initial" "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
+ public InitialTransitionElements getInitialTransitionAccess() {
+ return (pInitialTransition != null) ? pInitialTransition : (pInitialTransition = new InitialTransitionElements());
+ }
+
+ public ParserRule getInitialTransitionRule() {
+ return getInitialTransitionAccess().getRule();
+ }
+
+ //ContinuationTransition:
+ // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" ("action" action=DetailCode)? "}";
+ public ContinuationTransitionElements getContinuationTransitionAccess() {
+ return (pContinuationTransition != null) ? pContinuationTransition : (pContinuationTransition = new ContinuationTransitionElements());
+ }
+
+ public ParserRule getContinuationTransitionRule() {
+ return getContinuationTransitionAccess().getRule();
+ }
+
+ //TriggeredTransition:
+ // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "triggers" "{" triggers+=Trigger
+ // ("or" triggers+=Trigger)* "}" ("action" action=DetailCode)? "}";
+ public TriggeredTransitionElements getTriggeredTransitionAccess() {
+ return (pTriggeredTransition != null) ? pTriggeredTransition : (pTriggeredTransition = new TriggeredTransitionElements());
+ }
+
+ public ParserRule getTriggeredTransitionRule() {
+ return getTriggeredTransitionAccess().getRule();
+ }
+
+ //CPBranchTransition:
+ // "Transition" name=ID? ":" from=TransitionTerminal "->" to=TransitionTerminal "{" "cond" condition=DetailCode ("action"
+ // action=DetailCode)? "}";
+ public CPBranchTransitionElements getCPBranchTransitionAccess() {
+ return (pCPBranchTransition != null) ? pCPBranchTransition : (pCPBranchTransition = new CPBranchTransitionElements());
+ }
+
+ public ParserRule getCPBranchTransitionRule() {
+ return getCPBranchTransitionAccess().getRule();
+ }
+
+ //TransitionTerminal:
+ // StateTerminal | TrPointTerminal | SubStateTrPointTerminal | ChoicepointTerminal;
+ public TransitionTerminalElements getTransitionTerminalAccess() {
+ return (pTransitionTerminal != null) ? pTransitionTerminal : (pTransitionTerminal = new TransitionTerminalElements());
+ }
+
+ public ParserRule getTransitionTerminalRule() {
+ return getTransitionTerminalAccess().getRule();
+ }
+
+ //StateTerminal:
+ // state=[BaseState];
+ public StateTerminalElements getStateTerminalAccess() {
+ return (pStateTerminal != null) ? pStateTerminal : (pStateTerminal = new StateTerminalElements());
+ }
+
+ public ParserRule getStateTerminalRule() {
+ return getStateTerminalAccess().getRule();
+ }
+
+ //TrPointTerminal:
+ // "my" trPoint=[TrPoint];
+ public TrPointTerminalElements getTrPointTerminalAccess() {
+ return (pTrPointTerminal != null) ? pTrPointTerminal : (pTrPointTerminal = new TrPointTerminalElements());
+ }
+
+ public ParserRule getTrPointTerminalRule() {
+ return getTrPointTerminalAccess().getRule();
+ }
+
+ //SubStateTrPointTerminal:
+ // trPoint=[TrPoint] "of" state=[BaseState];
+ public SubStateTrPointTerminalElements getSubStateTrPointTerminalAccess() {
+ return (pSubStateTrPointTerminal != null) ? pSubStateTrPointTerminal : (pSubStateTrPointTerminal = new SubStateTrPointTerminalElements());
+ }
+
+ public ParserRule getSubStateTrPointTerminalRule() {
+ return getSubStateTrPointTerminalAccess().getRule();
+ }
+
+ //ChoicepointTerminal:
+ // "cp" cp=[ChoicePoint];
+ public ChoicepointTerminalElements getChoicepointTerminalAccess() {
+ return (pChoicepointTerminal != null) ? pChoicepointTerminal : (pChoicepointTerminal = new ChoicepointTerminalElements());
+ }
+
+ public ParserRule getChoicepointTerminalRule() {
+ return getChoicepointTerminalAccess().getRule();
+ }
+
+ ////TransitionSource: TransitionTerminal|ChoicePointCaseRef|ChoicePointDefaultRef;
+ //
+ ////TransitionSource: TransitionTerminal|ChoicePointRef;
+ //
+ ////TransitionDest: TransitionTerminal|ChoicePointRef;
+ //
+ ////ChoicePointCaseRef: 'cp' cp=[ChoicePoint|ID] 'case' case=[ChoicePointCase|ID];
+ //
+ ////ChoicePointDefaultRef: 'cp' cp=[ChoicePoint|ID] 'default';
+ //
+ ////ChoicePointRef: 'cp' cp=[ChoicePoint|ID];
+ //
+ //Trigger:
+ // "<" msgFromIfPairs+=MessageFromIf ("|" msgFromIfPairs+=MessageFromIf)* guard=Guard? ">";
+ public TriggerElements getTriggerAccess() {
+ return (pTrigger != null) ? pTrigger : (pTrigger = new TriggerElements());
+ }
+
+ public ParserRule getTriggerRule() {
+ return getTriggerAccess().getRule();
+ }
+
+ //MessageFromIf:
+ // message=[Message] ":" from=[InterfaceItem];
+ public MessageFromIfElements getMessageFromIfAccess() {
+ return (pMessageFromIf != null) ? pMessageFromIf : (pMessageFromIf = new MessageFromIfElements());
+ }
+
+ public ParserRule getMessageFromIfRule() {
+ return getMessageFromIfAccess().getRule();
+ }
+
+ //Guard:
+ // "guard" guard=DetailCode;
+ public GuardElements getGuardAccess() {
+ return (pGuard != null) ? pGuard : (pGuard = new GuardElements());
+ }
+
+ public ParserRule getGuardRule() {
+ return getGuardAccess().getRule();
+ }
+
+ //// **************************************************************
+ //
+ //// general
+ //
+ //Import:
+ // "import" importedNamespace=ImportedFQN;
+ public ImportElements getImportAccess() {
+ return (pImport != null) ? pImport : (pImport = new ImportElements());
+ }
+
+ public ParserRule getImportRule() {
+ return getImportAccess().getRule();
+ }
+
+ //ImportedFQN:
+ // FQN ("." "*")?;
+ public ImportedFQNElements getImportedFQNAccess() {
+ return (pImportedFQN != null) ? pImportedFQN : (pImportedFQN = new ImportedFQNElements());
+ }
+
+ public ParserRule getImportedFQNRule() {
+ return getImportedFQNAccess().getRule();
+ }
+
+ //FQN:
+ // ID ("." ID)*;
+ public FQNElements getFQNAccess() {
+ return (pFQN != null) ? pFQN : (pFQN = new FQNElements());
+ }
+
+ public ParserRule getFQNRule() {
+ return getFQNAccess().getRule();
+ }
+
+ //terminal ID:
+ // "^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
+ public TerminalRule getIDRule() {
+ return gaTerminals.getIDRule();
+ }
+
+ //terminal INT returns ecore::EInt:
+ // "0".."9"+;
+ public TerminalRule getINTRule() {
+ return gaTerminals.getINTRule();
+ }
+
+ //terminal STRING:
+ // "\"" ("\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\""))* "\"" | "\'" ("\\" ("b" | "t" |
+ // "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\'"))* "\'";
+ public TerminalRule getSTRINGRule() {
+ return gaTerminals.getSTRINGRule();
+ }
+
+ //terminal ML_COMMENT:
+ // "/ *"->"* /";
+ public TerminalRule getML_COMMENTRule() {
+ return gaTerminals.getML_COMMENTRule();
+ }
+
+ //terminal SL_COMMENT:
+ // "//" !("\n" | "\r")* ("\r"? "\n")?;
+ public TerminalRule getSL_COMMENTRule() {
+ return gaTerminals.getSL_COMMENTRule();
+ }
+
+ //terminal WS:
+ // (" " | "\t" | "\r" | "\n")+;
+ public TerminalRule getWSRule() {
+ return gaTerminals.getWSRule();
+ }
+
+ //terminal ANY_OTHER:
+ // .;
+ public TerminalRule getANY_OTHERRule() {
+ return gaTerminals.getANY_OTHERRule();
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/validation/AbstractRoomJavaValidator.java b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/validation/AbstractRoomJavaValidator.java
index ebb459cf5..099dc4cf1 100644
--- a/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/validation/AbstractRoomJavaValidator.java
+++ b/plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/validation/AbstractRoomJavaValidator.java
@@ -1,20 +1,20 @@
-package org.eclipse.etrice.core.validation;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.xtext.validation.AbstractDeclarativeValidator;
-import org.eclipse.xtext.validation.ComposedChecks;
-
-@ComposedChecks(validators= {org.eclipse.xtext.validation.ImportUriValidator.class, org.eclipse.xtext.validation.NamesAreUniqueValidator.class})
-public class AbstractRoomJavaValidator extends AbstractDeclarativeValidator {
-
- @Override
- protected List<EPackage> getEPackages() {
- List<EPackage> result = new ArrayList<EPackage>();
- result.add(org.eclipse.etrice.core.room.RoomPackage.eINSTANCE);
- return result;
- }
-
-}
+package org.eclipse.etrice.core.validation;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.xtext.validation.AbstractDeclarativeValidator;
+import org.eclipse.xtext.validation.ComposedChecks;
+
+@ComposedChecks(validators= {org.eclipse.xtext.validation.ImportUriValidator.class, org.eclipse.xtext.validation.NamesAreUniqueValidator.class})
+public class AbstractRoomJavaValidator extends AbstractDeclarativeValidator {
+
+ @Override
+ protected List<EPackage> getEPackages() {
+ List<EPackage> result = new ArrayList<EPackage>();
+ result.add(org.eclipse.etrice.core.room.RoomPackage.eINSTANCE);
+ return result;
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/etricegen/impl/ExpandedActorClassImpl.java b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/etricegen/impl/ExpandedActorClassImpl.java
index 821dd854e..c1e9c210c 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/etricegen/impl/ExpandedActorClassImpl.java
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/etricegen/impl/ExpandedActorClassImpl.java
@@ -353,6 +353,24 @@ public class ExpandedActorClassImpl extends ActorClassImpl implements ExpandedAc
}
}
}
+
+ /**
+ * @param sg
+ */
+ private void checkTransitionChains(StateGraph sg) {
+ for (Transition t : sg.getTransitions()) {
+ TransitionChain chain = getChain(t);
+ if (chain==null)
+ if (!getActorClass().isAbstract())
+ validationError("transition is not part of a transition chain (only allowed for abstract actor classes)", t);
+ }
+
+ // recursion
+ for (State s : sg.getStates()) {
+ if (s.getSubgraph()!=null)
+ checkTransitionChains(s.getSubgraph());
+ }
+ }
private void doChecks(StateGraph sg) {
@@ -775,6 +793,7 @@ public class ExpandedActorClassImpl extends ActorClassImpl implements ExpandedAc
findLeafStateTriggers(getStateMachine());
fillTriggerStringMap();
findTransitionChains(getStateMachine());
+ checkTransitionChains(getStateMachine());
}
/**
diff --git a/plugins/org.eclipse.etrice.ui.behavior/.gitignore b/plugins/org.eclipse.etrice.ui.behavior/.gitignore
index ba077a403..092357e47 100644
--- a/plugins/org.eclipse.etrice.ui.behavior/.gitignore
+++ b/plugins/org.eclipse.etrice.ui.behavior/.gitignore
@@ -1 +1 @@
-bin
+bin
diff --git a/plugins/org.eclipse.etrice.ui.behavior/META-INF/MANIFEST.MF b/plugins/org.eclipse.etrice.ui.behavior/META-INF/MANIFEST.MF
index 4766617bd..727ab4fd6 100644
--- a/plugins/org.eclipse.etrice.ui.behavior/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.etrice.ui.behavior/META-INF/MANIFEST.MF
@@ -1,26 +1,26 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Actor Behavior Diagram Editor
-Bundle-SymbolicName: org.eclipse.etrice.ui.behavior;singleton:=true
-Bundle-Version: 0.1.0
-Bundle-Activator: org.eclipse.etrice.ui.behavior.Activator
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.1.0",
- org.eclipse.etrice.ui.common;bundle-version="0.1.0",
- org.eclipse.graphiti;bundle-version="0.7.0",
- org.eclipse.graphiti.ui;bundle-version="0.7.0",
- org.eclipse.ui;bundle-version="3.6.0",
- org.eclipse.ui.ide;bundle-version="3.6.0",
- org.eclipse.ui.forms;bundle-version="3.5.0",
- org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.100",
- org.eclipse.jface.databinding;bundle-version="1.4.0",
- org.eclipse.core.databinding;bundle-version="1.3.100",
- org.eclipse.core.databinding.property;bundle-version="1.3.0",
- org.eclipse.core.databinding.beans;bundle-version="1.2.100",
- org.eclipse.gef;bundle-version="3.6.1",
- org.eclipse.emf.ecore.xmi;bundle-version="2.5.0",
- org.eclipse.emf.transaction;bundle-version="1.4.0"
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-Vendor: eTrice (Incubation)
-Export-Package: org.eclipse.etrice.ui.behavior,
- org.eclipse.etrice.ui.behavior.support;x-friends:="org.eclipse.etrice.ui.behavior.tests"
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Actor Behavior Diagram Editor
+Bundle-SymbolicName: org.eclipse.etrice.ui.behavior;singleton:=true
+Bundle-Version: 0.1.0
+Bundle-Activator: org.eclipse.etrice.ui.behavior.Activator
+Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.1.0",
+ org.eclipse.etrice.ui.common;bundle-version="0.1.0",
+ org.eclipse.graphiti;bundle-version="0.7.0",
+ org.eclipse.graphiti.ui;bundle-version="0.7.0",
+ org.eclipse.ui;bundle-version="3.6.0",
+ org.eclipse.ui.ide;bundle-version="3.6.0",
+ org.eclipse.ui.forms;bundle-version="3.5.0",
+ org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.100",
+ org.eclipse.jface.databinding;bundle-version="1.4.0",
+ org.eclipse.core.databinding;bundle-version="1.3.100",
+ org.eclipse.core.databinding.property;bundle-version="1.3.0",
+ org.eclipse.core.databinding.beans;bundle-version="1.2.100",
+ org.eclipse.gef;bundle-version="3.6.1",
+ org.eclipse.emf.ecore.xmi;bundle-version="2.5.0",
+ org.eclipse.emf.transaction;bundle-version="1.4.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Vendor: eTrice (Incubation)
+Export-Package: org.eclipse.etrice.ui.behavior,
+ org.eclipse.etrice.ui.behavior.support;x-friends:="org.eclipse.etrice.ui.behavior.tests"
diff --git a/plugins/org.eclipse.etrice.ui.common/.gitignore b/plugins/org.eclipse.etrice.ui.common/.gitignore
index ba077a403..092357e47 100644
--- a/plugins/org.eclipse.etrice.ui.common/.gitignore
+++ b/plugins/org.eclipse.etrice.ui.common/.gitignore
@@ -1 +1 @@
-bin
+bin
diff --git a/plugins/org.eclipse.etrice.ui.common/META-INF/MANIFEST.MF b/plugins/org.eclipse.etrice.ui.common/META-INF/MANIFEST.MF
index 5190fc7ef..31737b3c9 100644
--- a/plugins/org.eclipse.etrice.ui.common/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.etrice.ui.common/META-INF/MANIFEST.MF
@@ -1,23 +1,23 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: UI Common
-Bundle-SymbolicName: org.eclipse.etrice.ui.common
-Bundle-Version: 0.1.0
-Bundle-Vendor: eTrice (Incubation)
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.eclipse.core.databinding;bundle-version="1.3.100",
- org.eclipse.core.databinding.beans;bundle-version="1.2.100",
- org.eclipse.core.runtime;bundle-version="3.6.0",
- org.eclipse.emf.ecore;bundle-version="2.6.0",
- org.eclipse.jface.databinding;bundle-version="1.4.0",
- org.eclipse.jface;bundle-version="3.6.0",
- org.eclipse.ui.forms;bundle-version="3.5.0",
- org.eclipse.core.resources;bundle-version="3.6.0",
- org.eclipse.emf.transaction;bundle-version="1.4.0",
- org.eclipse.etrice.core.room;bundle-version="0.1.0",
- org.eclipse.graphiti;bundle-version="0.7.0",
- org.eclipse.ui;bundle-version="3.6.1",
- org.eclipse.ui.ide;bundle-version="3.6.0"
-Export-Package: org.eclipse.etrice.ui.common,
- org.eclipse.etrice.ui.common.dialogs,
- org.eclipse.etrice.ui.common.support
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: UI Common
+Bundle-SymbolicName: org.eclipse.etrice.ui.common
+Bundle-Version: 0.1.0
+Bundle-Vendor: eTrice (Incubation)
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Require-Bundle: org.eclipse.core.databinding;bundle-version="1.3.100",
+ org.eclipse.core.databinding.beans;bundle-version="1.2.100",
+ org.eclipse.core.runtime;bundle-version="3.6.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.jface.databinding;bundle-version="1.4.0",
+ org.eclipse.jface;bundle-version="3.6.0",
+ org.eclipse.ui.forms;bundle-version="3.5.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.emf.transaction;bundle-version="1.4.0",
+ org.eclipse.etrice.core.room;bundle-version="0.1.0",
+ org.eclipse.graphiti;bundle-version="0.7.0",
+ org.eclipse.ui;bundle-version="3.6.1",
+ org.eclipse.ui.ide;bundle-version="3.6.0"
+Export-Package: org.eclipse.etrice.ui.common,
+ org.eclipse.etrice.ui.common.dialogs,
+ org.eclipse.etrice.ui.common.support
diff --git a/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch b/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch
index a2fe47084..eb18abd9f 100644
--- a/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch
+++ b/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch
@@ -11,7 +11,7 @@
<booleanAttribute key="clearwslog" value="false"/>
<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
<booleanAttribute key="default" value="false"/>
-<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.example,org.eclipse.etrice.integration.tests,org.eclipse.etrice.ui.structure.tests"/>
+<stringAttribute key="deselected_workspace_plugins" value="de.protos.automation.io,org.eclipse.etrice.example.hrr,org.eclipse.graphiti.examples.tutorial,org.eclipse.etrice.ui.behavior.tests,org.eclipse.graphiti.examples.common,org.eclipse.etrice.example,org.eclipse.etrice.integration.tests,de.protos.automation.demos.fischertechnik"/>
<booleanAttribute key="includeOptional" value="true"/>
<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
@@ -35,8 +35,13 @@
<stringAttribute key="pde.version" value="3.3"/>
<stringAttribute key="product" value="org.eclipse.sdk.ide"/>
<booleanAttribute key="run_in_ui_thread" value="true"/>
+<<<<<<< HEAD
<stringAttribute key="selected_target_plugins" value="org.eclipse.xtend.typesystem.uml2.ui@default:default,org.eclipse.emf.compare.diff@default:default,org.eclipse.xtext.xbase.lib@default:default,com.google.collect@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.ant.launching@default:default,org.eclipse.jdt.apt.core@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.polarion.eclipse.team.svn.connector.javahl16@default:default,org.eclipse.emf.generic.editor@default:default,org.apache.log4j@default:default,org.eclipse.team.cvs.ui@default:default,org.eclipse.pde@default:default,org.apache.lucene.core@default:default,org.eclipse.platform.doc.user@default:default,org.eclipse.ant.core@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.pde.ui.templates@default:default,org.eclipse.ui.workbench.compatibility@default:false,org.eclipse.core.net@default:default,org.eclipse.ui.presentations.r21@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xpand.examples@default:default,org.eclipse.pde.doc.user@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.ui.console@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.platform.doc.isv@default:default,org.eclipse.core.variables@default:default,org.eclipse.xtext.doc@default:default,com.google.inject@default:default,org.eclipse.pde.core@default:default,org.apache.lucene.highlighter@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.ui.win32@default:false,org.eclipse.debug.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.xpand.ui@default:default,org.eclipse.xtend.ui@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.jface.text@default:default,org.eclipse.help.ui@default:default,org.eclipse.help@default:default,org.eclipse.pde.ui@default:default,org.eclipse.xtext.xtext.ui@default:default,org.eclipse.jdt.doc.isv@default:default,org.eclipse.graphiti.mm@default:default,org.antlr.runtime@default:default,org.eclipse.xtend.typesystem.xsd@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.equinox.util@default:default,org.eclipse.pde.launching@default:default,org.eclipse.ui.views@default:default,javax.xml@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.xpand.incremental@default:default,org.eclipse.equinox.registry@default:default,de.itemis.xtext.antlr@default:default,org.eclipse.xtend.typesystem.uml2@default:default,org.antlr.gen@default:default,org.apache.commons.cli@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.jface@default:default,org.eclipse.update.configurator@3:true,org.eclipse.uml2.uml.ecore.importer@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.pde.ds.ui@default:default,org.aopalliance@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.jdt.junit.runtime@default:default,org.polarion.eclipse.team.svn.connector.javahl16.win32@default:false,org.eclipse.pde.ds.core@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.help.appserver@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.xtend.typesystem.xsd.ui@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.rcp@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.ant.ui@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.cvs@default:default,org.eclipse.draw2d@default:default,org.eclipse.equinox.launcher@default:default,org.eclipse.debug.core@default:default,org.eclipse.xtext.generator@default:default,javax.servlet@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.xtend.profiler@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.xbase.ui@default:default,org.eclipse.team.cvs.ssh2@default:default,org.eclipse.emf.mwe.ui@default:default,org.eclipse.emf.mwe.doc@default:default,org.eclipse.platform@default:default,org.objectweb.asm@default:default,org.eclipse.core.net.win32.x86@default:false,org.eclipse.equinox.http.jetty@default:default,org.eclipse.core.jobs@default:default,org.eclipse.emf.edit@default:default,org.apache.lucene.analysis@default:default,org.eclipse.xpand.doc@default:default,org.eclipse.ui@default:default,org.eclipse.equinox.ds@1:true,org.eclipse.pde.build@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.graphiti@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.update.ui@default:default,org.eclipse.equinox.concurrent@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.uml2.uml.resources@default:default,org.eclipse.emf.compare@default:default,org.apache.lucene.queries@default:default,org.eclipse.core.filesystem@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.equinox.security.ui@default:default,org.apache.ant@default:default,org.eclipse.pde.api.tools.ui@default:default,org.eclipse.compare@default:default,org.eclipse.osgi@-1:true,org.eclipse.emf.databinding.edit@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.core.databinding.observable@default:default,org.apache.lucene.memory@default:default,org.eclipse.pde.ua.core@default:default,org.eclipse.xtext.util@default:default,org.eclipse.emf.mwe.utils@default:default,org.sat4j.pb@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.ui.browser@default:default,org.eclipse.pde.ua.ui@default:default,org.eclipse.jdt.doc.user@default:default,org.eclipse.xpand@default:default,org.eclipse.xtend.util.stdlib@default:default,org.hamcrest.core@default:default,org.eclipse.xsd@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.uml2.codegen.ecore@default:default,org.eclipse.xpand.activities@default:default,org.eclipse.jsch.core@default:default,org.eclipse.emf.mwe.ui.simpleEditor@default:default,org.eclipse.ui.intro@default:default,org.apache.lucene.snowball@default:default,org.eclipse.ui.workbench.texteditor@default:default,com.ibm.icu@default:default,org.eclipse.jdt.apt.ui@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.help.webapp@default:default,org.eclipse.sdk@default:default,org.mortbay.jetty.util@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.graphiti.ui@default:default,com.jcraft.jsch@default:default,org.sat4j.core@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.team.cvs.core@default:default,org.eclipse.emf.common@default:default,org.eclipse.osgi.util@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.event@default:default,org.eclipse.emf.ant@default:default,org.apache.commons.logging*1.0.4.v201005080501@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.update.scheduler@default:default,org.eclipse.ecf.provider.filetransfer.httpclient.ssl@default:false,org.antlr.generator@default:default,org.eclipse.xtend.check.ui@default:default,org.eclipse.team.svn.help@default:default,org.eclipse.core.boot@default:default,org.apache.lucene.misc@default:default,org.eclipse.ecf.provider.filetransfer.httpclient@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.uml2.uml@default:default,org.eclipse.core.filesystem.win32.x86@default:false,org.eclipse.team.core@default:default,org.eclipse.equinox.p2.repository@default:default,org.mortbay.jetty.server@default:default,org.eclipse.gef@default:default,org.eclipse.jdt@default:default,org.eclipse.swt@default:default,org.eclipse.search@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.codegen.ecore.ui@default:default,javax.servlet.jsp@default:default,org.eclipse.emf.mapping.ecore2xml@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.jdt.apt.pluggable.core@default:default,org.eclipse.equinox.launcher.win32.win32.x86@default:false,org.eclipse.equinox.p2.ui@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.xtend@default:default,org.apache.commons.httpclient@default:default,org.eclipse.compare.core@default:default,org.polarion.eclipse.team.svn.connector@default:default,org.eclipse.update.core.win32@default:false,org.eclipse.emf.common.ui@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.jdt.junit4.runtime@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.core.resources@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.help.base@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.pde.runtime@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.emf.mwe2.language.ui@default:default,org.apache.jasper@default:default,org.eclipse.graphiti.doc@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.xtend.shared.ui@default:default,org.eclipse.emf.validation@default:default,org.eclipse.equinox.p2.metadata.generator@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.equinox.security@default:default,org.apache.commons.lang@default:default,org.apache.lucene@default:default,org.eclipse.team.svn.core@default:default,org.eclipse.emf.compare.match@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.core.resources.win32.x86@default:false,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.text@default:default,org.eclipse.core.databinding@default:default,org.eclipse.team.svn@default:default,org.eclipse.xtext@default:default,org.eclipse.equinox.p2.ql@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.core.commands@default:default,org.eclipse.emf.importer@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.team.ui@default:default,org.eclipse.team.svn.ui@default:default,org.eclipse.emf.ecore.editor@default:default,org.apache.commons.codec@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.emf.databinding@default:default,org.eclipse.xtext.ui.ecore@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.osgi.services@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.pde.api.tools@default:default,org.apache.lucene.spellchecker@default:default,org.eclipse.ui.editors@default:default,org.junit4@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.ui.ide@default:default,org.junit*4.8.1.v4_8_1_v20100427-1100@default:default,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.jsch.ui@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.core.expressions@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.core.runtime@default:true,org.eclipse.xtend.typesystem.emf.ui@default:default,org.eclipse.uml2.common@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.update.core@default:default,org.eclipse.equinox.security.win32.x86@default:false,org.eclipse.emf.mwe.activities@default:default,org.apache.commons.el@default:default,org.eclipse.jdt.core@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.ecf@default:default,org.eclipse.emf.converter@default:default,org.eclipse.compare.win32@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.xtext.activities@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.xtext.xtext.ui.examples@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default"/>
<stringAttribute key="selected_workspace_plugins" value="org.eclipse.etrice.generator@default:default,org.eclipse.etrice.ui.behavior.tests@default:default,de.protos.automation.io@default:default,org.eclipse.etrice.generator.java@default:default,de.protos.automation.demos.fischertechnik@default:default,org.eclipse.etrice.ui.structure@default:default,org.xtext.example.mydsl.generator@default:default,org.eclipse.etrice.core.room.ui@default:default,org.eclipse.etrice.ui.tests.base@default:default,org.eclipse.etrice.modellib@default:default,org.eclipse.etrice.example.hrr@default:default,org.eclipse.etrice.generator.tests@default:default,org.eclipse.etrice.core.room@default:default,org.eclipse.etrice.ui.common@default:default,org.xtext.example.mydsl@default:default,org.eclipse.etrice.ui.behavior@default:default,org.eclipse.xtext@default:default,org.xtext.example.mydsl.ui@default:default"/>
+=======
+<stringAttribute key="selected_target_plugins" value="org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.update.core.win32@default:false,org.eclipse.debug.core@default:default,org.eclipse.xtend.typesystem.uml2.ui@default:default,org.eclipse.emf.ecore.change*2.5.1.v20100907-1643@default:default,org.eclipse.core.jobs*3.5.1.R36x_v20100824@default:default,org.eclipse.draw2d.doc.isv@default:default,org.eclipse.pde.ua.ui@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.apache.commons.lang@default:default,org.eclipse.help@default:default,org.sat4j.core@default:default,org.eclipse.pde.build@default:default,org.eclipse.core.resources@default:default,org.eclipse.osgi.services@default:default,org.eclipse.epp.mpc.core@default:default,org.eclipse.emf.ant@default:default,org.eclipse.emf.compare.doc@default:default,org.eclipse.emf.compare.diff.edit@default:default,org.eclipse.equinox.p2.discovery.compatibility@default:default,org.eclipse.equinox.concurrent@default:default,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.pde.ds.core@default:default,de.itemis.xtext.antlr@default:default,org.eclipse.emf.java.editor@default:default,org.eclipse.xsd.ecore.exporter@default:default,org.eclipse.xtend.util.stdlib@default:default,org.apache.commons.codec@default:default,org.eclipse.ui.intro@default:default,org.eclipse.emf.mapping.xsd2ecore@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.apache.jasper@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.xtend.profiler@default:default,org.eclipse.equinox.p2.repository*2.0.1.R36x_v20100823@default:default,org.eclipse.emf.examples.generator.validator@default:default,org.eclipse.ui.net@default:default,org.eclipse.uml2.uml.ecore.importer@default:default,org.sat4j.pb@default:default,org.apache.commons.logging*1.0.4.v201005080501@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.ui.ide*3.6.1.M20100825-0800@default:default,org.mortbay.jetty.server@default:default,org.eclipse.emf.transaction.doc@default:default,org.eclipse.ui*3.6.1.M20100826-1330@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.swt*3.6.1.v3655c@default:default,org.eclipse.xpand.doc@default:default,org.eclipse.help.webapp@default:default,org.eclipse.osgi*3.6.1.R36x_v20100806@-1:true,org.eclipse.emf.converter@default:default,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.emf.doc@default:default,org.eclipse.ui.workbench.compatibility@default:false,org.eclipse.emf.mapping.ecore2xml.ui@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.core.runtime@default:true,org.eclipse.ecf.provider.filetransfer.httpclient@default:default,org.eclipse.core.filesystem*1.3.1.R36x_v20100727-0745@default:default,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.pde.launching@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.xtend.typesystem.uml2@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.team.core@default:default,org.eclipse.xtext.xbase.ui@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.emf.importer.java@default:default,javax.servlet@default:default,org.eclipse.jface.text*3.6.1.r361_v20100825-0800@default:default,org.eclipse.pde.ua.core@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.xtext.xtext.ui@default:default,org.eclipse.uml2.codegen.ecore@default:default,org.eclipse.debug.ui@default:default,org.eclipse.xtend.ui@default:default,org.eclipse.ui.forms*3.5.0.v20100427@default:default,org.apache.commons.logging*1.1.1.v201005080502@default:default,org.eclipse.team.svn.core@default:default,org.eclipse.equinox.p2.ql@default:default,org.eclipse.gef.doc.isv@default:default,org.eclipse.equinox.launcher@default:default,org.eclipse.xtext.xtend@default:default,org.eclipse.emf.mapping.ecore2ecore.editor@default:default,org.eclipse.emf.java@default:default,org.eclipse.emf.databinding@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.jdt.apt.core@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.xsd.cheatsheets@default:default,org.eclipse.emf.examples@default:default,org.eclipse.jdt.doc.user@default:default,org.eclipse.jdt.apt.pluggable.core@default:default,org.eclipse.help.appserver@default:default,org.eclipse.emf.workspace.doc@default:default,org.eclipse.emf.mwe.ui.simpleEditor@default:default,org.eclipse.xtend.typesystem.xsd@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.emf.exporter.html@default:default,org.eclipse.update.configurator@3:true,org.eclipse.equinox.http.servlet@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.emf.workspace@default:default,org.eclipse.emf.databinding.edit@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.emf.validation@default:default,org.eclipse.emf.examples.library.edit@default:default,org.eclipse.emf.mapping.ecore2xml@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,com.google.collect@default:default,org.eclipse.xsd.ecore.importer@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.apache.lucene@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.team.svn.help@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.xpand@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.equinox.ds@1:true,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.xsd.editor@default:default,org.junit4@default:default,org.eclipse.pde.core@default:default,org.eclipse.ui.forms*3.5.2.r36_v20100702@default:default,org.eclipse.jdt.doc.isv@default:default,org.eclipse.emf.examples.library.editor@default:default,org.eclipse.team.cvs.ui@default:default,org.eclipse.xpand.ui@default:default,org.eclipse.xtext.util@default:default,javax.servlet.jsp@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.equinox.p2.ui@default:default,org.eclipse.help.ui@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.emf.edit*2.6.0.v20100914-1218@default:default,org.eclipse.ui.workbench*3.6.1.M20100826-1330@default:default,org.eclipse.equinox.security.win32.x86@default:false,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.jface*3.6.0.I20100601-0800@default:default,org.eclipse.ecf.provider.filetransfer.httpclient.ssl@default:false,org.eclipse.ant.core@default:default,org.eclipse.emf.compare.match@default:default,org.eclipse.equinox.common@2:true,org.apache.lucene.analysis@default:default,org.eclipse.emf.edit.ui*2.6.0.v20100914-1218@default:default,org.eclipse.compare.win32@default:default,org.eclipse.emf.mwe2.language.ui@default:default,org.eclipse.equinox.servletbridge.extensionbundle@default:false,org.eclipse.emf.mapping.ecore2ecore@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.ui.console@default:default,org.eclipse.pde.api.tools@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.platform.doc.isv@default:default,org.eclipse.emf.compare@default:default,org.eclipse.emf.mwe.doc@default:default,org.eclipse.equinox.p2.core*2.0.2.R36x_v20100804@default:default,org.eclipse.core.expressions@default:default,org.eclipse.xpand.activities@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.equinox.p2.ui.discovery@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.jdt.core@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.compare.core@default:default,com.google.inject@default:default,org.eclipse.core.net.win32.x86@default:false,org.eclipse.core.filesystem.win32.x86@default:false,org.eclipse.equinox.p2.metadata.generator@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.equinox.launcher.win32.win32.x86@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.platform.doc.user@default:default,org.eclipse.emf.compare.diff@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf@default:default,org.eclipse.draw2d@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.emf.transaction.ui@default:default,org.eclipse.pde.runtime@default:default,org.eclipse.emf.generic.editor@default:default,org.eclipse.cvs@default:default,org.eclipse.emf.workspace.ui@default:default,org.eclipse.xtext.xtext.ui.examples@default:default,org.eclipse.jface.text*3.6.0.v20100526-0800@default:default,org.eclipse.ui.win32@default:false,org.eclipse.equinox.p2.console@default:default,org.eclipse.jdt@default:default,org.eclipse.equinox.p2.discovery@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.xsd.edit@default:default,org.eclipse.jsch.core@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.rcp@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.emf.importer.ecore@default:default,org.eclipse.graphiti.doc@default:default,org.eclipse.update.ui@default:default,org.eclipse.emf.transaction.examples@default:default,org.eclipse.xsd.doc@default:default,org.eclipse.emf.cheatsheets@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.emf.activities@default:default,org.junit*4.8.1.v4_8_1_v20100427-1100@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.mapping.ecore@default:default,org.eclipse.ecf@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.emf.compare.epatch@default:default,org.eclipse.emf.example.installer@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.mapping@default:default,org.eclipse.emf.mwe.activities@default:default,org.eclipse.xtext.doc@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.emf.mapping.xsd2ecore.editor@default:default,org.eclipse.xtext.activities@default:default,org.eclipse.emf.importer.rose@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.emf.ecore.edit*2.6.0.v20100914-1218@default:default,org.apache.commons.cli@default:default,org.eclipse.help.base@default:default,org.eclipse.ui.views@default:default,org.eclipse.xsd.mapping@default:default,org.eclipse.pde.ui.templates@default:default,org.eclipse.xpand.incremental@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.team.cvs.ssh2@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.uml2.uml@default:default,org.eclipse.compare@default:default,org.eclipse.equinox.p2.metadata@default:default,org.apache.log4j@default:default,org.eclipse.jdt.junit4.runtime@default:default,org.eclipse.ui.ide.application@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.eclipse.emf.common.ui*2.6.0.v20100914-1218@default:default,com.ibm.icu@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.xtend.shared.ui@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.core.resources.win32.x86@default:false,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.pde.api.tools.ui@default:default,org.eclipse.ui.browser@default:default,org.eclipse.core.net@default:default,org.eclipse.ant.launching@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.uml2.uml.resources@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.emf.mapping.ui@default:default,org.eclipse.jface*3.6.1.M20100825-0800@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.xtend.check.ui@default:default,org.apache.commons.el@default:default,org.eclipse.ui.presentations.r21@default:default,org.antlr.gen@default:default,org.eclipse.gef.examples.ui.pde@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.text@default:default,org.eclipse.pde.ds.ui@default:default,org.eclipse.emf.exporter@default:default,org.aopalliance@default:default,org.eclipse.search@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.hamcrest.core@default:default,org.eclipse.emf.compare.ui@default:default,org.mortbay.jetty.util@default:default,org.apache.ant@default:default,org.eclipse.update.core@default:default,org.eclipse.ant.ui@default:default,org.eclipse.core.boot@default:default,org.polarion.eclipse.team.svn.connector.javahl16@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.xsd.mapping.editor@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.xsd@default:default,org.eclipse.core.commands@default:default,org.eclipse.xsd.example.installer@default:default,org.eclipse.xtend.typesystem.xsd.ui@default:default,org.eclipse.equinox.event@default:default,org.antlr.runtime@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.osgi.util@default:default,org.eclipse.emf.ecore*2.6.1.v20100914-1218@default:default,org.eclipse.xsd.example@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtend@default:default,org.eclipse.emf.codegen.ui@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.team.ui@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.team.svn.ui@default:default,org.eclipse.platform@default:default,org.eclipse.emf.java.edit@default:default,org.eclipse.gef@default:default,org.eclipse.pde.ui@default:default,org.eclipse.jdt.apt.ui@default:default,org.eclipse.epp.mpc.ui@default:default,org.eclipse.emf.mwe.ui@default:default,com.jcraft.jsch@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.jsch.ui@default:default,org.eclipse.xsd.ecore.converter@default:default,org.eclipse.uml2.common@default:default,org.eclipse.emf.ecore.change.edit@default:default,org.eclipse.xtext@default:default,org.eclipse.update.scheduler@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.sdk@default:default,org.eclipse.team.svn@default:default,org.polarion.eclipse.team.svn.connector@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.emf.mapping.ecore.editor@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.ui.ecore@default:default,org.eclipse.xpand.examples@default:default,org.eclipse.xtend.typesystem.emf.ui@default:default,org.eclipse.emf.examples.library@default:default,org.eclipse.core.databinding@default:default,org.polarion.eclipse.team.svn.connector.svnkit16@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.equinox.security@default:default,org.eclipse.pde.doc.user@default:default,org.eclipse.equinox.util@default:default,org.eclipse.core.variables@default:default,org.eclipse.emf.importer@default:default,org.eclipse.equinox.app*1.3.1.R36x_v20100803@default:default,org.eclipse.emf.common*2.6.0.v20100914-1218@default:default,org.apache.commons.httpclient@default:default,org.eclipse.emf.codegen.ecore.ui@default:default,org.eclipse.pde@default:default,org.objectweb.asm@default:default,org.eclipse.epp.mpc.help.ui@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.team.cvs.core@default:default"/>
+<stringAttribute key="selected_workspace_plugins" value="org.eclipse.graphiti.mm@default:default,org.eclipse.etrice.core.room@default:default,org.eclipse.etrice.ui.behavior@default:default,org.eclipse.etrice.ui.structure.tests@default:default,org.eclipse.etrice.generator@default:default,org.eclipse.etrice.ui.tests.base@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.etrice.ui.common@default:default,org.eclipse.graphiti@default:default,org.eclipse.etrice.modellib@default:default,org.eclipse.xtext@default:default,org.eclipse.etrice.core.room.ui@default:default,org.eclipse.etrice.ui.structure@default:default,org.eclipse.etrice.generator.tests@default:default,org.eclipse.graphiti.pattern@default:default,org.eclipse.etrice.generator.java@default:default"/>
+>>>>>>> branch 'refs/heads/master' of https://hrentzreich@git.eclipse.org/gitroot/etrice/org.eclipse.etrice.git
<booleanAttribute key="show_selected_only" value="false"/>
<booleanAttribute key="tracing" value="false"/>
<booleanAttribute key="useCustomFeatures" value="false"/>
diff --git a/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java b/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java
index 04ed1b596..da3f3534e 100644
--- a/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java
+++ b/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java
@@ -1,77 +1,77 @@
-/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.tests.base;
-
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.LinkedList;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-
-public abstract class TestBase {
-
- private String basePath;
- private LinkedList<RoomModel> models = new LinkedList<RoomModel>();
-
- protected void loadModelFile() {
- try {
- URL modelsDir = getModelsDirectoy();
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- loadModels(getModelFileName());
- }
-
- protected void removeDiagramsDirectory() {
- File diagDir = new File(basePath+File.separator+"diagrams");
- if (diagDir.isDirectory()) {
- File[] files = diagDir.listFiles();
- if (files!=null)
- for (int i = 0; i < files.length; i++) {
- files[i].delete();
- }
- diagDir.delete();
- }
- }
-
- private void loadModels(String modelName) {
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- Resource resource = rs.getResource(uri, true);
- Object root = resource.getContents().get(0);
- if (root instanceof RoomModel)
- models.add((RoomModel) root);
- else
- fail("File contains no RoomModel as root object");
- }
-
- public LinkedList<RoomModel> getModels() {
- return models;
- }
-
- protected abstract String getModelFileName();
- protected abstract URL getModelsDirectoy();
-}
+/*******************************************************************************
+ * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * CONTRIBUTORS:
+ * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
+ *
+ *******************************************************************************/
+
+package org.eclipse.etrice.tests.base;
+
+import static org.junit.Assert.fail;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+import java.util.LinkedList;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.xtext.resource.XtextResource;
+import org.eclipse.xtext.resource.XtextResourceSet;
+
+public abstract class TestBase {
+
+ private String basePath;
+ private LinkedList<RoomModel> models = new LinkedList<RoomModel>();
+
+ protected void loadModelFile() {
+ try {
+ URL modelsDir = getModelsDirectoy();
+ URL fileURL = FileLocator.toFileURL(modelsDir);
+ basePath = fileURL.getFile();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ loadModels(getModelFileName());
+ }
+
+ protected void removeDiagramsDirectory() {
+ File diagDir = new File(basePath+File.separator+"diagrams");
+ if (diagDir.isDirectory()) {
+ File[] files = diagDir.listFiles();
+ if (files!=null)
+ for (int i = 0; i < files.length; i++) {
+ files[i].delete();
+ }
+ diagDir.delete();
+ }
+ }
+
+ private void loadModels(String modelName) {
+ XtextResourceSet rs = new XtextResourceSet();
+ rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
+ String path = basePath + modelName;
+ URI uri = URI.createFileURI(path);
+ Resource resource = rs.getResource(uri, true);
+ Object root = resource.getContents().get(0);
+ if (root instanceof RoomModel)
+ models.add((RoomModel) root);
+ else
+ fail("File contains no RoomModel as root object");
+ }
+
+ public LinkedList<RoomModel> getModels() {
+ return models;
+ }
+
+ protected abstract String getModelFileName();
+ protected abstract URL getModelsDirectoy();
+}
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.classpath b/tests/org.eclipse.etrice.ui.behavior.tests/.classpath
index ad32c83a7..8a8f1668c 100644
--- a/tests/org.eclipse.etrice.ui.behavior.tests/.classpath
+++ b/tests/org.eclipse.etrice.ui.behavior.tests/.classpath
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore b/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore
index ba077a403..092357e47 100644
--- a/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore
+++ b/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore
@@ -1 +1 @@
-bin
+bin
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.project b/tests/org.eclipse.etrice.ui.behavior.tests/.project
index 0b60a5db7..9b5577fbd 100644
--- a/tests/org.eclipse.etrice.ui.behavior.tests/.project
+++ b/tests/org.eclipse.etrice.ui.behavior.tests/.project
@@ -1,34 +1,34 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.ui.behavior.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.etrice.ui.behavior.tests</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ </natures>
+</projectDescription>
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF
index 261309db6..a4478f3c6 100644
--- a/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF
@@ -1,18 +1,18 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Behavior Diagram Tests
-Bundle-SymbolicName: org.eclipse.etrice.ui.behavior.tests
-Bundle-Version: 0.1.0
-Bundle-Activator: org.eclipse.etrice.ui.behavior.BehaviorTestActivator
-Bundle-Vendor: eTrice (Incubation)
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.junit;bundle-version="4.8.1",
- org.eclipse.etrice.core.room;bundle-version="0.1.0",
- org.eclipse.etrice.ui.behavior;bundle-version="0.1.0",
- org.eclipse.xtext;bundle-version="1.0.1",
- org.eclipse.graphiti;bundle-version="0.7.0",
- org.eclipse.etrice.ui.common;bundle-version="0.1.0",
- org.eclipse.etrice.ui.tests.base;bundle-version="0.1.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-ActivationPolicy: lazy
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: eTrice Behavior Diagram Tests
+Bundle-SymbolicName: org.eclipse.etrice.ui.behavior.tests
+Bundle-Version: 0.1.0
+Bundle-Activator: org.eclipse.etrice.ui.behavior.BehaviorTestActivator
+Bundle-Vendor: eTrice (Incubation)
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.junit;bundle-version="4.8.1",
+ org.eclipse.etrice.core.room;bundle-version="0.1.0",
+ org.eclipse.etrice.ui.behavior;bundle-version="0.1.0",
+ org.eclipse.xtext;bundle-version="1.0.1",
+ org.eclipse.graphiti;bundle-version="0.7.0",
+ org.eclipse.etrice.ui.common;bundle-version="0.1.0",
+ org.eclipse.etrice.ui.tests.base;bundle-version="0.1.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-ActivationPolicy: lazy
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/build.properties b/tests/org.eclipse.etrice.ui.behavior.tests/build.properties
index 34d2e4d2d..41eb6ade2 100644
--- a/tests/org.eclipse.etrice.ui.behavior.tests/build.properties
+++ b/tests/org.eclipse.etrice.ui.behavior.tests/build.properties
@@ -1,4 +1,4 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room
index 4afd5c530..e62059df3 100644
--- a/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room
+++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room
@@ -1,88 +1,88 @@
-RoomModel ActorClassWithPorts {
- ActorClass MyActorClass {
- Interface {
- Port ip: MyProtocol
- Port xp: MyProtocol
- }
- Structure {
- external Port xp
- conjugated Port sp: MyProtocol
- }
- Behavior {
- StateMachine {
- Transition tr0: my tptop -> my tptop {
- triggers {
- <in2: xp>
- }
- }
- Transition tr1: state1 -> cp cp0 {
- triggers {
- <out1: sp>
- }
- }
- Transition tr2: cp cp0 -> elseState {
- }
- Transition tr3: cp cp0 -> ifState {
- cond {
- "true"
- }
- }
- Transition init: initial -> enter of state1 {
- }
- Transition tr4: leave of state1 -> ifState {
- }
- ChoicePoint cp0
- TransitionPoint tptop
- State state1 {
- entry {
- "//entry"
- }
- exit {
- "//exit"
- }
- subgraph {
- Transition tr0: my tp -> my tp {
- triggers {
- <in1: xp>
- }
- }
- Transition tr1: second -> my leave {
- triggers {
- <in2: xp>
- }
- }
- Transition tr2: first -> second {
- triggers {
- <out1: sp>
- }
- }
- Transition tr3: my enter -> first {
- }
- EntryPoint enter
- ExitPoint leave
- TransitionPoint tp
- State first {
- }
- State second {
- }
- }
- }
- State elseState {
- }
- State ifState {
- }
- }
- }
- }
-
- ProtocolClass MyProtocol {
- incoming {
- Message in1()
- Message in2()
- }
- outgoing {
- Message out1()
- }
- }
-
+RoomModel ActorClassWithPorts {
+ ActorClass MyActorClass {
+ Interface {
+ Port ip: MyProtocol
+ Port xp: MyProtocol
+ }
+ Structure {
+ external Port xp
+ conjugated Port sp: MyProtocol
+ }
+ Behavior {
+ StateMachine {
+ Transition tr0: my tptop -> my tptop {
+ triggers {
+ <in2: xp>
+ }
+ }
+ Transition tr1: state1 -> cp cp0 {
+ triggers {
+ <out1: sp>
+ }
+ }
+ Transition tr2: cp cp0 -> elseState {
+ }
+ Transition tr3: cp cp0 -> ifState {
+ cond {
+ "true"
+ }
+ }
+ Transition init: initial -> enter of state1 {
+ }
+ Transition tr4: leave of state1 -> ifState {
+ }
+ ChoicePoint cp0
+ TransitionPoint tptop
+ State state1 {
+ entry {
+ "//entry"
+ }
+ exit {
+ "//exit"
+ }
+ subgraph {
+ Transition tr0: my tp -> my tp {
+ triggers {
+ <in1: xp>
+ }
+ }
+ Transition tr1: second -> my leave {
+ triggers {
+ <in2: xp>
+ }
+ }
+ Transition tr2: first -> second {
+ triggers {
+ <out1: sp>
+ }
+ }
+ Transition tr3: my enter -> first {
+ }
+ EntryPoint enter
+ ExitPoint leave
+ TransitionPoint tp
+ State first {
+ }
+ State second {
+ }
+ }
+ }
+ State elseState {
+ }
+ State ifState {
+ }
+ }
+ }
+ }
+
+ ProtocolClass MyProtocol {
+ incoming {
+ Message in1()
+ Message in2()
+ }
+ outgoing {
+ Message out1()
+ }
+ }
+
} \ No newline at end of file
diff --git a/tests/org.eclipse.etrice.ui.structure.tests/.gitignore b/tests/org.eclipse.etrice.ui.structure.tests/.gitignore
index ba077a403..092357e47 100644
--- a/tests/org.eclipse.etrice.ui.structure.tests/.gitignore
+++ b/tests/org.eclipse.etrice.ui.structure.tests/.gitignore
@@ -1 +1 @@
-bin
+bin
diff --git a/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF
index 63e442c16..de65161c3 100644
--- a/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF
@@ -1,18 +1,18 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Structure Diagram Tests
-Bundle-SymbolicName: org.eclipse.etrice.ui.structure.tests
-Bundle-Version: 0.1.0
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.junit;bundle-version="4.8.1",
- org.eclipse.etrice.core.room;bundle-version="0.1.0",
- org.eclipse.etrice.ui.structure;bundle-version="0.1.0",
- org.eclipse.xtext;bundle-version="1.0.1",
- org.eclipse.graphiti;bundle-version="0.7.0",
- org.eclipse.etrice.ui.common;bundle-version="0.1.0",
- org.eclipse.etrice.ui.tests.base;bundle-version="0.1.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-Vendor: eTrice (Incubation)
-Bundle-ActivationPolicy: lazy
-Bundle-Activator: org.eclipse.etrice.ui.structure.StructureTestActivator
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: eTrice Structure Diagram Tests
+Bundle-SymbolicName: org.eclipse.etrice.ui.structure.tests
+Bundle-Version: 0.1.0
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.junit;bundle-version="4.8.1",
+ org.eclipse.etrice.core.room;bundle-version="0.1.0",
+ org.eclipse.etrice.ui.structure;bundle-version="0.1.0",
+ org.eclipse.xtext;bundle-version="1.0.1",
+ org.eclipse.graphiti;bundle-version="0.7.0",
+ org.eclipse.etrice.ui.common;bundle-version="0.1.0",
+ org.eclipse.etrice.ui.tests.base;bundle-version="0.1.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Vendor: eTrice (Incubation)
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.etrice.ui.structure.StructureTestActivator
diff --git a/tests/org.eclipse.etrice.ui.tests.base/.classpath b/tests/org.eclipse.etrice.ui.tests.base/.classpath
index ad32c83a7..8a8f1668c 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/.classpath
+++ b/tests/org.eclipse.etrice.ui.tests.base/.classpath
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/tests/org.eclipse.etrice.ui.tests.base/.gitignore b/tests/org.eclipse.etrice.ui.tests.base/.gitignore
index ba077a403..092357e47 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/.gitignore
+++ b/tests/org.eclipse.etrice.ui.tests.base/.gitignore
@@ -1 +1 @@
-bin
+bin
diff --git a/tests/org.eclipse.etrice.ui.tests.base/.project b/tests/org.eclipse.etrice.ui.tests.base/.project
index ebe0323d9..56bbc0f5a 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/.project
+++ b/tests/org.eclipse.etrice.ui.tests.base/.project
@@ -1,28 +1,28 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.ui.tests.base</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.etrice.ui.tests.base</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs
index 00cf6ec9e..a5e428cf7 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs
+++ b/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,8 @@
-#Thu Feb 10 12:03:48 CET 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Thu Feb 10 12:03:48 CET 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF
index 2aac5d08c..b175b4734 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF
@@ -1,14 +1,14 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Diagram Test Base Classes
-Bundle-SymbolicName: org.eclipse.etrice.ui.tests.base
-Bundle-Version: 0.1.0
-Require-Bundle: org.junit;bundle-version="4.8.1",
- org.eclipse.core.runtime,
- org.eclipse.etrice.core.room;bundle-version="0.1.0",
- org.eclipse.etrice.ui.structure;bundle-version="0.1.0",
- org.eclipse.xtext;bundle-version="1.0.1",
- org.eclipse.graphiti;bundle-version="0.7.0"
-Bundle-Vendor: eTrice (Incubation)
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Export-Package: org.eclipse.etrice.tests.base
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: eTrice Diagram Test Base Classes
+Bundle-SymbolicName: org.eclipse.etrice.ui.tests.base
+Bundle-Version: 0.1.0
+Require-Bundle: org.junit;bundle-version="4.8.1",
+ org.eclipse.core.runtime,
+ org.eclipse.etrice.core.room;bundle-version="0.1.0",
+ org.eclipse.etrice.ui.structure;bundle-version="0.1.0",
+ org.eclipse.xtext;bundle-version="1.0.1",
+ org.eclipse.graphiti;bundle-version="0.7.0"
+Bundle-Vendor: eTrice (Incubation)
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: org.eclipse.etrice.tests.base
diff --git a/tests/org.eclipse.etrice.ui.tests.base/build.properties b/tests/org.eclipse.etrice.ui.tests.base/build.properties
index 34d2e4d2d..41eb6ade2 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/build.properties
+++ b/tests/org.eclipse.etrice.ui.tests.base/build.properties
@@ -1,4 +1,4 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java b/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java
index 73a95af74..fc80b940a 100644
--- a/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java
+++ b/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java
@@ -1,89 +1,89 @@
-/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.tests.base;
-
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.LinkedList;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.graphiti.mm.algorithms.styles.Color;
-import org.eclipse.graphiti.util.IColorConstant;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-
-public abstract class TestBase {
-
- private String basePath;
- private LinkedList<RoomModel> models = new LinkedList<RoomModel>();
-
- protected void loadModelFile() {
- try {
- URL modelsDir = getModelsDirectoy();
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- loadModels(getModelFileName());
- }
-
- protected void removeDiagramsDirectory() {
- File diagDir = new File(basePath+File.separator+"diagrams");
- if (diagDir.isDirectory()) {
- File[] files = diagDir.listFiles();
- if (files!=null)
- for (int i = 0; i < files.length; i++) {
- files[i].delete();
- }
- diagDir.delete();
- }
- }
-
- private void loadModels(String modelName) {
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- Resource resource = rs.getResource(uri, true);
- Object root = resource.getContents().get(0);
- if (root instanceof RoomModel)
- models.add((RoomModel) root);
- else
- fail("File contains no RoomModel as root object");
- }
-
- public LinkedList<RoomModel> getModels() {
- return models;
- }
-
- protected abstract String getModelFileName();
- protected abstract URL getModelsDirectoy();
-
- protected boolean isEqual(Color c, IColorConstant cc) {
- if (c.getRed()!=cc.getRed())
- return false;
- if (c.getGreen()!=cc.getGreen())
- return false;
- if (c.getBlue()!=cc.getBlue())
- return false;
- return true;
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * CONTRIBUTORS:
+ * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
+ *
+ *******************************************************************************/
+
+package org.eclipse.etrice.tests.base;
+
+import static org.junit.Assert.fail;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+import java.util.LinkedList;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.graphiti.mm.algorithms.styles.Color;
+import org.eclipse.graphiti.util.IColorConstant;
+import org.eclipse.xtext.resource.XtextResource;
+import org.eclipse.xtext.resource.XtextResourceSet;
+
+public abstract class TestBase {
+
+ private String basePath;
+ private LinkedList<RoomModel> models = new LinkedList<RoomModel>();
+
+ protected void loadModelFile() {
+ try {
+ URL modelsDir = getModelsDirectoy();
+ URL fileURL = FileLocator.toFileURL(modelsDir);
+ basePath = fileURL.getFile();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ loadModels(getModelFileName());
+ }
+
+ protected void removeDiagramsDirectory() {
+ File diagDir = new File(basePath+File.separator+"diagrams");
+ if (diagDir.isDirectory()) {
+ File[] files = diagDir.listFiles();
+ if (files!=null)
+ for (int i = 0; i < files.length; i++) {
+ files[i].delete();
+ }
+ diagDir.delete();
+ }
+ }
+
+ private void loadModels(String modelName) {
+ XtextResourceSet rs = new XtextResourceSet();
+ rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
+ String path = basePath + modelName;
+ URI uri = URI.createFileURI(path);
+ Resource resource = rs.getResource(uri, true);
+ Object root = resource.getContents().get(0);
+ if (root instanceof RoomModel)
+ models.add((RoomModel) root);
+ else
+ fail("File contains no RoomModel as root object");
+ }
+
+ public LinkedList<RoomModel> getModels() {
+ return models;
+ }
+
+ protected abstract String getModelFileName();
+ protected abstract URL getModelsDirectoy();
+
+ protected boolean isEqual(Color c, IColorConstant cc) {
+ if (c.getRed()!=cc.getRed())
+ return false;
+ if (c.getGreen()!=cc.getGreen())
+ return false;
+ if (c.getBlue()!=cc.getBlue())
+ return false;
+ return true;
+ }
+}

Back to the top