Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenrik Rentz-Reichert2014-08-06 15:13:34 -0400
committerHenrik Rentz-Reichert2014-08-06 15:13:34 -0400
commit66deab8978e18915b81af4238d3d2abb6a060efb (patch)
tree8a1ba11120bfaba5ad2785e3a5c102033c657b9b /plugins
parentcc931d088f87d69a2deeb145d541f83aae8bab50 (diff)
downloadorg.eclipse.etrice-66deab8978e18915b81af4238d3d2abb6a060efb.tar.gz
org.eclipse.etrice-66deab8978e18915b81af4238d3d2abb6a060efb.tar.xz
org.eclipse.etrice-66deab8978e18915b81af4238d3d2abb6a060efb.zip
[core.fsm] introduced FSM DSL between core.common.Base and core.Room
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/.classpath9
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/.gitignore3
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/.project34
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/META-INF/MANIFEST.MF27
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/build.properties6
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml398
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml_gen398
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/AbstractFSMUiModule.java192
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/FSMExecutableExtensionFactory.java29
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/AbstractFSMProposalProvider.java32
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/FSMParser.java147
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/PartialFSMContentAssistParser.java38
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g3257
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.tokens53
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMLexer.java1737
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMParser.java8825
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/internal/FSMActivator.java95
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/FSMUiModule.java15
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.xtend12
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.xtend24
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.xtend29
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.xtend13
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/quickfix/FSMQuickfixProvider.xtend26
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.java13
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.java15
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.java21
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.java15
-rw-r--r--plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/quickfix/FSMQuickfixProvider.java15
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/.classpath9
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/.gitignore4
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/.launch/Generate Language Infrastructure (org.eclipse.etrice.core.fsm).launch18
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/.project34
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/META-INF/MANIFEST.MF36
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/build.properties7
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/model/generated/FSM.ecore11
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/model/generated/FSM.genmodel17
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/plugin.xml16
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/plugin.xml_gen17
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/AbstractFSMRuntimeModule.java152
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/FSM.xtextbinbin0 -> 5686 bytes
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/FSMStandaloneSetupGenerated.java45
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/FSMFactory.java52
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/FSMModel.java43
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/FSMPackage.java219
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/Greeting.java51
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/impl/FSMFactoryImpl.java118
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/impl/FSMModelImpl.java167
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/impl/FSMPackageImpl.java220
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/impl/GreetingImpl.java177
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/util/FSMAdapterFactory.java152
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/fSM/util/FSMSwitch.java142
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/parser/antlr/FSMAntlrTokenFileProvider.java15
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/parser/antlr/FSMParser.java39
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/parser/antlr/internal/InternalFSM.g1395
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/parser/antlr/internal/InternalFSM.tokens53
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/parser/antlr/internal/InternalFSMLexer.java1736
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/parser/antlr/internal/InternalFSMParser.java3786
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/serializer/FSMSemanticSequencer.java163
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/serializer/FSMSyntacticSequencer.java40
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/services/FSMGrammarAccess.java499
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src-gen/org/eclipse/etrice/core/fsm/validation/AbstractFSMJavaValidator.java23
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/FSM.xtext12
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/FSMRuntimeModule.java11
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/FSMStandaloneSetup.java16
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/GenerateFSM.mwe2147
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/formatting/FSMFormatter.xtend30
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/generator/FSMGenerator.xtend24
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/scoping/FSMScopeProvider.xtend15
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/src/org/eclipse/etrice/core/fsm/validation/FSMJavaValidator.java19
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/xtend-gen/org/eclipse/etrice/core/fsm/formatting/FSMFormatter.java21
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/xtend-gen/org/eclipse/etrice/core/fsm/generator/FSMGenerator.java19
-rw-r--r--plugins/org.eclipse.etrice.core.fsm/xtend-gen/org/eclipse/etrice/core/fsm/scoping/FSMScopeProvider.java16
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/META-INF/MANIFEST.MF7
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/AbstractRoomUiModule.java2
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/AbstractRoomProposalProvider.java4
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/RoomParser.java3
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.g142
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoom.tokens28
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoomLexer.java1382
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalRoomParser.java25582
-rw-r--r--plugins/org.eclipse.etrice.core.room/META-INF/MANIFEST.MF7
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/AbstractRoomRuntimeModule.java5
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.ecore42
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.genmodel2
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.xtextbinbin23491 -> 23787 bytes
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/RoomStandaloneSetupGenerated.java2
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parseTreeConstruction/RoomParsetreeConstructor.java205
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.g49
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoom.tokens50
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoomLexer.java1475
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalRoomParser.java1881
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/services/RoomGrammarAccess.java103
-rw-r--r--plugins/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/validation/AbstractRoomJavaValidator.java3
-rw-r--r--plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/GenerateRoom.mwe22
-rw-r--r--plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext4
99 files changed, 41291 insertions, 14971 deletions
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/.classpath b/plugins/org.eclipse.etrice.core.fsm.ui/.classpath
new file mode 100644
index 000000000..6ea81b1e6
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/.classpath
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="src-gen"/>
+ <classpathentry kind="src" path="xtend-gen"/>
+ <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="output" path="bin"/>
+</classpath>
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/.gitignore b/plugins/org.eclipse.etrice.core.fsm.ui/.gitignore
new file mode 100644
index 000000000..e333a3e5a
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/.gitignore
@@ -0,0 +1,3 @@
+bin
+*.launch
+*._trace
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/.project b/plugins/org.eclipse.etrice.core.fsm.ui/.project
new file mode 100644
index 000000000..46183ae91
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.etrice.core.fsm.ui</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 000000000..99f26c020
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..c537b6306
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+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/plugins/org.eclipse.etrice.core.fsm.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.etrice.core.fsm.ui/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..441afec16
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,27 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: FSM DSL UI
+Bundle-Vendor: Eclipse eTrice (Incubation)
+Bundle-Version: 0.5.0.qualifier
+Bundle-SymbolicName: org.eclipse.etrice.core.fsm.ui; singleton:=true
+Bundle-ActivationPolicy: lazy
+Require-Bundle: org.eclipse.etrice.core.common.ui;bundle-version="0.5.0",
+ org.eclipse.etrice.core.fsm;visibility:=reexport,
+ org.eclipse.xtext.ui,
+ org.eclipse.ui.editors;bundle-version="3.5.0",
+ org.eclipse.ui.ide;bundle-version="3.5.0",
+ org.eclipse.xtext.ui.shared,
+ org.eclipse.ui,
+ org.eclipse.xtext.builder,
+ org.antlr.runtime,
+ org.eclipse.xtext.common.types.ui,
+ org.eclipse.xtext.ui.codetemplates.ui,
+ org.eclipse.compare
+Import-Package: org.apache.log4j,
+ org.eclipse.xtext.xbase.lib
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: org.eclipse.etrice.core.fsm.ui.quickfix,
+ org.eclipse.etrice.core.fsm.ui.contentassist,
+ org.eclipse.etrice.core.fsm.ui.contentassist.antlr,
+ org.eclipse.etrice.core.fsm.ui.internal
+Bundle-Activator: org.eclipse.etrice.core.fsm.ui.internal.FSMActivator
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/build.properties b/plugins/org.eclipse.etrice.core.fsm.ui/build.properties
new file mode 100644
index 000000000..31255ed05
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/build.properties
@@ -0,0 +1,6 @@
+source.. = src/,\
+ src-gen/,\
+ xtend-gen/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml b/plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml
new file mode 100644
index 000000000..87f044c39
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml
@@ -0,0 +1,398 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
+ contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
+ default="true"
+ extensions="fsm"
+ id="org.eclipse.etrice.core.fsm.FSM"
+ name="FSM Editor">
+ </editor>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
+ commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
+ commandId="org.eclipse.etrice.core.fsm.FSM.validate">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <!-- copy qualified name -->
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
+ commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
+ <activeWhen>
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened" />
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
+ commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
+ <activeWhen>
+ <and>
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.XtextEditor.opened" />
+ <iterate>
+ <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
+ </iterate>
+ </and>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.core.expressions.definitions">
+ <definition id="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ <and>
+ <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.eclipse.etrice.core.fsm.FSM"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ <definition id="org.eclipse.etrice.core.fsm.FSM.XtextEditor.opened">
+ <and>
+ <reference definitionId="isXtextEditorActive"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.eclipse.etrice.core.fsm.FSM"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM"
+ name="FSM">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.coloring"
+ name="Syntax Coloring">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.templates"
+ name="Templates">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM"
+ name="FSM">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject"/>
+ </enabledWhen>
+ <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.keywords">
+ <keyword
+ id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"
+ label="FSM"/>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Trigger expensive validation"
+ id="org.eclipse.etrice.core.fsm.FSM.validate"
+ name="Validate">
+ </command>
+ <!-- copy qualified name -->
+ <command
+ id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ categoryId="org.eclipse.ui.category.edit"
+ description="Copy the qualified name for the selected element"
+ name="Copy Qualified Name">
+ </command>
+ <command
+ id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
+ categoryId="org.eclipse.ui.category.edit"
+ description="Copy the qualified name for the selected element"
+ name="Copy Qualified Name">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command
+ commandId="org.eclipse.etrice.core.fsm.FSM.validate"
+ style="push"
+ tooltip="Trigger expensive validation">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <!-- copy qualified name -->
+ <menuContribution locationURI="popup:#TextEditorContext?after=copy">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution locationURI="menu:edit?after=copy">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <and>
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.XtextEditor.opened" />
+ <iterate>
+ <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
+ </iterate>
+ </and>
+ </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.fsm.FSM.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
+ commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+
+<!-- adding resource factories -->
+
+ <extension
+ point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
+ type="fsm">
+ </parser>
+ </extension>
+ <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
+ <resourceServiceProvider
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
+ uriExtension="fsm">
+ </resourceServiceProvider>
+ </extension>
+
+
+ <!-- marker definitions for org.eclipse.etrice.core.fsm.FSM -->
+ <extension
+ id="fsm.check.fast"
+ name="FSM Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.fast"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="fsm.check.normal"
+ name="FSM Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.normal"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="fsm.check.expensive"
+ name="FSM Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.expensive"/>
+ <persistent value="true"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.xtext.builder.participant">
+ <participant
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
+ fileExtensions="fsm"
+ >
+ </participant>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.compiler.preferencePage"
+ name="Compiler">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.compiler.propertyPage"
+ name="Compiler">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject"/>
+ </enabledWhen>
+ <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
+ </page>
+ </extension>
+
+ <!-- Quick Outline -->
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
+ commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.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.fsm.FSM.Editor.opened"/>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <!-- quickfix marker resolution generator for org.eclipse.etrice.core.fsm.FSM -->
+ <extension
+ point="org.eclipse.ui.ide.markerResolution">
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.fsm.ui.fsm.check.fast">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.fsm.ui.fsm.check.normal">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.fsm.ui.fsm.check.expensive">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ </extension>
+ <!-- Rename Refactoring -->
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
+ commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
+ style="push">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.refactoring"
+ name="Refactoring">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ </extension>
+
+ <extension point="org.eclipse.compare.contentViewers">
+ <viewer id="org.eclipse.etrice.core.fsm.FSM.compare.contentViewers"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="fsm">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.compare.contentMergeViewers">
+ <viewer id="org.eclipse.etrice.core.fsm.FSM.compare.contentMergeViewers"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="fsm" label="FSM Compare">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.ui.editors.documentProviders">
+ <provider id="org.eclipse.etrice.core.fsm.FSM.editors.documentProviders"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
+ extensions="fsm">
+ </provider>
+ </extension>
+
+</plugin>
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml_gen b/plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml_gen
new file mode 100644
index 000000000..b0eb15887
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/plugin.xml_gen
@@ -0,0 +1,398 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
+ contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
+ default="true"
+ extensions="fsm"
+ id="org.eclipse.etrice.core.fsm.FSM"
+ name="FSM Editor">
+ </editor>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
+ commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
+ commandId="org.eclipse.etrice.core.fsm.FSM.validate">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <!-- copy qualified name -->
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
+ commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
+ <activeWhen>
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened" />
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
+ commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
+ <activeWhen>
+ <and>
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.XtextEditor.opened" />
+ <iterate>
+ <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
+ </iterate>
+ </and>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.core.expressions.definitions">
+ <definition id="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ <and>
+ <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.eclipse.etrice.core.fsm.FSM"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ <definition id="org.eclipse.etrice.core.fsm.FSM.XtextEditor.opened">
+ <and>
+ <reference definitionId="isXtextEditorActive"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.eclipse.etrice.core.fsm.FSM"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM"
+ name="FSM">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.coloring"
+ name="Syntax Coloring">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.templates"
+ name="Templates">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM"
+ name="FSM">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject"/>
+ </enabledWhen>
+ <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.keywords">
+ <keyword
+ id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"
+ label="FSM"/>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Trigger expensive validation"
+ id="org.eclipse.etrice.core.fsm.FSM.validate"
+ name="Validate">
+ </command>
+ <!-- copy qualified name -->
+ <command
+ id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ categoryId="org.eclipse.ui.category.edit"
+ description="Copy the qualified name for the selected element"
+ name="Copy Qualified Name">
+ </command>
+ <command
+ id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
+ categoryId="org.eclipse.ui.category.edit"
+ description="Copy the qualified name for the selected element"
+ name="Copy Qualified Name">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command
+ commandId="org.eclipse.etrice.core.fsm.FSM.validate"
+ style="push"
+ tooltip="Trigger expensive validation">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <!-- copy qualified name -->
+ <menuContribution locationURI="popup:#TextEditorContext?after=copy">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution locationURI="menu:edit?after=copy">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <and>
+ <reference definitionId="org.eclipse.etrice.core.fsm.FSM.XtextEditor.opened" />
+ <iterate>
+ <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
+ </iterate>
+ </and>
+ </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.fsm.FSM.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
+ commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+
+<!-- adding resource factories -->
+
+ <extension
+ point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
+ type="fsm">
+ </parser>
+ </extension>
+ <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
+ <resourceServiceProvider
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
+ uriExtension="fsm">
+ </resourceServiceProvider>
+ </extension>
+
+
+ <!-- marker definitions for org.eclipse.etrice.core.fsm.FSM -->
+ <extension
+ id="fsm.check.fast"
+ name="FSM Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.fast"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="fsm.check.normal"
+ name="FSM Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.normal"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="fsm.check.expensive"
+ name="FSM Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.expensive"/>
+ <persistent value="true"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.xtext.builder.participant">
+ <participant
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
+ fileExtensions="fsm"
+ >
+ </participant>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.compiler.preferencePage"
+ name="Compiler">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.compiler.propertyPage"
+ name="Compiler">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject"/>
+ </enabledWhen>
+ <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
+ </page>
+ </extension>
+
+ <!-- Quick Outline -->
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
+ commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.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.fsm.FSM.Editor.opened"/>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <!-- quickfix marker resolution generator for org.eclipse.etrice.core.fsm.FSM -->
+ <extension
+ point="org.eclipse.ui.ide.markerResolution">
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.fsm.ui.fsm.check.fast">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.fsm.ui.fsm.check.normal">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.fsm.ui.fsm.check.expensive">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ </extension>
+ <!-- Rename Refactoring -->
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
+ commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
+ style="push">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.eclipse.etrice.core.fsm.FSM.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.etrice.core.fsm.FSM"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
+ id="org.eclipse.etrice.core.fsm.FSM.refactoring"
+ name="Refactoring">
+ <keywordReference id="org.eclipse.etrice.core.fsm.ui.keyword_FSM"/>
+ </page>
+ </extension>
+
+ <extension point="org.eclipse.compare.contentViewers">
+ <viewer id="org.eclipse.etrice.core.fsm.FSM.compare.contentViewers"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="fsm">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.compare.contentMergeViewers">
+ <viewer id="org.eclipse.etrice.core.fsm.FSM.compare.contentMergeViewers"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="fsm" label="FSM Compare">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.ui.editors.documentProviders">
+ <provider id="org.eclipse.etrice.core.fsm.FSM.editors.documentProviders"
+ class="org.eclipse.etrice.core.fsm.ui.FSMExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
+ extensions="fsm">
+ </provider>
+ </extension>
+
+</plugin>
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/AbstractFSMUiModule.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/AbstractFSMUiModule.java
new file mode 100644
index 000000000..850f64b3e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/AbstractFSMUiModule.java
@@ -0,0 +1,192 @@
+
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui;
+
+import org.eclipse.xtext.ui.DefaultUiModule;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
+/**
+ * Manual modifications go to {org.eclipse.etrice.core.fsm.ui.FSMUiModule}
+ */
+@SuppressWarnings("all")
+public abstract class AbstractFSMUiModule extends DefaultUiModule {
+
+ public AbstractFSMUiModule(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.fsm.parser.antlr.internal.InternalFSMLexer.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.resource.impl.ResourceDescriptionsProvider.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.generator.generator.GeneratorFragment
+ public Class<? extends org.eclipse.xtext.builder.IXtextBuilderParticipant> bindIXtextBuilderParticipant() {
+ return org.eclipse.xtext.builder.BuilderParticipant.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.generator.GeneratorFragment
+ public org.eclipse.core.resources.IWorkspaceRoot bindIWorkspaceRootToInstance() {
+ return org.eclipse.core.resources.ResourcesPlugin.getWorkspace().getRoot();
+ }
+
+ // contributed by org.eclipse.xtext.generator.generator.GeneratorFragment
+ public void configureBuilderPreferenceStoreInitializer(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer.class).annotatedWith(com.google.inject.name.Names.named("builderPreferenceInitializer")).to(org.eclipse.xtext.builder.preferences.BuilderPreferenceAccess.Initializer.class);
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
+ public Class<? extends org.eclipse.jface.viewers.ILabelProvider> bindILabelProvider() {
+ return org.eclipse.etrice.core.fsm.ui.labeling.FSMLabelProvider.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.fsm.ui.labeling.FSMDescriptionLabelProvider.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.fsm.ui.outline.FSMOutlineTreeProvider.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.fsm.ui.outline.FSMOutlineTreeProvider.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.fsm.ui.quickfix.FSMQuickfixProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.contentAssist.ContentAssistFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider> bindIContentProposalProvider() {
+ return org.eclipse.etrice.core.fsm.ui.contentassist.FSMProposalProvider.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.fsm.ui.contentassist.antlr.FSMParser.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
+ public void configureContentAssistLexerProvider(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMLexer.class).toProvider(org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMLexer.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.fsm.ui.contentassist.antlr.internal.InternalFSMLexer.class);
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.refactoring.RefactorElementNameFragment
+ public Class<? extends org.eclipse.xtext.ui.refactoring.IRenameStrategy> bindIRenameStrategy() {
+ return org.eclipse.xtext.ui.refactoring.impl.DefaultRenameStrategy.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.refactoring.RefactorElementNameFragment
+ public Class<? extends org.eclipse.xtext.ui.refactoring.IReferenceUpdater> bindIReferenceUpdater() {
+ return org.eclipse.xtext.ui.refactoring.impl.DefaultReferenceUpdater.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.refactoring.RefactorElementNameFragment
+ public void configureIPreferenceStoreInitializer(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer.class).annotatedWith(com.google.inject.name.Names.named("RefactoringPreferences")).to(org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences.Initializer.class);
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.refactoring.RefactorElementNameFragment
+ public Class<? extends org.eclipse.xtext.ui.refactoring.IRenameRefactoringProvider> bindIRenameRefactoringProvider() {
+ return org.eclipse.xtext.ui.refactoring.impl.DefaultRenameRefactoringProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.refactoring.RefactorElementNameFragment
+ public Class<? extends org.eclipse.xtext.ui.refactoring.ui.IRenameSupport.Factory> bindIRenameSupport$Factory() {
+ return org.eclipse.xtext.ui.refactoring.ui.DefaultRenameSupport.Factory.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.templates.CodetemplatesGeneratorFragment
+ public com.google.inject.Provider<org.eclipse.xtext.ui.codetemplates.ui.preferences.TemplatesLanguageConfiguration> provideTemplatesLanguageConfiguration() {
+ return org.eclipse.xtext.ui.codetemplates.ui.AccessibleCodetemplatesActivator.getTemplatesLanguageConfigurationProvider();
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.templates.CodetemplatesGeneratorFragment
+ public com.google.inject.Provider<org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistry> provideLanguageRegistry() {
+ return org.eclipse.xtext.ui.codetemplates.ui.AccessibleCodetemplatesActivator.getLanguageRegistry();
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.templates.CodetemplatesGeneratorFragment
+ @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistrar> bindLanguageRegistrar() {
+ return org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistrar.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.templates.CodetemplatesGeneratorFragment
+ public Class<? extends org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage> bindXtextTemplatePreferencePage() {
+ return org.eclipse.xtext.ui.codetemplates.ui.preferences.AdvancedTemplatesPreferencePage.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.templates.CodetemplatesGeneratorFragment
+ public Class<? extends org.eclipse.xtext.ui.codetemplates.ui.partialEditing.IPartialContentAssistParser> bindIPartialContentAssistParser() {
+ return org.eclipse.etrice.core.fsm.ui.contentassist.antlr.PartialFSMContentAssistParser.class;
+ }
+
+ // contributed by org.eclipse.xtext.ui.generator.compare.CompareFragment
+ public Class<? extends org.eclipse.compare.IViewerCreator> bindIViewerCreator() {
+ return org.eclipse.xtext.ui.compare.DefaultViewerCreator.class;
+ }
+
+
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/FSMExecutableExtensionFactory.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/FSMExecutableExtensionFactory.java
new file mode 100644
index 000000000..a72758d39
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/FSMExecutableExtensionFactory.java
@@ -0,0 +1,29 @@
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui;
+
+import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
+import org.osgi.framework.Bundle;
+
+import com.google.inject.Injector;
+
+import org.eclipse.etrice.core.fsm.ui.internal.FSMActivator;
+
+/**
+ * This class was generated. Customizations should only happen in a newly
+ * introduced subclass.
+ */
+public class FSMExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
+
+ @Override
+ protected Bundle getBundle() {
+ return FSMActivator.getInstance().getBundle();
+ }
+
+ @Override
+ protected Injector getInjector() {
+ return FSMActivator.getInstance().getInjector(FSMActivator.ORG_ECLIPSE_ETRICE_CORE_FSM_FSM);
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/AbstractFSMProposalProvider.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/AbstractFSMProposalProvider.java
new file mode 100644
index 000000000..556e86dce
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/AbstractFSMProposalProvider.java
@@ -0,0 +1,32 @@
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.fsm.ui.contentassist;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.xtext.*;
+import org.eclipse.xtext.ui.editor.contentassist.ICompletionProposalAcceptor;
+import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext;
+
+/**
+ * Represents a generated, default implementation of superclass {@link org.eclipse.etrice.core.common.ui.contentassist.BaseProposalProvider}.
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
+ */
+@SuppressWarnings("all")
+public class AbstractFSMProposalProvider extends org.eclipse.etrice.core.common.ui.contentassist.BaseProposalProvider {
+
+ public void completeFSMModel_Greetings(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
+ public void completeGreeting_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
+
+ public void complete_FSMModel(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
+ public void complete_Greeting(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/FSMParser.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/FSMParser.java
new file mode 100644
index 000000000..6f2f8518e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/FSMParser.java
@@ -0,0 +1,147 @@
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.fsm.ui.contentassist.antlr;
+
+import java.util.Collection;
+import java.util.Map;
+import java.util.HashMap;
+
+import org.antlr.runtime.RecognitionException;
+import org.eclipse.xtext.AbstractElement;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.AbstractContentAssistParser;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
+
+import com.google.inject.Inject;
+
+import org.eclipse.etrice.core.fsm.services.FSMGrammarAccess;
+
+public class FSMParser extends AbstractContentAssistParser {
+
+ @Inject
+ private FSMGrammarAccess grammarAccess;
+
+ private Map<AbstractElement, String> nameMappings;
+
+ @Override
+ protected org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMParser createParser() {
+ org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMParser result = new org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMParser(null);
+ result.setGrammarAccess(grammarAccess);
+ return result;
+ }
+
+ @Override
+ protected String getRuleName(AbstractElement element) {
+ if (nameMappings == null) {
+ nameMappings = new HashMap<AbstractElement, String>() {
+ private static final long serialVersionUID = 1L;
+ {
+ put(grammarAccess.getAnnotationTypeAccess().getAlternatives_6(), "rule__AnnotationType__Alternatives_6");
+ put(grammarAccess.getAnnotationAttributeAccess().getAlternatives(), "rule__AnnotationAttribute__Alternatives");
+ put(grammarAccess.getSimpleAnnotationAttributeAccess().getAlternatives_0(), "rule__SimpleAnnotationAttribute__Alternatives_0");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getAlternatives_0(), "rule__EnumAnnotationAttribute__Alternatives_0");
+ put(grammarAccess.getImportAccess().getAlternatives_1(), "rule__Import__Alternatives_1");
+ put(grammarAccess.getTIMEAccess().getAlternatives(), "rule__TIME__Alternatives");
+ put(grammarAccess.getLiteralAccess().getAlternatives(), "rule__Literal__Alternatives");
+ put(grammarAccess.getBooleanLiteralAccess().getAlternatives_1(), "rule__BooleanLiteral__Alternatives_1");
+ put(grammarAccess.getNumberLiteralAccess().getAlternatives(), "rule__NumberLiteral__Alternatives");
+ put(grammarAccess.getIntegerAccess().getAlternatives(), "rule__Integer__Alternatives");
+ put(grammarAccess.getSignedIntegerAccess().getAlternatives_0(), "rule__SignedInteger__Alternatives_0");
+ put(grammarAccess.getRealAccess().getAlternatives(), "rule__Real__Alternatives");
+ put(grammarAccess.getDecimalAccess().getAlternatives_0(), "rule__Decimal__Alternatives_0");
+ put(grammarAccess.getDotDecimalAccess().getAlternatives_0(), "rule__DotDecimal__Alternatives_0");
+ put(grammarAccess.getDecimalDotAccess().getAlternatives_0(), "rule__DecimalDot__Alternatives_0");
+ put(grammarAccess.getDecimalExpAccess().getAlternatives_0(), "rule__DecimalExp__Alternatives_0");
+ put(grammarAccess.getLiteralTypeAccess().getAlternatives(), "rule__LiteralType__Alternatives");
+ put(grammarAccess.getGreetingAccess().getGroup(), "rule__Greeting__Group__0");
+ put(grammarAccess.getAnnotationAccess().getGroup(), "rule__Annotation__Group__0");
+ put(grammarAccess.getAnnotationAccess().getGroup_2(), "rule__Annotation__Group_2__0");
+ put(grammarAccess.getAnnotationAccess().getGroup_2_2(), "rule__Annotation__Group_2_2__0");
+ put(grammarAccess.getKeyValueAccess().getGroup(), "rule__KeyValue__Group__0");
+ put(grammarAccess.getAnnotationTypeAccess().getGroup(), "rule__AnnotationType__Group__0");
+ put(grammarAccess.getAnnotationTypeAccess().getGroup_6_1(), "rule__AnnotationType__Group_6_1__0");
+ put(grammarAccess.getAnnotationTypeAccess().getGroup_6_1_2(), "rule__AnnotationType__Group_6_1_2__0");
+ put(grammarAccess.getSimpleAnnotationAttributeAccess().getGroup(), "rule__SimpleAnnotationAttribute__Group__0");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getGroup(), "rule__EnumAnnotationAttribute__Group__0");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getGroup_6(), "rule__EnumAnnotationAttribute__Group_6__0");
+ put(grammarAccess.getImportAccess().getGroup(), "rule__Import__Group__0");
+ put(grammarAccess.getImportAccess().getGroup_1_0(), "rule__Import__Group_1_0__0");
+ put(grammarAccess.getImportedFQNAccess().getGroup(), "rule__ImportedFQN__Group__0");
+ put(grammarAccess.getDocumentationAccess().getGroup(), "rule__Documentation__Group__0");
+ put(grammarAccess.getTIMEAccess().getGroup_0(), "rule__TIME__Group_0__0");
+ put(grammarAccess.getTIMEAccess().getGroup_1(), "rule__TIME__Group_1__0");
+ put(grammarAccess.getTIMEAccess().getGroup_2(), "rule__TIME__Group_2__0");
+ put(grammarAccess.getTIMEAccess().getGroup_3(), "rule__TIME__Group_3__0");
+ put(grammarAccess.getLiteralArrayAccess().getGroup(), "rule__LiteralArray__Group__0");
+ put(grammarAccess.getLiteralArrayAccess().getGroup_1(), "rule__LiteralArray__Group_1__0");
+ put(grammarAccess.getBooleanLiteralAccess().getGroup(), "rule__BooleanLiteral__Group__0");
+ put(grammarAccess.getRealLiteralAccess().getGroup(), "rule__RealLiteral__Group__0");
+ put(grammarAccess.getIntLiteralAccess().getGroup(), "rule__IntLiteral__Group__0");
+ put(grammarAccess.getStringLiteralAccess().getGroup(), "rule__StringLiteral__Group__0");
+ put(grammarAccess.getSignedIntegerAccess().getGroup(), "rule__SignedInteger__Group__0");
+ put(grammarAccess.getDecimalAccess().getGroup(), "rule__Decimal__Group__0");
+ put(grammarAccess.getDotDecimalAccess().getGroup(), "rule__DotDecimal__Group__0");
+ put(grammarAccess.getDecimalDotAccess().getGroup(), "rule__DecimalDot__Group__0");
+ put(grammarAccess.getDecimalExpAccess().getGroup(), "rule__DecimalExp__Group__0");
+ put(grammarAccess.getFQNAccess().getGroup(), "rule__FQN__Group__0");
+ put(grammarAccess.getFQNAccess().getGroup_1(), "rule__FQN__Group_1__0");
+ put(grammarAccess.getFSMModelAccess().getGreetingsAssignment(), "rule__FSMModel__GreetingsAssignment");
+ put(grammarAccess.getGreetingAccess().getNameAssignment_1(), "rule__Greeting__NameAssignment_1");
+ put(grammarAccess.getAnnotationAccess().getTypeAssignment_1(), "rule__Annotation__TypeAssignment_1");
+ put(grammarAccess.getAnnotationAccess().getAttributesAssignment_2_1(), "rule__Annotation__AttributesAssignment_2_1");
+ put(grammarAccess.getAnnotationAccess().getAttributesAssignment_2_2_1(), "rule__Annotation__AttributesAssignment_2_2_1");
+ put(grammarAccess.getKeyValueAccess().getKeyAssignment_0(), "rule__KeyValue__KeyAssignment_0");
+ put(grammarAccess.getKeyValueAccess().getValueAssignment_2(), "rule__KeyValue__ValueAssignment_2");
+ put(grammarAccess.getAnnotationTypeAccess().getNameAssignment_1(), "rule__AnnotationType__NameAssignment_1");
+ put(grammarAccess.getAnnotationTypeAccess().getDocuAssignment_2(), "rule__AnnotationType__DocuAssignment_2");
+ put(grammarAccess.getAnnotationTypeAccess().getTargetsAssignment_6_0(), "rule__AnnotationType__TargetsAssignment_6_0");
+ put(grammarAccess.getAnnotationTypeAccess().getTargetsAssignment_6_1_1(), "rule__AnnotationType__TargetsAssignment_6_1_1");
+ put(grammarAccess.getAnnotationTypeAccess().getTargetsAssignment_6_1_2_1(), "rule__AnnotationType__TargetsAssignment_6_1_2_1");
+ put(grammarAccess.getAnnotationTypeAccess().getAttributesAssignment_7(), "rule__AnnotationType__AttributesAssignment_7");
+ put(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalAssignment_0_0(), "rule__SimpleAnnotationAttribute__OptionalAssignment_0_0");
+ put(grammarAccess.getSimpleAnnotationAttributeAccess().getNameAssignment_2(), "rule__SimpleAnnotationAttribute__NameAssignment_2");
+ put(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeAssignment_4(), "rule__SimpleAnnotationAttribute__TypeAssignment_4");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalAssignment_0_0(), "rule__EnumAnnotationAttribute__OptionalAssignment_0_0");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getNameAssignment_2(), "rule__EnumAnnotationAttribute__NameAssignment_2");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_5(), "rule__EnumAnnotationAttribute__ValuesAssignment_5");
+ put(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_6_1(), "rule__EnumAnnotationAttribute__ValuesAssignment_6_1");
+ put(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1_0_0(), "rule__Import__ImportedNamespaceAssignment_1_0_0");
+ put(grammarAccess.getImportAccess().getImportURIAssignment_2(), "rule__Import__ImportURIAssignment_2");
+ put(grammarAccess.getDocumentationAccess().getLinesAssignment_2(), "rule__Documentation__LinesAssignment_2");
+ put(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_0(), "rule__LiteralArray__LiteralsAssignment_0");
+ put(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_1_1(), "rule__LiteralArray__LiteralsAssignment_1_1");
+ put(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1(), "rule__BooleanLiteral__IsTrueAssignment_1_1");
+ put(grammarAccess.getRealLiteralAccess().getValueAssignment_1(), "rule__RealLiteral__ValueAssignment_1");
+ put(grammarAccess.getIntLiteralAccess().getValueAssignment_1(), "rule__IntLiteral__ValueAssignment_1");
+ put(grammarAccess.getStringLiteralAccess().getValueAssignment_1(), "rule__StringLiteral__ValueAssignment_1");
+ }
+ };
+ }
+ return nameMappings.get(element);
+ }
+
+ @Override
+ protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
+ try {
+ org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMParser typedParser = (org.eclipse.etrice.core.fsm.ui.contentassist.antlr.internal.InternalFSMParser) parser;
+ typedParser.entryRuleFSMModel();
+ return typedParser.getFollowElements();
+ } catch(RecognitionException ex) {
+ throw new RuntimeException(ex);
+ }
+ }
+
+ @Override
+ protected String[] getInitialHiddenTokens() {
+ return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
+ }
+
+ public FSMGrammarAccess getGrammarAccess() {
+ return this.grammarAccess;
+ }
+
+ public void setGrammarAccess(FSMGrammarAccess grammarAccess) {
+ this.grammarAccess = grammarAccess;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/PartialFSMContentAssistParser.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/PartialFSMContentAssistParser.java
new file mode 100644
index 000000000..f30185465
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/PartialFSMContentAssistParser.java
@@ -0,0 +1,38 @@
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui.contentassist.antlr;
+
+import java.util.Collection;
+import java.util.Collections;
+
+import org.eclipse.xtext.AbstractRule;
+import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.IPartialContentAssistParser;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement;
+import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
+import org.eclipse.xtext.util.PolymorphicDispatcher;
+
+/**
+ * @author Sebastian Zarnekow - Initial contribution and API
+ */
+@SuppressWarnings("restriction")
+public class PartialFSMContentAssistParser extends FSMParser implements IPartialContentAssistParser {
+
+ private AbstractRule rule;
+
+ public void initializeFor(AbstractRule rule) {
+ this.rule = rule;
+ }
+
+ @Override
+ protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
+ if (rule == null || rule.eIsProxy())
+ return Collections.emptyList();
+ String methodName = "entryRule" + rule.getName();
+ PolymorphicDispatcher<Collection<FollowElement>> dispatcher =
+ new PolymorphicDispatcher<Collection<FollowElement>>(methodName, 0, 0, Collections.singletonList(parser));
+ dispatcher.invoke();
+ return parser.getFollowElements();
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g
new file mode 100644
index 000000000..c971671ac
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g
@@ -0,0 +1,3257 @@
+/*
+* generated by Xtext
+*/
+grammar InternalFSM;
+
+options {
+ superClass=AbstractInternalContentAssistParser;
+
+}
+
+@lexer::header {
+package org.eclipse.etrice.core.fsm.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.fsm.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.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.fsm.services.FSMGrammarAccess;
+
+}
+
+@parser::members {
+
+ private FSMGrammarAccess grammarAccess;
+
+ public void setGrammarAccess(FSMGrammarAccess grammarAccess) {
+ this.grammarAccess = grammarAccess;
+ }
+
+ @Override
+ protected Grammar getGrammar() {
+ return grammarAccess.getGrammar();
+ }
+
+ @Override
+ protected String getValueForTokenName(String tokenName) {
+ return tokenName;
+ }
+
+}
+
+
+
+
+// Entry rule entryRuleFSMModel
+entryRuleFSMModel
+:
+{ before(grammarAccess.getFSMModelRule()); }
+ ruleFSMModel
+{ after(grammarAccess.getFSMModelRule()); }
+ EOF
+;
+
+// Rule FSMModel
+ruleFSMModel
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getFSMModelAccess().getGreetingsAssignment()); }
+(rule__FSMModel__GreetingsAssignment)*
+{ after(grammarAccess.getFSMModelAccess().getGreetingsAssignment()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleGreeting
+entryRuleGreeting
+:
+{ before(grammarAccess.getGreetingRule()); }
+ ruleGreeting
+{ after(grammarAccess.getGreetingRule()); }
+ EOF
+;
+
+// Rule Greeting
+ruleGreeting
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getGreetingAccess().getGroup()); }
+(rule__Greeting__Group__0)
+{ after(grammarAccess.getGreetingAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+// Entry rule entryRuleKeyValue
+entryRuleKeyValue
+:
+{ before(grammarAccess.getKeyValueRule()); }
+ ruleKeyValue
+{ after(grammarAccess.getKeyValueRule()); }
+ EOF
+;
+
+// Rule KeyValue
+ruleKeyValue
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getKeyValueAccess().getGroup()); }
+(rule__KeyValue__Group__0)
+{ after(grammarAccess.getKeyValueAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+// Entry rule entryRuleAnnotationTargetType
+entryRuleAnnotationTargetType
+:
+{ before(grammarAccess.getAnnotationTargetTypeRule()); }
+ ruleAnnotationTargetType
+{ after(grammarAccess.getAnnotationTargetTypeRule()); }
+ EOF
+;
+
+// Rule AnnotationTargetType
+ruleAnnotationTargetType
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getAnnotationTargetTypeAccess().getIDTerminalRuleCall()); }
+ RULE_ID
+{ after(grammarAccess.getAnnotationTargetTypeAccess().getIDTerminalRuleCall()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleAnnotationAttribute
+entryRuleAnnotationAttribute
+:
+{ before(grammarAccess.getAnnotationAttributeRule()); }
+ ruleAnnotationAttribute
+{ after(grammarAccess.getAnnotationAttributeRule()); }
+ EOF
+;
+
+// Rule AnnotationAttribute
+ruleAnnotationAttribute
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getAnnotationAttributeAccess().getAlternatives()); }
+(rule__AnnotationAttribute__Alternatives)
+{ after(grammarAccess.getAnnotationAttributeAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSimpleAnnotationAttribute
+entryRuleSimpleAnnotationAttribute
+:
+{ before(grammarAccess.getSimpleAnnotationAttributeRule()); }
+ ruleSimpleAnnotationAttribute
+{ after(grammarAccess.getSimpleAnnotationAttributeRule()); }
+ EOF
+;
+
+// Rule SimpleAnnotationAttribute
+ruleSimpleAnnotationAttribute
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getGroup()); }
+(rule__SimpleAnnotationAttribute__Group__0)
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleEnumAnnotationAttribute
+entryRuleEnumAnnotationAttribute
+:
+{ before(grammarAccess.getEnumAnnotationAttributeRule()); }
+ ruleEnumAnnotationAttribute
+{ after(grammarAccess.getEnumAnnotationAttributeRule()); }
+ EOF
+;
+
+// Rule EnumAnnotationAttribute
+ruleEnumAnnotationAttribute
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getGroup()); }
+(rule__EnumAnnotationAttribute__Group__0)
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().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 entryRuleDocumentation
+entryRuleDocumentation
+:
+{ before(grammarAccess.getDocumentationRule()); }
+ ruleDocumentation
+{ after(grammarAccess.getDocumentationRule()); }
+ EOF
+;
+
+// Rule Documentation
+ruleDocumentation
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDocumentationAccess().getGroup()); }
+(rule__Documentation__Group__0)
+{ after(grammarAccess.getDocumentationAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+// Entry rule entryRuleLiteral
+entryRuleLiteral
+:
+{ before(grammarAccess.getLiteralRule()); }
+ ruleLiteral
+{ after(grammarAccess.getLiteralRule()); }
+ EOF
+;
+
+// Rule Literal
+ruleLiteral
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getLiteralAccess().getAlternatives()); }
+(rule__Literal__Alternatives)
+{ after(grammarAccess.getLiteralAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleBooleanLiteral
+entryRuleBooleanLiteral
+:
+{ before(grammarAccess.getBooleanLiteralRule()); }
+ ruleBooleanLiteral
+{ after(grammarAccess.getBooleanLiteralRule()); }
+ EOF
+;
+
+// Rule BooleanLiteral
+ruleBooleanLiteral
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getBooleanLiteralAccess().getGroup()); }
+(rule__BooleanLiteral__Group__0)
+{ after(grammarAccess.getBooleanLiteralAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleNumberLiteral
+entryRuleNumberLiteral
+:
+{ before(grammarAccess.getNumberLiteralRule()); }
+ ruleNumberLiteral
+{ after(grammarAccess.getNumberLiteralRule()); }
+ EOF
+;
+
+// Rule NumberLiteral
+ruleNumberLiteral
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getNumberLiteralAccess().getAlternatives()); }
+(rule__NumberLiteral__Alternatives)
+{ after(grammarAccess.getNumberLiteralAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleRealLiteral
+entryRuleRealLiteral
+:
+{ before(grammarAccess.getRealLiteralRule()); }
+ ruleRealLiteral
+{ after(grammarAccess.getRealLiteralRule()); }
+ EOF
+;
+
+// Rule RealLiteral
+ruleRealLiteral
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getRealLiteralAccess().getGroup()); }
+(rule__RealLiteral__Group__0)
+{ after(grammarAccess.getRealLiteralAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleIntLiteral
+entryRuleIntLiteral
+:
+{ before(grammarAccess.getIntLiteralRule()); }
+ ruleIntLiteral
+{ after(grammarAccess.getIntLiteralRule()); }
+ EOF
+;
+
+// Rule IntLiteral
+ruleIntLiteral
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getIntLiteralAccess().getGroup()); }
+(rule__IntLiteral__Group__0)
+{ after(grammarAccess.getIntLiteralAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleStringLiteral
+entryRuleStringLiteral
+:
+{ before(grammarAccess.getStringLiteralRule()); }
+ ruleStringLiteral
+{ after(grammarAccess.getStringLiteralRule()); }
+ EOF
+;
+
+// Rule StringLiteral
+ruleStringLiteral
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getStringLiteralAccess().getGroup()); }
+(rule__StringLiteral__Group__0)
+{ after(grammarAccess.getStringLiteralAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleInteger
+entryRuleInteger
+:
+{ before(grammarAccess.getIntegerRule()); }
+ ruleInteger
+{ after(grammarAccess.getIntegerRule()); }
+ EOF
+;
+
+// Rule Integer
+ruleInteger
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getIntegerAccess().getAlternatives()); }
+(rule__Integer__Alternatives)
+{ after(grammarAccess.getIntegerAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSignedInteger
+entryRuleSignedInteger
+@init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+}
+:
+{ before(grammarAccess.getSignedIntegerRule()); }
+ ruleSignedInteger
+{ after(grammarAccess.getSignedIntegerRule()); }
+ EOF
+;
+finally {
+ myHiddenTokenState.restore();
+}
+
+// Rule SignedInteger
+ruleSignedInteger
+ @init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSignedIntegerAccess().getGroup()); }
+(rule__SignedInteger__Group__0)
+{ after(grammarAccess.getSignedIntegerAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+}
+
+
+
+// Entry rule entryRuleHexadecimal
+entryRuleHexadecimal
+@init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+}
+:
+{ before(grammarAccess.getHexadecimalRule()); }
+ ruleHexadecimal
+{ after(grammarAccess.getHexadecimalRule()); }
+ EOF
+;
+finally {
+ myHiddenTokenState.restore();
+}
+
+// Rule Hexadecimal
+ruleHexadecimal
+ @init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall()); }
+ RULE_HEX
+{ after(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+}
+
+
+
+// Entry rule entryRuleReal
+entryRuleReal
+:
+{ before(grammarAccess.getRealRule()); }
+ ruleReal
+{ after(grammarAccess.getRealRule()); }
+ EOF
+;
+
+// Rule Real
+ruleReal
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getRealAccess().getAlternatives()); }
+(rule__Real__Alternatives)
+{ after(grammarAccess.getRealAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleDecimal
+entryRuleDecimal
+@init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+}
+:
+{ before(grammarAccess.getDecimalRule()); }
+ ruleDecimal
+{ after(grammarAccess.getDecimalRule()); }
+ EOF
+;
+finally {
+ myHiddenTokenState.restore();
+}
+
+// Rule Decimal
+ruleDecimal
+ @init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDecimalAccess().getGroup()); }
+(rule__Decimal__Group__0)
+{ after(grammarAccess.getDecimalAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+}
+
+
+
+// Entry rule entryRuleDotDecimal
+entryRuleDotDecimal
+@init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+}
+:
+{ before(grammarAccess.getDotDecimalRule()); }
+ ruleDotDecimal
+{ after(grammarAccess.getDotDecimalRule()); }
+ EOF
+;
+finally {
+ myHiddenTokenState.restore();
+}
+
+// Rule DotDecimal
+ruleDotDecimal
+ @init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDotDecimalAccess().getGroup()); }
+(rule__DotDecimal__Group__0)
+{ after(grammarAccess.getDotDecimalAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+}
+
+
+
+// Entry rule entryRuleDecimalDot
+entryRuleDecimalDot
+@init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+}
+:
+{ before(grammarAccess.getDecimalDotRule()); }
+ ruleDecimalDot
+{ after(grammarAccess.getDecimalDotRule()); }
+ EOF
+;
+finally {
+ myHiddenTokenState.restore();
+}
+
+// Rule DecimalDot
+ruleDecimalDot
+ @init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDecimalDotAccess().getGroup()); }
+(rule__DecimalDot__Group__0)
+{ after(grammarAccess.getDecimalDotAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+}
+
+
+
+// Entry rule entryRuleDecimalExp
+entryRuleDecimalExp
+@init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+}
+:
+{ before(grammarAccess.getDecimalExpRule()); }
+ ruleDecimalExp
+{ after(grammarAccess.getDecimalExpRule()); }
+ EOF
+;
+finally {
+ myHiddenTokenState.restore();
+}
+
+// Rule DecimalExp
+ruleDecimalExp
+ @init {
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDecimalExpAccess().getGroup()); }
+(rule__DecimalExp__Group__0)
+{ after(grammarAccess.getDecimalExpAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+}
+
+
+
+// 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 LiteralType
+ruleLiteralType
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLiteralTypeAccess().getAlternatives()); }
+(rule__LiteralType__Alternatives)
+{ after(grammarAccess.getLiteralTypeAccess().getAlternatives()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+rule__AnnotationAttribute__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAnnotationAttributeAccess().getSimpleAnnotationAttributeParserRuleCall_0()); }
+ ruleSimpleAnnotationAttribute
+{ after(grammarAccess.getAnnotationAttributeAccess().getSimpleAnnotationAttributeParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getAnnotationAttributeAccess().getEnumAnnotationAttributeParserRuleCall_1()); }
+ ruleEnumAnnotationAttribute
+{ after(grammarAccess.getAnnotationAttributeAccess().getEnumAnnotationAttributeParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalAssignment_0_0()); }
+(rule__SimpleAnnotationAttribute__OptionalAssignment_0_0)
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalAssignment_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getMandatoryKeyword_0_1()); }
+
+ 'mandatory'
+
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getMandatoryKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalAssignment_0_0()); }
+(rule__EnumAnnotationAttribute__OptionalAssignment_0_0)
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalAssignment_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getMandatoryKeyword_0_1()); }
+
+ 'mandatory'
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getMandatoryKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__Literal__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0()); }
+ ruleBooleanLiteral
+{ after(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1()); }
+ ruleNumberLiteral
+{ after(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1()); }
+)
+
+ |(
+{ before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2()); }
+ ruleStringLiteral
+{ after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BooleanLiteral__Alternatives_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0()); }
+
+ 'false'
+
+{ after(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0()); }
+)
+
+ |(
+{ before(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1()); }
+(rule__BooleanLiteral__IsTrueAssignment_1_1)
+{ after(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__NumberLiteral__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0()); }
+ ruleIntLiteral
+{ after(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1()); }
+ ruleRealLiteral
+{ after(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Integer__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0()); }
+ ruleSignedInteger
+{ after(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1()); }
+ ruleHexadecimal
+{ after(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SignedInteger__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0()); }
+
+ '+'
+
+{ after(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1()); }
+
+ '-'
+
+{ after(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Real__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRealAccess().getDecimalParserRuleCall_0()); }
+ ruleDecimal
+{ after(grammarAccess.getRealAccess().getDecimalParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1()); }
+ ruleDotDecimal
+{ after(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1()); }
+)
+
+ |(
+{ before(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2()); }
+ ruleDecimalDot
+{ after(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2()); }
+)
+
+ |(
+{ before(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3()); }
+ ruleDecimalExp
+{ after(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Decimal__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0()); }
+
+ '+'
+
+{ after(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1()); }
+
+ '-'
+
+{ after(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DotDecimal__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0()); }
+
+ '+'
+
+{ after(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1()); }
+
+ '-'
+
+{ after(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalDot__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0()); }
+
+ '+'
+
+{ after(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1()); }
+
+ '-'
+
+{ after(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalExp__Alternatives_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0()); }
+
+ '+'
+
+{ after(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1()); }
+
+ '-'
+
+{ after(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__LiteralType__Alternatives
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getLiteralTypeAccess().getBOOLEnumLiteralDeclaration_0()); }
+( 'ptBoolean'
+)
+{ after(grammarAccess.getLiteralTypeAccess().getBOOLEnumLiteralDeclaration_0()); }
+)
+
+ |(
+{ before(grammarAccess.getLiteralTypeAccess().getINTEnumLiteralDeclaration_1()); }
+( 'ptInteger'
+)
+{ after(grammarAccess.getLiteralTypeAccess().getINTEnumLiteralDeclaration_1()); }
+)
+
+ |(
+{ before(grammarAccess.getLiteralTypeAccess().getREALEnumLiteralDeclaration_2()); }
+( 'ptReal'
+)
+{ after(grammarAccess.getLiteralTypeAccess().getREALEnumLiteralDeclaration_2()); }
+)
+
+ |(
+{ before(grammarAccess.getLiteralTypeAccess().getCHAREnumLiteralDeclaration_3()); }
+( 'ptCharacter'
+)
+{ after(grammarAccess.getLiteralTypeAccess().getCHAREnumLiteralDeclaration_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__Greeting__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Greeting__Group__0__Impl
+ rule__Greeting__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Greeting__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGreetingAccess().getHelloKeyword_0()); }
+
+ 'Hello'
+
+{ after(grammarAccess.getGreetingAccess().getHelloKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Greeting__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Greeting__Group__1__Impl
+ rule__Greeting__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Greeting__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGreetingAccess().getNameAssignment_1()); }
+(rule__Greeting__NameAssignment_1)
+{ after(grammarAccess.getGreetingAccess().getNameAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Greeting__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Greeting__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Greeting__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGreetingAccess().getExclamationMarkKeyword_2()); }
+
+ '!'
+
+{ after(grammarAccess.getGreetingAccess().getExclamationMarkKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+rule__KeyValue__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__KeyValue__Group__0__Impl
+ rule__KeyValue__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__KeyValue__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getKeyValueAccess().getKeyAssignment_0()); }
+(rule__KeyValue__KeyAssignment_0)
+{ after(grammarAccess.getKeyValueAccess().getKeyAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__KeyValue__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__KeyValue__Group__1__Impl
+ rule__KeyValue__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__KeyValue__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getKeyValueAccess().getEqualsSignKeyword_1()); }
+
+ '='
+
+{ after(grammarAccess.getKeyValueAccess().getEqualsSignKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__KeyValue__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__KeyValue__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__KeyValue__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getKeyValueAccess().getValueAssignment_2()); }
+(rule__KeyValue__ValueAssignment_2)
+{ after(grammarAccess.getKeyValueAccess().getValueAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+rule__SimpleAnnotationAttribute__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SimpleAnnotationAttribute__Group__0__Impl
+ rule__SimpleAnnotationAttribute__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getAlternatives_0()); }
+(rule__SimpleAnnotationAttribute__Alternatives_0)
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SimpleAnnotationAttribute__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SimpleAnnotationAttribute__Group__1__Impl
+ rule__SimpleAnnotationAttribute__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getAttributeKeyword_1()); }
+
+ 'attribute'
+
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getAttributeKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SimpleAnnotationAttribute__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SimpleAnnotationAttribute__Group__2__Impl
+ rule__SimpleAnnotationAttribute__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getNameAssignment_2()); }
+(rule__SimpleAnnotationAttribute__NameAssignment_2)
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getNameAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SimpleAnnotationAttribute__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SimpleAnnotationAttribute__Group__3__Impl
+ rule__SimpleAnnotationAttribute__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getColonKeyword_3()); }
+
+ ':'
+
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getColonKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SimpleAnnotationAttribute__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SimpleAnnotationAttribute__Group__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeAssignment_4()); }
+(rule__SimpleAnnotationAttribute__TypeAssignment_4)
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeAssignment_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__EnumAnnotationAttribute__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__0__Impl
+ rule__EnumAnnotationAttribute__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getAlternatives_0()); }
+(rule__EnumAnnotationAttribute__Alternatives_0)
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__1__Impl
+ rule__EnumAnnotationAttribute__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getAttributeKeyword_1()); }
+
+ 'attribute'
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getAttributeKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__2__Impl
+ rule__EnumAnnotationAttribute__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getNameAssignment_2()); }
+(rule__EnumAnnotationAttribute__NameAssignment_2)
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getNameAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__3__Impl
+ rule__EnumAnnotationAttribute__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getColonKeyword_3()); }
+
+ ':'
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getColonKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__4__Impl
+ rule__EnumAnnotationAttribute__Group__5
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getLeftCurlyBracketKeyword_4()); }
+
+ '{'
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getLeftCurlyBracketKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__5__Impl
+ rule__EnumAnnotationAttribute__Group__6
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__5__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_5()); }
+(rule__EnumAnnotationAttribute__ValuesAssignment_5)
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_5()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__6
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__6__Impl
+ rule__EnumAnnotationAttribute__Group__7
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__6__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getGroup_6()); }
+(rule__EnumAnnotationAttribute__Group_6__0)*
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getGroup_6()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group__7
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group__7__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group__7__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getRightCurlyBracketKeyword_7()); }
+
+ '}'
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getRightCurlyBracketKeyword_7()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__EnumAnnotationAttribute__Group_6__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group_6__0__Impl
+ rule__EnumAnnotationAttribute__Group_6__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group_6__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getCommaKeyword_6_0()); }
+
+ ','
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getCommaKeyword_6_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__EnumAnnotationAttribute__Group_6__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__EnumAnnotationAttribute__Group_6__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__Group_6__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_6_1()); }
+(rule__EnumAnnotationAttribute__ValuesAssignment_6_1)
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_6_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().getFullStopAsteriskKeyword_1()); }
+(
+ '.*'
+)?
+{ after(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Documentation__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Documentation__Group__0__Impl
+ rule__Documentation__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Documentation__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDocumentationAccess().getDocumentationAction_0()); }
+(
+
+)
+{ after(grammarAccess.getDocumentationAccess().getDocumentationAction_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Documentation__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Documentation__Group__1__Impl
+ rule__Documentation__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Documentation__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDocumentationAccess().getLeftSquareBracketKeyword_1()); }
+
+ '['
+
+{ after(grammarAccess.getDocumentationAccess().getLeftSquareBracketKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Documentation__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Documentation__Group__2__Impl
+ rule__Documentation__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Documentation__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDocumentationAccess().getLinesAssignment_2()); }
+(rule__Documentation__LinesAssignment_2)*
+{ after(grammarAccess.getDocumentationAccess().getLinesAssignment_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Documentation__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Documentation__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Documentation__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDocumentationAccess().getRightSquareBracketKeyword_3()); }
+
+ ']'
+
+{ after(grammarAccess.getDocumentationAccess().getRightSquareBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__BooleanLiteral__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BooleanLiteral__Group__0__Impl
+ rule__BooleanLiteral__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BooleanLiteral__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0()); }
+(
+
+)
+{ after(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__BooleanLiteral__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__BooleanLiteral__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__BooleanLiteral__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBooleanLiteralAccess().getAlternatives_1()); }
+(rule__BooleanLiteral__Alternatives_1)
+{ after(grammarAccess.getBooleanLiteralAccess().getAlternatives_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__RealLiteral__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RealLiteral__Group__0__Impl
+ rule__RealLiteral__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RealLiteral__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0()); }
+(
+
+)
+{ after(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__RealLiteral__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__RealLiteral__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RealLiteral__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRealLiteralAccess().getValueAssignment_1()); }
+(rule__RealLiteral__ValueAssignment_1)
+{ after(grammarAccess.getRealLiteralAccess().getValueAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__IntLiteral__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__IntLiteral__Group__0__Impl
+ rule__IntLiteral__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__IntLiteral__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0()); }
+(
+
+)
+{ after(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__IntLiteral__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__IntLiteral__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__IntLiteral__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getIntLiteralAccess().getValueAssignment_1()); }
+(rule__IntLiteral__ValueAssignment_1)
+{ after(grammarAccess.getIntLiteralAccess().getValueAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__StringLiteral__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StringLiteral__Group__0__Impl
+ rule__StringLiteral__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StringLiteral__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0()); }
+(
+
+)
+{ after(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__StringLiteral__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__StringLiteral__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StringLiteral__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStringLiteralAccess().getValueAssignment_1()); }
+(rule__StringLiteral__ValueAssignment_1)
+{ after(grammarAccess.getStringLiteralAccess().getValueAssignment_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__SignedInteger__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SignedInteger__Group__0__Impl
+ rule__SignedInteger__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SignedInteger__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSignedIntegerAccess().getAlternatives_0()); }
+(rule__SignedInteger__Alternatives_0)?
+{ after(grammarAccess.getSignedIntegerAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SignedInteger__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SignedInteger__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SignedInteger__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1()); }
+ RULE_INT
+{ after(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__Decimal__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Decimal__Group__0__Impl
+ rule__Decimal__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Decimal__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalAccess().getAlternatives_0()); }
+(rule__Decimal__Alternatives_0)?
+{ after(grammarAccess.getDecimalAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Decimal__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Decimal__Group__1__Impl
+ rule__Decimal__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Decimal__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1()); }
+ RULE_INT
+{ after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Decimal__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Decimal__Group__2__Impl
+ rule__Decimal__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Decimal__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalAccess().getFullStopKeyword_2()); }
+
+ '.'
+
+{ after(grammarAccess.getDecimalAccess().getFullStopKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__Decimal__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__Decimal__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Decimal__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3()); }
+ RULE_INT
+{ after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__DotDecimal__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DotDecimal__Group__0__Impl
+ rule__DotDecimal__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DotDecimal__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDotDecimalAccess().getAlternatives_0()); }
+(rule__DotDecimal__Alternatives_0)?
+{ after(grammarAccess.getDotDecimalAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DotDecimal__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DotDecimal__Group__1__Impl
+ rule__DotDecimal__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DotDecimal__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1()); }
+
+ '.'
+
+{ after(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DotDecimal__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DotDecimal__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DotDecimal__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2()); }
+ RULE_INT
+{ after(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__DecimalDot__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalDot__Group__0__Impl
+ rule__DecimalDot__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalDot__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalDotAccess().getAlternatives_0()); }
+(rule__DecimalDot__Alternatives_0)?
+{ after(grammarAccess.getDecimalDotAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DecimalDot__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalDot__Group__1__Impl
+ rule__DecimalDot__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalDot__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1()); }
+ RULE_INT
+{ after(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DecimalDot__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalDot__Group__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalDot__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2()); }
+
+ '.'
+
+{ after(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__DecimalExp__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalExp__Group__0__Impl
+ rule__DecimalExp__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalExp__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalExpAccess().getAlternatives_0()); }
+(rule__DecimalExp__Alternatives_0)?
+{ after(grammarAccess.getDecimalExpAccess().getAlternatives_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DecimalExp__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalExp__Group__1__Impl
+ rule__DecimalExp__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalExp__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1()); }
+ RULE_INT
+{ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DecimalExp__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalExp__Group__2__Impl
+ rule__DecimalExp__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalExp__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2()); }
+
+ '.'
+
+{ after(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DecimalExp__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalExp__Group__3__Impl
+ rule__DecimalExp__Group__4
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalExp__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3()); }
+ RULE_INT
+{ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DecimalExp__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DecimalExp__Group__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DecimalExp__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4()); }
+ RULE_EXP
+{ after(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4()); }
+)
+
+;
+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__FSMModel__GreetingsAssignment
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getFSMModelAccess().getGreetingsGreetingParserRuleCall_0()); }
+ ruleGreeting{ after(grammarAccess.getFSMModelAccess().getGreetingsGreetingParserRuleCall_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__Greeting__NameAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getGreetingAccess().getNameIDTerminalRuleCall_1_0()); }
+ RULE_ID{ after(grammarAccess.getGreetingAccess().getNameIDTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+rule__KeyValue__KeyAssignment_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getKeyValueAccess().getKeyIDTerminalRuleCall_0_0()); }
+ RULE_ID{ after(grammarAccess.getKeyValueAccess().getKeyIDTerminalRuleCall_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__KeyValue__ValueAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getKeyValueAccess().getValueLiteralParserRuleCall_2_0()); }
+ ruleLiteral{ after(grammarAccess.getKeyValueAccess().getValueLiteralParserRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+rule__SimpleAnnotationAttribute__OptionalAssignment_0_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+
+ 'optional'
+
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+)
+
+{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__NameAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0()); }
+ RULE_ID{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SimpleAnnotationAttribute__TypeAssignment_4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeLiteralTypeEnumRuleCall_4_0()); }
+ ruleLiteralType{ after(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeLiteralTypeEnumRuleCall_4_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__OptionalAssignment_0_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+
+ 'optional'
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+)
+
+{ after(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__NameAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0()); }
+ RULE_ID{ after(grammarAccess.getEnumAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__ValuesAssignment_5
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_5_0()); }
+ RULE_STRING{ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_5_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__EnumAnnotationAttribute__ValuesAssignment_6_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_6_1_0()); }
+ RULE_STRING{ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_6_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__Documentation__LinesAssignment_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDocumentationAccess().getLinesSTRINGTerminalRuleCall_2_0()); }
+ RULE_STRING{ after(grammarAccess.getDocumentationAccess().getLinesSTRINGTerminalRuleCall_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+rule__BooleanLiteral__IsTrueAssignment_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0()); }
+(
+{ before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0()); }
+
+ 'true'
+
+{ after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0()); }
+)
+
+{ after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__RealLiteral__ValueAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0()); }
+ ruleReal{ after(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__IntLiteral__ValueAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0()); }
+ ruleInteger{ after(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__StringLiteral__ValueAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0()); }
+ RULE_STRING{ after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+RULE_EXP : ('e'|'E') ('+'|'-')? ('0'..'9')+;
+
+RULE_HEX : ('0x'|'0X') ('0'..'9'|'a'..'f'|'A'..'F')+;
+
+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.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.tokens b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.tokens
new file mode 100644
index 000000000..da536bd45
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.tokens
@@ -0,0 +1,53 @@
+RULE_EXP=7
+RULE_ID=4
+T__29=29
+T__28=28
+T__27=27
+T__26=26
+T__25=25
+T__24=24
+T__23=23
+T__22=22
+RULE_ANY_OTHER=12
+T__21=21
+T__20=20
+RULE_SL_COMMENT=10
+RULE_ML_COMMENT=9
+T__30=30
+T__19=19
+T__31=31
+RULE_STRING=8
+RULE_HEX=5
+T__32=32
+T__33=33
+T__16=16
+T__34=34
+T__15=15
+T__18=18
+T__17=17
+T__14=14
+T__13=13
+RULE_INT=6
+RULE_WS=11
+'Hello'=21
+'!'=22
+'true'=34
+'}'=27
+'{'=26
+'optional'=33
+'.*'=29
+'ptCharacter'=20
+'false'=14
+'='=23
+':'=25
+'['=30
+'-'=16
+'attribute'=24
+'+'=15
+','=28
+'ptReal'=19
+'.'=32
+'ptBoolean'=17
+']'=31
+'mandatory'=13
+'ptInteger'=18
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMLexer.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMLexer.java
new file mode 100644
index 000000000..324f3a794
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMLexer.java
@@ -0,0 +1,1737 @@
+package org.eclipse.etrice.core.fsm.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;
+
+
+import org.antlr.runtime.*;
+import java.util.Stack;
+import java.util.List;
+import java.util.ArrayList;
+
+@SuppressWarnings("all")
+public class InternalFSMLexer extends Lexer {
+ public static final int RULE_ID=4;
+ public static final int RULE_EXP=7;
+ public static final int T__29=29;
+ public static final int T__28=28;
+ public static final int T__27=27;
+ public static final int T__26=26;
+ public static final int T__25=25;
+ public static final int T__24=24;
+ public static final int T__23=23;
+ public static final int T__22=22;
+ public static final int RULE_ANY_OTHER=12;
+ public static final int T__21=21;
+ public static final int T__20=20;
+ public static final int EOF=-1;
+ public static final int RULE_SL_COMMENT=10;
+ public static final int RULE_ML_COMMENT=9;
+ public static final int T__19=19;
+ public static final int T__30=30;
+ public static final int T__31=31;
+ public static final int T__32=32;
+ public static final int RULE_HEX=5;
+ public static final int RULE_STRING=8;
+ public static final int T__16=16;
+ public static final int T__33=33;
+ public static final int T__15=15;
+ public static final int T__34=34;
+ public static final int T__18=18;
+ public static final int T__17=17;
+ public static final int T__14=14;
+ public static final int T__13=13;
+ public static final int RULE_INT=6;
+ public static final int RULE_WS=11;
+
+ // delegates
+ // delegators
+
+ public InternalFSMLexer() {;}
+ public InternalFSMLexer(CharStream input) {
+ this(input, new RecognizerSharedState());
+ }
+ public InternalFSMLexer(CharStream input, RecognizerSharedState state) {
+ super(input,state);
+
+ }
+ public String getGrammarFileName() { return "../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g"; }
+
+ // $ANTLR start "T__13"
+ public final void mT__13() throws RecognitionException {
+ try {
+ int _type = T__13;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:11:7: ( 'mandatory' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:11:9: 'mandatory'
+ {
+ match("mandatory");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__13"
+
+ // $ANTLR start "T__14"
+ public final void mT__14() throws RecognitionException {
+ try {
+ int _type = T__14;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:12:7: ( 'false' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:12:9: 'false'
+ {
+ match("false");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__14"
+
+ // $ANTLR start "T__15"
+ public final void mT__15() throws RecognitionException {
+ try {
+ int _type = T__15;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:13:7: ( '+' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:13:9: '+'
+ {
+ match('+');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__15"
+
+ // $ANTLR start "T__16"
+ public final void mT__16() throws RecognitionException {
+ try {
+ int _type = T__16;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:14:7: ( '-' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:14:9: '-'
+ {
+ match('-');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__16"
+
+ // $ANTLR start "T__17"
+ public final void mT__17() throws RecognitionException {
+ try {
+ int _type = T__17;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:15:7: ( 'ptBoolean' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:15:9: 'ptBoolean'
+ {
+ match("ptBoolean");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__17"
+
+ // $ANTLR start "T__18"
+ public final void mT__18() throws RecognitionException {
+ try {
+ int _type = T__18;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:16:7: ( 'ptInteger' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:16:9: 'ptInteger'
+ {
+ match("ptInteger");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__18"
+
+ // $ANTLR start "T__19"
+ public final void mT__19() throws RecognitionException {
+ try {
+ int _type = T__19;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:17:7: ( 'ptReal' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:17:9: 'ptReal'
+ {
+ match("ptReal");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__19"
+
+ // $ANTLR start "T__20"
+ public final void mT__20() throws RecognitionException {
+ try {
+ int _type = T__20;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:18:7: ( 'ptCharacter' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:18:9: 'ptCharacter'
+ {
+ match("ptCharacter");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__20"
+
+ // $ANTLR start "T__21"
+ public final void mT__21() throws RecognitionException {
+ try {
+ int _type = T__21;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:19:7: ( 'Hello' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:19:9: 'Hello'
+ {
+ match("Hello");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__21"
+
+ // $ANTLR start "T__22"
+ public final void mT__22() throws RecognitionException {
+ try {
+ int _type = T__22;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:20:7: ( '!' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:20:9: '!'
+ {
+ match('!');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__22"
+
+ // $ANTLR start "T__23"
+ public final void mT__23() throws RecognitionException {
+ try {
+ int _type = T__23;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:21:7: ( '=' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:21:9: '='
+ {
+ match('=');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__23"
+
+ // $ANTLR start "T__24"
+ public final void mT__24() throws RecognitionException {
+ try {
+ int _type = T__24;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:22:7: ( 'attribute' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:22:9: 'attribute'
+ {
+ match("attribute");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__24"
+
+ // $ANTLR start "T__25"
+ public final void mT__25() throws RecognitionException {
+ try {
+ int _type = T__25;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:23:7: ( ':' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:23:9: ':'
+ {
+ match(':');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__25"
+
+ // $ANTLR start "T__26"
+ public final void mT__26() throws RecognitionException {
+ try {
+ int _type = T__26;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:24:7: ( '{' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:24:9: '{'
+ {
+ match('{');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__26"
+
+ // $ANTLR start "T__27"
+ public final void mT__27() throws RecognitionException {
+ try {
+ int _type = T__27;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:25:7: ( '}' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:25:9: '}'
+ {
+ match('}');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__27"
+
+ // $ANTLR start "T__28"
+ public final void mT__28() throws RecognitionException {
+ try {
+ int _type = T__28;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:26:7: ( ',' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:26:9: ','
+ {
+ match(',');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__28"
+
+ // $ANTLR start "T__29"
+ public final void mT__29() throws RecognitionException {
+ try {
+ int _type = T__29;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:27:7: ( '.*' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:27:9: '.*'
+ {
+ match(".*");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__29"
+
+ // $ANTLR start "T__30"
+ public final void mT__30() throws RecognitionException {
+ try {
+ int _type = T__30;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:28:7: ( '[' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:28:9: '['
+ {
+ match('[');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__30"
+
+ // $ANTLR start "T__31"
+ public final void mT__31() throws RecognitionException {
+ try {
+ int _type = T__31;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:29:7: ( ']' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:29:9: ']'
+ {
+ match(']');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__31"
+
+ // $ANTLR start "T__32"
+ public final void mT__32() throws RecognitionException {
+ try {
+ int _type = T__32;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:30:7: ( '.' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:30:9: '.'
+ {
+ match('.');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__32"
+
+ // $ANTLR start "T__33"
+ public final void mT__33() throws RecognitionException {
+ try {
+ int _type = T__33;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:31:7: ( 'optional' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:31:9: 'optional'
+ {
+ match("optional");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__33"
+
+ // $ANTLR start "T__34"
+ public final void mT__34() throws RecognitionException {
+ try {
+ int _type = T__34;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:32:7: ( 'true' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:32:9: 'true'
+ {
+ match("true");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__34"
+
+ // $ANTLR start "RULE_EXP"
+ public final void mRULE_EXP() throws RecognitionException {
+ try {
+ int _type = RULE_EXP;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3239:10: ( ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+ )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3239:12: ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+
+ {
+ if ( input.LA(1)=='E'||input.LA(1)=='e' ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3239:22: ( '+' | '-' )?
+ int alt1=2;
+ int LA1_0 = input.LA(1);
+
+ if ( (LA1_0=='+'||LA1_0=='-') ) {
+ alt1=1;
+ }
+ switch (alt1) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:
+ {
+ if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ }
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3239:33: ( '0' .. '9' )+
+ int cnt2=0;
+ loop2:
+ do {
+ int alt2=2;
+ int LA2_0 = input.LA(1);
+
+ if ( ((LA2_0>='0' && LA2_0<='9')) ) {
+ alt2=1;
+ }
+
+
+ switch (alt2) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3239:34: '0' .. '9'
+ {
+ matchRange('0','9');
+
+ }
+ break;
+
+ default :
+ if ( cnt2 >= 1 ) break loop2;
+ EarlyExitException eee =
+ new EarlyExitException(2, input);
+ throw eee;
+ }
+ cnt2++;
+ } while (true);
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_EXP"
+
+ // $ANTLR start "RULE_HEX"
+ public final void mRULE_HEX() throws RecognitionException {
+ try {
+ int _type = RULE_HEX;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3241:10: ( ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+ )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3241:12: ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3241:12: ( '0x' | '0X' )
+ int alt3=2;
+ int LA3_0 = input.LA(1);
+
+ if ( (LA3_0=='0') ) {
+ int LA3_1 = input.LA(2);
+
+ if ( (LA3_1=='x') ) {
+ alt3=1;
+ }
+ else if ( (LA3_1=='X') ) {
+ alt3=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 3, 1, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 3, 0, input);
+
+ throw nvae;
+ }
+ switch (alt3) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3241:13: '0x'
+ {
+ match("0x");
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3241:18: '0X'
+ {
+ match("0X");
+
+
+ }
+ break;
+
+ }
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3241:24: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
+ int cnt4=0;
+ loop4:
+ do {
+ int alt4=2;
+ int LA4_0 = input.LA(1);
+
+ if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='F')||(LA4_0>='a' && LA4_0<='f')) ) {
+ alt4=1;
+ }
+
+
+ switch (alt4) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:
+ {
+ if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='F')||(input.LA(1)>='a' && input.LA(1)<='f') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ default :
+ if ( cnt4 >= 1 ) break loop4;
+ EarlyExitException eee =
+ new EarlyExitException(4, input);
+ throw eee;
+ }
+ cnt4++;
+ } while (true);
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_HEX"
+
+ // $ANTLR start "RULE_ID"
+ public final void mRULE_ID() throws RecognitionException {
+ try {
+ int _type = RULE_ID;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3243:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3243:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3243:11: ( '^' )?
+ int alt5=2;
+ int LA5_0 = input.LA(1);
+
+ if ( (LA5_0=='^') ) {
+ alt5=1;
+ }
+ switch (alt5) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3243:11: '^'
+ {
+ match('^');
+
+ }
+ break;
+
+ }
+
+ if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3243:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ loop6:
+ do {
+ int alt6=2;
+ int LA6_0 = input.LA(1);
+
+ if ( ((LA6_0>='0' && LA6_0<='9')||(LA6_0>='A' && LA6_0<='Z')||LA6_0=='_'||(LA6_0>='a' && LA6_0<='z')) ) {
+ alt6=1;
+ }
+
+
+ switch (alt6) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:
+ {
+ if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ default :
+ break loop6;
+ }
+ } while (true);
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_ID"
+
+ // $ANTLR start "RULE_INT"
+ public final void mRULE_INT() throws RecognitionException {
+ try {
+ int _type = RULE_INT;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3245:10: ( ( '0' .. '9' )+ )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3245:12: ( '0' .. '9' )+
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3245:12: ( '0' .. '9' )+
+ int cnt7=0;
+ loop7:
+ do {
+ int alt7=2;
+ int LA7_0 = input.LA(1);
+
+ if ( ((LA7_0>='0' && LA7_0<='9')) ) {
+ alt7=1;
+ }
+
+
+ switch (alt7) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3245:13: '0' .. '9'
+ {
+ matchRange('0','9');
+
+ }
+ break;
+
+ default :
+ if ( cnt7 >= 1 ) break loop7;
+ EarlyExitException eee =
+ new EarlyExitException(7, input);
+ throw eee;
+ }
+ cnt7++;
+ } while (true);
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_INT"
+
+ // $ANTLR start "RULE_STRING"
+ public final void mRULE_STRING() throws RecognitionException {
+ try {
+ int _type = RULE_STRING;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+ int alt10=2;
+ int LA10_0 = input.LA(1);
+
+ if ( (LA10_0=='\"') ) {
+ alt10=1;
+ }
+ else if ( (LA10_0=='\'') ) {
+ alt10=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 10, 0, input);
+
+ throw nvae;
+ }
+ switch (alt10) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+ {
+ match('\"');
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+ loop8:
+ do {
+ int alt8=3;
+ int LA8_0 = input.LA(1);
+
+ if ( (LA8_0=='\\') ) {
+ alt8=1;
+ }
+ else if ( ((LA8_0>='\u0000' && LA8_0<='!')||(LA8_0>='#' && LA8_0<='[')||(LA8_0>=']' && LA8_0<='\uFFFF')) ) {
+ alt8=2;
+ }
+
+
+ switch (alt8) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+ {
+ match('\\');
+ if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:66: ~ ( ( '\\\\' | '\"' ) )
+ {
+ if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ default :
+ break loop8;
+ }
+ } while (true);
+
+ match('\"');
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+ {
+ match('\'');
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+ loop9:
+ do {
+ int alt9=3;
+ int LA9_0 = input.LA(1);
+
+ if ( (LA9_0=='\\') ) {
+ alt9=1;
+ }
+ else if ( ((LA9_0>='\u0000' && LA9_0<='&')||(LA9_0>='(' && LA9_0<='[')||(LA9_0>=']' && LA9_0<='\uFFFF')) ) {
+ alt9=2;
+ }
+
+
+ switch (alt9) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+ {
+ match('\\');
+ if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3247:137: ~ ( ( '\\\\' | '\\'' ) )
+ {
+ if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ default :
+ break loop9;
+ }
+ } while (true);
+
+ match('\'');
+
+ }
+ break;
+
+ }
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_STRING"
+
+ // $ANTLR start "RULE_ML_COMMENT"
+ public final void mRULE_ML_COMMENT() throws RecognitionException {
+ try {
+ int _type = RULE_ML_COMMENT;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3249:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3249:19: '/*' ( options {greedy=false; } : . )* '*/'
+ {
+ match("/*");
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3249:24: ( options {greedy=false; } : . )*
+ loop11:
+ do {
+ int alt11=2;
+ int LA11_0 = input.LA(1);
+
+ if ( (LA11_0=='*') ) {
+ int LA11_1 = input.LA(2);
+
+ if ( (LA11_1=='/') ) {
+ alt11=2;
+ }
+ else if ( ((LA11_1>='\u0000' && LA11_1<='.')||(LA11_1>='0' && LA11_1<='\uFFFF')) ) {
+ alt11=1;
+ }
+
+
+ }
+ else if ( ((LA11_0>='\u0000' && LA11_0<=')')||(LA11_0>='+' && LA11_0<='\uFFFF')) ) {
+ alt11=1;
+ }
+
+
+ switch (alt11) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3249:52: .
+ {
+ matchAny();
+
+ }
+ break;
+
+ default :
+ break loop11;
+ }
+ } while (true);
+
+ match("*/");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_ML_COMMENT"
+
+ // $ANTLR start "RULE_SL_COMMENT"
+ public final void mRULE_SL_COMMENT() throws RecognitionException {
+ try {
+ int _type = RULE_SL_COMMENT;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+ {
+ match("//");
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:24: (~ ( ( '\\n' | '\\r' ) ) )*
+ loop12:
+ do {
+ int alt12=2;
+ int LA12_0 = input.LA(1);
+
+ if ( ((LA12_0>='\u0000' && LA12_0<='\t')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\uFFFF')) ) {
+ alt12=1;
+ }
+
+
+ switch (alt12) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:24: ~ ( ( '\\n' | '\\r' ) )
+ {
+ if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ default :
+ break loop12;
+ }
+ } while (true);
+
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:40: ( ( '\\r' )? '\\n' )?
+ int alt14=2;
+ int LA14_0 = input.LA(1);
+
+ if ( (LA14_0=='\n'||LA14_0=='\r') ) {
+ alt14=1;
+ }
+ switch (alt14) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:41: ( '\\r' )? '\\n'
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:41: ( '\\r' )?
+ int alt13=2;
+ int LA13_0 = input.LA(1);
+
+ if ( (LA13_0=='\r') ) {
+ alt13=1;
+ }
+ switch (alt13) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3251:41: '\\r'
+ {
+ match('\r');
+
+ }
+ break;
+
+ }
+
+ match('\n');
+
+ }
+ break;
+
+ }
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_SL_COMMENT"
+
+ // $ANTLR start "RULE_WS"
+ public final void mRULE_WS() throws RecognitionException {
+ try {
+ int _type = RULE_WS;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3253:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3253:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3253:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ int cnt15=0;
+ loop15:
+ do {
+ int alt15=2;
+ int LA15_0 = input.LA(1);
+
+ if ( ((LA15_0>='\t' && LA15_0<='\n')||LA15_0=='\r'||LA15_0==' ') ) {
+ alt15=1;
+ }
+
+
+ switch (alt15) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:
+ {
+ if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
+ input.consume();
+
+ }
+ else {
+ MismatchedSetException mse = new MismatchedSetException(null,input);
+ recover(mse);
+ throw mse;}
+
+
+ }
+ break;
+
+ default :
+ if ( cnt15 >= 1 ) break loop15;
+ EarlyExitException eee =
+ new EarlyExitException(15, input);
+ throw eee;
+ }
+ cnt15++;
+ } while (true);
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_WS"
+
+ // $ANTLR start "RULE_ANY_OTHER"
+ public final void mRULE_ANY_OTHER() throws RecognitionException {
+ try {
+ int _type = RULE_ANY_OTHER;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3255:16: ( . )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3255:18: .
+ {
+ matchAny();
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "RULE_ANY_OTHER"
+
+ public void mTokens() throws RecognitionException {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:8: ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | RULE_EXP | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+ int alt16=31;
+ alt16 = dfa16.predict(input);
+ switch (alt16) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:10: T__13
+ {
+ mT__13();
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:16: T__14
+ {
+ mT__14();
+
+ }
+ break;
+ case 3 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:22: T__15
+ {
+ mT__15();
+
+ }
+ break;
+ case 4 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:28: T__16
+ {
+ mT__16();
+
+ }
+ break;
+ case 5 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:34: T__17
+ {
+ mT__17();
+
+ }
+ break;
+ case 6 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:40: T__18
+ {
+ mT__18();
+
+ }
+ break;
+ case 7 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:46: T__19
+ {
+ mT__19();
+
+ }
+ break;
+ case 8 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:52: T__20
+ {
+ mT__20();
+
+ }
+ break;
+ case 9 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:58: T__21
+ {
+ mT__21();
+
+ }
+ break;
+ case 10 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:64: T__22
+ {
+ mT__22();
+
+ }
+ break;
+ case 11 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:70: T__23
+ {
+ mT__23();
+
+ }
+ break;
+ case 12 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:76: T__24
+ {
+ mT__24();
+
+ }
+ break;
+ case 13 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:82: T__25
+ {
+ mT__25();
+
+ }
+ break;
+ case 14 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:88: T__26
+ {
+ mT__26();
+
+ }
+ break;
+ case 15 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:94: T__27
+ {
+ mT__27();
+
+ }
+ break;
+ case 16 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:100: T__28
+ {
+ mT__28();
+
+ }
+ break;
+ case 17 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:106: T__29
+ {
+ mT__29();
+
+ }
+ break;
+ case 18 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:112: T__30
+ {
+ mT__30();
+
+ }
+ break;
+ case 19 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:118: T__31
+ {
+ mT__31();
+
+ }
+ break;
+ case 20 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:124: T__32
+ {
+ mT__32();
+
+ }
+ break;
+ case 21 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:130: T__33
+ {
+ mT__33();
+
+ }
+ break;
+ case 22 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:136: T__34
+ {
+ mT__34();
+
+ }
+ break;
+ case 23 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:142: RULE_EXP
+ {
+ mRULE_EXP();
+
+ }
+ break;
+ case 24 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:151: RULE_HEX
+ {
+ mRULE_HEX();
+
+ }
+ break;
+ case 25 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:160: RULE_ID
+ {
+ mRULE_ID();
+
+ }
+ break;
+ case 26 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:168: RULE_INT
+ {
+ mRULE_INT();
+
+ }
+ break;
+ case 27 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:177: RULE_STRING
+ {
+ mRULE_STRING();
+
+ }
+ break;
+ case 28 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:189: RULE_ML_COMMENT
+ {
+ mRULE_ML_COMMENT();
+
+ }
+ break;
+ case 29 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:205: RULE_SL_COMMENT
+ {
+ mRULE_SL_COMMENT();
+
+ }
+ break;
+ case 30 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:221: RULE_WS
+ {
+ mRULE_WS();
+
+ }
+ break;
+ case 31 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1:229: RULE_ANY_OTHER
+ {
+ mRULE_ANY_OTHER();
+
+ }
+ break;
+
+ }
+
+ }
+
+
+ protected DFA16 dfa16 = new DFA16(this);
+ static final String DFA16_eotS =
+ "\1\uffff\2\36\2\uffff\2\36\2\uffff\1\36\4\uffff\1\54\2\uffff\3"+
+ "\36\1\64\1\34\2\uffff\3\34\2\uffff\1\36\1\uffff\1\36\2\uffff\2\36"+
+ "\2\uffff\1\36\10\uffff\2\36\1\uffff\1\61\6\uffff\23\36\1\126\1\36"+
+ "\1\130\4\36\1\135\2\36\1\uffff\1\36\1\uffff\2\36\1\143\1\36\1\uffff"+
+ "\5\36\1\uffff\10\36\1\162\1\163\1\164\1\165\1\36\1\167\4\uffff\1"+
+ "\36\1\uffff\1\171\1\uffff";
+ static final String DFA16_eofS =
+ "\172\uffff";
+ static final String DFA16_minS =
+ "\1\0\2\141\2\uffff\1\164\1\145\2\uffff\1\164\4\uffff\1\52\2\uffff"+
+ "\1\160\1\162\1\53\1\130\1\101\2\uffff\2\0\1\52\2\uffff\1\156\1\uffff"+
+ "\1\154\2\uffff\1\102\1\154\2\uffff\1\164\10\uffff\1\164\1\165\1"+
+ "\uffff\1\60\6\uffff\1\144\1\163\1\157\1\156\1\145\1\150\1\154\1"+
+ "\162\1\151\1\145\1\141\1\145\1\157\1\164\2\141\1\157\1\151\1\157"+
+ "\1\60\1\164\1\60\1\154\1\145\1\154\1\162\1\60\1\142\1\156\1\uffff"+
+ "\1\157\1\uffff\1\145\1\147\1\60\1\141\1\uffff\1\165\1\141\1\162"+
+ "\1\141\1\145\1\uffff\1\143\1\164\1\154\1\171\1\156\1\162\1\164\1"+
+ "\145\4\60\1\145\1\60\4\uffff\1\162\1\uffff\1\60\1\uffff";
+ static final String DFA16_maxS =
+ "\1\uffff\2\141\2\uffff\1\164\1\145\2\uffff\1\164\4\uffff\1\52\2"+
+ "\uffff\1\160\1\162\1\71\1\170\1\172\2\uffff\2\uffff\1\57\2\uffff"+
+ "\1\156\1\uffff\1\154\2\uffff\1\122\1\154\2\uffff\1\164\10\uffff"+
+ "\1\164\1\165\1\uffff\1\172\6\uffff\1\144\1\163\1\157\1\156\1\145"+
+ "\1\150\1\154\1\162\1\151\1\145\1\141\1\145\1\157\1\164\2\141\1\157"+
+ "\1\151\1\157\1\172\1\164\1\172\1\154\1\145\1\154\1\162\1\172\1\142"+
+ "\1\156\1\uffff\1\157\1\uffff\1\145\1\147\1\172\1\141\1\uffff\1\165"+
+ "\1\141\1\162\1\141\1\145\1\uffff\1\143\1\164\1\154\1\171\1\156\1"+
+ "\162\1\164\1\145\4\172\1\145\1\172\4\uffff\1\162\1\uffff\1\172\1"+
+ "\uffff";
+ static final String DFA16_acceptS =
+ "\3\uffff\1\3\1\4\2\uffff\1\12\1\13\1\uffff\1\15\1\16\1\17\1\20"+
+ "\1\uffff\1\22\1\23\5\uffff\1\31\1\32\3\uffff\1\36\1\37\1\uffff\1"+
+ "\31\1\uffff\1\3\1\4\2\uffff\1\12\1\13\1\uffff\1\15\1\16\1\17\1\20"+
+ "\1\21\1\24\1\22\1\23\2\uffff\1\27\1\uffff\1\30\1\32\1\33\1\34\1"+
+ "\35\1\36\35\uffff\1\26\1\uffff\1\2\4\uffff\1\11\5\uffff\1\7\16\uffff"+
+ "\1\25\1\1\1\5\1\6\1\uffff\1\14\1\uffff\1\10";
+ static final String DFA16_specialS =
+ "\1\2\27\uffff\1\1\1\0\140\uffff}>";
+ static final String[] DFA16_transitionS = {
+ "\11\34\2\33\2\34\1\33\22\34\1\33\1\7\1\30\4\34\1\31\3\34\1"+
+ "\3\1\15\1\4\1\16\1\32\1\24\11\27\1\12\2\34\1\10\3\34\4\26\1"+
+ "\23\2\26\1\6\22\26\1\17\1\34\1\20\1\25\1\26\1\34\1\11\3\26\1"+
+ "\23\1\2\6\26\1\1\1\26\1\21\1\5\3\26\1\22\6\26\1\13\1\34\1\14"+
+ "\uff82\34",
+ "\1\35",
+ "\1\37",
+ "",
+ "",
+ "\1\42",
+ "\1\43",
+ "",
+ "",
+ "\1\46",
+ "",
+ "",
+ "",
+ "",
+ "\1\53",
+ "",
+ "",
+ "\1\57",
+ "\1\60",
+ "\1\61\1\uffff\1\61\2\uffff\12\62",
+ "\1\63\37\uffff\1\63",
+ "\32\36\4\uffff\1\36\1\uffff\32\36",
+ "",
+ "",
+ "\0\65",
+ "\0\65",
+ "\1\66\4\uffff\1\67",
+ "",
+ "",
+ "\1\71",
+ "",
+ "\1\72",
+ "",
+ "",
+ "\1\73\1\76\5\uffff\1\74\10\uffff\1\75",
+ "\1\77",
+ "",
+ "",
+ "\1\100",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\1\101",
+ "\1\102",
+ "",
+ "\12\62\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\1\103",
+ "\1\104",
+ "\1\105",
+ "\1\106",
+ "\1\107",
+ "\1\110",
+ "\1\111",
+ "\1\112",
+ "\1\113",
+ "\1\114",
+ "\1\115",
+ "\1\116",
+ "\1\117",
+ "\1\120",
+ "\1\121",
+ "\1\122",
+ "\1\123",
+ "\1\124",
+ "\1\125",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\1\127",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\1\131",
+ "\1\132",
+ "\1\133",
+ "\1\134",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\1\136",
+ "\1\137",
+ "",
+ "\1\140",
+ "",
+ "\1\141",
+ "\1\142",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\1\144",
+ "",
+ "\1\145",
+ "\1\146",
+ "\1\147",
+ "\1\150",
+ "\1\151",
+ "",
+ "\1\152",
+ "\1\153",
+ "\1\154",
+ "\1\155",
+ "\1\156",
+ "\1\157",
+ "\1\160",
+ "\1\161",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "\1\166",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ "",
+ "",
+ "",
+ "",
+ "\1\170",
+ "",
+ "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36",
+ ""
+ };
+
+ static final short[] DFA16_eot = DFA.unpackEncodedString(DFA16_eotS);
+ static final short[] DFA16_eof = DFA.unpackEncodedString(DFA16_eofS);
+ static final char[] DFA16_min = DFA.unpackEncodedStringToUnsignedChars(DFA16_minS);
+ static final char[] DFA16_max = DFA.unpackEncodedStringToUnsignedChars(DFA16_maxS);
+ static final short[] DFA16_accept = DFA.unpackEncodedString(DFA16_acceptS);
+ static final short[] DFA16_special = DFA.unpackEncodedString(DFA16_specialS);
+ static final short[][] DFA16_transition;
+
+ static {
+ int numStates = DFA16_transitionS.length;
+ DFA16_transition = new short[numStates][];
+ for (int i=0; i<numStates; i++) {
+ DFA16_transition[i] = DFA.unpackEncodedString(DFA16_transitionS[i]);
+ }
+ }
+
+ class DFA16 extends DFA {
+
+ public DFA16(BaseRecognizer recognizer) {
+ this.recognizer = recognizer;
+ this.decisionNumber = 16;
+ this.eot = DFA16_eot;
+ this.eof = DFA16_eof;
+ this.min = DFA16_min;
+ this.max = DFA16_max;
+ this.accept = DFA16_accept;
+ this.special = DFA16_special;
+ this.transition = DFA16_transition;
+ }
+ public String getDescription() {
+ return "1:1: Tokens : ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | RULE_EXP | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+ }
+ public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
+ IntStream input = _input;
+ int _s = s;
+ switch ( s ) {
+ case 0 :
+ int LA16_25 = input.LA(1);
+
+ s = -1;
+ if ( ((LA16_25>='\u0000' && LA16_25<='\uFFFF')) ) {s = 53;}
+
+ else s = 28;
+
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ int LA16_24 = input.LA(1);
+
+ s = -1;
+ if ( ((LA16_24>='\u0000' && LA16_24<='\uFFFF')) ) {s = 53;}
+
+ else s = 28;
+
+ if ( s>=0 ) return s;
+ break;
+ case 2 :
+ int LA16_0 = input.LA(1);
+
+ s = -1;
+ if ( (LA16_0=='m') ) {s = 1;}
+
+ else if ( (LA16_0=='f') ) {s = 2;}
+
+ else if ( (LA16_0=='+') ) {s = 3;}
+
+ else if ( (LA16_0=='-') ) {s = 4;}
+
+ else if ( (LA16_0=='p') ) {s = 5;}
+
+ else if ( (LA16_0=='H') ) {s = 6;}
+
+ else if ( (LA16_0=='!') ) {s = 7;}
+
+ else if ( (LA16_0=='=') ) {s = 8;}
+
+ else if ( (LA16_0=='a') ) {s = 9;}
+
+ else if ( (LA16_0==':') ) {s = 10;}
+
+ else if ( (LA16_0=='{') ) {s = 11;}
+
+ else if ( (LA16_0=='}') ) {s = 12;}
+
+ else if ( (LA16_0==',') ) {s = 13;}
+
+ else if ( (LA16_0=='.') ) {s = 14;}
+
+ else if ( (LA16_0=='[') ) {s = 15;}
+
+ else if ( (LA16_0==']') ) {s = 16;}
+
+ else if ( (LA16_0=='o') ) {s = 17;}
+
+ else if ( (LA16_0=='t') ) {s = 18;}
+
+ else if ( (LA16_0=='E'||LA16_0=='e') ) {s = 19;}
+
+ else if ( (LA16_0=='0') ) {s = 20;}
+
+ else if ( (LA16_0=='^') ) {s = 21;}
+
+ else if ( ((LA16_0>='A' && LA16_0<='D')||(LA16_0>='F' && LA16_0<='G')||(LA16_0>='I' && LA16_0<='Z')||LA16_0=='_'||(LA16_0>='b' && LA16_0<='d')||(LA16_0>='g' && LA16_0<='l')||LA16_0=='n'||(LA16_0>='q' && LA16_0<='s')||(LA16_0>='u' && LA16_0<='z')) ) {s = 22;}
+
+ else if ( ((LA16_0>='1' && LA16_0<='9')) ) {s = 23;}
+
+ else if ( (LA16_0=='\"') ) {s = 24;}
+
+ else if ( (LA16_0=='\'') ) {s = 25;}
+
+ else if ( (LA16_0=='/') ) {s = 26;}
+
+ else if ( ((LA16_0>='\t' && LA16_0<='\n')||LA16_0=='\r'||LA16_0==' ') ) {s = 27;}
+
+ else if ( ((LA16_0>='\u0000' && LA16_0<='\b')||(LA16_0>='\u000B' && LA16_0<='\f')||(LA16_0>='\u000E' && LA16_0<='\u001F')||(LA16_0>='#' && LA16_0<='&')||(LA16_0>='(' && LA16_0<='*')||(LA16_0>=';' && LA16_0<='<')||(LA16_0>='>' && LA16_0<='@')||LA16_0=='\\'||LA16_0=='`'||LA16_0=='|'||(LA16_0>='~' && LA16_0<='\uFFFF')) ) {s = 28;}
+
+ if ( s>=0 ) return s;
+ break;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(getDescription(), 16, _s, input);
+ error(nvae);
+ throw nvae;
+ }
+ }
+
+
+} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMParser.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMParser.java
new file mode 100644
index 000000000..058d5791f
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSMParser.java
@@ -0,0 +1,8825 @@
+package org.eclipse.etrice.core.fsm.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.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.fsm.services.FSMGrammarAccess;
+
+
+
+import org.antlr.runtime.*;
+import java.util.Stack;
+import java.util.List;
+import java.util.ArrayList;
+
+@SuppressWarnings("all")
+public class InternalFSMParser extends AbstractInternalContentAssistParser {
+ public static final String[] tokenNames = new String[] {
+ "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_HEX", "RULE_INT", "RULE_EXP", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'mandatory'", "'false'", "'+'", "'-'", "'ptBoolean'", "'ptInteger'", "'ptReal'", "'ptCharacter'", "'Hello'", "'!'", "'='", "'attribute'", "':'", "'{'", "'}'", "','", "'.*'", "'['", "']'", "'.'", "'optional'", "'true'"
+ };
+ public static final int RULE_EXP=7;
+ public static final int RULE_ID=4;
+ public static final int T__29=29;
+ public static final int T__28=28;
+ public static final int T__27=27;
+ public static final int T__26=26;
+ public static final int T__25=25;
+ public static final int T__24=24;
+ public static final int T__23=23;
+ public static final int T__22=22;
+ public static final int RULE_ANY_OTHER=12;
+ public static final int T__21=21;
+ public static final int T__20=20;
+ public static final int RULE_SL_COMMENT=10;
+ public static final int EOF=-1;
+ public static final int RULE_ML_COMMENT=9;
+ public static final int T__30=30;
+ public static final int T__19=19;
+ public static final int T__31=31;
+ public static final int RULE_STRING=8;
+ public static final int RULE_HEX=5;
+ public static final int T__32=32;
+ public static final int T__33=33;
+ public static final int T__16=16;
+ public static final int T__34=34;
+ public static final int T__15=15;
+ public static final int T__18=18;
+ public static final int T__17=17;
+ public static final int T__14=14;
+ public static final int T__13=13;
+ public static final int RULE_INT=6;
+ public static final int RULE_WS=11;
+
+ // delegates
+ // delegators
+
+
+ public InternalFSMParser(TokenStream input) {
+ this(input, new RecognizerSharedState());
+ }
+ public InternalFSMParser(TokenStream input, RecognizerSharedState state) {
+ super(input, state);
+
+ }
+
+
+ public String[] getTokenNames() { return InternalFSMParser.tokenNames; }
+ public String getGrammarFileName() { return "../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g"; }
+
+
+
+ private FSMGrammarAccess grammarAccess;
+
+ public void setGrammarAccess(FSMGrammarAccess grammarAccess) {
+ this.grammarAccess = grammarAccess;
+ }
+
+ @Override
+ protected Grammar getGrammar() {
+ return grammarAccess.getGrammar();
+ }
+
+ @Override
+ protected String getValueForTokenName(String tokenName) {
+ return tokenName;
+ }
+
+
+
+
+ // $ANTLR start "entryRuleFSMModel"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:60:1: entryRuleFSMModel : ruleFSMModel EOF ;
+ public final void entryRuleFSMModel() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:61:1: ( ruleFSMModel EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:62:1: ruleFSMModel EOF
+ {
+ before(grammarAccess.getFSMModelRule());
+ pushFollow(FOLLOW_ruleFSMModel_in_entryRuleFSMModel61);
+ ruleFSMModel();
+
+ state._fsp--;
+
+ after(grammarAccess.getFSMModelRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleFSMModel68);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleFSMModel"
+
+
+ // $ANTLR start "ruleFSMModel"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:69:1: ruleFSMModel : ( ( rule__FSMModel__GreetingsAssignment )* ) ;
+ public final void ruleFSMModel() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:73:2: ( ( ( rule__FSMModel__GreetingsAssignment )* ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:74:1: ( ( rule__FSMModel__GreetingsAssignment )* )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:74:1: ( ( rule__FSMModel__GreetingsAssignment )* )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:75:1: ( rule__FSMModel__GreetingsAssignment )*
+ {
+ before(grammarAccess.getFSMModelAccess().getGreetingsAssignment());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:76:1: ( rule__FSMModel__GreetingsAssignment )*
+ loop1:
+ do {
+ int alt1=2;
+ int LA1_0 = input.LA(1);
+
+ if ( (LA1_0==21) ) {
+ alt1=1;
+ }
+
+
+ switch (alt1) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:76:2: rule__FSMModel__GreetingsAssignment
+ {
+ pushFollow(FOLLOW_rule__FSMModel__GreetingsAssignment_in_ruleFSMModel94);
+ rule__FSMModel__GreetingsAssignment();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ default :
+ break loop1;
+ }
+ } while (true);
+
+ after(grammarAccess.getFSMModelAccess().getGreetingsAssignment());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleFSMModel"
+
+
+ // $ANTLR start "entryRuleGreeting"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:88:1: entryRuleGreeting : ruleGreeting EOF ;
+ public final void entryRuleGreeting() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:89:1: ( ruleGreeting EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:90:1: ruleGreeting EOF
+ {
+ before(grammarAccess.getGreetingRule());
+ pushFollow(FOLLOW_ruleGreeting_in_entryRuleGreeting122);
+ ruleGreeting();
+
+ state._fsp--;
+
+ after(grammarAccess.getGreetingRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleGreeting129);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleGreeting"
+
+
+ // $ANTLR start "ruleGreeting"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:97:1: ruleGreeting : ( ( rule__Greeting__Group__0 ) ) ;
+ public final void ruleGreeting() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:101:2: ( ( ( rule__Greeting__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:102:1: ( ( rule__Greeting__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:102:1: ( ( rule__Greeting__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:103:1: ( rule__Greeting__Group__0 )
+ {
+ before(grammarAccess.getGreetingAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:104:1: ( rule__Greeting__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:104:2: rule__Greeting__Group__0
+ {
+ pushFollow(FOLLOW_rule__Greeting__Group__0_in_ruleGreeting155);
+ rule__Greeting__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getGreetingAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleGreeting"
+
+
+ // $ANTLR start "entryRuleKeyValue"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:118:1: entryRuleKeyValue : ruleKeyValue EOF ;
+ public final void entryRuleKeyValue() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:119:1: ( ruleKeyValue EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:120:1: ruleKeyValue EOF
+ {
+ before(grammarAccess.getKeyValueRule());
+ pushFollow(FOLLOW_ruleKeyValue_in_entryRuleKeyValue184);
+ ruleKeyValue();
+
+ state._fsp--;
+
+ after(grammarAccess.getKeyValueRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleKeyValue191);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleKeyValue"
+
+
+ // $ANTLR start "ruleKeyValue"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:127:1: ruleKeyValue : ( ( rule__KeyValue__Group__0 ) ) ;
+ public final void ruleKeyValue() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:131:2: ( ( ( rule__KeyValue__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:132:1: ( ( rule__KeyValue__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:132:1: ( ( rule__KeyValue__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:133:1: ( rule__KeyValue__Group__0 )
+ {
+ before(grammarAccess.getKeyValueAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:134:1: ( rule__KeyValue__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:134:2: rule__KeyValue__Group__0
+ {
+ pushFollow(FOLLOW_rule__KeyValue__Group__0_in_ruleKeyValue217);
+ rule__KeyValue__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getKeyValueAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleKeyValue"
+
+
+ // $ANTLR start "entryRuleAnnotationTargetType"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:148:1: entryRuleAnnotationTargetType : ruleAnnotationTargetType EOF ;
+ public final void entryRuleAnnotationTargetType() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:149:1: ( ruleAnnotationTargetType EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:150:1: ruleAnnotationTargetType EOF
+ {
+ before(grammarAccess.getAnnotationTargetTypeRule());
+ pushFollow(FOLLOW_ruleAnnotationTargetType_in_entryRuleAnnotationTargetType246);
+ ruleAnnotationTargetType();
+
+ state._fsp--;
+
+ after(grammarAccess.getAnnotationTargetTypeRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAnnotationTargetType253);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleAnnotationTargetType"
+
+
+ // $ANTLR start "ruleAnnotationTargetType"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:157:1: ruleAnnotationTargetType : ( RULE_ID ) ;
+ public final void ruleAnnotationTargetType() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:161:2: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:162:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:162:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:163:1: RULE_ID
+ {
+ before(grammarAccess.getAnnotationTargetTypeAccess().getIDTerminalRuleCall());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAnnotationTargetType279);
+ after(grammarAccess.getAnnotationTargetTypeAccess().getIDTerminalRuleCall());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleAnnotationTargetType"
+
+
+ // $ANTLR start "entryRuleAnnotationAttribute"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:176:1: entryRuleAnnotationAttribute : ruleAnnotationAttribute EOF ;
+ public final void entryRuleAnnotationAttribute() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:177:1: ( ruleAnnotationAttribute EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:178:1: ruleAnnotationAttribute EOF
+ {
+ before(grammarAccess.getAnnotationAttributeRule());
+ pushFollow(FOLLOW_ruleAnnotationAttribute_in_entryRuleAnnotationAttribute305);
+ ruleAnnotationAttribute();
+
+ state._fsp--;
+
+ after(grammarAccess.getAnnotationAttributeRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAnnotationAttribute312);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleAnnotationAttribute"
+
+
+ // $ANTLR start "ruleAnnotationAttribute"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:185:1: ruleAnnotationAttribute : ( ( rule__AnnotationAttribute__Alternatives ) ) ;
+ public final void ruleAnnotationAttribute() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:189:2: ( ( ( rule__AnnotationAttribute__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:190:1: ( ( rule__AnnotationAttribute__Alternatives ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:190:1: ( ( rule__AnnotationAttribute__Alternatives ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:191:1: ( rule__AnnotationAttribute__Alternatives )
+ {
+ before(grammarAccess.getAnnotationAttributeAccess().getAlternatives());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:192:1: ( rule__AnnotationAttribute__Alternatives )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:192:2: rule__AnnotationAttribute__Alternatives
+ {
+ pushFollow(FOLLOW_rule__AnnotationAttribute__Alternatives_in_ruleAnnotationAttribute338);
+ rule__AnnotationAttribute__Alternatives();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getAnnotationAttributeAccess().getAlternatives());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleAnnotationAttribute"
+
+
+ // $ANTLR start "entryRuleSimpleAnnotationAttribute"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:204:1: entryRuleSimpleAnnotationAttribute : ruleSimpleAnnotationAttribute EOF ;
+ public final void entryRuleSimpleAnnotationAttribute() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:205:1: ( ruleSimpleAnnotationAttribute EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:206:1: ruleSimpleAnnotationAttribute EOF
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeRule());
+ pushFollow(FOLLOW_ruleSimpleAnnotationAttribute_in_entryRuleSimpleAnnotationAttribute365);
+ ruleSimpleAnnotationAttribute();
+
+ state._fsp--;
+
+ after(grammarAccess.getSimpleAnnotationAttributeRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleSimpleAnnotationAttribute372);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleSimpleAnnotationAttribute"
+
+
+ // $ANTLR start "ruleSimpleAnnotationAttribute"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:213:1: ruleSimpleAnnotationAttribute : ( ( rule__SimpleAnnotationAttribute__Group__0 ) ) ;
+ public final void ruleSimpleAnnotationAttribute() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:217:2: ( ( ( rule__SimpleAnnotationAttribute__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:218:1: ( ( rule__SimpleAnnotationAttribute__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:218:1: ( ( rule__SimpleAnnotationAttribute__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:219:1: ( rule__SimpleAnnotationAttribute__Group__0 )
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:220:1: ( rule__SimpleAnnotationAttribute__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:220:2: rule__SimpleAnnotationAttribute__Group__0
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__0_in_ruleSimpleAnnotationAttribute398);
+ rule__SimpleAnnotationAttribute__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleSimpleAnnotationAttribute"
+
+
+ // $ANTLR start "entryRuleEnumAnnotationAttribute"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:232:1: entryRuleEnumAnnotationAttribute : ruleEnumAnnotationAttribute EOF ;
+ public final void entryRuleEnumAnnotationAttribute() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:233:1: ( ruleEnumAnnotationAttribute EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:234:1: ruleEnumAnnotationAttribute EOF
+ {
+ before(grammarAccess.getEnumAnnotationAttributeRule());
+ pushFollow(FOLLOW_ruleEnumAnnotationAttribute_in_entryRuleEnumAnnotationAttribute425);
+ ruleEnumAnnotationAttribute();
+
+ state._fsp--;
+
+ after(grammarAccess.getEnumAnnotationAttributeRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleEnumAnnotationAttribute432);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleEnumAnnotationAttribute"
+
+
+ // $ANTLR start "ruleEnumAnnotationAttribute"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:241:1: ruleEnumAnnotationAttribute : ( ( rule__EnumAnnotationAttribute__Group__0 ) ) ;
+ public final void ruleEnumAnnotationAttribute() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:245:2: ( ( ( rule__EnumAnnotationAttribute__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:246:1: ( ( rule__EnumAnnotationAttribute__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:246:1: ( ( rule__EnumAnnotationAttribute__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:247:1: ( rule__EnumAnnotationAttribute__Group__0 )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:248:1: ( rule__EnumAnnotationAttribute__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:248:2: rule__EnumAnnotationAttribute__Group__0
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__0_in_ruleEnumAnnotationAttribute458);
+ rule__EnumAnnotationAttribute__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleEnumAnnotationAttribute"
+
+
+ // $ANTLR start "entryRuleImportedFQN"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:262:1: entryRuleImportedFQN : ruleImportedFQN EOF ;
+ public final void entryRuleImportedFQN() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:263:1: ( ruleImportedFQN EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:264:1: ruleImportedFQN EOF
+ {
+ before(grammarAccess.getImportedFQNRule());
+ pushFollow(FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN487);
+ ruleImportedFQN();
+
+ state._fsp--;
+
+ after(grammarAccess.getImportedFQNRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleImportedFQN494);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleImportedFQN"
+
+
+ // $ANTLR start "ruleImportedFQN"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:271:1: ruleImportedFQN : ( ( rule__ImportedFQN__Group__0 ) ) ;
+ public final void ruleImportedFQN() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:275:2: ( ( ( rule__ImportedFQN__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:276:1: ( ( rule__ImportedFQN__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:276:1: ( ( rule__ImportedFQN__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:277:1: ( rule__ImportedFQN__Group__0 )
+ {
+ before(grammarAccess.getImportedFQNAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:278:1: ( rule__ImportedFQN__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:278:2: rule__ImportedFQN__Group__0
+ {
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__0_in_ruleImportedFQN520);
+ rule__ImportedFQN__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getImportedFQNAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleImportedFQN"
+
+
+ // $ANTLR start "entryRuleDocumentation"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:290:1: entryRuleDocumentation : ruleDocumentation EOF ;
+ public final void entryRuleDocumentation() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:291:1: ( ruleDocumentation EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:292:1: ruleDocumentation EOF
+ {
+ before(grammarAccess.getDocumentationRule());
+ pushFollow(FOLLOW_ruleDocumentation_in_entryRuleDocumentation547);
+ ruleDocumentation();
+
+ state._fsp--;
+
+ after(grammarAccess.getDocumentationRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDocumentation554);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleDocumentation"
+
+
+ // $ANTLR start "ruleDocumentation"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:299:1: ruleDocumentation : ( ( rule__Documentation__Group__0 ) ) ;
+ public final void ruleDocumentation() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:303:2: ( ( ( rule__Documentation__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:304:1: ( ( rule__Documentation__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:304:1: ( ( rule__Documentation__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:305:1: ( rule__Documentation__Group__0 )
+ {
+ before(grammarAccess.getDocumentationAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:306:1: ( rule__Documentation__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:306:2: rule__Documentation__Group__0
+ {
+ pushFollow(FOLLOW_rule__Documentation__Group__0_in_ruleDocumentation580);
+ rule__Documentation__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getDocumentationAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleDocumentation"
+
+
+ // $ANTLR start "entryRuleLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:322:1: entryRuleLiteral : ruleLiteral EOF ;
+ public final void entryRuleLiteral() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:323:1: ( ruleLiteral EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:324:1: ruleLiteral EOF
+ {
+ before(grammarAccess.getLiteralRule());
+ pushFollow(FOLLOW_ruleLiteral_in_entryRuleLiteral611);
+ ruleLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getLiteralRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleLiteral618);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleLiteral"
+
+
+ // $ANTLR start "ruleLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:331:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ;
+ public final void ruleLiteral() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:335:2: ( ( ( rule__Literal__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:336:1: ( ( rule__Literal__Alternatives ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:336:1: ( ( rule__Literal__Alternatives ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:337:1: ( rule__Literal__Alternatives )
+ {
+ before(grammarAccess.getLiteralAccess().getAlternatives());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:338:1: ( rule__Literal__Alternatives )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:338:2: rule__Literal__Alternatives
+ {
+ pushFollow(FOLLOW_rule__Literal__Alternatives_in_ruleLiteral644);
+ rule__Literal__Alternatives();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getLiteralAccess().getAlternatives());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleLiteral"
+
+
+ // $ANTLR start "entryRuleBooleanLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:350:1: entryRuleBooleanLiteral : ruleBooleanLiteral EOF ;
+ public final void entryRuleBooleanLiteral() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:351:1: ( ruleBooleanLiteral EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:352:1: ruleBooleanLiteral EOF
+ {
+ before(grammarAccess.getBooleanLiteralRule());
+ pushFollow(FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral671);
+ ruleBooleanLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getBooleanLiteralRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanLiteral678);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleBooleanLiteral"
+
+
+ // $ANTLR start "ruleBooleanLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:359:1: ruleBooleanLiteral : ( ( rule__BooleanLiteral__Group__0 ) ) ;
+ public final void ruleBooleanLiteral() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:363:2: ( ( ( rule__BooleanLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:364:1: ( ( rule__BooleanLiteral__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:364:1: ( ( rule__BooleanLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:365:1: ( rule__BooleanLiteral__Group__0 )
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:366:1: ( rule__BooleanLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:366:2: rule__BooleanLiteral__Group__0
+ {
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__0_in_ruleBooleanLiteral704);
+ rule__BooleanLiteral__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getBooleanLiteralAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleBooleanLiteral"
+
+
+ // $ANTLR start "entryRuleNumberLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:378:1: entryRuleNumberLiteral : ruleNumberLiteral EOF ;
+ public final void entryRuleNumberLiteral() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:379:1: ( ruleNumberLiteral EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:380:1: ruleNumberLiteral EOF
+ {
+ before(grammarAccess.getNumberLiteralRule());
+ pushFollow(FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral731);
+ ruleNumberLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getNumberLiteralRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleNumberLiteral738);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleNumberLiteral"
+
+
+ // $ANTLR start "ruleNumberLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:387:1: ruleNumberLiteral : ( ( rule__NumberLiteral__Alternatives ) ) ;
+ public final void ruleNumberLiteral() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:391:2: ( ( ( rule__NumberLiteral__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:392:1: ( ( rule__NumberLiteral__Alternatives ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:392:1: ( ( rule__NumberLiteral__Alternatives ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:393:1: ( rule__NumberLiteral__Alternatives )
+ {
+ before(grammarAccess.getNumberLiteralAccess().getAlternatives());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:394:1: ( rule__NumberLiteral__Alternatives )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:394:2: rule__NumberLiteral__Alternatives
+ {
+ pushFollow(FOLLOW_rule__NumberLiteral__Alternatives_in_ruleNumberLiteral764);
+ rule__NumberLiteral__Alternatives();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getNumberLiteralAccess().getAlternatives());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleNumberLiteral"
+
+
+ // $ANTLR start "entryRuleRealLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:406:1: entryRuleRealLiteral : ruleRealLiteral EOF ;
+ public final void entryRuleRealLiteral() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:407:1: ( ruleRealLiteral EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:408:1: ruleRealLiteral EOF
+ {
+ before(grammarAccess.getRealLiteralRule());
+ pushFollow(FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral791);
+ ruleRealLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealLiteralRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleRealLiteral798);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleRealLiteral"
+
+
+ // $ANTLR start "ruleRealLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:415:1: ruleRealLiteral : ( ( rule__RealLiteral__Group__0 ) ) ;
+ public final void ruleRealLiteral() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:419:2: ( ( ( rule__RealLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:420:1: ( ( rule__RealLiteral__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:420:1: ( ( rule__RealLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:421:1: ( rule__RealLiteral__Group__0 )
+ {
+ before(grammarAccess.getRealLiteralAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:422:1: ( rule__RealLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:422:2: rule__RealLiteral__Group__0
+ {
+ pushFollow(FOLLOW_rule__RealLiteral__Group__0_in_ruleRealLiteral824);
+ rule__RealLiteral__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getRealLiteralAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleRealLiteral"
+
+
+ // $ANTLR start "entryRuleIntLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:434:1: entryRuleIntLiteral : ruleIntLiteral EOF ;
+ public final void entryRuleIntLiteral() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:435:1: ( ruleIntLiteral EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:436:1: ruleIntLiteral EOF
+ {
+ before(grammarAccess.getIntLiteralRule());
+ pushFollow(FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral851);
+ ruleIntLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getIntLiteralRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleIntLiteral858);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleIntLiteral"
+
+
+ // $ANTLR start "ruleIntLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:443:1: ruleIntLiteral : ( ( rule__IntLiteral__Group__0 ) ) ;
+ public final void ruleIntLiteral() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:447:2: ( ( ( rule__IntLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:448:1: ( ( rule__IntLiteral__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:448:1: ( ( rule__IntLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:449:1: ( rule__IntLiteral__Group__0 )
+ {
+ before(grammarAccess.getIntLiteralAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:450:1: ( rule__IntLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:450:2: rule__IntLiteral__Group__0
+ {
+ pushFollow(FOLLOW_rule__IntLiteral__Group__0_in_ruleIntLiteral884);
+ rule__IntLiteral__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getIntLiteralAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleIntLiteral"
+
+
+ // $ANTLR start "entryRuleStringLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:462:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
+ public final void entryRuleStringLiteral() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:463:1: ( ruleStringLiteral EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:464:1: ruleStringLiteral EOF
+ {
+ before(grammarAccess.getStringLiteralRule());
+ pushFollow(FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral911);
+ ruleStringLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getStringLiteralRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleStringLiteral918);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleStringLiteral"
+
+
+ // $ANTLR start "ruleStringLiteral"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:471:1: ruleStringLiteral : ( ( rule__StringLiteral__Group__0 ) ) ;
+ public final void ruleStringLiteral() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:475:2: ( ( ( rule__StringLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:476:1: ( ( rule__StringLiteral__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:476:1: ( ( rule__StringLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:477:1: ( rule__StringLiteral__Group__0 )
+ {
+ before(grammarAccess.getStringLiteralAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:478:1: ( rule__StringLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:478:2: rule__StringLiteral__Group__0
+ {
+ pushFollow(FOLLOW_rule__StringLiteral__Group__0_in_ruleStringLiteral944);
+ rule__StringLiteral__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getStringLiteralAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleStringLiteral"
+
+
+ // $ANTLR start "entryRuleInteger"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:490:1: entryRuleInteger : ruleInteger EOF ;
+ public final void entryRuleInteger() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:491:1: ( ruleInteger EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:492:1: ruleInteger EOF
+ {
+ before(grammarAccess.getIntegerRule());
+ pushFollow(FOLLOW_ruleInteger_in_entryRuleInteger971);
+ ruleInteger();
+
+ state._fsp--;
+
+ after(grammarAccess.getIntegerRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleInteger978);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleInteger"
+
+
+ // $ANTLR start "ruleInteger"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:499:1: ruleInteger : ( ( rule__Integer__Alternatives ) ) ;
+ public final void ruleInteger() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:503:2: ( ( ( rule__Integer__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:504:1: ( ( rule__Integer__Alternatives ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:504:1: ( ( rule__Integer__Alternatives ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:505:1: ( rule__Integer__Alternatives )
+ {
+ before(grammarAccess.getIntegerAccess().getAlternatives());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:506:1: ( rule__Integer__Alternatives )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:506:2: rule__Integer__Alternatives
+ {
+ pushFollow(FOLLOW_rule__Integer__Alternatives_in_ruleInteger1004);
+ rule__Integer__Alternatives();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getIntegerAccess().getAlternatives());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleInteger"
+
+
+ // $ANTLR start "entryRuleSignedInteger"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:518:1: entryRuleSignedInteger : ruleSignedInteger EOF ;
+ public final void entryRuleSignedInteger() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:522:1: ( ruleSignedInteger EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:523:1: ruleSignedInteger EOF
+ {
+ before(grammarAccess.getSignedIntegerRule());
+ pushFollow(FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger1036);
+ ruleSignedInteger();
+
+ state._fsp--;
+
+ after(grammarAccess.getSignedIntegerRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleSignedInteger1043);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleSignedInteger"
+
+
+ // $ANTLR start "ruleSignedInteger"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:533:1: ruleSignedInteger : ( ( rule__SignedInteger__Group__0 ) ) ;
+ public final void ruleSignedInteger() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:538:2: ( ( ( rule__SignedInteger__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:539:1: ( ( rule__SignedInteger__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:539:1: ( ( rule__SignedInteger__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:540:1: ( rule__SignedInteger__Group__0 )
+ {
+ before(grammarAccess.getSignedIntegerAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:541:1: ( rule__SignedInteger__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:541:2: rule__SignedInteger__Group__0
+ {
+ pushFollow(FOLLOW_rule__SignedInteger__Group__0_in_ruleSignedInteger1073);
+ rule__SignedInteger__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getSignedIntegerAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleSignedInteger"
+
+
+ // $ANTLR start "entryRuleHexadecimal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:554:1: entryRuleHexadecimal : ruleHexadecimal EOF ;
+ public final void entryRuleHexadecimal() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:558:1: ( ruleHexadecimal EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:559:1: ruleHexadecimal EOF
+ {
+ before(grammarAccess.getHexadecimalRule());
+ pushFollow(FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal1105);
+ ruleHexadecimal();
+
+ state._fsp--;
+
+ after(grammarAccess.getHexadecimalRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleHexadecimal1112);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleHexadecimal"
+
+
+ // $ANTLR start "ruleHexadecimal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:569:1: ruleHexadecimal : ( RULE_HEX ) ;
+ public final void ruleHexadecimal() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:574:2: ( ( RULE_HEX ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:575:1: ( RULE_HEX )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:575:1: ( RULE_HEX )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:576:1: RULE_HEX
+ {
+ before(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall());
+ match(input,RULE_HEX,FOLLOW_RULE_HEX_in_ruleHexadecimal1142);
+ after(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleHexadecimal"
+
+
+ // $ANTLR start "entryRuleReal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:590:1: entryRuleReal : ruleReal EOF ;
+ public final void entryRuleReal() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:591:1: ( ruleReal EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:592:1: ruleReal EOF
+ {
+ before(grammarAccess.getRealRule());
+ pushFollow(FOLLOW_ruleReal_in_entryRuleReal1168);
+ ruleReal();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleReal1175);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleReal"
+
+
+ // $ANTLR start "ruleReal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:599:1: ruleReal : ( ( rule__Real__Alternatives ) ) ;
+ public final void ruleReal() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:603:2: ( ( ( rule__Real__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:604:1: ( ( rule__Real__Alternatives ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:604:1: ( ( rule__Real__Alternatives ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:605:1: ( rule__Real__Alternatives )
+ {
+ before(grammarAccess.getRealAccess().getAlternatives());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:606:1: ( rule__Real__Alternatives )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:606:2: rule__Real__Alternatives
+ {
+ pushFollow(FOLLOW_rule__Real__Alternatives_in_ruleReal1201);
+ rule__Real__Alternatives();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getRealAccess().getAlternatives());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleReal"
+
+
+ // $ANTLR start "entryRuleDecimal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:618:1: entryRuleDecimal : ruleDecimal EOF ;
+ public final void entryRuleDecimal() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:622:1: ( ruleDecimal EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:623:1: ruleDecimal EOF
+ {
+ before(grammarAccess.getDecimalRule());
+ pushFollow(FOLLOW_ruleDecimal_in_entryRuleDecimal1233);
+ ruleDecimal();
+
+ state._fsp--;
+
+ after(grammarAccess.getDecimalRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimal1240);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleDecimal"
+
+
+ // $ANTLR start "ruleDecimal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:633:1: ruleDecimal : ( ( rule__Decimal__Group__0 ) ) ;
+ public final void ruleDecimal() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:638:2: ( ( ( rule__Decimal__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:639:1: ( ( rule__Decimal__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:639:1: ( ( rule__Decimal__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:640:1: ( rule__Decimal__Group__0 )
+ {
+ before(grammarAccess.getDecimalAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:641:1: ( rule__Decimal__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:641:2: rule__Decimal__Group__0
+ {
+ pushFollow(FOLLOW_rule__Decimal__Group__0_in_ruleDecimal1270);
+ rule__Decimal__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getDecimalAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleDecimal"
+
+
+ // $ANTLR start "entryRuleDotDecimal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:654:1: entryRuleDotDecimal : ruleDotDecimal EOF ;
+ public final void entryRuleDotDecimal() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:658:1: ( ruleDotDecimal EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:659:1: ruleDotDecimal EOF
+ {
+ before(grammarAccess.getDotDecimalRule());
+ pushFollow(FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal1302);
+ ruleDotDecimal();
+
+ state._fsp--;
+
+ after(grammarAccess.getDotDecimalRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDotDecimal1309);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleDotDecimal"
+
+
+ // $ANTLR start "ruleDotDecimal"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:669:1: ruleDotDecimal : ( ( rule__DotDecimal__Group__0 ) ) ;
+ public final void ruleDotDecimal() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:674:2: ( ( ( rule__DotDecimal__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:675:1: ( ( rule__DotDecimal__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:675:1: ( ( rule__DotDecimal__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:676:1: ( rule__DotDecimal__Group__0 )
+ {
+ before(grammarAccess.getDotDecimalAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:677:1: ( rule__DotDecimal__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:677:2: rule__DotDecimal__Group__0
+ {
+ pushFollow(FOLLOW_rule__DotDecimal__Group__0_in_ruleDotDecimal1339);
+ rule__DotDecimal__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getDotDecimalAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleDotDecimal"
+
+
+ // $ANTLR start "entryRuleDecimalDot"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:690:1: entryRuleDecimalDot : ruleDecimalDot EOF ;
+ public final void entryRuleDecimalDot() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:694:1: ( ruleDecimalDot EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:695:1: ruleDecimalDot EOF
+ {
+ before(grammarAccess.getDecimalDotRule());
+ pushFollow(FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot1371);
+ ruleDecimalDot();
+
+ state._fsp--;
+
+ after(grammarAccess.getDecimalDotRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalDot1378);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleDecimalDot"
+
+
+ // $ANTLR start "ruleDecimalDot"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:705:1: ruleDecimalDot : ( ( rule__DecimalDot__Group__0 ) ) ;
+ public final void ruleDecimalDot() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:710:2: ( ( ( rule__DecimalDot__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:711:1: ( ( rule__DecimalDot__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:711:1: ( ( rule__DecimalDot__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:712:1: ( rule__DecimalDot__Group__0 )
+ {
+ before(grammarAccess.getDecimalDotAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:713:1: ( rule__DecimalDot__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:713:2: rule__DecimalDot__Group__0
+ {
+ pushFollow(FOLLOW_rule__DecimalDot__Group__0_in_ruleDecimalDot1408);
+ rule__DecimalDot__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getDecimalDotAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleDecimalDot"
+
+
+ // $ANTLR start "entryRuleDecimalExp"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:726:1: entryRuleDecimalExp : ruleDecimalExp EOF ;
+ public final void entryRuleDecimalExp() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:730:1: ( ruleDecimalExp EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:731:1: ruleDecimalExp EOF
+ {
+ before(grammarAccess.getDecimalExpRule());
+ pushFollow(FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp1440);
+ ruleDecimalExp();
+
+ state._fsp--;
+
+ after(grammarAccess.getDecimalExpRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalExp1447);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleDecimalExp"
+
+
+ // $ANTLR start "ruleDecimalExp"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:741:1: ruleDecimalExp : ( ( rule__DecimalExp__Group__0 ) ) ;
+ public final void ruleDecimalExp() throws RecognitionException {
+
+ HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:746:2: ( ( ( rule__DecimalExp__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:747:1: ( ( rule__DecimalExp__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:747:1: ( ( rule__DecimalExp__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:748:1: ( rule__DecimalExp__Group__0 )
+ {
+ before(grammarAccess.getDecimalExpAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:749:1: ( rule__DecimalExp__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:749:2: rule__DecimalExp__Group__0
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Group__0_in_ruleDecimalExp1477);
+ rule__DecimalExp__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getDecimalExpAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+ myHiddenTokenState.restore();
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleDecimalExp"
+
+
+ // $ANTLR start "entryRuleFQN"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:762:1: entryRuleFQN : ruleFQN EOF ;
+ public final void entryRuleFQN() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:763:1: ( ruleFQN EOF )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:764:1: ruleFQN EOF
+ {
+ before(grammarAccess.getFQNRule());
+ pushFollow(FOLLOW_ruleFQN_in_entryRuleFQN1504);
+ ruleFQN();
+
+ state._fsp--;
+
+ after(grammarAccess.getFQNRule());
+ match(input,EOF,FOLLOW_EOF_in_entryRuleFQN1511);
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleFQN"
+
+
+ // $ANTLR start "ruleFQN"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:771:1: ruleFQN : ( ( rule__FQN__Group__0 ) ) ;
+ public final void ruleFQN() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:775:2: ( ( ( rule__FQN__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:776:1: ( ( rule__FQN__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:776:1: ( ( rule__FQN__Group__0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:777:1: ( rule__FQN__Group__0 )
+ {
+ before(grammarAccess.getFQNAccess().getGroup());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:778:1: ( rule__FQN__Group__0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:778:2: rule__FQN__Group__0
+ {
+ pushFollow(FOLLOW_rule__FQN__Group__0_in_ruleFQN1537);
+ rule__FQN__Group__0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getFQNAccess().getGroup());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleFQN"
+
+
+ // $ANTLR start "ruleLiteralType"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:791:1: ruleLiteralType : ( ( rule__LiteralType__Alternatives ) ) ;
+ public final void ruleLiteralType() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:795:1: ( ( ( rule__LiteralType__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:796:1: ( ( rule__LiteralType__Alternatives ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:796:1: ( ( rule__LiteralType__Alternatives ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:797:1: ( rule__LiteralType__Alternatives )
+ {
+ before(grammarAccess.getLiteralTypeAccess().getAlternatives());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:798:1: ( rule__LiteralType__Alternatives )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:798:2: rule__LiteralType__Alternatives
+ {
+ pushFollow(FOLLOW_rule__LiteralType__Alternatives_in_ruleLiteralType1574);
+ rule__LiteralType__Alternatives();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getLiteralTypeAccess().getAlternatives());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleLiteralType"
+
+
+ // $ANTLR start "rule__AnnotationAttribute__Alternatives"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:810:1: rule__AnnotationAttribute__Alternatives : ( ( ruleSimpleAnnotationAttribute ) | ( ruleEnumAnnotationAttribute ) );
+ public final void rule__AnnotationAttribute__Alternatives() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:814:1: ( ( ruleSimpleAnnotationAttribute ) | ( ruleEnumAnnotationAttribute ) )
+ int alt2=2;
+ int LA2_0 = input.LA(1);
+
+ if ( (LA2_0==33) ) {
+ int LA2_1 = input.LA(2);
+
+ if ( (LA2_1==24) ) {
+ int LA2_3 = input.LA(3);
+
+ if ( (LA2_3==RULE_ID) ) {
+ int LA2_4 = input.LA(4);
+
+ if ( (LA2_4==25) ) {
+ int LA2_5 = input.LA(5);
+
+ if ( ((LA2_5>=17 && LA2_5<=20)) ) {
+ alt2=1;
+ }
+ else if ( (LA2_5==26) ) {
+ alt2=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 5, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 4, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 3, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 1, input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA2_0==13) ) {
+ int LA2_2 = input.LA(2);
+
+ if ( (LA2_2==24) ) {
+ int LA2_3 = input.LA(3);
+
+ if ( (LA2_3==RULE_ID) ) {
+ int LA2_4 = input.LA(4);
+
+ if ( (LA2_4==25) ) {
+ int LA2_5 = input.LA(5);
+
+ if ( ((LA2_5>=17 && LA2_5<=20)) ) {
+ alt2=1;
+ }
+ else if ( (LA2_5==26) ) {
+ alt2=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 5, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 4, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 3, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 2, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 2, 0, input);
+
+ throw nvae;
+ }
+ switch (alt2) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:815:1: ( ruleSimpleAnnotationAttribute )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:815:1: ( ruleSimpleAnnotationAttribute )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:816:1: ruleSimpleAnnotationAttribute
+ {
+ before(grammarAccess.getAnnotationAttributeAccess().getSimpleAnnotationAttributeParserRuleCall_0());
+ pushFollow(FOLLOW_ruleSimpleAnnotationAttribute_in_rule__AnnotationAttribute__Alternatives1610);
+ ruleSimpleAnnotationAttribute();
+
+ state._fsp--;
+
+ after(grammarAccess.getAnnotationAttributeAccess().getSimpleAnnotationAttributeParserRuleCall_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:821:6: ( ruleEnumAnnotationAttribute )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:821:6: ( ruleEnumAnnotationAttribute )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:822:1: ruleEnumAnnotationAttribute
+ {
+ before(grammarAccess.getAnnotationAttributeAccess().getEnumAnnotationAttributeParserRuleCall_1());
+ pushFollow(FOLLOW_ruleEnumAnnotationAttribute_in_rule__AnnotationAttribute__Alternatives1627);
+ ruleEnumAnnotationAttribute();
+
+ state._fsp--;
+
+ after(grammarAccess.getAnnotationAttributeAccess().getEnumAnnotationAttributeParserRuleCall_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AnnotationAttribute__Alternatives"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:832:1: rule__SimpleAnnotationAttribute__Alternatives_0 : ( ( ( rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 ) ) | ( 'mandatory' ) );
+ public final void rule__SimpleAnnotationAttribute__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:836:1: ( ( ( rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 ) ) | ( 'mandatory' ) )
+ int alt3=2;
+ int LA3_0 = input.LA(1);
+
+ if ( (LA3_0==33) ) {
+ alt3=1;
+ }
+ else if ( (LA3_0==13) ) {
+ alt3=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 3, 0, input);
+
+ throw nvae;
+ }
+ switch (alt3) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:837:1: ( ( rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:837:1: ( ( rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:838:1: ( rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 )
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalAssignment_0_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:839:1: ( rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:839:2: rule__SimpleAnnotationAttribute__OptionalAssignment_0_0
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__OptionalAssignment_0_0_in_rule__SimpleAnnotationAttribute__Alternatives_01659);
+ rule__SimpleAnnotationAttribute__OptionalAssignment_0_0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalAssignment_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:843:6: ( 'mandatory' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:843:6: ( 'mandatory' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:844:1: 'mandatory'
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getMandatoryKeyword_0_1());
+ match(input,13,FOLLOW_13_in_rule__SimpleAnnotationAttribute__Alternatives_01678);
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getMandatoryKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Alternatives_0"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:856:1: rule__EnumAnnotationAttribute__Alternatives_0 : ( ( ( rule__EnumAnnotationAttribute__OptionalAssignment_0_0 ) ) | ( 'mandatory' ) );
+ public final void rule__EnumAnnotationAttribute__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:860:1: ( ( ( rule__EnumAnnotationAttribute__OptionalAssignment_0_0 ) ) | ( 'mandatory' ) )
+ int alt4=2;
+ int LA4_0 = input.LA(1);
+
+ if ( (LA4_0==33) ) {
+ alt4=1;
+ }
+ else if ( (LA4_0==13) ) {
+ alt4=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 4, 0, input);
+
+ throw nvae;
+ }
+ switch (alt4) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:861:1: ( ( rule__EnumAnnotationAttribute__OptionalAssignment_0_0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:861:1: ( ( rule__EnumAnnotationAttribute__OptionalAssignment_0_0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:862:1: ( rule__EnumAnnotationAttribute__OptionalAssignment_0_0 )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalAssignment_0_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:863:1: ( rule__EnumAnnotationAttribute__OptionalAssignment_0_0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:863:2: rule__EnumAnnotationAttribute__OptionalAssignment_0_0
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__OptionalAssignment_0_0_in_rule__EnumAnnotationAttribute__Alternatives_01712);
+ rule__EnumAnnotationAttribute__OptionalAssignment_0_0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalAssignment_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:867:6: ( 'mandatory' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:867:6: ( 'mandatory' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:868:1: 'mandatory'
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getMandatoryKeyword_0_1());
+ match(input,13,FOLLOW_13_in_rule__EnumAnnotationAttribute__Alternatives_01731);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getMandatoryKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Alternatives_0"
+
+
+ // $ANTLR start "rule__Literal__Alternatives"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:882:1: rule__Literal__Alternatives : ( ( ruleBooleanLiteral ) | ( ruleNumberLiteral ) | ( ruleStringLiteral ) );
+ public final void rule__Literal__Alternatives() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:886:1: ( ( ruleBooleanLiteral ) | ( ruleNumberLiteral ) | ( ruleStringLiteral ) )
+ int alt5=3;
+ switch ( input.LA(1) ) {
+ case 14:
+ case 34:
+ {
+ alt5=1;
+ }
+ break;
+ case RULE_HEX:
+ case RULE_INT:
+ case 15:
+ case 16:
+ case 32:
+ {
+ alt5=2;
+ }
+ break;
+ case RULE_STRING:
+ {
+ alt5=3;
+ }
+ break;
+ default:
+ NoViableAltException nvae =
+ new NoViableAltException("", 5, 0, input);
+
+ throw nvae;
+ }
+
+ switch (alt5) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:887:1: ( ruleBooleanLiteral )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:887:1: ( ruleBooleanLiteral )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:888:1: ruleBooleanLiteral
+ {
+ before(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
+ pushFollow(FOLLOW_ruleBooleanLiteral_in_rule__Literal__Alternatives1767);
+ ruleBooleanLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:893:6: ( ruleNumberLiteral )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:893:6: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:894:1: ruleNumberLiteral
+ {
+ before(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
+ pushFollow(FOLLOW_ruleNumberLiteral_in_rule__Literal__Alternatives1784);
+ ruleNumberLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
+
+ }
+
+
+ }
+ break;
+ case 3 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:899:6: ( ruleStringLiteral )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:899:6: ( ruleStringLiteral )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:900:1: ruleStringLiteral
+ {
+ before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
+ pushFollow(FOLLOW_ruleStringLiteral_in_rule__Literal__Alternatives1801);
+ ruleStringLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Literal__Alternatives"
+
+
+ // $ANTLR start "rule__BooleanLiteral__Alternatives_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:910:1: rule__BooleanLiteral__Alternatives_1 : ( ( 'false' ) | ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) ) );
+ public final void rule__BooleanLiteral__Alternatives_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:914:1: ( ( 'false' ) | ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) ) )
+ int alt6=2;
+ int LA6_0 = input.LA(1);
+
+ if ( (LA6_0==14) ) {
+ alt6=1;
+ }
+ else if ( (LA6_0==34) ) {
+ alt6=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 6, 0, input);
+
+ throw nvae;
+ }
+ switch (alt6) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:915:1: ( 'false' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:915:1: ( 'false' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:916:1: 'false'
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
+ match(input,14,FOLLOW_14_in_rule__BooleanLiteral__Alternatives_11834);
+ after(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:923:6: ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:923:6: ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:924:1: ( rule__BooleanLiteral__IsTrueAssignment_1_1 )
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:925:1: ( rule__BooleanLiteral__IsTrueAssignment_1_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:925:2: rule__BooleanLiteral__IsTrueAssignment_1_1
+ {
+ pushFollow(FOLLOW_rule__BooleanLiteral__IsTrueAssignment_1_1_in_rule__BooleanLiteral__Alternatives_11853);
+ rule__BooleanLiteral__IsTrueAssignment_1_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__BooleanLiteral__Alternatives_1"
+
+
+ // $ANTLR start "rule__NumberLiteral__Alternatives"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:934:1: rule__NumberLiteral__Alternatives : ( ( ruleIntLiteral ) | ( ruleRealLiteral ) );
+ public final void rule__NumberLiteral__Alternatives() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:938:1: ( ( ruleIntLiteral ) | ( ruleRealLiteral ) )
+ int alt7=2;
+ switch ( input.LA(1) ) {
+ case 15:
+ {
+ int LA7_1 = input.LA(2);
+
+ if ( (LA7_1==RULE_INT) ) {
+ int LA7_3 = input.LA(3);
+
+ if ( (LA7_3==32) ) {
+ alt7=2;
+ }
+ else if ( (LA7_3==EOF) ) {
+ alt7=1;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 7, 3, input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA7_1==32) ) {
+ alt7=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 7, 1, input);
+
+ throw nvae;
+ }
+ }
+ break;
+ case 16:
+ {
+ int LA7_2 = input.LA(2);
+
+ if ( (LA7_2==32) ) {
+ alt7=2;
+ }
+ else if ( (LA7_2==RULE_INT) ) {
+ int LA7_3 = input.LA(3);
+
+ if ( (LA7_3==32) ) {
+ alt7=2;
+ }
+ else if ( (LA7_3==EOF) ) {
+ alt7=1;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 7, 3, input);
+
+ throw nvae;
+ }
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 7, 2, input);
+
+ throw nvae;
+ }
+ }
+ break;
+ case RULE_INT:
+ {
+ int LA7_3 = input.LA(2);
+
+ if ( (LA7_3==32) ) {
+ alt7=2;
+ }
+ else if ( (LA7_3==EOF) ) {
+ alt7=1;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 7, 3, input);
+
+ throw nvae;
+ }
+ }
+ break;
+ case RULE_HEX:
+ {
+ alt7=1;
+ }
+ break;
+ case 32:
+ {
+ alt7=2;
+ }
+ break;
+ default:
+ NoViableAltException nvae =
+ new NoViableAltException("", 7, 0, input);
+
+ throw nvae;
+ }
+
+ switch (alt7) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:939:1: ( ruleIntLiteral )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:939:1: ( ruleIntLiteral )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:940:1: ruleIntLiteral
+ {
+ before(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
+ pushFollow(FOLLOW_ruleIntLiteral_in_rule__NumberLiteral__Alternatives1886);
+ ruleIntLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:945:6: ( ruleRealLiteral )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:945:6: ( ruleRealLiteral )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:946:1: ruleRealLiteral
+ {
+ before(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
+ pushFollow(FOLLOW_ruleRealLiteral_in_rule__NumberLiteral__Alternatives1903);
+ ruleRealLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__NumberLiteral__Alternatives"
+
+
+ // $ANTLR start "rule__Integer__Alternatives"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:956:1: rule__Integer__Alternatives : ( ( ruleSignedInteger ) | ( ruleHexadecimal ) );
+ public final void rule__Integer__Alternatives() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:960:1: ( ( ruleSignedInteger ) | ( ruleHexadecimal ) )
+ int alt8=2;
+ int LA8_0 = input.LA(1);
+
+ if ( (LA8_0==RULE_INT||(LA8_0>=15 && LA8_0<=16)) ) {
+ alt8=1;
+ }
+ else if ( (LA8_0==RULE_HEX) ) {
+ alt8=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 8, 0, input);
+
+ throw nvae;
+ }
+ switch (alt8) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:961:1: ( ruleSignedInteger )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:961:1: ( ruleSignedInteger )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:962:1: ruleSignedInteger
+ {
+ before(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
+ pushFollow(FOLLOW_ruleSignedInteger_in_rule__Integer__Alternatives1935);
+ ruleSignedInteger();
+
+ state._fsp--;
+
+ after(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:967:6: ( ruleHexadecimal )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:967:6: ( ruleHexadecimal )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:968:1: ruleHexadecimal
+ {
+ before(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
+ pushFollow(FOLLOW_ruleHexadecimal_in_rule__Integer__Alternatives1952);
+ ruleHexadecimal();
+
+ state._fsp--;
+
+ after(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Integer__Alternatives"
+
+
+ // $ANTLR start "rule__SignedInteger__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:978:1: rule__SignedInteger__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ public final void rule__SignedInteger__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:982:1: ( ( '+' ) | ( '-' ) )
+ int alt9=2;
+ int LA9_0 = input.LA(1);
+
+ if ( (LA9_0==15) ) {
+ alt9=1;
+ }
+ else if ( (LA9_0==16) ) {
+ alt9=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 9, 0, input);
+
+ throw nvae;
+ }
+ switch (alt9) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:983:1: ( '+' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:983:1: ( '+' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:984:1: '+'
+ {
+ before(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
+ match(input,15,FOLLOW_15_in_rule__SignedInteger__Alternatives_01985);
+ after(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:991:6: ( '-' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:991:6: ( '-' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:992:1: '-'
+ {
+ before(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
+ match(input,16,FOLLOW_16_in_rule__SignedInteger__Alternatives_02005);
+ after(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SignedInteger__Alternatives_0"
+
+
+ // $ANTLR start "rule__Real__Alternatives"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1004:1: rule__Real__Alternatives : ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) );
+ public final void rule__Real__Alternatives() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1008:1: ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) )
+ int alt10=4;
+ alt10 = dfa10.predict(input);
+ switch (alt10) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1009:1: ( ruleDecimal )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1009:1: ( ruleDecimal )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1010:1: ruleDecimal
+ {
+ before(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
+ pushFollow(FOLLOW_ruleDecimal_in_rule__Real__Alternatives2039);
+ ruleDecimal();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1015:6: ( ruleDotDecimal )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1015:6: ( ruleDotDecimal )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1016:1: ruleDotDecimal
+ {
+ before(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
+ pushFollow(FOLLOW_ruleDotDecimal_in_rule__Real__Alternatives2056);
+ ruleDotDecimal();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
+
+ }
+
+
+ }
+ break;
+ case 3 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1021:6: ( ruleDecimalDot )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1021:6: ( ruleDecimalDot )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1022:1: ruleDecimalDot
+ {
+ before(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
+ pushFollow(FOLLOW_ruleDecimalDot_in_rule__Real__Alternatives2073);
+ ruleDecimalDot();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
+
+ }
+
+
+ }
+ break;
+ case 4 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1027:6: ( ruleDecimalExp )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1027:6: ( ruleDecimalExp )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1028:1: ruleDecimalExp
+ {
+ before(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
+ pushFollow(FOLLOW_ruleDecimalExp_in_rule__Real__Alternatives2090);
+ ruleDecimalExp();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Real__Alternatives"
+
+
+ // $ANTLR start "rule__Decimal__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1038:1: rule__Decimal__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ public final void rule__Decimal__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1042:1: ( ( '+' ) | ( '-' ) )
+ int alt11=2;
+ int LA11_0 = input.LA(1);
+
+ if ( (LA11_0==15) ) {
+ alt11=1;
+ }
+ else if ( (LA11_0==16) ) {
+ alt11=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 11, 0, input);
+
+ throw nvae;
+ }
+ switch (alt11) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1043:1: ( '+' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1043:1: ( '+' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1044:1: '+'
+ {
+ before(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
+ match(input,15,FOLLOW_15_in_rule__Decimal__Alternatives_02123);
+ after(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1051:6: ( '-' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1051:6: ( '-' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1052:1: '-'
+ {
+ before(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
+ match(input,16,FOLLOW_16_in_rule__Decimal__Alternatives_02143);
+ after(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Alternatives_0"
+
+
+ // $ANTLR start "rule__DotDecimal__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1064:1: rule__DotDecimal__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ public final void rule__DotDecimal__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1068:1: ( ( '+' ) | ( '-' ) )
+ int alt12=2;
+ int LA12_0 = input.LA(1);
+
+ if ( (LA12_0==15) ) {
+ alt12=1;
+ }
+ else if ( (LA12_0==16) ) {
+ alt12=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 12, 0, input);
+
+ throw nvae;
+ }
+ switch (alt12) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1069:1: ( '+' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1069:1: ( '+' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1070:1: '+'
+ {
+ before(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
+ match(input,15,FOLLOW_15_in_rule__DotDecimal__Alternatives_02178);
+ after(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1077:6: ( '-' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1077:6: ( '-' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1078:1: '-'
+ {
+ before(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
+ match(input,16,FOLLOW_16_in_rule__DotDecimal__Alternatives_02198);
+ after(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Alternatives_0"
+
+
+ // $ANTLR start "rule__DecimalDot__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1090:1: rule__DecimalDot__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ public final void rule__DecimalDot__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1094:1: ( ( '+' ) | ( '-' ) )
+ int alt13=2;
+ int LA13_0 = input.LA(1);
+
+ if ( (LA13_0==15) ) {
+ alt13=1;
+ }
+ else if ( (LA13_0==16) ) {
+ alt13=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 13, 0, input);
+
+ throw nvae;
+ }
+ switch (alt13) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1095:1: ( '+' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1095:1: ( '+' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1096:1: '+'
+ {
+ before(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
+ match(input,15,FOLLOW_15_in_rule__DecimalDot__Alternatives_02233);
+ after(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1103:6: ( '-' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1103:6: ( '-' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1104:1: '-'
+ {
+ before(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
+ match(input,16,FOLLOW_16_in_rule__DecimalDot__Alternatives_02253);
+ after(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Alternatives_0"
+
+
+ // $ANTLR start "rule__DecimalExp__Alternatives_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1116:1: rule__DecimalExp__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ public final void rule__DecimalExp__Alternatives_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1120:1: ( ( '+' ) | ( '-' ) )
+ int alt14=2;
+ int LA14_0 = input.LA(1);
+
+ if ( (LA14_0==15) ) {
+ alt14=1;
+ }
+ else if ( (LA14_0==16) ) {
+ alt14=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 14, 0, input);
+
+ throw nvae;
+ }
+ switch (alt14) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1121:1: ( '+' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1121:1: ( '+' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1122:1: '+'
+ {
+ before(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
+ match(input,15,FOLLOW_15_in_rule__DecimalExp__Alternatives_02288);
+ after(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1129:6: ( '-' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1129:6: ( '-' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1130:1: '-'
+ {
+ before(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
+ match(input,16,FOLLOW_16_in_rule__DecimalExp__Alternatives_02308);
+ after(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Alternatives_0"
+
+
+ // $ANTLR start "rule__LiteralType__Alternatives"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1142:1: rule__LiteralType__Alternatives : ( ( ( 'ptBoolean' ) ) | ( ( 'ptInteger' ) ) | ( ( 'ptReal' ) ) | ( ( 'ptCharacter' ) ) );
+ public final void rule__LiteralType__Alternatives() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1146:1: ( ( ( 'ptBoolean' ) ) | ( ( 'ptInteger' ) ) | ( ( 'ptReal' ) ) | ( ( 'ptCharacter' ) ) )
+ int alt15=4;
+ switch ( input.LA(1) ) {
+ case 17:
+ {
+ alt15=1;
+ }
+ break;
+ case 18:
+ {
+ alt15=2;
+ }
+ break;
+ case 19:
+ {
+ alt15=3;
+ }
+ break;
+ case 20:
+ {
+ alt15=4;
+ }
+ break;
+ default:
+ NoViableAltException nvae =
+ new NoViableAltException("", 15, 0, input);
+
+ throw nvae;
+ }
+
+ switch (alt15) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1147:1: ( ( 'ptBoolean' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1147:1: ( ( 'ptBoolean' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1148:1: ( 'ptBoolean' )
+ {
+ before(grammarAccess.getLiteralTypeAccess().getBOOLEnumLiteralDeclaration_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1149:1: ( 'ptBoolean' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1149:3: 'ptBoolean'
+ {
+ match(input,17,FOLLOW_17_in_rule__LiteralType__Alternatives2343);
+
+ }
+
+ after(grammarAccess.getLiteralTypeAccess().getBOOLEnumLiteralDeclaration_0());
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1154:6: ( ( 'ptInteger' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1154:6: ( ( 'ptInteger' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1155:1: ( 'ptInteger' )
+ {
+ before(grammarAccess.getLiteralTypeAccess().getINTEnumLiteralDeclaration_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1156:1: ( 'ptInteger' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1156:3: 'ptInteger'
+ {
+ match(input,18,FOLLOW_18_in_rule__LiteralType__Alternatives2364);
+
+ }
+
+ after(grammarAccess.getLiteralTypeAccess().getINTEnumLiteralDeclaration_1());
+
+ }
+
+
+ }
+ break;
+ case 3 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1161:6: ( ( 'ptReal' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1161:6: ( ( 'ptReal' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1162:1: ( 'ptReal' )
+ {
+ before(grammarAccess.getLiteralTypeAccess().getREALEnumLiteralDeclaration_2());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1163:1: ( 'ptReal' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1163:3: 'ptReal'
+ {
+ match(input,19,FOLLOW_19_in_rule__LiteralType__Alternatives2385);
+
+ }
+
+ after(grammarAccess.getLiteralTypeAccess().getREALEnumLiteralDeclaration_2());
+
+ }
+
+
+ }
+ break;
+ case 4 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1168:6: ( ( 'ptCharacter' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1168:6: ( ( 'ptCharacter' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1169:1: ( 'ptCharacter' )
+ {
+ before(grammarAccess.getLiteralTypeAccess().getCHAREnumLiteralDeclaration_3());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1170:1: ( 'ptCharacter' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1170:3: 'ptCharacter'
+ {
+ match(input,20,FOLLOW_20_in_rule__LiteralType__Alternatives2406);
+
+ }
+
+ after(grammarAccess.getLiteralTypeAccess().getCHAREnumLiteralDeclaration_3());
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__LiteralType__Alternatives"
+
+
+ // $ANTLR start "rule__Greeting__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1182:1: rule__Greeting__Group__0 : rule__Greeting__Group__0__Impl rule__Greeting__Group__1 ;
+ public final void rule__Greeting__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1186:1: ( rule__Greeting__Group__0__Impl rule__Greeting__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1187:2: rule__Greeting__Group__0__Impl rule__Greeting__Group__1
+ {
+ pushFollow(FOLLOW_rule__Greeting__Group__0__Impl_in_rule__Greeting__Group__02439);
+ rule__Greeting__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Greeting__Group__1_in_rule__Greeting__Group__02442);
+ rule__Greeting__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__Group__0"
+
+
+ // $ANTLR start "rule__Greeting__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1194:1: rule__Greeting__Group__0__Impl : ( 'Hello' ) ;
+ public final void rule__Greeting__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1198:1: ( ( 'Hello' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1199:1: ( 'Hello' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1199:1: ( 'Hello' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1200:1: 'Hello'
+ {
+ before(grammarAccess.getGreetingAccess().getHelloKeyword_0());
+ match(input,21,FOLLOW_21_in_rule__Greeting__Group__0__Impl2470);
+ after(grammarAccess.getGreetingAccess().getHelloKeyword_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__Group__0__Impl"
+
+
+ // $ANTLR start "rule__Greeting__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1213:1: rule__Greeting__Group__1 : rule__Greeting__Group__1__Impl rule__Greeting__Group__2 ;
+ public final void rule__Greeting__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1217:1: ( rule__Greeting__Group__1__Impl rule__Greeting__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1218:2: rule__Greeting__Group__1__Impl rule__Greeting__Group__2
+ {
+ pushFollow(FOLLOW_rule__Greeting__Group__1__Impl_in_rule__Greeting__Group__12501);
+ rule__Greeting__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Greeting__Group__2_in_rule__Greeting__Group__12504);
+ rule__Greeting__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__Group__1"
+
+
+ // $ANTLR start "rule__Greeting__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1225:1: rule__Greeting__Group__1__Impl : ( ( rule__Greeting__NameAssignment_1 ) ) ;
+ public final void rule__Greeting__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1229:1: ( ( ( rule__Greeting__NameAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1230:1: ( ( rule__Greeting__NameAssignment_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1230:1: ( ( rule__Greeting__NameAssignment_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1231:1: ( rule__Greeting__NameAssignment_1 )
+ {
+ before(grammarAccess.getGreetingAccess().getNameAssignment_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1232:1: ( rule__Greeting__NameAssignment_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1232:2: rule__Greeting__NameAssignment_1
+ {
+ pushFollow(FOLLOW_rule__Greeting__NameAssignment_1_in_rule__Greeting__Group__1__Impl2531);
+ rule__Greeting__NameAssignment_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getGreetingAccess().getNameAssignment_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__Group__1__Impl"
+
+
+ // $ANTLR start "rule__Greeting__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1242:1: rule__Greeting__Group__2 : rule__Greeting__Group__2__Impl ;
+ public final void rule__Greeting__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1246:1: ( rule__Greeting__Group__2__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1247:2: rule__Greeting__Group__2__Impl
+ {
+ pushFollow(FOLLOW_rule__Greeting__Group__2__Impl_in_rule__Greeting__Group__22561);
+ rule__Greeting__Group__2__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__Group__2"
+
+
+ // $ANTLR start "rule__Greeting__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1253:1: rule__Greeting__Group__2__Impl : ( '!' ) ;
+ public final void rule__Greeting__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1257:1: ( ( '!' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1258:1: ( '!' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1258:1: ( '!' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1259:1: '!'
+ {
+ before(grammarAccess.getGreetingAccess().getExclamationMarkKeyword_2());
+ match(input,22,FOLLOW_22_in_rule__Greeting__Group__2__Impl2589);
+ after(grammarAccess.getGreetingAccess().getExclamationMarkKeyword_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__Group__2__Impl"
+
+
+ // $ANTLR start "rule__KeyValue__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1281:1: rule__KeyValue__Group__0 : rule__KeyValue__Group__0__Impl rule__KeyValue__Group__1 ;
+ public final void rule__KeyValue__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1285:1: ( rule__KeyValue__Group__0__Impl rule__KeyValue__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1286:2: rule__KeyValue__Group__0__Impl rule__KeyValue__Group__1
+ {
+ pushFollow(FOLLOW_rule__KeyValue__Group__0__Impl_in_rule__KeyValue__Group__02629);
+ rule__KeyValue__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__KeyValue__Group__1_in_rule__KeyValue__Group__02632);
+ rule__KeyValue__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__Group__0"
+
+
+ // $ANTLR start "rule__KeyValue__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1293:1: rule__KeyValue__Group__0__Impl : ( ( rule__KeyValue__KeyAssignment_0 ) ) ;
+ public final void rule__KeyValue__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1297:1: ( ( ( rule__KeyValue__KeyAssignment_0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1298:1: ( ( rule__KeyValue__KeyAssignment_0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1298:1: ( ( rule__KeyValue__KeyAssignment_0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1299:1: ( rule__KeyValue__KeyAssignment_0 )
+ {
+ before(grammarAccess.getKeyValueAccess().getKeyAssignment_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1300:1: ( rule__KeyValue__KeyAssignment_0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1300:2: rule__KeyValue__KeyAssignment_0
+ {
+ pushFollow(FOLLOW_rule__KeyValue__KeyAssignment_0_in_rule__KeyValue__Group__0__Impl2659);
+ rule__KeyValue__KeyAssignment_0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getKeyValueAccess().getKeyAssignment_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__Group__0__Impl"
+
+
+ // $ANTLR start "rule__KeyValue__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1310:1: rule__KeyValue__Group__1 : rule__KeyValue__Group__1__Impl rule__KeyValue__Group__2 ;
+ public final void rule__KeyValue__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1314:1: ( rule__KeyValue__Group__1__Impl rule__KeyValue__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1315:2: rule__KeyValue__Group__1__Impl rule__KeyValue__Group__2
+ {
+ pushFollow(FOLLOW_rule__KeyValue__Group__1__Impl_in_rule__KeyValue__Group__12689);
+ rule__KeyValue__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__KeyValue__Group__2_in_rule__KeyValue__Group__12692);
+ rule__KeyValue__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__Group__1"
+
+
+ // $ANTLR start "rule__KeyValue__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1322:1: rule__KeyValue__Group__1__Impl : ( '=' ) ;
+ public final void rule__KeyValue__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1326:1: ( ( '=' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1327:1: ( '=' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1327:1: ( '=' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1328:1: '='
+ {
+ before(grammarAccess.getKeyValueAccess().getEqualsSignKeyword_1());
+ match(input,23,FOLLOW_23_in_rule__KeyValue__Group__1__Impl2720);
+ after(grammarAccess.getKeyValueAccess().getEqualsSignKeyword_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__Group__1__Impl"
+
+
+ // $ANTLR start "rule__KeyValue__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1341:1: rule__KeyValue__Group__2 : rule__KeyValue__Group__2__Impl ;
+ public final void rule__KeyValue__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1345:1: ( rule__KeyValue__Group__2__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1346:2: rule__KeyValue__Group__2__Impl
+ {
+ pushFollow(FOLLOW_rule__KeyValue__Group__2__Impl_in_rule__KeyValue__Group__22751);
+ rule__KeyValue__Group__2__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__Group__2"
+
+
+ // $ANTLR start "rule__KeyValue__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1352:1: rule__KeyValue__Group__2__Impl : ( ( rule__KeyValue__ValueAssignment_2 ) ) ;
+ public final void rule__KeyValue__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1356:1: ( ( ( rule__KeyValue__ValueAssignment_2 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1357:1: ( ( rule__KeyValue__ValueAssignment_2 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1357:1: ( ( rule__KeyValue__ValueAssignment_2 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1358:1: ( rule__KeyValue__ValueAssignment_2 )
+ {
+ before(grammarAccess.getKeyValueAccess().getValueAssignment_2());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1359:1: ( rule__KeyValue__ValueAssignment_2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1359:2: rule__KeyValue__ValueAssignment_2
+ {
+ pushFollow(FOLLOW_rule__KeyValue__ValueAssignment_2_in_rule__KeyValue__Group__2__Impl2778);
+ rule__KeyValue__ValueAssignment_2();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getKeyValueAccess().getValueAssignment_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__Group__2__Impl"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1378:1: rule__SimpleAnnotationAttribute__Group__0 : rule__SimpleAnnotationAttribute__Group__0__Impl rule__SimpleAnnotationAttribute__Group__1 ;
+ public final void rule__SimpleAnnotationAttribute__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1382:1: ( rule__SimpleAnnotationAttribute__Group__0__Impl rule__SimpleAnnotationAttribute__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1383:2: rule__SimpleAnnotationAttribute__Group__0__Impl rule__SimpleAnnotationAttribute__Group__1
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__0__Impl_in_rule__SimpleAnnotationAttribute__Group__02817);
+ rule__SimpleAnnotationAttribute__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__1_in_rule__SimpleAnnotationAttribute__Group__02820);
+ rule__SimpleAnnotationAttribute__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__0"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1390:1: rule__SimpleAnnotationAttribute__Group__0__Impl : ( ( rule__SimpleAnnotationAttribute__Alternatives_0 ) ) ;
+ public final void rule__SimpleAnnotationAttribute__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1394:1: ( ( ( rule__SimpleAnnotationAttribute__Alternatives_0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1395:1: ( ( rule__SimpleAnnotationAttribute__Alternatives_0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1395:1: ( ( rule__SimpleAnnotationAttribute__Alternatives_0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1396:1: ( rule__SimpleAnnotationAttribute__Alternatives_0 )
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1397:1: ( rule__SimpleAnnotationAttribute__Alternatives_0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1397:2: rule__SimpleAnnotationAttribute__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Alternatives_0_in_rule__SimpleAnnotationAttribute__Group__0__Impl2847);
+ rule__SimpleAnnotationAttribute__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__0__Impl"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1407:1: rule__SimpleAnnotationAttribute__Group__1 : rule__SimpleAnnotationAttribute__Group__1__Impl rule__SimpleAnnotationAttribute__Group__2 ;
+ public final void rule__SimpleAnnotationAttribute__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1411:1: ( rule__SimpleAnnotationAttribute__Group__1__Impl rule__SimpleAnnotationAttribute__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1412:2: rule__SimpleAnnotationAttribute__Group__1__Impl rule__SimpleAnnotationAttribute__Group__2
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__1__Impl_in_rule__SimpleAnnotationAttribute__Group__12877);
+ rule__SimpleAnnotationAttribute__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__2_in_rule__SimpleAnnotationAttribute__Group__12880);
+ rule__SimpleAnnotationAttribute__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__1"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1419:1: rule__SimpleAnnotationAttribute__Group__1__Impl : ( 'attribute' ) ;
+ public final void rule__SimpleAnnotationAttribute__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1423:1: ( ( 'attribute' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1424:1: ( 'attribute' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1424:1: ( 'attribute' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1425:1: 'attribute'
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getAttributeKeyword_1());
+ match(input,24,FOLLOW_24_in_rule__SimpleAnnotationAttribute__Group__1__Impl2908);
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getAttributeKeyword_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__1__Impl"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1438:1: rule__SimpleAnnotationAttribute__Group__2 : rule__SimpleAnnotationAttribute__Group__2__Impl rule__SimpleAnnotationAttribute__Group__3 ;
+ public final void rule__SimpleAnnotationAttribute__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1442:1: ( rule__SimpleAnnotationAttribute__Group__2__Impl rule__SimpleAnnotationAttribute__Group__3 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1443:2: rule__SimpleAnnotationAttribute__Group__2__Impl rule__SimpleAnnotationAttribute__Group__3
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__2__Impl_in_rule__SimpleAnnotationAttribute__Group__22939);
+ rule__SimpleAnnotationAttribute__Group__2__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__3_in_rule__SimpleAnnotationAttribute__Group__22942);
+ rule__SimpleAnnotationAttribute__Group__3();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__2"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1450:1: rule__SimpleAnnotationAttribute__Group__2__Impl : ( ( rule__SimpleAnnotationAttribute__NameAssignment_2 ) ) ;
+ public final void rule__SimpleAnnotationAttribute__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1454:1: ( ( ( rule__SimpleAnnotationAttribute__NameAssignment_2 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1455:1: ( ( rule__SimpleAnnotationAttribute__NameAssignment_2 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1455:1: ( ( rule__SimpleAnnotationAttribute__NameAssignment_2 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1456:1: ( rule__SimpleAnnotationAttribute__NameAssignment_2 )
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getNameAssignment_2());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1457:1: ( rule__SimpleAnnotationAttribute__NameAssignment_2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1457:2: rule__SimpleAnnotationAttribute__NameAssignment_2
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__NameAssignment_2_in_rule__SimpleAnnotationAttribute__Group__2__Impl2969);
+ rule__SimpleAnnotationAttribute__NameAssignment_2();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getNameAssignment_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__2__Impl"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__3"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1467:1: rule__SimpleAnnotationAttribute__Group__3 : rule__SimpleAnnotationAttribute__Group__3__Impl rule__SimpleAnnotationAttribute__Group__4 ;
+ public final void rule__SimpleAnnotationAttribute__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1471:1: ( rule__SimpleAnnotationAttribute__Group__3__Impl rule__SimpleAnnotationAttribute__Group__4 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1472:2: rule__SimpleAnnotationAttribute__Group__3__Impl rule__SimpleAnnotationAttribute__Group__4
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__3__Impl_in_rule__SimpleAnnotationAttribute__Group__32999);
+ rule__SimpleAnnotationAttribute__Group__3__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__4_in_rule__SimpleAnnotationAttribute__Group__33002);
+ rule__SimpleAnnotationAttribute__Group__4();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__3"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__3__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1479:1: rule__SimpleAnnotationAttribute__Group__3__Impl : ( ':' ) ;
+ public final void rule__SimpleAnnotationAttribute__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1483:1: ( ( ':' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1484:1: ( ':' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1484:1: ( ':' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1485:1: ':'
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getColonKeyword_3());
+ match(input,25,FOLLOW_25_in_rule__SimpleAnnotationAttribute__Group__3__Impl3030);
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getColonKeyword_3());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__3__Impl"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__4"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1498:1: rule__SimpleAnnotationAttribute__Group__4 : rule__SimpleAnnotationAttribute__Group__4__Impl ;
+ public final void rule__SimpleAnnotationAttribute__Group__4() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1502:1: ( rule__SimpleAnnotationAttribute__Group__4__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1503:2: rule__SimpleAnnotationAttribute__Group__4__Impl
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__Group__4__Impl_in_rule__SimpleAnnotationAttribute__Group__43061);
+ rule__SimpleAnnotationAttribute__Group__4__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__4"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__Group__4__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1509:1: rule__SimpleAnnotationAttribute__Group__4__Impl : ( ( rule__SimpleAnnotationAttribute__TypeAssignment_4 ) ) ;
+ public final void rule__SimpleAnnotationAttribute__Group__4__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1513:1: ( ( ( rule__SimpleAnnotationAttribute__TypeAssignment_4 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1514:1: ( ( rule__SimpleAnnotationAttribute__TypeAssignment_4 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1514:1: ( ( rule__SimpleAnnotationAttribute__TypeAssignment_4 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1515:1: ( rule__SimpleAnnotationAttribute__TypeAssignment_4 )
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeAssignment_4());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1516:1: ( rule__SimpleAnnotationAttribute__TypeAssignment_4 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1516:2: rule__SimpleAnnotationAttribute__TypeAssignment_4
+ {
+ pushFollow(FOLLOW_rule__SimpleAnnotationAttribute__TypeAssignment_4_in_rule__SimpleAnnotationAttribute__Group__4__Impl3088);
+ rule__SimpleAnnotationAttribute__TypeAssignment_4();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeAssignment_4());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__Group__4__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1536:1: rule__EnumAnnotationAttribute__Group__0 : rule__EnumAnnotationAttribute__Group__0__Impl rule__EnumAnnotationAttribute__Group__1 ;
+ public final void rule__EnumAnnotationAttribute__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1540:1: ( rule__EnumAnnotationAttribute__Group__0__Impl rule__EnumAnnotationAttribute__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1541:2: rule__EnumAnnotationAttribute__Group__0__Impl rule__EnumAnnotationAttribute__Group__1
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__0__Impl_in_rule__EnumAnnotationAttribute__Group__03128);
+ rule__EnumAnnotationAttribute__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__1_in_rule__EnumAnnotationAttribute__Group__03131);
+ rule__EnumAnnotationAttribute__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__0"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1548:1: rule__EnumAnnotationAttribute__Group__0__Impl : ( ( rule__EnumAnnotationAttribute__Alternatives_0 ) ) ;
+ public final void rule__EnumAnnotationAttribute__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1552:1: ( ( ( rule__EnumAnnotationAttribute__Alternatives_0 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1553:1: ( ( rule__EnumAnnotationAttribute__Alternatives_0 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1553:1: ( ( rule__EnumAnnotationAttribute__Alternatives_0 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1554:1: ( rule__EnumAnnotationAttribute__Alternatives_0 )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1555:1: ( rule__EnumAnnotationAttribute__Alternatives_0 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1555:2: rule__EnumAnnotationAttribute__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Alternatives_0_in_rule__EnumAnnotationAttribute__Group__0__Impl3158);
+ rule__EnumAnnotationAttribute__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__0__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1565:1: rule__EnumAnnotationAttribute__Group__1 : rule__EnumAnnotationAttribute__Group__1__Impl rule__EnumAnnotationAttribute__Group__2 ;
+ public final void rule__EnumAnnotationAttribute__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1569:1: ( rule__EnumAnnotationAttribute__Group__1__Impl rule__EnumAnnotationAttribute__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1570:2: rule__EnumAnnotationAttribute__Group__1__Impl rule__EnumAnnotationAttribute__Group__2
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__1__Impl_in_rule__EnumAnnotationAttribute__Group__13188);
+ rule__EnumAnnotationAttribute__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__2_in_rule__EnumAnnotationAttribute__Group__13191);
+ rule__EnumAnnotationAttribute__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__1"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1577:1: rule__EnumAnnotationAttribute__Group__1__Impl : ( 'attribute' ) ;
+ public final void rule__EnumAnnotationAttribute__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1581:1: ( ( 'attribute' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1582:1: ( 'attribute' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1582:1: ( 'attribute' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1583:1: 'attribute'
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getAttributeKeyword_1());
+ match(input,24,FOLLOW_24_in_rule__EnumAnnotationAttribute__Group__1__Impl3219);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getAttributeKeyword_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__1__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1596:1: rule__EnumAnnotationAttribute__Group__2 : rule__EnumAnnotationAttribute__Group__2__Impl rule__EnumAnnotationAttribute__Group__3 ;
+ public final void rule__EnumAnnotationAttribute__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1600:1: ( rule__EnumAnnotationAttribute__Group__2__Impl rule__EnumAnnotationAttribute__Group__3 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1601:2: rule__EnumAnnotationAttribute__Group__2__Impl rule__EnumAnnotationAttribute__Group__3
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__2__Impl_in_rule__EnumAnnotationAttribute__Group__23250);
+ rule__EnumAnnotationAttribute__Group__2__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__3_in_rule__EnumAnnotationAttribute__Group__23253);
+ rule__EnumAnnotationAttribute__Group__3();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__2"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1608:1: rule__EnumAnnotationAttribute__Group__2__Impl : ( ( rule__EnumAnnotationAttribute__NameAssignment_2 ) ) ;
+ public final void rule__EnumAnnotationAttribute__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1612:1: ( ( ( rule__EnumAnnotationAttribute__NameAssignment_2 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1613:1: ( ( rule__EnumAnnotationAttribute__NameAssignment_2 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1613:1: ( ( rule__EnumAnnotationAttribute__NameAssignment_2 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1614:1: ( rule__EnumAnnotationAttribute__NameAssignment_2 )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getNameAssignment_2());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1615:1: ( rule__EnumAnnotationAttribute__NameAssignment_2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1615:2: rule__EnumAnnotationAttribute__NameAssignment_2
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__NameAssignment_2_in_rule__EnumAnnotationAttribute__Group__2__Impl3280);
+ rule__EnumAnnotationAttribute__NameAssignment_2();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getNameAssignment_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__2__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__3"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1625:1: rule__EnumAnnotationAttribute__Group__3 : rule__EnumAnnotationAttribute__Group__3__Impl rule__EnumAnnotationAttribute__Group__4 ;
+ public final void rule__EnumAnnotationAttribute__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1629:1: ( rule__EnumAnnotationAttribute__Group__3__Impl rule__EnumAnnotationAttribute__Group__4 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1630:2: rule__EnumAnnotationAttribute__Group__3__Impl rule__EnumAnnotationAttribute__Group__4
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__3__Impl_in_rule__EnumAnnotationAttribute__Group__33310);
+ rule__EnumAnnotationAttribute__Group__3__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__4_in_rule__EnumAnnotationAttribute__Group__33313);
+ rule__EnumAnnotationAttribute__Group__4();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__3"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__3__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1637:1: rule__EnumAnnotationAttribute__Group__3__Impl : ( ':' ) ;
+ public final void rule__EnumAnnotationAttribute__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1641:1: ( ( ':' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1642:1: ( ':' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1642:1: ( ':' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1643:1: ':'
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getColonKeyword_3());
+ match(input,25,FOLLOW_25_in_rule__EnumAnnotationAttribute__Group__3__Impl3341);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getColonKeyword_3());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__3__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__4"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1656:1: rule__EnumAnnotationAttribute__Group__4 : rule__EnumAnnotationAttribute__Group__4__Impl rule__EnumAnnotationAttribute__Group__5 ;
+ public final void rule__EnumAnnotationAttribute__Group__4() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1660:1: ( rule__EnumAnnotationAttribute__Group__4__Impl rule__EnumAnnotationAttribute__Group__5 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1661:2: rule__EnumAnnotationAttribute__Group__4__Impl rule__EnumAnnotationAttribute__Group__5
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__4__Impl_in_rule__EnumAnnotationAttribute__Group__43372);
+ rule__EnumAnnotationAttribute__Group__4__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__5_in_rule__EnumAnnotationAttribute__Group__43375);
+ rule__EnumAnnotationAttribute__Group__5();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__4"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__4__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1668:1: rule__EnumAnnotationAttribute__Group__4__Impl : ( '{' ) ;
+ public final void rule__EnumAnnotationAttribute__Group__4__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1672:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1673:1: ( '{' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1673:1: ( '{' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1674:1: '{'
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getLeftCurlyBracketKeyword_4());
+ match(input,26,FOLLOW_26_in_rule__EnumAnnotationAttribute__Group__4__Impl3403);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getLeftCurlyBracketKeyword_4());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__4__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__5"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1687:1: rule__EnumAnnotationAttribute__Group__5 : rule__EnumAnnotationAttribute__Group__5__Impl rule__EnumAnnotationAttribute__Group__6 ;
+ public final void rule__EnumAnnotationAttribute__Group__5() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1691:1: ( rule__EnumAnnotationAttribute__Group__5__Impl rule__EnumAnnotationAttribute__Group__6 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1692:2: rule__EnumAnnotationAttribute__Group__5__Impl rule__EnumAnnotationAttribute__Group__6
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__5__Impl_in_rule__EnumAnnotationAttribute__Group__53434);
+ rule__EnumAnnotationAttribute__Group__5__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__6_in_rule__EnumAnnotationAttribute__Group__53437);
+ rule__EnumAnnotationAttribute__Group__6();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__5"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__5__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1699:1: rule__EnumAnnotationAttribute__Group__5__Impl : ( ( rule__EnumAnnotationAttribute__ValuesAssignment_5 ) ) ;
+ public final void rule__EnumAnnotationAttribute__Group__5__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1703:1: ( ( ( rule__EnumAnnotationAttribute__ValuesAssignment_5 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1704:1: ( ( rule__EnumAnnotationAttribute__ValuesAssignment_5 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1704:1: ( ( rule__EnumAnnotationAttribute__ValuesAssignment_5 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1705:1: ( rule__EnumAnnotationAttribute__ValuesAssignment_5 )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_5());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1706:1: ( rule__EnumAnnotationAttribute__ValuesAssignment_5 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1706:2: rule__EnumAnnotationAttribute__ValuesAssignment_5
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__ValuesAssignment_5_in_rule__EnumAnnotationAttribute__Group__5__Impl3464);
+ rule__EnumAnnotationAttribute__ValuesAssignment_5();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_5());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__5__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__6"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1716:1: rule__EnumAnnotationAttribute__Group__6 : rule__EnumAnnotationAttribute__Group__6__Impl rule__EnumAnnotationAttribute__Group__7 ;
+ public final void rule__EnumAnnotationAttribute__Group__6() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1720:1: ( rule__EnumAnnotationAttribute__Group__6__Impl rule__EnumAnnotationAttribute__Group__7 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1721:2: rule__EnumAnnotationAttribute__Group__6__Impl rule__EnumAnnotationAttribute__Group__7
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__6__Impl_in_rule__EnumAnnotationAttribute__Group__63494);
+ rule__EnumAnnotationAttribute__Group__6__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__7_in_rule__EnumAnnotationAttribute__Group__63497);
+ rule__EnumAnnotationAttribute__Group__7();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__6"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__6__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1728:1: rule__EnumAnnotationAttribute__Group__6__Impl : ( ( rule__EnumAnnotationAttribute__Group_6__0 )* ) ;
+ public final void rule__EnumAnnotationAttribute__Group__6__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1732:1: ( ( ( rule__EnumAnnotationAttribute__Group_6__0 )* ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1733:1: ( ( rule__EnumAnnotationAttribute__Group_6__0 )* )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1733:1: ( ( rule__EnumAnnotationAttribute__Group_6__0 )* )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1734:1: ( rule__EnumAnnotationAttribute__Group_6__0 )*
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getGroup_6());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1735:1: ( rule__EnumAnnotationAttribute__Group_6__0 )*
+ loop16:
+ do {
+ int alt16=2;
+ int LA16_0 = input.LA(1);
+
+ if ( (LA16_0==28) ) {
+ alt16=1;
+ }
+
+
+ switch (alt16) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1735:2: rule__EnumAnnotationAttribute__Group_6__0
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group_6__0_in_rule__EnumAnnotationAttribute__Group__6__Impl3524);
+ rule__EnumAnnotationAttribute__Group_6__0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ default :
+ break loop16;
+ }
+ } while (true);
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getGroup_6());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__6__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__7"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1745:1: rule__EnumAnnotationAttribute__Group__7 : rule__EnumAnnotationAttribute__Group__7__Impl ;
+ public final void rule__EnumAnnotationAttribute__Group__7() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1749:1: ( rule__EnumAnnotationAttribute__Group__7__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1750:2: rule__EnumAnnotationAttribute__Group__7__Impl
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group__7__Impl_in_rule__EnumAnnotationAttribute__Group__73555);
+ rule__EnumAnnotationAttribute__Group__7__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__7"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group__7__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1756:1: rule__EnumAnnotationAttribute__Group__7__Impl : ( '}' ) ;
+ public final void rule__EnumAnnotationAttribute__Group__7__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1760:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1761:1: ( '}' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1761:1: ( '}' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1762:1: '}'
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getRightCurlyBracketKeyword_7());
+ match(input,27,FOLLOW_27_in_rule__EnumAnnotationAttribute__Group__7__Impl3583);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getRightCurlyBracketKeyword_7());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group__7__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group_6__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1791:1: rule__EnumAnnotationAttribute__Group_6__0 : rule__EnumAnnotationAttribute__Group_6__0__Impl rule__EnumAnnotationAttribute__Group_6__1 ;
+ public final void rule__EnumAnnotationAttribute__Group_6__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1795:1: ( rule__EnumAnnotationAttribute__Group_6__0__Impl rule__EnumAnnotationAttribute__Group_6__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1796:2: rule__EnumAnnotationAttribute__Group_6__0__Impl rule__EnumAnnotationAttribute__Group_6__1
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group_6__0__Impl_in_rule__EnumAnnotationAttribute__Group_6__03630);
+ rule__EnumAnnotationAttribute__Group_6__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group_6__1_in_rule__EnumAnnotationAttribute__Group_6__03633);
+ rule__EnumAnnotationAttribute__Group_6__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group_6__0"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group_6__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1803:1: rule__EnumAnnotationAttribute__Group_6__0__Impl : ( ',' ) ;
+ public final void rule__EnumAnnotationAttribute__Group_6__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1807:1: ( ( ',' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1808:1: ( ',' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1808:1: ( ',' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1809:1: ','
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getCommaKeyword_6_0());
+ match(input,28,FOLLOW_28_in_rule__EnumAnnotationAttribute__Group_6__0__Impl3661);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getCommaKeyword_6_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group_6__0__Impl"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group_6__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1822:1: rule__EnumAnnotationAttribute__Group_6__1 : rule__EnumAnnotationAttribute__Group_6__1__Impl ;
+ public final void rule__EnumAnnotationAttribute__Group_6__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1826:1: ( rule__EnumAnnotationAttribute__Group_6__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1827:2: rule__EnumAnnotationAttribute__Group_6__1__Impl
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__Group_6__1__Impl_in_rule__EnumAnnotationAttribute__Group_6__13692);
+ rule__EnumAnnotationAttribute__Group_6__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group_6__1"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__Group_6__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1833:1: rule__EnumAnnotationAttribute__Group_6__1__Impl : ( ( rule__EnumAnnotationAttribute__ValuesAssignment_6_1 ) ) ;
+ public final void rule__EnumAnnotationAttribute__Group_6__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1837:1: ( ( ( rule__EnumAnnotationAttribute__ValuesAssignment_6_1 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1838:1: ( ( rule__EnumAnnotationAttribute__ValuesAssignment_6_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1838:1: ( ( rule__EnumAnnotationAttribute__ValuesAssignment_6_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1839:1: ( rule__EnumAnnotationAttribute__ValuesAssignment_6_1 )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_6_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1840:1: ( rule__EnumAnnotationAttribute__ValuesAssignment_6_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1840:2: rule__EnumAnnotationAttribute__ValuesAssignment_6_1
+ {
+ pushFollow(FOLLOW_rule__EnumAnnotationAttribute__ValuesAssignment_6_1_in_rule__EnumAnnotationAttribute__Group_6__1__Impl3719);
+ rule__EnumAnnotationAttribute__ValuesAssignment_6_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesAssignment_6_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__Group_6__1__Impl"
+
+
+ // $ANTLR start "rule__ImportedFQN__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1856:1: rule__ImportedFQN__Group__0 : rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1 ;
+ public final void rule__ImportedFQN__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1860:1: ( rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1861:2: rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1
+ {
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__0__Impl_in_rule__ImportedFQN__Group__03755);
+ rule__ImportedFQN__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__1_in_rule__ImportedFQN__Group__03758);
+ rule__ImportedFQN__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__ImportedFQN__Group__0"
+
+
+ // $ANTLR start "rule__ImportedFQN__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1868:1: rule__ImportedFQN__Group__0__Impl : ( ruleFQN ) ;
+ public final void rule__ImportedFQN__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1872:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1873:1: ( ruleFQN )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1873:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1874:1: ruleFQN
+ {
+ before(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
+ pushFollow(FOLLOW_ruleFQN_in_rule__ImportedFQN__Group__0__Impl3785);
+ ruleFQN();
+
+ state._fsp--;
+
+ after(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__ImportedFQN__Group__0__Impl"
+
+
+ // $ANTLR start "rule__ImportedFQN__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1885:1: rule__ImportedFQN__Group__1 : rule__ImportedFQN__Group__1__Impl ;
+ public final void rule__ImportedFQN__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1889:1: ( rule__ImportedFQN__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1890:2: rule__ImportedFQN__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__1__Impl_in_rule__ImportedFQN__Group__13814);
+ rule__ImportedFQN__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__ImportedFQN__Group__1"
+
+
+ // $ANTLR start "rule__ImportedFQN__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1896:1: rule__ImportedFQN__Group__1__Impl : ( ( '.*' )? ) ;
+ public final void rule__ImportedFQN__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1900:1: ( ( ( '.*' )? ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1901:1: ( ( '.*' )? )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1901:1: ( ( '.*' )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1902:1: ( '.*' )?
+ {
+ before(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1903:1: ( '.*' )?
+ int alt17=2;
+ int LA17_0 = input.LA(1);
+
+ if ( (LA17_0==29) ) {
+ alt17=1;
+ }
+ switch (alt17) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1904:2: '.*'
+ {
+ match(input,29,FOLLOW_29_in_rule__ImportedFQN__Group__1__Impl3843);
+
+ }
+ break;
+
+ }
+
+ after(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__ImportedFQN__Group__1__Impl"
+
+
+ // $ANTLR start "rule__Documentation__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1919:1: rule__Documentation__Group__0 : rule__Documentation__Group__0__Impl rule__Documentation__Group__1 ;
+ public final void rule__Documentation__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1923:1: ( rule__Documentation__Group__0__Impl rule__Documentation__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1924:2: rule__Documentation__Group__0__Impl rule__Documentation__Group__1
+ {
+ pushFollow(FOLLOW_rule__Documentation__Group__0__Impl_in_rule__Documentation__Group__03880);
+ rule__Documentation__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Documentation__Group__1_in_rule__Documentation__Group__03883);
+ rule__Documentation__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__0"
+
+
+ // $ANTLR start "rule__Documentation__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1931:1: rule__Documentation__Group__0__Impl : ( () ) ;
+ public final void rule__Documentation__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1935:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1936:1: ( () )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1936:1: ( () )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1937:1: ()
+ {
+ before(grammarAccess.getDocumentationAccess().getDocumentationAction_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1938:1: ()
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1940:1:
+ {
+ }
+
+ after(grammarAccess.getDocumentationAccess().getDocumentationAction_0());
+
+ }
+
+
+ }
+
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__0__Impl"
+
+
+ // $ANTLR start "rule__Documentation__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1950:1: rule__Documentation__Group__1 : rule__Documentation__Group__1__Impl rule__Documentation__Group__2 ;
+ public final void rule__Documentation__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1954:1: ( rule__Documentation__Group__1__Impl rule__Documentation__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1955:2: rule__Documentation__Group__1__Impl rule__Documentation__Group__2
+ {
+ pushFollow(FOLLOW_rule__Documentation__Group__1__Impl_in_rule__Documentation__Group__13941);
+ rule__Documentation__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Documentation__Group__2_in_rule__Documentation__Group__13944);
+ rule__Documentation__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__1"
+
+
+ // $ANTLR start "rule__Documentation__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1962:1: rule__Documentation__Group__1__Impl : ( '[' ) ;
+ public final void rule__Documentation__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1966:1: ( ( '[' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1967:1: ( '[' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1967:1: ( '[' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1968:1: '['
+ {
+ before(grammarAccess.getDocumentationAccess().getLeftSquareBracketKeyword_1());
+ match(input,30,FOLLOW_30_in_rule__Documentation__Group__1__Impl3972);
+ after(grammarAccess.getDocumentationAccess().getLeftSquareBracketKeyword_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__1__Impl"
+
+
+ // $ANTLR start "rule__Documentation__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1981:1: rule__Documentation__Group__2 : rule__Documentation__Group__2__Impl rule__Documentation__Group__3 ;
+ public final void rule__Documentation__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1985:1: ( rule__Documentation__Group__2__Impl rule__Documentation__Group__3 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1986:2: rule__Documentation__Group__2__Impl rule__Documentation__Group__3
+ {
+ pushFollow(FOLLOW_rule__Documentation__Group__2__Impl_in_rule__Documentation__Group__24003);
+ rule__Documentation__Group__2__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Documentation__Group__3_in_rule__Documentation__Group__24006);
+ rule__Documentation__Group__3();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__2"
+
+
+ // $ANTLR start "rule__Documentation__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1993:1: rule__Documentation__Group__2__Impl : ( ( rule__Documentation__LinesAssignment_2 )* ) ;
+ public final void rule__Documentation__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1997:1: ( ( ( rule__Documentation__LinesAssignment_2 )* ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1998:1: ( ( rule__Documentation__LinesAssignment_2 )* )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1998:1: ( ( rule__Documentation__LinesAssignment_2 )* )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:1999:1: ( rule__Documentation__LinesAssignment_2 )*
+ {
+ before(grammarAccess.getDocumentationAccess().getLinesAssignment_2());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2000:1: ( rule__Documentation__LinesAssignment_2 )*
+ loop18:
+ do {
+ int alt18=2;
+ int LA18_0 = input.LA(1);
+
+ if ( (LA18_0==RULE_STRING) ) {
+ alt18=1;
+ }
+
+
+ switch (alt18) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2000:2: rule__Documentation__LinesAssignment_2
+ {
+ pushFollow(FOLLOW_rule__Documentation__LinesAssignment_2_in_rule__Documentation__Group__2__Impl4033);
+ rule__Documentation__LinesAssignment_2();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ default :
+ break loop18;
+ }
+ } while (true);
+
+ after(grammarAccess.getDocumentationAccess().getLinesAssignment_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__2__Impl"
+
+
+ // $ANTLR start "rule__Documentation__Group__3"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2010:1: rule__Documentation__Group__3 : rule__Documentation__Group__3__Impl ;
+ public final void rule__Documentation__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2014:1: ( rule__Documentation__Group__3__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2015:2: rule__Documentation__Group__3__Impl
+ {
+ pushFollow(FOLLOW_rule__Documentation__Group__3__Impl_in_rule__Documentation__Group__34064);
+ rule__Documentation__Group__3__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__3"
+
+
+ // $ANTLR start "rule__Documentation__Group__3__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2021:1: rule__Documentation__Group__3__Impl : ( ']' ) ;
+ public final void rule__Documentation__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2025:1: ( ( ']' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2026:1: ( ']' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2026:1: ( ']' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2027:1: ']'
+ {
+ before(grammarAccess.getDocumentationAccess().getRightSquareBracketKeyword_3());
+ match(input,31,FOLLOW_31_in_rule__Documentation__Group__3__Impl4092);
+ after(grammarAccess.getDocumentationAccess().getRightSquareBracketKeyword_3());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__Group__3__Impl"
+
+
+ // $ANTLR start "rule__BooleanLiteral__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2054:1: rule__BooleanLiteral__Group__0 : rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1 ;
+ public final void rule__BooleanLiteral__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2058:1: ( rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2059:2: rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1
+ {
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__0__Impl_in_rule__BooleanLiteral__Group__04137);
+ rule__BooleanLiteral__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__1_in_rule__BooleanLiteral__Group__04140);
+ rule__BooleanLiteral__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__BooleanLiteral__Group__0"
+
+
+ // $ANTLR start "rule__BooleanLiteral__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2066:1: rule__BooleanLiteral__Group__0__Impl : ( () ) ;
+ public final void rule__BooleanLiteral__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2070:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2071:1: ( () )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2071:1: ( () )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2072:1: ()
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2073:1: ()
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2075:1:
+ {
+ }
+
+ after(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0());
+
+ }
+
+
+ }
+
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__BooleanLiteral__Group__0__Impl"
+
+
+ // $ANTLR start "rule__BooleanLiteral__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2085:1: rule__BooleanLiteral__Group__1 : rule__BooleanLiteral__Group__1__Impl ;
+ public final void rule__BooleanLiteral__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2089:1: ( rule__BooleanLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2090:2: rule__BooleanLiteral__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__1__Impl_in_rule__BooleanLiteral__Group__14198);
+ rule__BooleanLiteral__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__BooleanLiteral__Group__1"
+
+
+ // $ANTLR start "rule__BooleanLiteral__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2096:1: rule__BooleanLiteral__Group__1__Impl : ( ( rule__BooleanLiteral__Alternatives_1 ) ) ;
+ public final void rule__BooleanLiteral__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2100:1: ( ( ( rule__BooleanLiteral__Alternatives_1 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2101:1: ( ( rule__BooleanLiteral__Alternatives_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2101:1: ( ( rule__BooleanLiteral__Alternatives_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2102:1: ( rule__BooleanLiteral__Alternatives_1 )
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getAlternatives_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2103:1: ( rule__BooleanLiteral__Alternatives_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2103:2: rule__BooleanLiteral__Alternatives_1
+ {
+ pushFollow(FOLLOW_rule__BooleanLiteral__Alternatives_1_in_rule__BooleanLiteral__Group__1__Impl4225);
+ rule__BooleanLiteral__Alternatives_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getBooleanLiteralAccess().getAlternatives_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__BooleanLiteral__Group__1__Impl"
+
+
+ // $ANTLR start "rule__RealLiteral__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2117:1: rule__RealLiteral__Group__0 : rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1 ;
+ public final void rule__RealLiteral__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2121:1: ( rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2122:2: rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1
+ {
+ pushFollow(FOLLOW_rule__RealLiteral__Group__0__Impl_in_rule__RealLiteral__Group__04259);
+ rule__RealLiteral__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__RealLiteral__Group__1_in_rule__RealLiteral__Group__04262);
+ rule__RealLiteral__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__RealLiteral__Group__0"
+
+
+ // $ANTLR start "rule__RealLiteral__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2129:1: rule__RealLiteral__Group__0__Impl : ( () ) ;
+ public final void rule__RealLiteral__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2133:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2134:1: ( () )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2134:1: ( () )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2135:1: ()
+ {
+ before(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2136:1: ()
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2138:1:
+ {
+ }
+
+ after(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0());
+
+ }
+
+
+ }
+
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__RealLiteral__Group__0__Impl"
+
+
+ // $ANTLR start "rule__RealLiteral__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2148:1: rule__RealLiteral__Group__1 : rule__RealLiteral__Group__1__Impl ;
+ public final void rule__RealLiteral__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2152:1: ( rule__RealLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2153:2: rule__RealLiteral__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__RealLiteral__Group__1__Impl_in_rule__RealLiteral__Group__14320);
+ rule__RealLiteral__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__RealLiteral__Group__1"
+
+
+ // $ANTLR start "rule__RealLiteral__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2159:1: rule__RealLiteral__Group__1__Impl : ( ( rule__RealLiteral__ValueAssignment_1 ) ) ;
+ public final void rule__RealLiteral__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2163:1: ( ( ( rule__RealLiteral__ValueAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2164:1: ( ( rule__RealLiteral__ValueAssignment_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2164:1: ( ( rule__RealLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2165:1: ( rule__RealLiteral__ValueAssignment_1 )
+ {
+ before(grammarAccess.getRealLiteralAccess().getValueAssignment_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2166:1: ( rule__RealLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2166:2: rule__RealLiteral__ValueAssignment_1
+ {
+ pushFollow(FOLLOW_rule__RealLiteral__ValueAssignment_1_in_rule__RealLiteral__Group__1__Impl4347);
+ rule__RealLiteral__ValueAssignment_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getRealLiteralAccess().getValueAssignment_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__RealLiteral__Group__1__Impl"
+
+
+ // $ANTLR start "rule__IntLiteral__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2180:1: rule__IntLiteral__Group__0 : rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1 ;
+ public final void rule__IntLiteral__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2184:1: ( rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2185:2: rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1
+ {
+ pushFollow(FOLLOW_rule__IntLiteral__Group__0__Impl_in_rule__IntLiteral__Group__04381);
+ rule__IntLiteral__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__IntLiteral__Group__1_in_rule__IntLiteral__Group__04384);
+ rule__IntLiteral__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__IntLiteral__Group__0"
+
+
+ // $ANTLR start "rule__IntLiteral__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2192:1: rule__IntLiteral__Group__0__Impl : ( () ) ;
+ public final void rule__IntLiteral__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2196:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2197:1: ( () )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2197:1: ( () )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2198:1: ()
+ {
+ before(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2199:1: ()
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2201:1:
+ {
+ }
+
+ after(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0());
+
+ }
+
+
+ }
+
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__IntLiteral__Group__0__Impl"
+
+
+ // $ANTLR start "rule__IntLiteral__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2211:1: rule__IntLiteral__Group__1 : rule__IntLiteral__Group__1__Impl ;
+ public final void rule__IntLiteral__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2215:1: ( rule__IntLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2216:2: rule__IntLiteral__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__IntLiteral__Group__1__Impl_in_rule__IntLiteral__Group__14442);
+ rule__IntLiteral__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__IntLiteral__Group__1"
+
+
+ // $ANTLR start "rule__IntLiteral__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2222:1: rule__IntLiteral__Group__1__Impl : ( ( rule__IntLiteral__ValueAssignment_1 ) ) ;
+ public final void rule__IntLiteral__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2226:1: ( ( ( rule__IntLiteral__ValueAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2227:1: ( ( rule__IntLiteral__ValueAssignment_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2227:1: ( ( rule__IntLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2228:1: ( rule__IntLiteral__ValueAssignment_1 )
+ {
+ before(grammarAccess.getIntLiteralAccess().getValueAssignment_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2229:1: ( rule__IntLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2229:2: rule__IntLiteral__ValueAssignment_1
+ {
+ pushFollow(FOLLOW_rule__IntLiteral__ValueAssignment_1_in_rule__IntLiteral__Group__1__Impl4469);
+ rule__IntLiteral__ValueAssignment_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getIntLiteralAccess().getValueAssignment_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__IntLiteral__Group__1__Impl"
+
+
+ // $ANTLR start "rule__StringLiteral__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2243:1: rule__StringLiteral__Group__0 : rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1 ;
+ public final void rule__StringLiteral__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2247:1: ( rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2248:2: rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1
+ {
+ pushFollow(FOLLOW_rule__StringLiteral__Group__0__Impl_in_rule__StringLiteral__Group__04503);
+ rule__StringLiteral__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__StringLiteral__Group__1_in_rule__StringLiteral__Group__04506);
+ rule__StringLiteral__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__StringLiteral__Group__0"
+
+
+ // $ANTLR start "rule__StringLiteral__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2255:1: rule__StringLiteral__Group__0__Impl : ( () ) ;
+ public final void rule__StringLiteral__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2259:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2260:1: ( () )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2260:1: ( () )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2261:1: ()
+ {
+ before(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2262:1: ()
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2264:1:
+ {
+ }
+
+ after(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0());
+
+ }
+
+
+ }
+
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__StringLiteral__Group__0__Impl"
+
+
+ // $ANTLR start "rule__StringLiteral__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2274:1: rule__StringLiteral__Group__1 : rule__StringLiteral__Group__1__Impl ;
+ public final void rule__StringLiteral__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2278:1: ( rule__StringLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2279:2: rule__StringLiteral__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__StringLiteral__Group__1__Impl_in_rule__StringLiteral__Group__14564);
+ rule__StringLiteral__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__StringLiteral__Group__1"
+
+
+ // $ANTLR start "rule__StringLiteral__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2285:1: rule__StringLiteral__Group__1__Impl : ( ( rule__StringLiteral__ValueAssignment_1 ) ) ;
+ public final void rule__StringLiteral__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2289:1: ( ( ( rule__StringLiteral__ValueAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2290:1: ( ( rule__StringLiteral__ValueAssignment_1 ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2290:1: ( ( rule__StringLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2291:1: ( rule__StringLiteral__ValueAssignment_1 )
+ {
+ before(grammarAccess.getStringLiteralAccess().getValueAssignment_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2292:1: ( rule__StringLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2292:2: rule__StringLiteral__ValueAssignment_1
+ {
+ pushFollow(FOLLOW_rule__StringLiteral__ValueAssignment_1_in_rule__StringLiteral__Group__1__Impl4591);
+ rule__StringLiteral__ValueAssignment_1();
+
+ state._fsp--;
+
+
+ }
+
+ after(grammarAccess.getStringLiteralAccess().getValueAssignment_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__StringLiteral__Group__1__Impl"
+
+
+ // $ANTLR start "rule__SignedInteger__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2306:1: rule__SignedInteger__Group__0 : rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1 ;
+ public final void rule__SignedInteger__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2310:1: ( rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2311:2: rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1
+ {
+ pushFollow(FOLLOW_rule__SignedInteger__Group__0__Impl_in_rule__SignedInteger__Group__04625);
+ rule__SignedInteger__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__SignedInteger__Group__1_in_rule__SignedInteger__Group__04628);
+ rule__SignedInteger__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SignedInteger__Group__0"
+
+
+ // $ANTLR start "rule__SignedInteger__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2318:1: rule__SignedInteger__Group__0__Impl : ( ( rule__SignedInteger__Alternatives_0 )? ) ;
+ public final void rule__SignedInteger__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2322:1: ( ( ( rule__SignedInteger__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2323:1: ( ( rule__SignedInteger__Alternatives_0 )? )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2323:1: ( ( rule__SignedInteger__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2324:1: ( rule__SignedInteger__Alternatives_0 )?
+ {
+ before(grammarAccess.getSignedIntegerAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2325:1: ( rule__SignedInteger__Alternatives_0 )?
+ int alt19=2;
+ int LA19_0 = input.LA(1);
+
+ if ( ((LA19_0>=15 && LA19_0<=16)) ) {
+ alt19=1;
+ }
+ switch (alt19) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2325:2: rule__SignedInteger__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__SignedInteger__Alternatives_0_in_rule__SignedInteger__Group__0__Impl4655);
+ rule__SignedInteger__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ }
+
+ after(grammarAccess.getSignedIntegerAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SignedInteger__Group__0__Impl"
+
+
+ // $ANTLR start "rule__SignedInteger__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2335:1: rule__SignedInteger__Group__1 : rule__SignedInteger__Group__1__Impl ;
+ public final void rule__SignedInteger__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2339:1: ( rule__SignedInteger__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2340:2: rule__SignedInteger__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__SignedInteger__Group__1__Impl_in_rule__SignedInteger__Group__14686);
+ rule__SignedInteger__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SignedInteger__Group__1"
+
+
+ // $ANTLR start "rule__SignedInteger__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2346:1: rule__SignedInteger__Group__1__Impl : ( RULE_INT ) ;
+ public final void rule__SignedInteger__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2350:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2351:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2351:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2352:1: RULE_INT
+ {
+ before(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__SignedInteger__Group__1__Impl4713);
+ after(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SignedInteger__Group__1__Impl"
+
+
+ // $ANTLR start "rule__Decimal__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2367:1: rule__Decimal__Group__0 : rule__Decimal__Group__0__Impl rule__Decimal__Group__1 ;
+ public final void rule__Decimal__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2371:1: ( rule__Decimal__Group__0__Impl rule__Decimal__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2372:2: rule__Decimal__Group__0__Impl rule__Decimal__Group__1
+ {
+ pushFollow(FOLLOW_rule__Decimal__Group__0__Impl_in_rule__Decimal__Group__04746);
+ rule__Decimal__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Decimal__Group__1_in_rule__Decimal__Group__04749);
+ rule__Decimal__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__0"
+
+
+ // $ANTLR start "rule__Decimal__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2379:1: rule__Decimal__Group__0__Impl : ( ( rule__Decimal__Alternatives_0 )? ) ;
+ public final void rule__Decimal__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2383:1: ( ( ( rule__Decimal__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2384:1: ( ( rule__Decimal__Alternatives_0 )? )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2384:1: ( ( rule__Decimal__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2385:1: ( rule__Decimal__Alternatives_0 )?
+ {
+ before(grammarAccess.getDecimalAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2386:1: ( rule__Decimal__Alternatives_0 )?
+ int alt20=2;
+ int LA20_0 = input.LA(1);
+
+ if ( ((LA20_0>=15 && LA20_0<=16)) ) {
+ alt20=1;
+ }
+ switch (alt20) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2386:2: rule__Decimal__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__Decimal__Alternatives_0_in_rule__Decimal__Group__0__Impl4776);
+ rule__Decimal__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ }
+
+ after(grammarAccess.getDecimalAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__0__Impl"
+
+
+ // $ANTLR start "rule__Decimal__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2396:1: rule__Decimal__Group__1 : rule__Decimal__Group__1__Impl rule__Decimal__Group__2 ;
+ public final void rule__Decimal__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2400:1: ( rule__Decimal__Group__1__Impl rule__Decimal__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2401:2: rule__Decimal__Group__1__Impl rule__Decimal__Group__2
+ {
+ pushFollow(FOLLOW_rule__Decimal__Group__1__Impl_in_rule__Decimal__Group__14807);
+ rule__Decimal__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Decimal__Group__2_in_rule__Decimal__Group__14810);
+ rule__Decimal__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__1"
+
+
+ // $ANTLR start "rule__Decimal__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2408:1: rule__Decimal__Group__1__Impl : ( RULE_INT ) ;
+ public final void rule__Decimal__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2412:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2413:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2413:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2414:1: RULE_INT
+ {
+ before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Decimal__Group__1__Impl4837);
+ after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__1__Impl"
+
+
+ // $ANTLR start "rule__Decimal__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2425:1: rule__Decimal__Group__2 : rule__Decimal__Group__2__Impl rule__Decimal__Group__3 ;
+ public final void rule__Decimal__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2429:1: ( rule__Decimal__Group__2__Impl rule__Decimal__Group__3 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2430:2: rule__Decimal__Group__2__Impl rule__Decimal__Group__3
+ {
+ pushFollow(FOLLOW_rule__Decimal__Group__2__Impl_in_rule__Decimal__Group__24866);
+ rule__Decimal__Group__2__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__Decimal__Group__3_in_rule__Decimal__Group__24869);
+ rule__Decimal__Group__3();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__2"
+
+
+ // $ANTLR start "rule__Decimal__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2437:1: rule__Decimal__Group__2__Impl : ( '.' ) ;
+ public final void rule__Decimal__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2441:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2442:1: ( '.' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2442:1: ( '.' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2443:1: '.'
+ {
+ before(grammarAccess.getDecimalAccess().getFullStopKeyword_2());
+ match(input,32,FOLLOW_32_in_rule__Decimal__Group__2__Impl4897);
+ after(grammarAccess.getDecimalAccess().getFullStopKeyword_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__2__Impl"
+
+
+ // $ANTLR start "rule__Decimal__Group__3"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2456:1: rule__Decimal__Group__3 : rule__Decimal__Group__3__Impl ;
+ public final void rule__Decimal__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2460:1: ( rule__Decimal__Group__3__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2461:2: rule__Decimal__Group__3__Impl
+ {
+ pushFollow(FOLLOW_rule__Decimal__Group__3__Impl_in_rule__Decimal__Group__34928);
+ rule__Decimal__Group__3__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__3"
+
+
+ // $ANTLR start "rule__Decimal__Group__3__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2467:1: rule__Decimal__Group__3__Impl : ( RULE_INT ) ;
+ public final void rule__Decimal__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2471:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2472:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2472:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2473:1: RULE_INT
+ {
+ before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Decimal__Group__3__Impl4955);
+ after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Decimal__Group__3__Impl"
+
+
+ // $ANTLR start "rule__DotDecimal__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2492:1: rule__DotDecimal__Group__0 : rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1 ;
+ public final void rule__DotDecimal__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2496:1: ( rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2497:2: rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1
+ {
+ pushFollow(FOLLOW_rule__DotDecimal__Group__0__Impl_in_rule__DotDecimal__Group__04992);
+ rule__DotDecimal__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DotDecimal__Group__1_in_rule__DotDecimal__Group__04995);
+ rule__DotDecimal__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Group__0"
+
+
+ // $ANTLR start "rule__DotDecimal__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2504:1: rule__DotDecimal__Group__0__Impl : ( ( rule__DotDecimal__Alternatives_0 )? ) ;
+ public final void rule__DotDecimal__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2508:1: ( ( ( rule__DotDecimal__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2509:1: ( ( rule__DotDecimal__Alternatives_0 )? )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2509:1: ( ( rule__DotDecimal__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2510:1: ( rule__DotDecimal__Alternatives_0 )?
+ {
+ before(grammarAccess.getDotDecimalAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2511:1: ( rule__DotDecimal__Alternatives_0 )?
+ int alt21=2;
+ int LA21_0 = input.LA(1);
+
+ if ( ((LA21_0>=15 && LA21_0<=16)) ) {
+ alt21=1;
+ }
+ switch (alt21) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2511:2: rule__DotDecimal__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__DotDecimal__Alternatives_0_in_rule__DotDecimal__Group__0__Impl5022);
+ rule__DotDecimal__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ }
+
+ after(grammarAccess.getDotDecimalAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Group__0__Impl"
+
+
+ // $ANTLR start "rule__DotDecimal__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2521:1: rule__DotDecimal__Group__1 : rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2 ;
+ public final void rule__DotDecimal__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2525:1: ( rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2526:2: rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2
+ {
+ pushFollow(FOLLOW_rule__DotDecimal__Group__1__Impl_in_rule__DotDecimal__Group__15053);
+ rule__DotDecimal__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DotDecimal__Group__2_in_rule__DotDecimal__Group__15056);
+ rule__DotDecimal__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Group__1"
+
+
+ // $ANTLR start "rule__DotDecimal__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2533:1: rule__DotDecimal__Group__1__Impl : ( '.' ) ;
+ public final void rule__DotDecimal__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2537:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2538:1: ( '.' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2538:1: ( '.' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2539:1: '.'
+ {
+ before(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
+ match(input,32,FOLLOW_32_in_rule__DotDecimal__Group__1__Impl5084);
+ after(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Group__1__Impl"
+
+
+ // $ANTLR start "rule__DotDecimal__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2552:1: rule__DotDecimal__Group__2 : rule__DotDecimal__Group__2__Impl ;
+ public final void rule__DotDecimal__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2556:1: ( rule__DotDecimal__Group__2__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2557:2: rule__DotDecimal__Group__2__Impl
+ {
+ pushFollow(FOLLOW_rule__DotDecimal__Group__2__Impl_in_rule__DotDecimal__Group__25115);
+ rule__DotDecimal__Group__2__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Group__2"
+
+
+ // $ANTLR start "rule__DotDecimal__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2563:1: rule__DotDecimal__Group__2__Impl : ( RULE_INT ) ;
+ public final void rule__DotDecimal__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2567:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2568:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2568:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2569:1: RULE_INT
+ {
+ before(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DotDecimal__Group__2__Impl5142);
+ after(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DotDecimal__Group__2__Impl"
+
+
+ // $ANTLR start "rule__DecimalDot__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2586:1: rule__DecimalDot__Group__0 : rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1 ;
+ public final void rule__DecimalDot__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2590:1: ( rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2591:2: rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1
+ {
+ pushFollow(FOLLOW_rule__DecimalDot__Group__0__Impl_in_rule__DecimalDot__Group__05177);
+ rule__DecimalDot__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DecimalDot__Group__1_in_rule__DecimalDot__Group__05180);
+ rule__DecimalDot__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Group__0"
+
+
+ // $ANTLR start "rule__DecimalDot__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2598:1: rule__DecimalDot__Group__0__Impl : ( ( rule__DecimalDot__Alternatives_0 )? ) ;
+ public final void rule__DecimalDot__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2602:1: ( ( ( rule__DecimalDot__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2603:1: ( ( rule__DecimalDot__Alternatives_0 )? )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2603:1: ( ( rule__DecimalDot__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2604:1: ( rule__DecimalDot__Alternatives_0 )?
+ {
+ before(grammarAccess.getDecimalDotAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2605:1: ( rule__DecimalDot__Alternatives_0 )?
+ int alt22=2;
+ int LA22_0 = input.LA(1);
+
+ if ( ((LA22_0>=15 && LA22_0<=16)) ) {
+ alt22=1;
+ }
+ switch (alt22) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2605:2: rule__DecimalDot__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__DecimalDot__Alternatives_0_in_rule__DecimalDot__Group__0__Impl5207);
+ rule__DecimalDot__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ }
+
+ after(grammarAccess.getDecimalDotAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Group__0__Impl"
+
+
+ // $ANTLR start "rule__DecimalDot__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2615:1: rule__DecimalDot__Group__1 : rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2 ;
+ public final void rule__DecimalDot__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2619:1: ( rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2620:2: rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2
+ {
+ pushFollow(FOLLOW_rule__DecimalDot__Group__1__Impl_in_rule__DecimalDot__Group__15238);
+ rule__DecimalDot__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DecimalDot__Group__2_in_rule__DecimalDot__Group__15241);
+ rule__DecimalDot__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Group__1"
+
+
+ // $ANTLR start "rule__DecimalDot__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2627:1: rule__DecimalDot__Group__1__Impl : ( RULE_INT ) ;
+ public final void rule__DecimalDot__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2631:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2632:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2632:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2633:1: RULE_INT
+ {
+ before(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalDot__Group__1__Impl5268);
+ after(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Group__1__Impl"
+
+
+ // $ANTLR start "rule__DecimalDot__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2644:1: rule__DecimalDot__Group__2 : rule__DecimalDot__Group__2__Impl ;
+ public final void rule__DecimalDot__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2648:1: ( rule__DecimalDot__Group__2__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2649:2: rule__DecimalDot__Group__2__Impl
+ {
+ pushFollow(FOLLOW_rule__DecimalDot__Group__2__Impl_in_rule__DecimalDot__Group__25297);
+ rule__DecimalDot__Group__2__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Group__2"
+
+
+ // $ANTLR start "rule__DecimalDot__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2655:1: rule__DecimalDot__Group__2__Impl : ( '.' ) ;
+ public final void rule__DecimalDot__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2659:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2660:1: ( '.' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2660:1: ( '.' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2661:1: '.'
+ {
+ before(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
+ match(input,32,FOLLOW_32_in_rule__DecimalDot__Group__2__Impl5325);
+ after(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalDot__Group__2__Impl"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2680:1: rule__DecimalExp__Group__0 : rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1 ;
+ public final void rule__DecimalExp__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2684:1: ( rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2685:2: rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Group__0__Impl_in_rule__DecimalExp__Group__05362);
+ rule__DecimalExp__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DecimalExp__Group__1_in_rule__DecimalExp__Group__05365);
+ rule__DecimalExp__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__0"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2692:1: rule__DecimalExp__Group__0__Impl : ( ( rule__DecimalExp__Alternatives_0 )? ) ;
+ public final void rule__DecimalExp__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2696:1: ( ( ( rule__DecimalExp__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2697:1: ( ( rule__DecimalExp__Alternatives_0 )? )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2697:1: ( ( rule__DecimalExp__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2698:1: ( rule__DecimalExp__Alternatives_0 )?
+ {
+ before(grammarAccess.getDecimalExpAccess().getAlternatives_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2699:1: ( rule__DecimalExp__Alternatives_0 )?
+ int alt23=2;
+ int LA23_0 = input.LA(1);
+
+ if ( ((LA23_0>=15 && LA23_0<=16)) ) {
+ alt23=1;
+ }
+ switch (alt23) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2699:2: rule__DecimalExp__Alternatives_0
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Alternatives_0_in_rule__DecimalExp__Group__0__Impl5392);
+ rule__DecimalExp__Alternatives_0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ }
+
+ after(grammarAccess.getDecimalExpAccess().getAlternatives_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__0__Impl"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2709:1: rule__DecimalExp__Group__1 : rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2 ;
+ public final void rule__DecimalExp__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2713:1: ( rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2714:2: rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Group__1__Impl_in_rule__DecimalExp__Group__15423);
+ rule__DecimalExp__Group__1__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DecimalExp__Group__2_in_rule__DecimalExp__Group__15426);
+ rule__DecimalExp__Group__2();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__1"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2721:1: rule__DecimalExp__Group__1__Impl : ( RULE_INT ) ;
+ public final void rule__DecimalExp__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2725:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2726:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2726:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2727:1: RULE_INT
+ {
+ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__1__Impl5453);
+ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__1__Impl"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2738:1: rule__DecimalExp__Group__2 : rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3 ;
+ public final void rule__DecimalExp__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2742:1: ( rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2743:2: rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Group__2__Impl_in_rule__DecimalExp__Group__25482);
+ rule__DecimalExp__Group__2__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DecimalExp__Group__3_in_rule__DecimalExp__Group__25485);
+ rule__DecimalExp__Group__3();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__2"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__2__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2750:1: rule__DecimalExp__Group__2__Impl : ( '.' ) ;
+ public final void rule__DecimalExp__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2754:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2755:1: ( '.' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2755:1: ( '.' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2756:1: '.'
+ {
+ before(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
+ match(input,32,FOLLOW_32_in_rule__DecimalExp__Group__2__Impl5513);
+ after(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__2__Impl"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__3"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2769:1: rule__DecimalExp__Group__3 : rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4 ;
+ public final void rule__DecimalExp__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2773:1: ( rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2774:2: rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Group__3__Impl_in_rule__DecimalExp__Group__35544);
+ rule__DecimalExp__Group__3__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__DecimalExp__Group__4_in_rule__DecimalExp__Group__35547);
+ rule__DecimalExp__Group__4();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__3"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__3__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2781:1: rule__DecimalExp__Group__3__Impl : ( RULE_INT ) ;
+ public final void rule__DecimalExp__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2785:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2786:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2786:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2787:1: RULE_INT
+ {
+ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__3__Impl5574);
+ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__3__Impl"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__4"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2798:1: rule__DecimalExp__Group__4 : rule__DecimalExp__Group__4__Impl ;
+ public final void rule__DecimalExp__Group__4() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2802:1: ( rule__DecimalExp__Group__4__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2803:2: rule__DecimalExp__Group__4__Impl
+ {
+ pushFollow(FOLLOW_rule__DecimalExp__Group__4__Impl_in_rule__DecimalExp__Group__45603);
+ rule__DecimalExp__Group__4__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__4"
+
+
+ // $ANTLR start "rule__DecimalExp__Group__4__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2809:1: rule__DecimalExp__Group__4__Impl : ( RULE_EXP ) ;
+ public final void rule__DecimalExp__Group__4__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2813:1: ( ( RULE_EXP ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2814:1: ( RULE_EXP )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2814:1: ( RULE_EXP )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2815:1: RULE_EXP
+ {
+ before(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4());
+ match(input,RULE_EXP,FOLLOW_RULE_EXP_in_rule__DecimalExp__Group__4__Impl5630);
+ after(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DecimalExp__Group__4__Impl"
+
+
+ // $ANTLR start "rule__FQN__Group__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2836:1: rule__FQN__Group__0 : rule__FQN__Group__0__Impl rule__FQN__Group__1 ;
+ public final void rule__FQN__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2840:1: ( rule__FQN__Group__0__Impl rule__FQN__Group__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2841:2: rule__FQN__Group__0__Impl rule__FQN__Group__1
+ {
+ pushFollow(FOLLOW_rule__FQN__Group__0__Impl_in_rule__FQN__Group__05669);
+ rule__FQN__Group__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__FQN__Group__1_in_rule__FQN__Group__05672);
+ rule__FQN__Group__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group__0"
+
+
+ // $ANTLR start "rule__FQN__Group__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2848:1: rule__FQN__Group__0__Impl : ( RULE_ID ) ;
+ public final void rule__FQN__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2852:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2853:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2853:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2854:1: RULE_ID
+ {
+ before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FQN__Group__0__Impl5699);
+ after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group__0__Impl"
+
+
+ // $ANTLR start "rule__FQN__Group__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2865:1: rule__FQN__Group__1 : rule__FQN__Group__1__Impl ;
+ public final void rule__FQN__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2869:1: ( rule__FQN__Group__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2870:2: rule__FQN__Group__1__Impl
+ {
+ pushFollow(FOLLOW_rule__FQN__Group__1__Impl_in_rule__FQN__Group__15728);
+ rule__FQN__Group__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group__1"
+
+
+ // $ANTLR start "rule__FQN__Group__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2876:1: rule__FQN__Group__1__Impl : ( ( rule__FQN__Group_1__0 )* ) ;
+ public final void rule__FQN__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2880:1: ( ( ( rule__FQN__Group_1__0 )* ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2881:1: ( ( rule__FQN__Group_1__0 )* )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2881:1: ( ( rule__FQN__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2882:1: ( rule__FQN__Group_1__0 )*
+ {
+ before(grammarAccess.getFQNAccess().getGroup_1());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2883:1: ( rule__FQN__Group_1__0 )*
+ loop24:
+ do {
+ int alt24=2;
+ int LA24_0 = input.LA(1);
+
+ if ( (LA24_0==32) ) {
+ alt24=1;
+ }
+
+
+ switch (alt24) {
+ case 1 :
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2883:2: rule__FQN__Group_1__0
+ {
+ pushFollow(FOLLOW_rule__FQN__Group_1__0_in_rule__FQN__Group__1__Impl5755);
+ rule__FQN__Group_1__0();
+
+ state._fsp--;
+
+
+ }
+ break;
+
+ default :
+ break loop24;
+ }
+ } while (true);
+
+ after(grammarAccess.getFQNAccess().getGroup_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group__1__Impl"
+
+
+ // $ANTLR start "rule__FQN__Group_1__0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2897:1: rule__FQN__Group_1__0 : rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1 ;
+ public final void rule__FQN__Group_1__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2901:1: ( rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1 )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2902:2: rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1
+ {
+ pushFollow(FOLLOW_rule__FQN__Group_1__0__Impl_in_rule__FQN__Group_1__05790);
+ rule__FQN__Group_1__0__Impl();
+
+ state._fsp--;
+
+ pushFollow(FOLLOW_rule__FQN__Group_1__1_in_rule__FQN__Group_1__05793);
+ rule__FQN__Group_1__1();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group_1__0"
+
+
+ // $ANTLR start "rule__FQN__Group_1__0__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2909:1: rule__FQN__Group_1__0__Impl : ( '.' ) ;
+ public final void rule__FQN__Group_1__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2913:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2914:1: ( '.' )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2914:1: ( '.' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2915:1: '.'
+ {
+ before(grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
+ match(input,32,FOLLOW_32_in_rule__FQN__Group_1__0__Impl5821);
+ after(grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group_1__0__Impl"
+
+
+ // $ANTLR start "rule__FQN__Group_1__1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2928:1: rule__FQN__Group_1__1 : rule__FQN__Group_1__1__Impl ;
+ public final void rule__FQN__Group_1__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2932:1: ( rule__FQN__Group_1__1__Impl )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2933:2: rule__FQN__Group_1__1__Impl
+ {
+ pushFollow(FOLLOW_rule__FQN__Group_1__1__Impl_in_rule__FQN__Group_1__15852);
+ rule__FQN__Group_1__1__Impl();
+
+ state._fsp--;
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group_1__1"
+
+
+ // $ANTLR start "rule__FQN__Group_1__1__Impl"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2939:1: rule__FQN__Group_1__1__Impl : ( RULE_ID ) ;
+ public final void rule__FQN__Group_1__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2943:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2944:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2944:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2945:1: RULE_ID
+ {
+ before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FQN__Group_1__1__Impl5879);
+ after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FQN__Group_1__1__Impl"
+
+
+ // $ANTLR start "rule__FSMModel__GreetingsAssignment"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2961:1: rule__FSMModel__GreetingsAssignment : ( ruleGreeting ) ;
+ public final void rule__FSMModel__GreetingsAssignment() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2965:1: ( ( ruleGreeting ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2966:1: ( ruleGreeting )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2966:1: ( ruleGreeting )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2967:1: ruleGreeting
+ {
+ before(grammarAccess.getFSMModelAccess().getGreetingsGreetingParserRuleCall_0());
+ pushFollow(FOLLOW_ruleGreeting_in_rule__FSMModel__GreetingsAssignment5917);
+ ruleGreeting();
+
+ state._fsp--;
+
+ after(grammarAccess.getFSMModelAccess().getGreetingsGreetingParserRuleCall_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__FSMModel__GreetingsAssignment"
+
+
+ // $ANTLR start "rule__Greeting__NameAssignment_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2976:1: rule__Greeting__NameAssignment_1 : ( RULE_ID ) ;
+ public final void rule__Greeting__NameAssignment_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2980:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2981:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2981:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2982:1: RULE_ID
+ {
+ before(grammarAccess.getGreetingAccess().getNameIDTerminalRuleCall_1_0());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Greeting__NameAssignment_15948);
+ after(grammarAccess.getGreetingAccess().getNameIDTerminalRuleCall_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Greeting__NameAssignment_1"
+
+
+ // $ANTLR start "rule__KeyValue__KeyAssignment_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2994:1: rule__KeyValue__KeyAssignment_0 : ( RULE_ID ) ;
+ public final void rule__KeyValue__KeyAssignment_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2998:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2999:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:2999:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3000:1: RULE_ID
+ {
+ before(grammarAccess.getKeyValueAccess().getKeyIDTerminalRuleCall_0_0());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__KeyValue__KeyAssignment_05982);
+ after(grammarAccess.getKeyValueAccess().getKeyIDTerminalRuleCall_0_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__KeyAssignment_0"
+
+
+ // $ANTLR start "rule__KeyValue__ValueAssignment_2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3009:1: rule__KeyValue__ValueAssignment_2 : ( ruleLiteral ) ;
+ public final void rule__KeyValue__ValueAssignment_2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3013:1: ( ( ruleLiteral ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3014:1: ( ruleLiteral )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3014:1: ( ruleLiteral )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3015:1: ruleLiteral
+ {
+ before(grammarAccess.getKeyValueAccess().getValueLiteralParserRuleCall_2_0());
+ pushFollow(FOLLOW_ruleLiteral_in_rule__KeyValue__ValueAssignment_26013);
+ ruleLiteral();
+
+ state._fsp--;
+
+ after(grammarAccess.getKeyValueAccess().getValueLiteralParserRuleCall_2_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__KeyValue__ValueAssignment_2"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__OptionalAssignment_0_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3030:1: rule__SimpleAnnotationAttribute__OptionalAssignment_0_0 : ( ( 'optional' ) ) ;
+ public final void rule__SimpleAnnotationAttribute__OptionalAssignment_0_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3034:1: ( ( ( 'optional' ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3035:1: ( ( 'optional' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3035:1: ( ( 'optional' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3036:1: ( 'optional' )
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3037:1: ( 'optional' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3038:1: 'optional'
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+ match(input,33,FOLLOW_33_in_rule__SimpleAnnotationAttribute__OptionalAssignment_0_06055);
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+
+ }
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__OptionalAssignment_0_0"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__NameAssignment_2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3053:1: rule__SimpleAnnotationAttribute__NameAssignment_2 : ( RULE_ID ) ;
+ public final void rule__SimpleAnnotationAttribute__NameAssignment_2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3057:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3058:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3058:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3059:1: RULE_ID
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SimpleAnnotationAttribute__NameAssignment_26094);
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__NameAssignment_2"
+
+
+ // $ANTLR start "rule__SimpleAnnotationAttribute__TypeAssignment_4"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3068:1: rule__SimpleAnnotationAttribute__TypeAssignment_4 : ( ruleLiteralType ) ;
+ public final void rule__SimpleAnnotationAttribute__TypeAssignment_4() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3072:1: ( ( ruleLiteralType ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3073:1: ( ruleLiteralType )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3073:1: ( ruleLiteralType )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3074:1: ruleLiteralType
+ {
+ before(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeLiteralTypeEnumRuleCall_4_0());
+ pushFollow(FOLLOW_ruleLiteralType_in_rule__SimpleAnnotationAttribute__TypeAssignment_46125);
+ ruleLiteralType();
+
+ state._fsp--;
+
+ after(grammarAccess.getSimpleAnnotationAttributeAccess().getTypeLiteralTypeEnumRuleCall_4_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SimpleAnnotationAttribute__TypeAssignment_4"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__OptionalAssignment_0_0"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3083:1: rule__EnumAnnotationAttribute__OptionalAssignment_0_0 : ( ( 'optional' ) ) ;
+ public final void rule__EnumAnnotationAttribute__OptionalAssignment_0_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3087:1: ( ( ( 'optional' ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3088:1: ( ( 'optional' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3088:1: ( ( 'optional' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3089:1: ( 'optional' )
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3090:1: ( 'optional' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3091:1: 'optional'
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+ match(input,33,FOLLOW_33_in_rule__EnumAnnotationAttribute__OptionalAssignment_0_06161);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+
+ }
+
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getOptionalOptionalKeyword_0_0_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__OptionalAssignment_0_0"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__NameAssignment_2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3106:1: rule__EnumAnnotationAttribute__NameAssignment_2 : ( RULE_ID ) ;
+ public final void rule__EnumAnnotationAttribute__NameAssignment_2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3110:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3111:1: ( RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3111:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3112:1: RULE_ID
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0());
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__EnumAnnotationAttribute__NameAssignment_26200);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getNameIDTerminalRuleCall_2_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__NameAssignment_2"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__ValuesAssignment_5"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3121:1: rule__EnumAnnotationAttribute__ValuesAssignment_5 : ( RULE_STRING ) ;
+ public final void rule__EnumAnnotationAttribute__ValuesAssignment_5() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3125:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3126:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3126:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3127:1: RULE_STRING
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_5_0());
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__EnumAnnotationAttribute__ValuesAssignment_56231);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_5_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__ValuesAssignment_5"
+
+
+ // $ANTLR start "rule__EnumAnnotationAttribute__ValuesAssignment_6_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3136:1: rule__EnumAnnotationAttribute__ValuesAssignment_6_1 : ( RULE_STRING ) ;
+ public final void rule__EnumAnnotationAttribute__ValuesAssignment_6_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3140:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3141:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3141:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3142:1: RULE_STRING
+ {
+ before(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_6_1_0());
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__EnumAnnotationAttribute__ValuesAssignment_6_16262);
+ after(grammarAccess.getEnumAnnotationAttributeAccess().getValuesSTRINGTerminalRuleCall_6_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__EnumAnnotationAttribute__ValuesAssignment_6_1"
+
+
+ // $ANTLR start "rule__Documentation__LinesAssignment_2"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3153:1: rule__Documentation__LinesAssignment_2 : ( RULE_STRING ) ;
+ public final void rule__Documentation__LinesAssignment_2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3157:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3158:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3158:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3159:1: RULE_STRING
+ {
+ before(grammarAccess.getDocumentationAccess().getLinesSTRINGTerminalRuleCall_2_0());
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Documentation__LinesAssignment_26295);
+ after(grammarAccess.getDocumentationAccess().getLinesSTRINGTerminalRuleCall_2_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__Documentation__LinesAssignment_2"
+
+
+ // $ANTLR start "rule__BooleanLiteral__IsTrueAssignment_1_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3170:1: rule__BooleanLiteral__IsTrueAssignment_1_1 : ( ( 'true' ) ) ;
+ public final void rule__BooleanLiteral__IsTrueAssignment_1_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3174:1: ( ( ( 'true' ) ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3175:1: ( ( 'true' ) )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3175:1: ( ( 'true' ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3176:1: ( 'true' )
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3177:1: ( 'true' )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3178:1: 'true'
+ {
+ before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ match(input,34,FOLLOW_34_in_rule__BooleanLiteral__IsTrueAssignment_1_16333);
+ after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+
+ }
+
+ after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__BooleanLiteral__IsTrueAssignment_1_1"
+
+
+ // $ANTLR start "rule__RealLiteral__ValueAssignment_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3193:1: rule__RealLiteral__ValueAssignment_1 : ( ruleReal ) ;
+ public final void rule__RealLiteral__ValueAssignment_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3197:1: ( ( ruleReal ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3198:1: ( ruleReal )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3198:1: ( ruleReal )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3199:1: ruleReal
+ {
+ before(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
+ pushFollow(FOLLOW_ruleReal_in_rule__RealLiteral__ValueAssignment_16372);
+ ruleReal();
+
+ state._fsp--;
+
+ after(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__RealLiteral__ValueAssignment_1"
+
+
+ // $ANTLR start "rule__IntLiteral__ValueAssignment_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3208:1: rule__IntLiteral__ValueAssignment_1 : ( ruleInteger ) ;
+ public final void rule__IntLiteral__ValueAssignment_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3212:1: ( ( ruleInteger ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3213:1: ( ruleInteger )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3213:1: ( ruleInteger )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3214:1: ruleInteger
+ {
+ before(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
+ pushFollow(FOLLOW_ruleInteger_in_rule__IntLiteral__ValueAssignment_16403);
+ ruleInteger();
+
+ state._fsp--;
+
+ after(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__IntLiteral__ValueAssignment_1"
+
+
+ // $ANTLR start "rule__StringLiteral__ValueAssignment_1"
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3223:1: rule__StringLiteral__ValueAssignment_1 : ( RULE_STRING ) ;
+ public final void rule__StringLiteral__ValueAssignment_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3227:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3228:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3228:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/contentassist/antlr/internal/InternalFSM.g:3229:1: RULE_STRING
+ {
+ before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringLiteral__ValueAssignment_16434);
+ after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__StringLiteral__ValueAssignment_1"
+
+ // Delegated rules
+
+
+ protected DFA10 dfa10 = new DFA10(this);
+ static final String DFA10_eotS =
+ "\12\uffff";
+ static final String DFA10_eofS =
+ "\5\uffff\1\6\1\uffff\1\10\2\uffff";
+ static final String DFA10_minS =
+ "\3\6\1\40\1\uffff\1\6\1\uffff\1\7\2\uffff";
+ static final String DFA10_maxS =
+ "\4\40\1\uffff\1\6\1\uffff\1\7\2\uffff";
+ static final String DFA10_acceptS =
+ "\4\uffff\1\2\1\uffff\1\3\1\uffff\1\1\1\4";
+ static final String DFA10_specialS =
+ "\12\uffff}>";
+ static final String[] DFA10_transitionS = {
+ "\1\3\10\uffff\1\1\1\2\17\uffff\1\4",
+ "\1\3\31\uffff\1\4",
+ "\1\3\31\uffff\1\4",
+ "\1\5",
+ "",
+ "\1\7",
+ "",
+ "\1\11",
+ "",
+ ""
+ };
+
+ static final short[] DFA10_eot = DFA.unpackEncodedString(DFA10_eotS);
+ static final short[] DFA10_eof = DFA.unpackEncodedString(DFA10_eofS);
+ static final char[] DFA10_min = DFA.unpackEncodedStringToUnsignedChars(DFA10_minS);
+ static final char[] DFA10_max = DFA.unpackEncodedStringToUnsignedChars(DFA10_maxS);
+ static final short[] DFA10_accept = DFA.unpackEncodedString(DFA10_acceptS);
+ static final short[] DFA10_special = DFA.unpackEncodedString(DFA10_specialS);
+ static final short[][] DFA10_transition;
+
+ static {
+ int numStates = DFA10_transitionS.length;
+ DFA10_transition = new short[numStates][];
+ for (int i=0; i<numStates; i++) {
+ DFA10_transition[i] = DFA.unpackEncodedString(DFA10_transitionS[i]);
+ }
+ }
+
+ class DFA10 extends DFA {
+
+ public DFA10(BaseRecognizer recognizer) {
+ this.recognizer = recognizer;
+ this.decisionNumber = 10;
+ this.eot = DFA10_eot;
+ this.eof = DFA10_eof;
+ this.min = DFA10_min;
+ this.max = DFA10_max;
+ this.accept = DFA10_accept;
+ this.special = DFA10_special;
+ this.transition = DFA10_transition;
+ }
+ public String getDescription() {
+ return "1004:1: rule__Real__Alternatives : ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) );";
+ }
+ }
+
+
+ public static final BitSet FOLLOW_ruleFSMModel_in_entryRuleFSMModel61 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleFSMModel68 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FSMModel__GreetingsAssignment_in_ruleFSMModel94 = new BitSet(new long[]{0x0000000000200002L});
+ public static final BitSet FOLLOW_ruleGreeting_in_entryRuleGreeting122 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleGreeting129 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Greeting__Group__0_in_ruleGreeting155 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleKeyValue_in_entryRuleKeyValue184 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleKeyValue191 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__KeyValue__Group__0_in_ruleKeyValue217 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAnnotationTargetType_in_entryRuleAnnotationTargetType246 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAnnotationTargetType253 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleAnnotationTargetType279 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAnnotationAttribute_in_entryRuleAnnotationAttribute305 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAnnotationAttribute312 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AnnotationAttribute__Alternatives_in_ruleAnnotationAttribute338 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSimpleAnnotationAttribute_in_entryRuleSimpleAnnotationAttribute365 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleSimpleAnnotationAttribute372 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__0_in_ruleSimpleAnnotationAttribute398 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleEnumAnnotationAttribute_in_entryRuleEnumAnnotationAttribute425 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleEnumAnnotationAttribute432 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__0_in_ruleEnumAnnotationAttribute458 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN487 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleImportedFQN494 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__0_in_ruleImportedFQN520 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDocumentation_in_entryRuleDocumentation547 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDocumentation554 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__0_in_ruleDocumentation580 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_entryRuleLiteral611 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleLiteral618 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Literal__Alternatives_in_ruleLiteral644 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral671 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleBooleanLiteral678 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__0_in_ruleBooleanLiteral704 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral731 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleNumberLiteral738 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__NumberLiteral__Alternatives_in_ruleNumberLiteral764 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral791 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleRealLiteral798 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__0_in_ruleRealLiteral824 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral851 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleIntLiteral858 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__0_in_ruleIntLiteral884 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral911 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleStringLiteral918 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__0_in_ruleStringLiteral944 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleInteger_in_entryRuleInteger971 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleInteger978 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Integer__Alternatives_in_ruleInteger1004 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger1036 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleSignedInteger1043 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__0_in_ruleSignedInteger1073 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal1105 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleHexadecimal1112 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_HEX_in_ruleHexadecimal1142 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleReal_in_entryRuleReal1168 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleReal1175 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Real__Alternatives_in_ruleReal1201 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimal_in_entryRuleDecimal1233 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimal1240 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__0_in_ruleDecimal1270 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal1302 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDotDecimal1309 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__0_in_ruleDotDecimal1339 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot1371 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimalDot1378 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__0_in_ruleDecimalDot1408 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp1440 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimalExp1447 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__0_in_ruleDecimalExp1477 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_entryRuleFQN1504 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleFQN1511 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group__0_in_ruleFQN1537 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralType__Alternatives_in_ruleLiteralType1574 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSimpleAnnotationAttribute_in_rule__AnnotationAttribute__Alternatives1610 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleEnumAnnotationAttribute_in_rule__AnnotationAttribute__Alternatives1627 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__OptionalAssignment_0_0_in_rule__SimpleAnnotationAttribute__Alternatives_01659 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_13_in_rule__SimpleAnnotationAttribute__Alternatives_01678 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__OptionalAssignment_0_0_in_rule__EnumAnnotationAttribute__Alternatives_01712 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_13_in_rule__EnumAnnotationAttribute__Alternatives_01731 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleBooleanLiteral_in_rule__Literal__Alternatives1767 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__Literal__Alternatives1784 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleStringLiteral_in_rule__Literal__Alternatives1801 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_14_in_rule__BooleanLiteral__Alternatives_11834 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__IsTrueAssignment_1_1_in_rule__BooleanLiteral__Alternatives_11853 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleIntLiteral_in_rule__NumberLiteral__Alternatives1886 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRealLiteral_in_rule__NumberLiteral__Alternatives1903 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSignedInteger_in_rule__Integer__Alternatives1935 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleHexadecimal_in_rule__Integer__Alternatives1952 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_15_in_rule__SignedInteger__Alternatives_01985 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__SignedInteger__Alternatives_02005 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimal_in_rule__Real__Alternatives2039 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDotDecimal_in_rule__Real__Alternatives2056 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalDot_in_rule__Real__Alternatives2073 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalExp_in_rule__Real__Alternatives2090 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_15_in_rule__Decimal__Alternatives_02123 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__Decimal__Alternatives_02143 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_15_in_rule__DotDecimal__Alternatives_02178 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__DotDecimal__Alternatives_02198 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_15_in_rule__DecimalDot__Alternatives_02233 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__DecimalDot__Alternatives_02253 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_15_in_rule__DecimalExp__Alternatives_02288 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__DecimalExp__Alternatives_02308 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_17_in_rule__LiteralType__Alternatives2343 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_18_in_rule__LiteralType__Alternatives2364 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__LiteralType__Alternatives2385 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__LiteralType__Alternatives2406 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Greeting__Group__0__Impl_in_rule__Greeting__Group__02439 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_rule__Greeting__Group__1_in_rule__Greeting__Group__02442 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_21_in_rule__Greeting__Group__0__Impl2470 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Greeting__Group__1__Impl_in_rule__Greeting__Group__12501 = new BitSet(new long[]{0x0000000000400000L});
+ public static final BitSet FOLLOW_rule__Greeting__Group__2_in_rule__Greeting__Group__12504 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Greeting__NameAssignment_1_in_rule__Greeting__Group__1__Impl2531 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Greeting__Group__2__Impl_in_rule__Greeting__Group__22561 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_22_in_rule__Greeting__Group__2__Impl2589 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__KeyValue__Group__0__Impl_in_rule__KeyValue__Group__02629 = new BitSet(new long[]{0x0000000000800000L});
+ public static final BitSet FOLLOW_rule__KeyValue__Group__1_in_rule__KeyValue__Group__02632 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__KeyValue__KeyAssignment_0_in_rule__KeyValue__Group__0__Impl2659 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__KeyValue__Group__1__Impl_in_rule__KeyValue__Group__12689 = new BitSet(new long[]{0x000000050001C160L});
+ public static final BitSet FOLLOW_rule__KeyValue__Group__2_in_rule__KeyValue__Group__12692 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_23_in_rule__KeyValue__Group__1__Impl2720 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__KeyValue__Group__2__Impl_in_rule__KeyValue__Group__22751 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__KeyValue__ValueAssignment_2_in_rule__KeyValue__Group__2__Impl2778 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__0__Impl_in_rule__SimpleAnnotationAttribute__Group__02817 = new BitSet(new long[]{0x0000000001000000L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__1_in_rule__SimpleAnnotationAttribute__Group__02820 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Alternatives_0_in_rule__SimpleAnnotationAttribute__Group__0__Impl2847 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__1__Impl_in_rule__SimpleAnnotationAttribute__Group__12877 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__2_in_rule__SimpleAnnotationAttribute__Group__12880 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_24_in_rule__SimpleAnnotationAttribute__Group__1__Impl2908 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__2__Impl_in_rule__SimpleAnnotationAttribute__Group__22939 = new BitSet(new long[]{0x0000000002000000L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__3_in_rule__SimpleAnnotationAttribute__Group__22942 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__NameAssignment_2_in_rule__SimpleAnnotationAttribute__Group__2__Impl2969 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__3__Impl_in_rule__SimpleAnnotationAttribute__Group__32999 = new BitSet(new long[]{0x00000000001E0000L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__4_in_rule__SimpleAnnotationAttribute__Group__33002 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_25_in_rule__SimpleAnnotationAttribute__Group__3__Impl3030 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__Group__4__Impl_in_rule__SimpleAnnotationAttribute__Group__43061 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SimpleAnnotationAttribute__TypeAssignment_4_in_rule__SimpleAnnotationAttribute__Group__4__Impl3088 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__0__Impl_in_rule__EnumAnnotationAttribute__Group__03128 = new BitSet(new long[]{0x0000000001000000L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__1_in_rule__EnumAnnotationAttribute__Group__03131 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Alternatives_0_in_rule__EnumAnnotationAttribute__Group__0__Impl3158 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__1__Impl_in_rule__EnumAnnotationAttribute__Group__13188 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__2_in_rule__EnumAnnotationAttribute__Group__13191 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_24_in_rule__EnumAnnotationAttribute__Group__1__Impl3219 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__2__Impl_in_rule__EnumAnnotationAttribute__Group__23250 = new BitSet(new long[]{0x0000000002000000L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__3_in_rule__EnumAnnotationAttribute__Group__23253 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__NameAssignment_2_in_rule__EnumAnnotationAttribute__Group__2__Impl3280 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__3__Impl_in_rule__EnumAnnotationAttribute__Group__33310 = new BitSet(new long[]{0x0000000004000000L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__4_in_rule__EnumAnnotationAttribute__Group__33313 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_25_in_rule__EnumAnnotationAttribute__Group__3__Impl3341 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__4__Impl_in_rule__EnumAnnotationAttribute__Group__43372 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__5_in_rule__EnumAnnotationAttribute__Group__43375 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_26_in_rule__EnumAnnotationAttribute__Group__4__Impl3403 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__5__Impl_in_rule__EnumAnnotationAttribute__Group__53434 = new BitSet(new long[]{0x0000000018000000L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__6_in_rule__EnumAnnotationAttribute__Group__53437 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__ValuesAssignment_5_in_rule__EnumAnnotationAttribute__Group__5__Impl3464 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__6__Impl_in_rule__EnumAnnotationAttribute__Group__63494 = new BitSet(new long[]{0x0000000018000000L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__7_in_rule__EnumAnnotationAttribute__Group__63497 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group_6__0_in_rule__EnumAnnotationAttribute__Group__6__Impl3524 = new BitSet(new long[]{0x0000000010000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group__7__Impl_in_rule__EnumAnnotationAttribute__Group__73555 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_27_in_rule__EnumAnnotationAttribute__Group__7__Impl3583 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group_6__0__Impl_in_rule__EnumAnnotationAttribute__Group_6__03630 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group_6__1_in_rule__EnumAnnotationAttribute__Group_6__03633 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_28_in_rule__EnumAnnotationAttribute__Group_6__0__Impl3661 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__Group_6__1__Impl_in_rule__EnumAnnotationAttribute__Group_6__13692 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__EnumAnnotationAttribute__ValuesAssignment_6_1_in_rule__EnumAnnotationAttribute__Group_6__1__Impl3719 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__0__Impl_in_rule__ImportedFQN__Group__03755 = new BitSet(new long[]{0x0000000020000000L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__1_in_rule__ImportedFQN__Group__03758 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_rule__ImportedFQN__Group__0__Impl3785 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__1__Impl_in_rule__ImportedFQN__Group__13814 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_29_in_rule__ImportedFQN__Group__1__Impl3843 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__0__Impl_in_rule__Documentation__Group__03880 = new BitSet(new long[]{0x0000000040000000L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__1_in_rule__Documentation__Group__03883 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__1__Impl_in_rule__Documentation__Group__13941 = new BitSet(new long[]{0x0000000080000100L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__2_in_rule__Documentation__Group__13944 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_30_in_rule__Documentation__Group__1__Impl3972 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__2__Impl_in_rule__Documentation__Group__24003 = new BitSet(new long[]{0x0000000080000100L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__3_in_rule__Documentation__Group__24006 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Documentation__LinesAssignment_2_in_rule__Documentation__Group__2__Impl4033 = new BitSet(new long[]{0x0000000000000102L});
+ public static final BitSet FOLLOW_rule__Documentation__Group__3__Impl_in_rule__Documentation__Group__34064 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_31_in_rule__Documentation__Group__3__Impl4092 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__0__Impl_in_rule__BooleanLiteral__Group__04137 = new BitSet(new long[]{0x0000000400004000L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__1_in_rule__BooleanLiteral__Group__04140 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__1__Impl_in_rule__BooleanLiteral__Group__14198 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Alternatives_1_in_rule__BooleanLiteral__Group__1__Impl4225 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__0__Impl_in_rule__RealLiteral__Group__04259 = new BitSet(new long[]{0x0000000100018060L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__1_in_rule__RealLiteral__Group__04262 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__1__Impl_in_rule__RealLiteral__Group__14320 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__ValueAssignment_1_in_rule__RealLiteral__Group__1__Impl4347 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__0__Impl_in_rule__IntLiteral__Group__04381 = new BitSet(new long[]{0x0000000000018060L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__1_in_rule__IntLiteral__Group__04384 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__1__Impl_in_rule__IntLiteral__Group__14442 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__ValueAssignment_1_in_rule__IntLiteral__Group__1__Impl4469 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__0__Impl_in_rule__StringLiteral__Group__04503 = new BitSet(new long[]{0x000000050001C160L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__1_in_rule__StringLiteral__Group__04506 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__1__Impl_in_rule__StringLiteral__Group__14564 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__ValueAssignment_1_in_rule__StringLiteral__Group__1__Impl4591 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__0__Impl_in_rule__SignedInteger__Group__04625 = new BitSet(new long[]{0x0000000000018040L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__1_in_rule__SignedInteger__Group__04628 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Alternatives_0_in_rule__SignedInteger__Group__0__Impl4655 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__1__Impl_in_rule__SignedInteger__Group__14686 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__SignedInteger__Group__1__Impl4713 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__0__Impl_in_rule__Decimal__Group__04746 = new BitSet(new long[]{0x0000000000018040L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__1_in_rule__Decimal__Group__04749 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Alternatives_0_in_rule__Decimal__Group__0__Impl4776 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__1__Impl_in_rule__Decimal__Group__14807 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__2_in_rule__Decimal__Group__14810 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__Decimal__Group__1__Impl4837 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__2__Impl_in_rule__Decimal__Group__24866 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__3_in_rule__Decimal__Group__24869 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_32_in_rule__Decimal__Group__2__Impl4897 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__3__Impl_in_rule__Decimal__Group__34928 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__Decimal__Group__3__Impl4955 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__0__Impl_in_rule__DotDecimal__Group__04992 = new BitSet(new long[]{0x0000000100018000L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__1_in_rule__DotDecimal__Group__04995 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Alternatives_0_in_rule__DotDecimal__Group__0__Impl5022 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__1__Impl_in_rule__DotDecimal__Group__15053 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__2_in_rule__DotDecimal__Group__15056 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_32_in_rule__DotDecimal__Group__1__Impl5084 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__2__Impl_in_rule__DotDecimal__Group__25115 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DotDecimal__Group__2__Impl5142 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__0__Impl_in_rule__DecimalDot__Group__05177 = new BitSet(new long[]{0x0000000000018040L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__1_in_rule__DecimalDot__Group__05180 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Alternatives_0_in_rule__DecimalDot__Group__0__Impl5207 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__1__Impl_in_rule__DecimalDot__Group__15238 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__2_in_rule__DecimalDot__Group__15241 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalDot__Group__1__Impl5268 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__2__Impl_in_rule__DecimalDot__Group__25297 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_32_in_rule__DecimalDot__Group__2__Impl5325 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__0__Impl_in_rule__DecimalExp__Group__05362 = new BitSet(new long[]{0x0000000100018060L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__1_in_rule__DecimalExp__Group__05365 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Alternatives_0_in_rule__DecimalExp__Group__0__Impl5392 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__1__Impl_in_rule__DecimalExp__Group__15423 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__2_in_rule__DecimalExp__Group__15426 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__1__Impl5453 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__2__Impl_in_rule__DecimalExp__Group__25482 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__3_in_rule__DecimalExp__Group__25485 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_32_in_rule__DecimalExp__Group__2__Impl5513 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__3__Impl_in_rule__DecimalExp__Group__35544 = new BitSet(new long[]{0x0000000000000080L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__4_in_rule__DecimalExp__Group__35547 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__3__Impl5574 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__4__Impl_in_rule__DecimalExp__Group__45603 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_EXP_in_rule__DecimalExp__Group__4__Impl5630 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group__0__Impl_in_rule__FQN__Group__05669 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__FQN__Group__1_in_rule__FQN__Group__05672 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__FQN__Group__0__Impl5699 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group__1__Impl_in_rule__FQN__Group__15728 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__0_in_rule__FQN__Group__1__Impl5755 = new BitSet(new long[]{0x0000000100000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__0__Impl_in_rule__FQN__Group_1__05790 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__1_in_rule__FQN__Group_1__05793 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_32_in_rule__FQN__Group_1__0__Impl5821 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__1__Impl_in_rule__FQN__Group_1__15852 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__FQN__Group_1__1__Impl5879 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleGreeting_in_rule__FSMModel__GreetingsAssignment5917 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__Greeting__NameAssignment_15948 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__KeyValue__KeyAssignment_05982 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_rule__KeyValue__ValueAssignment_26013 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_33_in_rule__SimpleAnnotationAttribute__OptionalAssignment_0_06055 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__SimpleAnnotationAttribute__NameAssignment_26094 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteralType_in_rule__SimpleAnnotationAttribute__TypeAssignment_46125 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_33_in_rule__EnumAnnotationAttribute__OptionalAssignment_0_06161 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__EnumAnnotationAttribute__NameAssignment_26200 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__EnumAnnotationAttribute__ValuesAssignment_56231 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__EnumAnnotationAttribute__ValuesAssignment_6_16262 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__Documentation__LinesAssignment_26295 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_34_in_rule__BooleanLiteral__IsTrueAssignment_1_16333 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleReal_in_rule__RealLiteral__ValueAssignment_16372 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleInteger_in_rule__IntLiteral__ValueAssignment_16403 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__StringLiteral__ValueAssignment_16434 = new BitSet(new long[]{0x0000000000000002L});
+
+} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/internal/FSMActivator.java b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/internal/FSMActivator.java
new file mode 100644
index 000000000..c5635c2c8
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src-gen/org/eclipse/etrice/core/fsm/ui/internal/FSMActivator.java
@@ -0,0 +1,95 @@
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui.internal;
+
+import java.util.Collections;
+import java.util.Map;
+
+import org.apache.log4j.Logger;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.eclipse.xtext.ui.shared.SharedStateModule;
+import org.eclipse.xtext.util.Modules2;
+import org.osgi.framework.BundleContext;
+
+import com.google.common.collect.Maps;
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.Module;
+
+/**
+ * This class was generated. Customizations should only happen in a newly
+ * introduced subclass.
+ */
+public class FSMActivator extends AbstractUIPlugin {
+
+ public static final String ORG_ECLIPSE_ETRICE_CORE_FSM_FSM = "org.eclipse.etrice.core.fsm.FSM";
+
+ private static final Logger logger = Logger.getLogger(FSMActivator.class);
+
+ private static FSMActivator INSTANCE;
+
+ private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ INSTANCE = this;
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ injectors.clear();
+ INSTANCE = null;
+ super.stop(context);
+ }
+
+ public static FSMActivator getInstance() {
+ return INSTANCE;
+ }
+
+ public Injector getInjector(String language) {
+ synchronized (injectors) {
+ Injector injector = injectors.get(language);
+ if (injector == null) {
+ injectors.put(language, injector = createInjector(language));
+ }
+ return injector;
+ }
+ }
+
+ protected Injector createInjector(String language) {
+ try {
+ Module runtimeModule = getRuntimeModule(language);
+ Module sharedStateModule = getSharedStateModule();
+ Module uiModule = getUiModule(language);
+ Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
+ return Guice.createInjector(mergedModule);
+ } catch (Exception e) {
+ logger.error("Failed to create injector for " + language);
+ logger.error(e.getMessage(), e);
+ throw new RuntimeException("Failed to create injector for " + language, e);
+ }
+ }
+
+ protected Module getRuntimeModule(String grammar) {
+ if (ORG_ECLIPSE_ETRICE_CORE_FSM_FSM.equals(grammar)) {
+ return new org.eclipse.etrice.core.fsm.FSMRuntimeModule();
+ }
+
+ throw new IllegalArgumentException(grammar);
+ }
+
+ protected Module getUiModule(String grammar) {
+ if (ORG_ECLIPSE_ETRICE_CORE_FSM_FSM.equals(grammar)) {
+ return new org.eclipse.etrice.core.fsm.ui.FSMUiModule(this);
+ }
+
+ throw new IllegalArgumentException(grammar);
+ }
+
+ protected Module getSharedStateModule() {
+ return new SharedStateModule();
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/FSMUiModule.java b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/FSMUiModule.java
new file mode 100644
index 000000000..6f9fecb7a
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/FSMUiModule.java
@@ -0,0 +1,15 @@
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
+/**
+ * Use this class to register components to be used within the IDE.
+ */
+public class FSMUiModule extends org.eclipse.etrice.core.fsm.ui.AbstractFSMUiModule {
+ public FSMUiModule(AbstractUIPlugin plugin) {
+ super(plugin);
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.xtend b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.xtend
new file mode 100644
index 000000000..95b8cf3b5
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.xtend
@@ -0,0 +1,12 @@
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui.contentassist
+
+import org.eclipse.etrice.core.fsm.ui.contentassist.AbstractFSMProposalProvider
+
+/**
+ * see http://www.eclipse.org/Xtext/documentation.html#contentAssist on how to customize content assistant
+ */
+class FSMProposalProvider extends AbstractFSMProposalProvider {
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.xtend b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.xtend
new file mode 100644
index 000000000..42795ec8b
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.xtend
@@ -0,0 +1,24 @@
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.fsm.ui.labeling
+
+//import org.eclipse.xtext.resource.IEObjectDescription
+
+/**
+ * Provides labels for a IEObjectDescriptions and IResourceDescriptions.
+ *
+ * see http://www.eclipse.org/Xtext/documentation.html#labelProvider
+ */
+class FSMDescriptionLabelProvider extends org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider {
+
+ // Labels and icons can be computed like this:
+
+// override text(IEObjectDescription ele) {
+// ele.name.toString
+// }
+//
+// override image(IEObjectDescription ele) {
+// ele.EClass.name + '.gif'
+// }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.xtend b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.xtend
new file mode 100644
index 000000000..84e7d8a2a
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.xtend
@@ -0,0 +1,29 @@
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.fsm.ui.labeling
+
+import com.google.inject.Inject
+
+/**
+ * Provides labels for a EObjects.
+ *
+ * see http://www.eclipse.org/Xtext/documentation.html#labelProvider
+ */
+class FSMLabelProvider extends org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider {
+
+ @Inject
+ new(org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider delegate) {
+ super(delegate);
+ }
+
+ // Labels and icons can be computed like this:
+
+// def text(Greeting ele) {
+// 'A greeting to ' + ele.name
+// }
+//
+// def image(Greeting ele) {
+// 'Greeting.gif'
+// }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.xtend b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.xtend
new file mode 100644
index 000000000..01f94f62e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.xtend
@@ -0,0 +1,13 @@
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.fsm.ui.outline
+
+/**
+ * Customization of the default outline structure.
+ *
+ * see http://www.eclipse.org/Xtext/documentation.html#outline
+ */
+class FSMOutlineTreeProvider extends org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider {
+
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/quickfix/FSMQuickfixProvider.xtend b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/quickfix/FSMQuickfixProvider.xtend
new file mode 100644
index 000000000..b6abfb365
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/src/org/eclipse/etrice/core/fsm/ui/quickfix/FSMQuickfixProvider.xtend
@@ -0,0 +1,26 @@
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core.fsm.ui.quickfix
+
+//import org.eclipse.xtext.ui.editor.quickfix.Fix
+//import org.eclipse.xtext.ui.editor.quickfix.IssueResolutionAcceptor
+//import org.eclipse.xtext.validation.Issue
+
+/**
+ * Custom quickfixes.
+ *
+ * see http://www.eclipse.org/Xtext/documentation.html#quickfixes
+ */
+class FSMQuickfixProvider extends org.eclipse.xtext.ui.editor.quickfix.DefaultQuickfixProvider {
+
+// @Fix(MyDslValidator::INVALID_NAME)
+// def capitalizeName(Issue issue, IssueResolutionAcceptor acceptor) {
+// acceptor.accept(issue, 'Capitalize name', 'Capitalize the name.', 'upcase.png') [
+// context |
+// val xtextDocument = context.xtextDocument
+// val firstLetter = xtextDocument.get(issue.offset, 1)
+// xtextDocument.replace(issue.offset, 1, firstLetter.toUpperCase)
+// ]
+// }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.java b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.java
new file mode 100644
index 000000000..cc5aa2625
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/contentassist/FSMProposalProvider.java
@@ -0,0 +1,13 @@
+/**
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui.contentassist;
+
+import org.eclipse.etrice.core.fsm.ui.contentassist.AbstractFSMProposalProvider;
+
+/**
+ * see http://www.eclipse.org/Xtext/documentation.html#contentAssist on how to customize content assistant
+ */
+@SuppressWarnings("all")
+public class FSMProposalProvider extends AbstractFSMProposalProvider {
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.java b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.java
new file mode 100644
index 000000000..761a61041
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMDescriptionLabelProvider.java
@@ -0,0 +1,15 @@
+/**
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui.labeling;
+
+import org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider;
+
+/**
+ * Provides labels for a IEObjectDescriptions and IResourceDescriptions.
+ *
+ * see http://www.eclipse.org/Xtext/documentation.html#labelProvider
+ */
+@SuppressWarnings("all")
+public class FSMDescriptionLabelProvider extends DefaultDescriptionLabelProvider {
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.java b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.java
new file mode 100644
index 000000000..173dd1ba7
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/labeling/FSMLabelProvider.java
@@ -0,0 +1,21 @@
+/**
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.fsm.ui.labeling;
+
+import com.google.inject.Inject;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider;
+
+/**
+ * Provides labels for a EObjects.
+ *
+ * see http://www.eclipse.org/Xtext/documentation.html#labelProvider
+ */
+@SuppressWarnings("all")
+public class FSMLabelProvider extends DefaultEObjectLabelProvider {
+ @Inject
+ public FSMLabelProvider(final AdapterFactoryLabelProvider delegate) {
+ super(delegate);
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.java b/plugins/org.eclipse.etrice.core.fsm.ui/xtend-gen/org/eclipse/etrice/core/fsm/ui/outline/FSMOutlineTreeProvider.java
new file mode 100644
index 000000000..4f50df02f
--- /dev/null
+++ b/